Claude Code
Claude Code 是 [[Anthropic]] 开发的 AI 编程助手,采用 [[multi-agent-coordination|编排器-子代理模式]],让主代理在需要时调度子代理进行并行探索。
核心架构
编排器-子代理模式
- 主代理:编写代码、编辑文件、运行命令
- 子代理:在后台执行大型代码库搜索或独立问题调查
- 每个子代理在独立上下文窗口运行,返回提炼后的结论
这种设计保持主代理上下文聚焦于主要任务,同时实现并行探索。
工具设计哲学
渐进式披露 (Progressive Disclosure)
允许智能体通过探索逐步发现相关上下文,而非一次性提供所有信息。
实现方式:
- Agent Skills:技能文件可递归引用其他文件
- 模型按需读取,避免上下文膨胀
工具演进案例
AskUserQuestion 工具
解决 Claude 提问能力的迭代过程:
- 尝试 1:在 ExitPlanTool 添加问题参数 → 混淆了计划和问题
- 尝试 2:修改输出格式为 Markdown → 不稳定,易偏离结构
- 尝试 3:独立 AskUserQuestion 工具 → 成功,可触发模态窗口阻塞循环
从 TodoWrite 到 Task 工具
- TodoWrite:早期用于保持模型按计划推进
- Task 工具:支持依赖关系、跨子代理共享更新、可修改删除
随着模型能力提升,旧工具可能成为限制因素。
搜索能力演进
| 阶段 | 技术 | 特点 |
|---|---|---|
| 初期 | RAG | 预索引代码库,速度快但需设置,Claude 被动接收上下文 |
| 现在 | Grep 工具 | Claude 主动搜索构建上下文 |
| 进阶 | Agent Skills | 递归搜索多层文件 |
关键洞察
“Seeing like an agent”(像智能体一样思考)
设计工具需要:
- 观察模型输出
- 实验不同方案
- 理解模型的能力和限制
- 提供与其能力相匹配的工具
就像给不同技能水平的人解决数学问题的工具:纸笔 → 计算器 → 电脑编程,取决于使用者的能力。
工具设计原则
- 从简单开始:先用最少工具观察瓶颈
- 持续迭代:随着模型能力进化调整工具
- 高门槛:新增工具会增加模型选择负担
- 渐进披露:优先使用技能文件而非新增工具
相关实体
- [[anthropic]] — 开发公司
- [[ai-agents]] — AI 代理系统
- [[multi-agent-coordination]] — 多智能体协调模式