SpyBara
Go Premium

agent-sdk/overview.md 2026-05-02 18:14 UTC to 2026-05-04 22:58 UTC

607 added, 0 removed.

2026
Sun 31 06:39 Sat 30 06:23 Fri 29 06:38 Thu 28 06:37 Wed 27 06:42 Tue 26 06:33 Sun 24 06:25 Sat 23 06:18 Fri 22 06:33 Thu 21 06:36 Wed 20 06:35 Tue 19 06:34 Mon 18 23:59 Sun 17 01:01 Fri 15 22:58 Thu 14 17:02 Wed 13 23:01 Tue 12 22:57 Mon 11 23:00 Sun 10 23:03 Sat 9 04:57 Fri 8 22:00 Thu 7 22:59 Tue 5 23:00 Mon 4 22:58 Sat 2 18:14 Fri 1 18:19

Agent SDK 概览

使用 Claude Code 作为库构建生产级 AI 代理

构建能够自主读取文件、运行命令、搜索网络、编辑代码等的 AI 代理。Agent SDK 为您提供了与 Claude Code 相同的工具、代理循环和上下文管理,可在 Python 和 TypeScript 中编程。

import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions


async def main():
async for message in query(
prompt="Find and fix the bug in auth.py",
options=ClaudeAgentOptions(allowed_tools=["Read", "Edit", "Bash"]),
):
print(message)  # Claude reads the file, finds the bug, edits it


asyncio.run(main())

Agent SDK 包含用于读取文件、运行命令和编辑代码的内置工具,因此您的代理可以立即开始工作,无需您实现工具执行。深入了解快速入门或探索使用 SDK 构建的真实代理:

开始使用

1

安装 SDK

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

设置您的 API 密钥

控制台获取 API 密钥,然后将其设置为环境变量:

export ANTHROPIC_API_KEY=your-api-key

SDK 还支持通过第三方 API 提供商进行身份验证:

  • Amazon Bedrock:设置 CLAUDE_CODE_USE_BEDROCK=1 环境变量并配置 AWS 凭证
  • Google Vertex AI:设置 CLAUDE_CODE_USE_VERTEX=1 环境变量并配置 Google Cloud 凭证
  • Microsoft Azure:设置 CLAUDE_CODE_USE_FOUNDRY=1 环境变量并配置 Azure 凭证

有关详细信息,请参阅 BedrockVertex AIAzure AI Foundry 的设置指南。

3

运行您的第一个代理

此示例创建一个代理,该代理使用内置工具列出当前目录中的文件。

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())

准备好构建了吗? 按照快速入门在几分钟内创建一个查找和修复 bug 的代理。

功能

使 Claude Code 强大的一切都可在 SDK 中使用:

您的代理可以开箱即用地读取文件、运行命令和搜索代码库。关键工具包括:

工具 功能
Read 读取工作目录中的任何文件
Write 创建新文件
Edit 对现有文件进行精确编辑
Bash 运行终端命令、脚本、git 操作
Monitor 监视后台脚本并对每个输出行作为事件做出反应
Glob 按模式查找文件(**/*.tssrc/**/*.py
Grep 使用正则表达式搜索文件内容
WebSearch 搜索网络以获取当前信息
WebFetch 获取并解析网页内容
AskUserQuestion 向用户提出带有多选选项的澄清问题

此示例创建一个代理,该代理在您的代码库中搜索 TODO 注释:

import asyncio
from claude_agent_sdk import query, ClaudeAgentOptions


async def main():
async for message in query(
prompt="Find all TODO comments and create a summary",
options=ClaudeAgentOptions(allowed_tools=["Read", "Glob", "Grep"]),
):
if hasattr(message, "result"):
print(message.result)


asyncio.run(main())

Claude Code 功能

SDK 还支持 Claude Code 的基于文件系统的配置。使用默认选项,SDK 从您的工作目录中的 .claude/~/.claude/ 加载这些。要限制加载哪些源,请在您的选项中设置 setting_sources(Python)或 settingSources(TypeScript)。

功能 描述 位置
Skills 在 Markdown 中定义的专门功能 .claude/skills/*/SKILL.md
Slash commands 用于常见任务的自定义命令 .claude/commands/*.md
Memory 项目上下文和说明 CLAUDE.md.claude/CLAUDE.md
Plugins 使用自定义命令、代理和 MCP 服务器扩展 通过 plugins 选项编程

将 Agent SDK 与其他 Claude 工具进行比较

Claude 平台提供了多种使用 Claude 构建的方式。以下是 Agent SDK 的适用场景:

Anthropic Client SDK 为您提供直接 API 访问:您发送提示并自己实现工具执行。Agent SDK 为您提供具有内置工具执行的 Claude。

使用 Client SDK,您实现工具循环。使用 Agent SDK,Claude 处理它:

# Client SDK: You implement the tool loop
response = client.messages.create(...)
while response.stop_reason == "tool_use":
result = your_tool_executor(response.tool_use)
response = client.messages.create(tool_result=result, **params)

# Agent SDK: Claude handles tools autonomously
async for message in query(prompt="Fix the bug in auth.py"):
print(message)

更新日志

查看完整的更新日志以了解 SDK 更新、bug 修复和新功能:

报告 bug

如果您在 Agent SDK 中遇到 bug 或问题:

品牌指南

对于集成 Claude Agent SDK 的合作伙伴,使用 Claude 品牌是可选的。在您的产品中引用 Claude 时:

允许:

  • "Claude Agent"(首选用于下拉菜单)
  • "Claude"(当已在标记为"Agents"的菜单中时)
  • "{YourAgentName} Powered by Claude"(如果您有现有的代理名称)

不允许:

  • "Claude Code" 或 "Claude Code Agent"
  • Claude Code 品牌的 ASCII 艺术或模仿 Claude Code 的视觉元素

您的产品应保持自己的品牌,不应显示为 Claude Code 或任何 Anthropic 产品。如有关于品牌合规性的问题,请联系 Anthropic 销售团队

许可证和条款

Claude Agent SDK 的使用受 Anthropic 商业服务条款管制,包括当您使用它为您自己的客户和最终用户提供的产品和服务时,除非特定组件或依赖项由该组件的 LICENSE 文件中指示的不同许可证覆盖。

后续步骤