1.2 什么是 Claude Agent SDK?为什么它如此强大? 简单来说,Claude Agent SDK 是著名AI助手 Claude Code 背后的核心引擎。 1.4 技术栈 我们将使用以下现代且强大的技术栈来完成本次构建: • 运行时 (Runtime): Claude Code CLI - 这是Agent SDK的官方运行环境。 • SDK: @anthropic-ai/claude-agent-sdk - 我们的核心工具库。 • 语言 (Language): TypeScript - 提供强大的类型安全,让代码更健壮。 第一步:安装 Claude Code CLI 2. Claude Code CLI 是Agent SDK的运行环境。打开你的终端,输入以下命令进行全局安装: 3. • @anthropic-ai/claude-agent-sdk 是我们的主角——核心SDK。
一、背景:一个SDK解决什么问题在Claude的技术体系中,存在明确的分层:层级定位适用场景ClaudeAPI底层消息接口,一次请求一次响应分类、摘要、提取、固定流程Q&AClaudeAPI+ToolUse AgentSDK引入了循环机制:展开代码语言:TXTAI代码解释用户提示→模型思考→模型请求工具→SDK执行工具→结果返回模型→循环直到任务完成这个循环中,SDK负责:检测模型何时请求工具执行工具并收集结果将结果注入下一轮上下文管理权限 、hooks、session生命周期2.2工具体系的分层设计AgentSDK的工具分为两类:客户端工具(Client-sideTools)模型定义工具的name/schema,SDK在客户端执行内置提供 3.2权限系统——安全地给Agent放权Agent的危险在于"能力越大,破坏越大"。 通过"Agent"工具触发子Agent,两者共享allowed_tools白名单。
Claude Agent SDK 就是为这种场景设计的。它让代理能自主调用工具、根据发现调整策略、判断何时信息足够。几行代码,一个能搜索网络、阅读文档、综合结论的研究代理就跑起来了。 最简实现 Claude Agent SDK 的核心是 query() 函数。 几行代码创建能自主搜索网络并综合结果的研究代理: from claude_agent_sdk import ClaudeAgentOptions, query messages = [] async for Claude Agent SDK 默认缓冲区为 1MB,处理图像时建议设为 10MB。 代码来自 Anthropic Claude Cookbooks(https://github.com/anthropics/claude-cookbooks)的 claude_agent_sdk/00_
,options=ClaudeAgentOptions(model="claude-opus-4-6",allowed_tools=["WebSearch"]),):messages.append(msg ClaudeAgentOptions(model="claude-opus-4-6",allowed_tools=["WebSearch","Read"],))asresearch_agent:#第一次查询 ))asresearch_agent:awaitresearch_agent.query("分析research_agent/projects_claude.png")...图像在消息中会base64编码 =10*1024*1024,))asresearch_agent:#分析图表awaitresearch_agent.query("分析research_agent/projects_claude.png 代码来自AnthropicClaudeCookbooks(https://github.com/anthropics/claude-cookbooks)的claude_agent_sdk/00_The_one_liner_research_agent.ipynb
2.2候选B:ClaudeAgentSDK——厂商一等公民定位:Anthropic官方agent运行时,与Claude、ClaudeCode、Skills、MCP同源。 它的世界观:Agent是Claude+工具集+Skill集+MCPservers的协同。框架的工作是把这套协同变得"无摩擦"。 2.3候选C:自研——完全可控的运行时定位:基于模型SDK(AnthropicSDK/OpenAISDK)+自己的状态管理、tool路由、流式处理。核心抽象:你的抽象。 某天Claude推出了一个杀手级特性,需要切到ClaudeAgentSDK才能用。没有Adapter:业务代码深度依赖LangGraph,迁移需要3人×2个月。 AP6:把multi-agent当默认隐喻错误:默认招"AI同事"——产品agent、工程agent、QAagent。正确:先用singleagent+skills;多agent仅在职责正交时引入。
Claude Code 实战:Agent Skills摘要:面向已用 Claude Code 写代码的开发者,讲清 Skills 三层结构与完整实操路径,帮你把重复工作流封装成可复用、可 Review Agent Skills 换了一个思路:先给 Agent 一份「技能目录」,只有任务匹配时才展开完整说明书。 Agent Skills 的三层与此同构: 层级放什么何时进入上下文元数据name、description(YAML frontmatter)Claude Code 扫描时指令SKILL.md 正文里的流程、约束、输出格式Agent 决定启用该 Skill 后资源scripts/、references/、assets/Agent 按指令需要时 Read 或执行核心概念到此为止只保留三个:渐进式披露 Agent 通过 Bash 工具执行脚本,脚本逻辑留在磁盘上——这正是 Skills 能同时「可编程」又「省 Token」的原因。
我寻思这也不难,打开大龙虾让他自己处理去了,结果聊着聊着我发现一个问题:他用的技能很多都有风险提示,吓得我赶紧看了下token用量,后来查了一下发现claude发布了一个叫做claudeagentsdk 没有SDK时的痛苦如果你想自己开发一个AI应用,没有AgentSDK的话,你得这么干:展开代码语言:PythonAI代码解释#1.发送请求给大模型response=call_claude_api(prompt 有了AgentSDK之后展开代码语言:PythonAI代码解释fromclaude_agent_sdkimportquery,ClaudeAgentOptions#SDK自动处理所有工具调用循环asyncformessageinquery SDK把那些繁琐的循环都帮你处理了。AgentSDK到底做了啥? :BashAI代码解释#安装pipinstallclaude-agent-sdk#设置APIKeyexportANTHROPIC_API_KEY=your-api-key展开代码语言:PythonAI代码解释
设 user 存到 ~/.claude/agent-memory/,设 project 存到 .claude/agent-memory/,跑完一次它会自己往里面写东西,下次还能看到。 它目前还是实验功能,需要先开启:{ "env": { "CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS": "1" }}加到你的 settings.json 开启后,告诉 Claude 你要一个 Agent Team,描述清楚任务和团队结构,它会自动建队、派成员、分配任务:I'm designing a CLI tool that helps developers 注意事项Agent Teams 的 token 消耗比 Subagents 高很多,每个 teammate 是独立的 Claude 实例。 Subagents 从 /agents 命令创建一个,写好 description 和 tools 就能跑;Agent Teams 加一行环境变量,告诉 Claude 你要一个 team 就行。
「我想用 Claude Code 自动化我的工作。」 「我想让 AI 帮我处理重复任务。」 「我想构建一个自己的 Agent。」 这些都是美好的愿望。 今天,用三个步骤,介绍从 0 构建一个 Claude Code Agent 工作流的方法。 一、设计阶段:定义你的「AI 军团」 一个好的 Agent 工作流,始于角色定义。 这个方案很有趣:用 Git 做同步 Agent 通过写文件来「锁定」任务 完成后 push 到共享仓库 其他 Agent pull 最新更改 Git 自动解决冲突(Claude 很聪明,能自己处理) 这就是去中心化协作的魅力 3.1 Agent Loop:永不停歇的循环 一个关键模式: while true; do claude --dangerously-skip-permissions -p "$(cat AGENT_PROMPT.md 参考文献 [1] Medium: How to Set Up and Use Claude Code Agent Teams. [2] Claude Code Overview. [3] Anthropic
大家好,我是"不一样的猿生",作为一个长期钻研 AI Agent 的爱好者,今天特别想跟大家分享一个让我眼前一亮的项目——learn-claude-code。 (亲测最快路径) 1. git clone https://github.com/shareAI-lab/learn-claude-code 2. cd learn-claude-code 3. pip AI Agent 的未来在于工程化 对我来说,learn-claude-code 的最大价值在于:它把那些“工程化的骨架”用最小成本摊开给你看。 你自己撸一遍,收获绝对比让Claude帮你写一百个需求都大。 2026年的AI时代,Prompt 已经不是壁垒,真正拉开差距的是系统设计能力。 项目链接再次放这里:https://github.com/shareAI-lab/learn-claude-code 你上手了吗?
全新 Agents SDK:支持编排单代理和多代理工作流,灵活应对各类复杂场景。 集成可观测性工具:可追踪和检查 agent 工作流执行,让开发过程更加透明。 全新的开源 Agents SDK 简化了多智能体工作流程的编排,相比 Swarm(实验性 SDK)实现了重大改进——该 SDK 已被开发者社区广泛采用,并被多个客户成功部署。 ]", tools=[WebSearchTool()], ) triage_agent = Agent( name="Triage Agent", instructions=" ", handoffs=[shopping_agent, support_agent], ) output = Runner.run_sync( starting_agent=triage_agent Agents SDK 可与 Responses API 和 Chat Completions API 配合使用。
后台运行:进程独立的存在主义最颠覆认知的一点:所有Agent会话后台独立存活。 海德格尔谈“向死而生”,放在这里恰好贴切:每一条Agent会话拥有独立生命周期,它的运行不依赖人类持续注视。程序员的身份,从执行者,慢慢过渡为调度者、观测者。 Claude采用GitWorktree做天然沙盒隔离:展开代码语言:TXTAI代码解释my-project/├──.git/├──.claude/worktrees/│├──session-abc123 /#会话A独立工作区│└──session-def456/#会话B独立工作区└──src/#本地主目录(保持纯净只读)每一个Agent拥有独立工作副本,互不污染、互不冲突。 我见过两类截然不同的使用者:有人凡事无脑新建会话,最后管理任务的成本远超编码本身;有人只把机械、重复、探索性工作交给Agent,自己死守架构与决策。
Claude据此判断自动调用。 2.7 官方文档 Skills 文档 · Agent Skills 开放标准 · 官方插件仓库示例 三、Sub-Agent 完整规范 3.1 定义 Sub-Agent 是一个独立的 Claude 实例, 3.7 内置 Sub-Agent 名称 用途 特点 Explore 只读代码扫描 不加载CLAUDE.md/GitStatus/Memory,极省token(~3K) Plan 规划与研究 同上,轻量级 4.2 Sub-Agent 上下文组成 组件 是否继承 说明 自己的System Prompt ✅ 独立 来自AGENT.md body CLAUDE.md(全局+项目) ✅ 继承 无条件继承 User 特殊规则 Explore和Plan故意跳过CLAUDE.md/Git/Memory以保持轻量(~3K token),General-purpose和自定义Agent则全部加载。
Claude Code 的 Agent Teams 解决的就是这个问题。 源码中有这样一段注释: // We intentionally don't set CLAUDE_CODE_AGENT_ID for the team lead because: // 1. Setting it would cause isTeammate() to return true, breaking inbox polling leader 不会被设置 CLAUDE_CODE_AGENT_ID mailbox 的实现机制:每个 teammate 有一个独立的 inbox 文件,存储在 .claude/teams/{team_name}/inboxes/{agent_name}.json。 把整条链路串起来 Agent Teams 的核心流程可以压缩成下面这张图: 这条链路的核心不是”把模型复制几份”,而是给每个 agent 补齐团队成员所需的运行上下文: 如果只说“Claude Code
今天我们已经在 Agent SDK 中支持 MCP,对 ChatGPT 桌面应用以及 Responses API 的支持也即将到来!」 OpenAI 彷佛有一种打不过就加入的魄力,不难看出,以后开发 Agent 的成本将大大降低。 我已经迫不及待地想看看人们会用 Claude 连接什么,很快也会看到 ChatGPT 的连接成果。」 OpenAI 还表示,他们打算在未来几个月内分享更多有关 MCP 计划的信息。 官方 Agent SDK 文档也一并公布,感兴趣的读者可以查看原文了解更多内容。 OpenAI Agent SDK 文档地址:https://openai.github.io/openai-agents-python/mcp/ 以后,研究者可以利用众多的 MCP 服务器为智能体(Agents
但 Claude Code 这类 AI Agent 面对的不是单轮任务。它要读文件、查调用链、运行命令、分析报错、修改代码、补测试,还要根据工具结果继续调整方向。 在 Agent 场景里,Prompt 只是 Context 的一部分。真正的上下文还包括项目规则、历史会话、工具描述、代码文件、运行结果、错误日志、外部文档、长期记忆、当前任务状态。 这就是 Agent 时代和普通聊天时代的关键区别:Prompt 决定模型怎么听指令,Context 决定模型基于什么做判断。 这对 AI Agent 特别致命。 因为 Agent 的任务通常很长。它会不断读取文件,不断运行工具,不断追加输出。如果不控制上下文质量,当前窗口很快会被低价值信息填满。 AI Agent 也应该如此。 所以 claude-mem 最好的使用方式,不是让 Claude Code 背下所有历史,而是让它在任务开始时先检索相关记忆。
Agent2Agent Java SDK 红帽 宣布,Quarkus 和 WildFly 团队已经与谷歌合作推出了 Agent2Agent Java SDK,这是一个 Java 库,实现了 Agent2Agent 该 SDK 提供了“ 创建代理卡、处理代理执行和管理代理间通信所需的所有组件 ”,并且提供了一个客户端,使开发者可以使用 A2A 协议与 A2A 代理进行交互。
当语言停歇时 灵魂的触碰才刚刚开始 Claude Code 近几个月火速更新,前几天发布了最新版v2.1.71,带来了一个看似不起眼但杀伤力极大的新功能:/loop。 review-pr 520 翻译成人话: "每隔 5 分钟帮我瞅一眼部署挂了没" "每 15 分钟扫一遍错误日志,能修的 bug 直接提 PR" "每 20 分钟自动执行 /review-pr 520" Claude 不存在的 比传统 cron 多一层"防手残"保险 ️ 但它也有"做不到"的事 实际应用场景(抄作业区) /loop的发布,进一步打开了claude code的并行化执行的能力。
它是一个无UI的纯执行引擎,意味着你可以通过SDK直接实例化它,而不依赖任何前端渲染框架(如Ink/React)。 平台化潜力:正是这种分层设计,使得Claude Code从一个封闭的工具,转变为一个开放的、可插拔的本地AI Agent平台。 交互核心:TUI/REPL层与Query/Agent内核的设计奥秘 在Claude Code的架构中,如果说CLI层是启动引擎,那么TUI/REPL交互层与Query/Agent执行内核则构成了整个系统的 资源,并将这个远程Agent的“句柄”(TeammateHandle)返回给本地的Claude Code核心。 Claude Code的Swarm(蜂群)扩展层,正是为了模拟这种团队协作而生。 Swarm不是简单的同时运行多个Agent。它定义了一套Agent间的通信协议、角色分工与协作流程。
它的策略是:守住 /v1/messages 这个稳定核心,在上面叠加 Agent SDK、Claude Managed Agents、Compaction、Memory 等一层层运行时能力,让开发者按控制粒度选择接入深度 Agent SDK:把 Claude Code 变成库 2025 年 9 月,Anthropic 将 Claude Code SDK 重命名为 Claude Agent SDK。 如果说 Agent SDK 是「Claude Code 作为库」,Managed Agents 就是「Agent 作为服务」: • 创建 Agent 配置(模型、system prompt、工具、MCP 三条线的关系: Messages API → 你控制一切,最灵活 Agent SDK → 你控制策略,SDK 跑 loop Claude Managed Agents loop,或有复杂的自定义编排逻辑 • Agent SDK:你想要 Claude Code 级别的 Agent 能力,但嵌入自己的产品,且愿意接受 Claude 模型的绑定 • Managed Agents