Claude Code SDK 已重命名为 Claude Agent SDK。如果您正在从旧 SDK 迁移,请参阅迁移指南。
安装
SDK 选项
Claude Agent SDK 提供多种形式以适应不同的使用场景:- TypeScript SDK - 适用于 Node.js 和 Web 应用程序
- Python SDK - 适用于 Python 应用程序和数据科学
- 流式与单次模式 - 了解输入模式和最佳实践
为什么使用 Claude Agent SDK?
Claude Agent SDK 基于为 Claude Code 提供支持的代理框架构建,提供了构建生产就绪代理所需的所有构建块。 利用我们在 Claude Code 上所做的工作,包括:- 上下文管理:自动压缩和上下文管理,确保您的代理不会耗尽上下文。
- 丰富的工具生态系统:文件操作、代码执行、网络搜索和 MCP 可扩展性
- 高级权限:对代理功能的细粒度控制
- 生产必需品:内置错误处理、会话管理和监控
- 优化的 Claude 集成:自动提示缓存和性能优化
您可以使用 SDK 构建什么?
以下是您可以创建的一些示例代理类型: 编码代理:- 诊断和修复生产问题的 SRE 代理
- 审计代码漏洞的安全审查机器人
- 分类事件的值班工程助手
- 执行样式和最佳实践的代码审查代理
- 审查合同和合规性的法律助手
- 分析报告和预测的财务顾问
- 解决技术问题的客户支持代理
- 为营销团队提供的内容创作助手
核心概念
身份验证
对于基本身份验证,请从 Claude Console 获取 Claude API 密钥并设置ANTHROPIC_API_KEY
环境变量。
SDK 还支持通过第三方 API 提供商进行身份验证:
- Amazon Bedrock:设置
CLAUDE_CODE_USE_BEDROCK=1
环境变量并配置 AWS 凭据 - Google Vertex AI:设置
CLAUDE_CODE_USE_VERTEX=1
环境变量并配置 Google Cloud 凭据
完整的 Claude Code 功能支持
SDK 提供对 Claude Code 中所有默认功能的访问,利用相同的基于文件系统的配置:- 子代理:启动存储为 Markdown 文件的专门代理,位于
./.claude/agents/
- 钩子:执行在
./.claude/settings.json
中配置的自定义命令,响应工具事件 - 斜杠命令:使用定义为 Markdown 文件的自定义命令,位于
./.claude/commands/
- 内存 (CLAUDE.md):通过提供持久指令和上下文的
CLAUDE.md
文件维护项目上下文
系统提示
系统提示定义您的代理的角色、专业知识和行为。这是您指定要构建的代理类型的地方。工具权限
通过细粒度权限控制您的代理可以使用哪些工具:allowedTools
- 明确允许特定工具disallowedTools
- 阻止特定工具permissionMode
- 设置整体权限策略
模型上下文协议 (MCP)
通过 MCP 服务器使用自定义工具和集成扩展您的代理。这允许您连接到数据库、API 和其他外部服务。报告错误
如果您遇到 Agent SDK 的错误或问题:- TypeScript SDK:在 GitHub 上报告问题
- Python SDK:在 GitHub 上报告问题
相关资源
- CLI 参考 - 完整的 CLI 文档
- GitHub Actions 集成 - 自动化您的 GitHub 工作流程
- MCP 文档 - 使用自定义工具扩展 Claude
- 常见工作流程 - 分步指南
- 故障排除 - 常见问题和解决方案