Claude Agent SDK 把 Claude Code 的 agentic 能力——tool use、子代理、多轮推理——打包成一个你可以编程使用的 SDK。关键点在于:它可以用来构建任何领域的 agent,不只是写代码。
它是什么
Agent SDK(claude_agent_sdk 包)提供了构建自主、使用工具的 AI agent 的基础设施。研究助手、数据处理器、客服 agent、文档分析器——任何需要多步推理加工具执行的场景。
它不是移动端框架,不是聊天组件,不是测试工具。它是一个服务端/CLI SDK,给你和驱动 Claude Code 一样的 agentic 循环,让你用在自己的领域里。
不只是写代码
一个常见误解:Agent SDK 只能和代码仓库一起用。不是。它适用于任何领域。一个搜索网页、阅读文档、产出结构化报告的研究 agent 完全不需要代码仓库。WebSearch、Read 等工具可以独立于任何代码库使用。
三个核心接口
SDK 提供三个构建模块:
query()— 无状态的单次 prompt 操作。处理一个文档、分类一个工单、回答一个问题。跨调用之间没有上下文。ClaudeSDKClient— 有状态的多轮交互。跨多次交换维持对话上下文。后续问题自动引用之前的上下文。ClaudeAgentOptions— 两个接口共用的配置。System prompt、允许的工具、权限模式、最大轮数、hooks、MCP server。
为什么不直接用 Messages API 搭?
你当然可以直接在 Claude Messages API 上搭 agent。但那你得自己实现 agentic 循环——工具执行周期、子代理管理、权限控制、轮数限制、hook 执行。Agent SDK 把这些全部预制好了。它封装的是同一个 API,用的是同一个模型,所以能力上没有差异。优势在基础设施,不是增强的模型访问。
SDK 不会让 API 调用免费(同样的 token 成本),不保证确定性行为(模型输出仍然可变),也不会用不同的模型。它给你的是管道设施,让你专注于领域逻辑。
一句话总结: Agent SDK(claude_agent_sdk)把 Claude Code 的 agentic 能力打包成可编程接口,用于构建任何领域的工具使用 agent——不限于写代码。