Skip to main content

managed-agent-sdk(Python)

腾讯云 WorkBuddy 企业版 Managed Agent 的 Python SDK。

控制面走腾讯云 API(TC3 签名),数据面走 ACP 协议,两段凭证由 SDK 内部缝合。

pip install managed-agent-sdk

要求 Python 3.10 ~ 3.14。Node 版见 @tencent-ai/managed-agent-sdk,两侧 API 语义一致。

凭证

从环境变量读取,或在构造时显式传入:

export TENCENTCLOUD_SECRET_ID=你的SecretId
export TENCENTCLOUD_SECRET_KEY=你的SecretKey

只支持长期密钥,不支持 STS 临时密钥。数据面(ACP)的凭证由 SDK 用这套密钥自动换取并缓存,无需单独配置。

快速开始

import asyncio

from managed_agent_sdk import (
    CreateAgentOpts,
    CreateSessionOpts,
    CreateVersionOpts,
    ManagedAgentClient,
    ManifestBuilder,
)


async def main() -> None:
    async with ManagedAgentClient() as client:
        # 创建 Agent
        agent = await client.agents.create(
            CreateAgentOpts(
                agent_name="日志分析助手",
                model="deepseek-v3",
                manifest=ManifestBuilder().system_prompt("你是日志分析专家").build(),
            )
        )

        # 创建版本(manifest 服务端必填)
        version = await agent.versions.create(
            CreateVersionOpts(
                manifest=ManifestBuilder().system_prompt("你是日志分析专家").build(),
            )
        )

        # 创建会话(拉起真实沙箱,不会自动回收 —— 尽量复用)
        session = await agent.sessions.create(
            CreateSessionOpts(version_id=version.version_id)
        )

        # 对话
        res = await session.prompt("分析这份日志")
        print(res.stop_reason)

        await session.disconnect()


asyncio.run(main())

prompt() 的返回值只携带 stop_reason,回复文本从 on_chunk 取 —— 流式内容与终局结果分两条通道,这是 ACP 的协议设计。

配置连接器 / 技能 / 专家

三类资源的配置入口不统一,这是最容易配错的地方:

资源 查询 配置入口 最终落点
连接器(MCP) client.connectors.list() connector_ids(Action 入参) 服务端物化成 manifest 的 mcp_servers
技能 client.skills.list() ManifestBuilder.skills() manifest 的 skills
专家 client.experts.list() ManifestBuilder.experts() manifest 的 experts

技能与专家进 manifest,连接器不进 —— 只把 ID 交给服务端,由它查网关地址后物化。 自己往 manifest 里写 mcp_servers 会与之重复。

skills = await client.skills.list("BUILTIN", ListSkillsOpts(limit=50))
connectors = await client.connectors.list_active()

agent = await client.agents.create(
    CreateAgentOpts(
        agent_name="运维助手",
        manifest=(
            ManifestBuilder()
            .system_prompt("你是运维专家")
            .skills([{"type": "builtin", "id": s["SkillId"]} for s in skills.items])
            .build()
        ),
        connector_ids=[c["ConnectorId"] for c in connectors.items],  # 独立入参
    )
)

connector_ids 是该版本最终要绑的完整集合,服务端按它做全量覆盖 —— 改绑定直接传新集合,解绑从列表里去掉即可,传 [] 解绑全部。

两条约定

入参 snake_case,出参 PascalCase。 出参原样透传云 API 字段名,便于对照官方文档排查。

不做控制面自动重试。 Create* 类接口非幂等且服务端不提供 ClientToken,重试 sessions.create() 会重复拉起沙箱并产生真实费用。唯一例外是 ACP 断线重连(Last-Event-ID 断点续传,不重放 prompt)。

会话即沙箱,且不会自动回收。 sessions.create() 每次调用都拉起一个真实沙箱。注意 disconnect() 只断 ACP 连接,不释放沙箱 —— 服务端既没有销毁会话的接口,也没有空闲超时回收(IDLE 只是「上一轮对话结束」的轮次状态,沙箱照常运行)。要复用会话,别在循环里反复新建。

文档

完整 API 参考、错误码表、已知问题见 Managed Agent SDK 文档。

Release files for managed-agent-sdk 0.0.1

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

Source distribution (sdist)

Source distribution for managed-agent-sdk 0.0.1
File Size Uploaded
managed_agent_sdk-0.0.1.tar.gz 80.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for managed-agent-sdk 0.0.1
File Interpreter ABI Platform
managed_agent_sdk-0.0.1-py3-none-any.whl Python 3 none any Details

Total release size: 176.9 kB

Release files / managed_agent_sdk-0.0.1.tar.gz

Download URL managed_agent_sdk-0.0.1.tar.gz
Size 80.6 kB
Tags Source
SHA-256 checksum
How to use checksums
41879ba48d29af2bbda2690af743e90acb6f5a1b9275e8336bc45f263c5ddd40
BLAKE2b-256 checksum
How to use checksums
1480b9b3aa395f0ffdf122ee11ed743e5a365b0a8988effabaddca7166403a87
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / managed_agent_sdk-0.0.1-py3-none-any.whl

Download URL managed_agent_sdk-0.0.1-py3-none-any.whl
Size 96.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
33820505dd93f204722fc14effb843a60a669c57a46d0d8c812f10d25b5e5627
BLAKE2b-256 checksum
How to use checksums
f6d4cd947c97e6f23a986367b03b1100abd57410e2f72bd270ab1f8a260c7954
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.19 {"installer":{"name":"uv","version":"0.11.19","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"macOS","version":null,"id":null,"libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

0.0.2

2 release files

This release

0.0.1 This release

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