📚AI 编程官方教程中文版
官方教程中文版扩展与自动化

使用 Agent SDK

用 Claude Agent SDK 把 Claude Code 的 agent loop、工具和上下文管理嵌入自己的程序。

Claude Agent SDK 是把 Claude Code 作为库使用的入口。它让你在 Python 或 TypeScript 程序中调用同一套 agent loop、工具、上下文管理和权限机制。

官方文档说明:旧的 Claude Code SDK 已更名为 Claude Agent SDK。

能做什么

Agent SDK 适合把 Claude Code 能力嵌到自己的系统里:

  • 读取文件。
  • 运行命令。
  • 搜索代码。
  • 编辑文件。
  • 调用 MCP。
  • 使用 skills、hooks、project instructions。
  • 流式返回消息和工具调用。
  • 跟踪成本和 usage。
  • 做结构化输出。
  • 部署成生产 agent 服务。

如果你只是日常写代码,用 Claude Code CLI / IDE 就够;如果你要把 coding agent 做成产品、服务、内部平台或自动化 worker,再用 SDK。

安装

TypeScript:

npm install @anthropic-ai/claude-agent-sdk

Python:

pip install claude-agent-sdk

官方说明 TypeScript SDK 会按平台带一个 Claude Code native binary optional dependency,因此不一定需要另外安装 Claude Code。

认证

基础方式是 API key:

export ANTHROPIC_API_KEY=your-api-key

SDK 也支持第三方 API provider,例如 Amazon Bedrock、Google Vertex AI、Microsoft Foundry。对应环境变量和云凭据要按官方 provider 文档配置。

最小 Python 示例

import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions


async def main():
    async for message in query(
        prompt="What files are in this directory?",
        options=ClaudeAgentOptions(allowed_tools=["Bash", "Glob"]),
    ):
        if hasattr(message, "result"):
            print(message.result)


asyncio.run(main())

权限边界

SDK 不等于“无限权限”。生产化时要显式控制:

  • allowed_tools
  • 文件系统访问范围。
  • shell 命令权限。
  • API key 和 secrets。
  • 审批和用户输入。
  • 日志和 OpenTelemetry。
  • sandbox 或容器隔离。

把 Claude Code 嵌入系统后,安全边界从“本地 CLI 使用习惯”变成“产品运行时治理”。

官方来源

On this page