Skip to main content

Volcengine Agent Development Kit Logo

Volcengine Agent Development Kit

License Deepwiki

An open-source kit for agent development, integrated the powerful capabilities of Volcengine.

For more details, see our documents.

A tutorial is available by Jupyter Notebook, or open it in Google Colab directly.

Installation

From PyPI

pip install veadk-python

# install extensions
pip install veadk-python[extensions]

Build from source

We use uv to build this project (how-to-install-uv).

git clone ... # clone repo first

cd veadk-python

# create a virtual environment with python 3.12
uv venv --python 3.12

# only install necessary requirements
uv sync

# or, install extra requirements
# uv sync --extra database
# uv sync --extra eval
# uv sync --extra cli

# or, directly install all requirements
# uv sync --all-extras

# install veadk-python with editable mode
uv pip install -e .

Configuration

We recommand you to create a config.yaml file in the root directory of your own project, VeADK is able to read it automatically. For running a minimal agent, you just need to set the following configs in your config.yaml file:

model:
  agent:
    provider: openai
    name: doubao-seed-1-6-250615
    api_base: https://ark.cn-beijing.volces.com/api/v3/
    api_key: # <-- set your Volcengine ARK api key here

You can refer to the config instructions for more details.

Have a try

Enjoy a minimal agent from VeADK:

from veadk import Agent
import asyncio

agent = Agent()

res = asyncio.run(agent.run("hello!"))
print(res)

AgentKit application

Use the shared AgentKit application factory when your project needs AgentKit APIs, VeADK's bundled Web UI, health checks, and agent-topology endpoints. This keeps platform routes and lifecycle code out of your agent module:

from veadk import Agent
from veadk.integrations.agentkit import create_agentkit_app

root_agent = Agent(name="customer_support")
app = create_agentkit_app(
    root_agent,
    enable_studio_tools=True,
)

Studio-owned dynamic tools and HTTP routes are separate Runtime capabilities. Enable them explicitly with enable_studio_tools=True and enable_studio_routes=True; both default to disabled.

See examples/generated_agentkit_project for a complete generated project.

The Agent Server metadata endpoint reports the root Agent's name, description, model, sub-Agents, tools, skills, and mounted component summaries. Each Runtime row in Studio has explicit connect and info actions; the info panel's tabs switch between this live metadata and control-plane information without exposing prompts or credentials. The same metadata advertises mounted smart-search sources, so Studio can disable unavailable sources up front and query the Agent's web-search tool, KnowledgeBase, or long-term memory without exposing component credentials. Studio also manages user-owned Codex, OpenClaw, and Hermes AgentKit Sessions. Users can create, reopen, inspect, and explicitly delete each Agent; leaving a Codex conversation only disconnects it, while OpenClaw and Hermes expose their main interface and Terminal through Studio. When configuring skills, Studio can also browse account-scoped AgentKit Skill Spaces and their paginated skill lists by region and project. These requests are signed on the server, so browser clients never receive Volcengine credentials.

The Studio deployment flow lists Feishu, knowledge-base, short-/long-term memory, and observability settings in their feature sections. Values entered there are mirrored in the deployment environment-variable summary and converted to VeADK runtime environment variables only when deploying; secrets are not written to generated source or exported YAML. For multi-instance runtimes, use a database-backed short-term memory store so sessions remain available across instances.

When a cloud image build fails from the bundled Web UI, the deployment error includes a credential-safe excerpt from the build log so dependency and Dockerfile failures can be diagnosed directly.

When Studio connects to an AgentKit Runtime, users can rate completed answers with like/dislike controls. Feedback is written server-side to per-Agent {agent_name}_good_case and {agent_name}_bad_case evaluation sets, with stable item keys so repeated clicks and rating changes remain idempotent.

Feishu bot channel

VeADK now provides veadk.extensions.FeishuChannelExtension for bridging a Feishu bot with a Runner. It maps union_id to user_id, and thread_id / chat_id to session_id, so VeADK memory and tracing can work directly in Feishu conversations.

