Claude Code源码挖出了12个可复用的Agent设计模式
型会换,工具会变,但这套底层思路可以一直用
Claude Code源码泄露,技术圈都在扒代码。但我更关注背后的12个通用设计模式,分成四类:记忆与上下文、工作流与编排、工具与权限、自动化。每个模式一句话说清楚。
一、记忆与上下文(5个)
1. 持久化指令文件
项目根目录放一个配置文件,每次会话自动加载。不用每次重新交代规则。
代价:文件要维护,过时反而误导。
2. 作用域上下文组装
按目录拆分规则(组织级/项目级/子目录级),Agent动态加载当前目录适用的规则。
代价:规则分散,不容易一眼看清加载了哪些。
3. 分层记忆
索引放上下文(几百行以内),详细内容按需加载,历史记录存磁盘。不浪费token。
代价:实现复杂,需要设计信息升降级逻辑。
4. 记忆整合
后台自动整理记忆:去重、删旧、重组结构(源码里的autoDream)。
代价:整理消耗token,清太狠会误删。
5. 渐进式上下文压缩
越久远的信息压缩越粗:新对话保留细节,旧内容逐步总结成短摘要。
代价:有损压缩,细节丢失后Agent可能瞎编。
二、工作流与编排(3个)
6. 探索-规划-行动循环
先只读探索,再规划对齐,最后才动手改代码。权限逐步放开。
代价:小任务显得流程过重。
7. 上下文隔离子智能体
不同子Agent负责调研/规划/执行,各自独立上下文,互不污染。
代价:主Agent要协调信息传递,传多传少都麻烦。
8. 分支-合并并行
拆成多个分支并行处理(如用git worktree),最后合并结果。
代价:合并时冲突可能更难解。
三、工具与权限(3个)
9. 渐进式工具扩展
先给一小部分常用工具,复杂工具按需再开。避免选择困难。
代价:开晚了会让Agent走弯路。
10. 命令风险分类
执行前判断风险:低风险自动放行,高风险人工确认或拦截。
代价:规则会误判,需要不断调。
11. 单用途工具设计
把常见操作拆成专用工具(读文件、搜索等),而不是全用shell。
代价:灵活性受限,仍需保留通用shell兜底。
四、自动化(1个)
12. 确定性生命周期钩子
把“必须执行”的动作(如格式化、校验)挂到生命周期节点上自动触发,不依赖提示词。
代价:问题不好排查,因为逻辑在对话之外跑。
一句话总结
别指望模型靠“记住”来做事。该放文件就放文件,该分层就分层,该自动化就自动化。好模式比好模型更长久。
夜雨聆风