原文参考:Decoding Claude Code
Claude 作为 Anthropic 的旗舰模型,一直给人一种"温柔又聪明"的印象。但最近我深入研究了 Claude Code 的实现设计后,发现它的"聪明",并非仅仅来自模型能力,更来自一套极其巧妙的系统提示符与架构哲学。
这套设计理念,值得所有做 AI Agent 或工具编排(tool orchestration)的人学习。
一、极简哲学:一个文件的力量
Claude Code 的架构令人惊讶地简单。
它不是一个复杂的多层系统,而是------一个文件。
这背后是一种和传统"设计模式思维"截然相反的理念:
❝ 能不用模板代码,就不要用;能用一个万能类搞定,就不要拆分。 ❞
在 Claude Code 里,没有大量的抽象类或插件注册系统,反而保留了最核心的逻辑循环:
-
一个主循环(event loop)
-
一个消息历史记录(history)
-
一个模型调用函数(LLM call)
这种设计使 Claude Code 易于理解、易于修改、几乎没有副作用。
它更像是一种"极简主义的 AI 工程风格",去掉一切多余的结构,只留下思考与记忆的骨架。
二、循环控制:小模型 + 大脑清晰
Claude Code 的主循环非常纯粹:
在每次循环中,它只做一件事------根据历史记录和最新输入,生成新的行动或回答。
甚至在设计上,它最多只有一个分支。
这意味着逻辑永远保持可预测,调试成本极低。
另外一个细节是:
它经常使用"小模型"来完成循环控制,而不是让"大模型"一直保持活跃。
这点启发很大:
我们往往倾向于让强模型"一肩挑"所有逻辑,但 Claude 的策略是让"小模型"当"大脑皮层",让"大模型"当"专家顾问"。
这样既节省计算成本,又保持了反应速度。
三、Prompt 设计:Claude.md 模式的力量
Claude 的 prompt(提示词) 体系堪称一门艺术。
它的核心在于一个文件:claude.md。
这个文件并不是单纯的"系统提示",而是 模型的自我描述文档。
Claude 在每次交互中都会读取它,来"回忆自己是谁、如何工作、用户的偏好是什么"。
1.claude.md
-
自我角色定义(I am Claude, a helpful AI assistant...)
-
工具说明与使用策略
-
对语气、风格、主动性的规范
-
当前日期、目录、平台信息
-
最近的任务记录与提交历史
-
用户偏好与上下文
光是系统提示符本身就约 2800 tokens,
再加上工具定义(高达 9400 tokens)与 claude.md(1000~2000 tokens),Claude 在启动时已经建立了一整套"元认知系统"。
这是一种"自描述 Agent" 模式。
Claude 不只是执行任务,而是通过 claude.md 理解自己的身份、风格、职责与上下文边界。
2. 特殊语法与启发式设计
Claude 的提示符中广泛使用:
-
XML 标签 来封装元信息
-
Markdown 来组织结构
-
大量示例与启发式指令(heuristics)
这种混合结构,既让模型能稳定解析,又保证了语义丰富度。
简而言之:Claude 的 prompt 就像一部带注释的操作系统手册。
四、Tools:从 Rag 到智能调度的启示
Claude 的工具系统同样耐人寻味。
几个关键点非常值得 Agent 系统设计者参考:
-
LLM 搜索远优于传统 RAG 搜索
Claude 倾向于让模型自己决定如何检索与筛选,而不是仅靠 embedding 相似度。
这种方式虽然更"贵",但结果质量显著更高。
-
好工具的设计哲学
工具的接口越简单,模型越容易用。
Claude 的工具几乎都是自然语言级的定义,没有过多参数。
-
让 Agent 自己管理 To-Do List
Claude 不只是被动响应,而是主动维护任务列表。
每个循环,它会检查当前任务、执行状态、下一步目标------这使它具备一种"自我驱动感"。
换句话说,它不是"等你指令"的助手,而是"与你共事"的伙伴。
五、Steerability:让模型"听话"的艺术
Claude 的"可控性(Steerability)"极强。
这主要来源于几个设计习惯:
-
明确语气与风格
在系统提示中反复强调语气(礼貌、谦逊、主动),强化行为边界。
-
使用"PLEASE THIS IS IMPORTANT"
当需要模型特别注意某个约束时,用这种短语进行语义强化。
实测这种方式能显著提高 LLM 的"遵守率"。
-
将算法与启发式方法写进 prompt
Claude 的提示符不仅包含规则,还包含"如何思考"的示例。
例如,它会写明"先分析需求 → 再列出步骤 → 然后生成代码",形成一致的思考模式。
这种启发式结构让 Claude 的输出更加稳健,也更具"可预测性"。
六、小结:Claude 的工程哲学
总结下来,Claude Code 带来的启发可以用三句话概括:
领域 | Claude 的做法 | 启发 |
---|---|---|
架构 | 一个文件、一个循环、最小状态 | 越简单越稳定 |
Prompt | 自描述 + 启发式 + 结构化 | 让模型理解自己 |
工具 | 自管理 + 简接口 + 智能调度 | 让模型管理任务而不是任务驱动模型 |
Claude Code 的设计不是"炫技",而是一种极致的"去复杂化"。
它提醒我们:AI 工程的未来不是更复杂的框架,而是更聪明的约束。
💡 最后
如果你也在做 Agent 系统、工具集成或 RAG 优化,不妨试着反思:
是不是该少写点代码、多写点启发?
是不是该让模型自己"懂自己"?
Claude Code 告诉我们:
复杂的问题,不一定需要复杂的代码。
有时候,一份聪明的 prompt + 一个干净的循环,就能让 AI 拥有灵魂。