from veadk import Agent, Runner
from veadk.extensions import FeishuChannelExtension

agent = Agent()
runner = Runner(agent=agent, app_name="feishu_demo")
channel = FeishuChannelExtension(runner=runner)

Configure credentials with TOOL_FEISHU_CHANNEL_APP_ID and TOOL_FEISHU_CHANNEL_APP_SECRET, or in config.yaml under tool.feishu_channel.

Contribution

Before making your contribution to our repository, please install and config the pre-commit linter first.

pip install pre-commit
pre-commit install

Before commit or push your changes, please make sure the unittests are passed ,otherwise your PR will be rejected by CI/CD workflow. Running the unittests by:

pytest -n 16

Security and privacy

This project takes security seriously. For vulnerability reporting and supported versions, see SECURITY.md

Contact with us

Join our discussion group by scanning the QR code below:

Volcengine Agent Development Kit Logo

License

This project is licensed under the Apache 2.0 License.

Release files for veadk-python 1.1.10

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for veadk-python 1.1.10
File Size Uploaded
veadk_python-1.1.10.tar.gz 67.9 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for veadk-python 1.1.10
File Interpreter ABI Platform
veadk_python-1.1.10-py3-none-any.whl Python 3 none any Details

Total release size: 78.2 MB

Release files / veadk_python-1.1.10.tar.gz

Download URL veadk_python-1.1.10.tar.gz
Size 67.9 MB
Tags Source
SHA-256 checksum
How to use checksums
7af64fe3cd5db185b3abe392d59500750ac4ae8934349dd32b97b68aac25f4a8
BLAKE2b-256 checksum
How to use checksums
8508ab126cd0aaf94515b89dd03deca7a43883f0fa383840a03e29dd7a14fb5a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / veadk_python-1.1.10-py3-none-any.whl

Download URL veadk_python-1.1.10-py3-none-any.whl
Size 10.3 MB
Tags Python 3
SHA-256 checksum
How to use checksums
95efaff642667c2ad950c648eeebe0eb9fdc84a80c80ddd4e5dd9583bb1da4c3
BLAKE2b-256 checksum
How to use checksums
bb621ee0f616abf32264178ac0a2b358a54de589e5f0be5bb2ef61198e5cb97b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release history Release notifications | RSS feed

1.1.14

2 release files

1.1.13

2 release files

1.1.12

2 release files

1.1.11

2 release files

This release

1.1.10 This release

2 release files

1.1.9

2 release files

1.1.8

2 release files

1.1.7

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.9

2 release files

1.0.8

2 release files

1.0.7

2 release files

1.0.6

2 release files

1.0.5

1 release file

1.0.4

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

0.5.40

2 release files

0.5.39

2 release files

0.5.38

2 release files

0.5.35

2 release files

0.5.34

2 release files

0.5.33

2 release files

0.5.31

2 release files

0.5.30

2 release files

0.5.29

2 release files

0.5.28

2 release files

0.5.25

2 release files

0.5.24

2 release files

0.5.23

2 release files

0.5.22

2 release files

0.5.21

2 release files

0.5.20

2 release files

0.5.16

2 release files

0.5.15

2 release files

0.5.14

2 release files

0.5.12

2 release files

0.5.11

2 release files

0.5.10

2 release files

0.5.9

2 release files

0.5.8

2 release files

0.5.7

2 release files

0.5.6

2 release files

0.5.5

2 release files

0.5.4

2 release files

0.5.3

2 release files

0.5.2

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.2.35

2 release files

0.2.34

2 release files

0.2.33

2 release files

0.2.32

2 release files

0.2.31

2 release files

0.2.30

2 release files

0.2.27

2 release files

0.2.26

2 release files

0.2.25

2 release files

0.2.24

2 release files

0.2.23

2 release files

0.2.22

2 release files

0.2.21

2 release files

0.2.17

2 release files

0.2.16

2 release files

0.2.15

2 release files

0.2.14

2 release files

0.2.13

2 release files

0.2.12

2 release files

0.2.11

2 release files

0.2.10

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page