Observed since 20 Oct, 21:50 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
agentengine-sdk-python
Kingsoft Cloud Agent Engine SDK alias package for ksadk
新版本要求 Python 3.12 或以上;已有 Agent 可保留原 SDK 和运行镜像,旧 Runtime 的会话读取与订阅协议继续兼容。
金山云智能体开发套件
构建、部署、调试、观测企业级 AI 智能体的一站式云原生框架。 兼容 Google ADK、LangGraph、LangChain 与 DeepAgents,并支持一键拉起 OpenClaw 和 Hermes 运行时。
python -m venv .venv
source .venv/bin/activate
pip install -U "ksadk[langgraph]"
agentengine init demo-agent -f langgraph
cd demo-agent
agentengine config set OPENAI_API_KEY=your-api-key OPENAI_MODEL_NAME=gpt-4o-mini
agentengine run -i
示例按需安装 LangGraph extra;只使用 Native Studio 可以安装 ksadk。ksadk[all] 还会安装其他可选框架与开发工具。
启动本地调试 Web UI:
agentengine web . --no-open
升级前请查看文档站的快速开始与升级说明;本地 Studio 默认使用 Native Harness 和持久化执行账本。
KsADK 把“框架适配”收敛为稳定的运行时分层,同时保留各框架的原生执行语义:
RuntimeEvent(schema_version=2) 是存储、回放、API、Studio 与托管界面的事件事实来源;v1 仅作为只读兼容投影。ksadk.connector 出站 WSS 接入独立 Channel 服务,不需要开放本地端口或安装 agentengine-channel。@kingsoftcloud/ksadk-web 会话组件。从 运行时架构、AgentKit Local Studio、Channel Connector 和插件与自动化开始阅读。版本说明与制品校验信息见 GitHub Releases。
运行事件主路径固定为 canonical RuntimeEvent(schema_version=2);能力描述为 RuntimeEventVersions=[1,2]、RuntimeEventDefault=2、RuntimeEventV1ProjectionModes=["snapshot_only","identity_replace"]、RuntimeEventV1ProjectionDefault="snapshot_only"。v1 仅作只读兼容投影。
大多数 Agent 框架解决“如何开发 Agent”。KsADK 解决“如何运行、调试、部署和观测 Agent”。
agentengine init、agentengine run、agentengine web。/v1/responses 与 /v1/chat/completions。Agent Kernel 收口可信控制,Harness 管理装配与生命周期,可插拔 Provider 保留框架原生执行语义;RuntimeEvent v2 为 API、Studio 与托管界面提供统一事件事实链。
欢迎通过 issue、PR、样例和文档改进参与贡献。提交前建议运行:
make public-preflight
开源协议:Apache-2.0。
Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
clickEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | click>=8.0.0 | runtime |
pyyamlEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | pyyaml>=6.0.0 | runtime |
packagingEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | packaging>=23.0 | runtime |
tomliEnvironment{
"extras": "",
"marker": "python_version < \"3.11\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | tomli>=2.0.0; python_version < "3.11" | runtime |
python-dotenvEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | python-dotenv>=1.0.0 | runtime |
pydanticEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | pydantic<3.0.0,>=2.0.0 | runtime |
jsonschemaEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | jsonschema<5.0.0,>=4.0.0 | runtime |
rfc8785Environment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | rfc8785==0.1.4 | runtime |
questionaryEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | questionary>=2.0.0 | runtime |
prompt_toolkitEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | prompt_toolkit>=3.0.0 | runtime |
richEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | rich>=13.0.0 | runtime |
fastapiEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | fastapi<1.0.0,>=0.100.0 | runtime |
uvicornEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | uvicorn>=0.23.0 | runtime |
python-multipartEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | python-multipart<1.0.0,>=0.0.9 | runtime |
python-socksEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | python-socks<3.0.0,>=2.7.1 | runtime |
httpxEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | httpx<0.29.0,>=0.28.1 | runtime |
httpcoreEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | httpcore<1.1.0,>=1.0.9 | runtime |
a2a-sdkEnvironment{
"extras": "fastapi",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | a2a-sdk[fastapi]==1.1.0 | runtime |
a2ui-coreEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | a2ui-core==0.1.1 | runtime |
httpx-sseEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | httpx-sse>=0.4.0 | runtime |
sse-starletteEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | sse-starlette>=2.1.0 | runtime |
mcpEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | mcp<2.0.0,>=1.26.0 | runtime |
requestsEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | requests>=2.28.0 | runtime |
requests-aws4authEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | requests-aws4auth>=1.2.0 | runtime |
kingsoftcloud-sdk-pythonEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | kingsoftcloud-sdk-python>=1.5.8.94 | runtime |
cryptographyEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | cryptography>=44.0.0 | runtime |
websocketsEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | websockets<16.0,>=12.0 | runtime |
qrcodeEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | qrcode>=7.4.0 | runtime |
asyncpgEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | asyncpg<1.0.0,>=0.30.0 | runtime |
greenletEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | greenlet>=1.0.0 | runtime |
ks3sdkEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | ks3sdk>=1.15.0 | runtime |
pypdfEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | pypdf>=6.0.0 | runtime |
beautifulsoup4Environment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | beautifulsoup4>=4.12.0 | runtime |
rapidocr-onnxruntimeEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | rapidocr-onnxruntime>=1.2.0 | runtime |
pillowEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | pillow<13.0.0,>=11.0.0 | runtime |
google-adkEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | google-adk<3.0.0,>=1.34.0 | runtime |
langgraphEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langgraph<1.3.0,>=1.2.0 | runtime |
langgraph-checkpoint-sqliteEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langgraph-checkpoint-sqlite>=2.0.0 | runtime |
opentelemetry-apiEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | opentelemetry-api<=1.41.1,>=1.39.0 | runtime |
opentelemetry-sdkEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | opentelemetry-sdk<=1.41.1,>=1.39.0 | runtime |
opentelemetry-exporter-otlpEnvironment{
"extras": "",
"marker": null,
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | opentelemetry-exporter-otlp<=1.41.1,>=1.39.0 | runtime |
litellmEnvironment{
"extras": "",
"marker": "(platform_system != \"Windows\" or python_version < \"3.13\") and extra == \"adk\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | litellm>=1.0.0; (platform_system != "Windows" or python_version < "3.13") and extra == "adk" | runtime |
json_repairEnvironment{
"extras": "",
"marker": "extra == \"adk\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | json_repair>=0.25.0; extra == "adk" | runtime |
langchainEnvironment{
"extras": "",
"marker": "extra == \"langchain\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langchain<2.0.0,>=1.3.14; extra == "langchain" | runtime |
langchain-openaiEnvironment{
"extras": "",
"marker": "extra == \"langchain\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langchain-openai<2.0.0,>=1.4.0; extra == "langchain" | runtime |
langchain-coreEnvironment{
"extras": "",
"marker": "extra == \"langchain\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langchain-core<2.0.0,>=1.5.0; extra == "langchain" | runtime |
langgraphEnvironment{
"extras": "",
"marker": "extra == \"langgraph\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langgraph<1.3.0,>=1.2.0; extra == "langgraph" | runtime |
langgraph-checkpoint-sqliteEnvironment{
"extras": "",
"marker": "extra == \"langgraph\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langgraph-checkpoint-sqlite>=2.0.0; extra == "langgraph" | runtime |
langgraph-checkpoint-postgresEnvironment{
"extras": "",
"marker": "extra == \"langgraph\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langgraph-checkpoint-postgres>=3.1.0; extra == "langgraph" | runtime |
psycopgEnvironment{
"extras": "binary",
"marker": "extra == \"langgraph\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | psycopg[binary]<4.0,>=3.2; extra == "langgraph" | runtime |
psycopg-poolEnvironment{
"extras": "",
"marker": "extra == \"langgraph\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | psycopg-pool<4.0,>=3.2; extra == "langgraph" | runtime |
langchainEnvironment{
"extras": "",
"marker": "extra == \"langgraph\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langchain<2.0.0,>=1.3.14; extra == "langgraph" | runtime |
langchain-openaiEnvironment{
"extras": "",
"marker": "extra == \"langgraph\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langchain-openai<2.0.0,>=1.4.0; extra == "langgraph" | runtime |
protobufEnvironment{
"extras": "",
"marker": "extra == \"langgraph\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | protobuf>=6.32.1; extra == "langgraph" | runtime |
deepagentsEnvironment{
"extras": "",
"marker": "python_version >= \"3.11\" and extra == \"deepagents\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | deepagents<1.0.0,>=0.6.2; python_version >= "3.11" and extra == "deepagents" | runtime |
langgraphEnvironment{
"extras": "",
"marker": "extra == \"deepagents\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langgraph<1.3.0,>=1.2.0; extra == "deepagents" | runtime |
langchainEnvironment{
"extras": "",
"marker": "extra == \"deepagents\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langchain<2.0.0,>=1.3.14; extra == "deepagents" | runtime |
langchain-openaiEnvironment{
"extras": "",
"marker": "extra == \"deepagents\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | langchain-openai<2.0.0,>=1.4.0; extra == "deepagents" | runtime |
a2a-sdkEnvironment{
"extras": "fastapi",
"marker": "extra == \"a2a\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | a2a-sdk[fastapi]==1.1.0; extra == "a2a" | runtime |
SQLAlchemyEnvironment{
"extras": "asyncio",
"marker": "extra == \"a2a\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | SQLAlchemy[asyncio]<3.0.0,>=2.0.0; extra == "a2a" | runtime |
aiosqliteEnvironment{
"extras": "",
"marker": "extra == \"a2a\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | aiosqlite<1.0.0,>=0.20.0; extra == "a2a" | runtime |
a2a-sdkEnvironment{
"extras": "postgresql",
"marker": "extra == \"a2a-postgres\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | a2a-sdk[postgresql]==1.1.0; extra == "a2a-postgres" | runtime |
openinference-instrumentation-langchainEnvironment{
"extras": "",
"marker": "extra == \"tracing\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | openinference-instrumentation-langchain>=0.1.0; extra == "tracing" | runtime |
deepevalEnvironment{
"extras": "",
"marker": "extra == \"judge\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | deepeval>=3.2.6; extra == "judge" | runtime |
e2bEnvironment{
"extras": "",
"marker": "extra == \"skills\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | e2b<2.25.0,>=2.15.3; extra == "skills" | runtime |
openai-codexEnvironment{
"extras": "",
"marker": "extra == \"codex\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | openai-codex==0.154.0; extra == "codex" | runtime |
ag-ui-protocolEnvironment{
"extras": "",
"marker": "extra == \"agui\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | ag-ui-protocol==0.1.19; extra == "agui" | runtime |
ag-ui-langgraphEnvironment{
"extras": "fastapi",
"marker": "extra == \"agui\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | ag-ui-langgraph[fastapi]==0.0.42; extra == "agui" | runtime |
copilotkitEnvironment{
"extras": "",
"marker": "extra == \"agui\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | copilotkit==0.1.94; extra == "agui" | runtime |
pytestEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | pytest>=7.0.0; extra == "dev" | runtime |
pytest-asyncioEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | pytest-asyncio>=0.21.0; extra == "dev" | runtime |
pytest-xdistEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | pytest-xdist>=3.0.0; extra == "dev" | runtime |
fastmcpEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | fastmcp>=2.0.0; extra == "dev" | runtime |
buildEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | build>=1.0.0; extra == "dev" | runtime |
twineEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | twine>=5.0.0; extra == "dev" | runtime |
blackEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | black>=22.0.0; extra == "dev" | runtime |
ruffEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | ruff>=0.1.0; extra == "dev" | runtime |
mypyEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | mypy>=1.0.0; extra == "dev" | runtime |
types-PyYAMLEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | types-PyYAML>=6.0.0; extra == "dev" | runtime |
types-protobufEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | types-protobuf>=6.32.0; extra == "dev" | runtime |
types-python-dateutilEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | types-python-dateutil>=2.9.0; extra == "dev" | runtime |
types-qrcodeEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | types-qrcode>=8.2.0; extra == "dev" | runtime |
types-requestsEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | types-requests>=2.32.0; extra == "dev" | runtime |
playwrightEnvironment{
"extras": "",
"marker": "extra == \"dev\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | playwright>=1.50.0; extra == "dev" | runtime |
agentengine-sdk-pythonEnvironment{
"extras": "a2a,adk,agui,codex,deepagents,dev,judge,kb,langchain,langgraph,skills,tracing",
"marker": "extra == \"all\"",
"requires_python": ">=3.12",
"evaluation": "NOT_EVALUATED"
} | agentengine-sdk-python[a2a,adk,agui,codex,deepagents,dev,judge,kb,langchain,langgraph,skills,tracing]; extra == "all" | runtime |
bdist_wheel · 9,947.65 KB · Python py3
sdist · 9,137.46 KB · Python source
Shared repository data · GitHub
Observed since 20 Oct, 21:50 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:d44055dadfb4e5fbd312d05bcfbeec78e7f08578f344b1c99c3c873a995abb6d