返回
查看原链接原链接
Zhihu

Claude Code 源码剖析:Agent 工程化实践笔记

Claude Code源码剖析:架构与核心机制核心结论Claude Code通过四层架构、Tool-Use Loop、动态System Prompt、分类记忆和五步上下文压缩,实现了高效可靠的AI编程Agent。四层分层架构引擎层协调:拼装输入、调用API分发:执行工具调用决策:判断继续或结束工具层+工具,统一规范强制安全属性:只读、破坏性、并服务层API调用上下文压缩MCP协议安全与治理层权限系统Hook系统Bash安全模块Agent工作模式Tool-Use Loop无Thought步骤,模型内部推理while(true)循环:调API->执行工具->再调APIendturn作为终止信号对比ReAct:省Token、更简单、适合强模型Plan Mode两阶段:先规划后执行通过EnterPlanMode/ExitPlanMode工具实现只读探索,写计划到.claude/plans/用户审批后实施System Prompt构造分割线设计静态部分全局共享,动态部分因人而异SYSTEMPROMPTDYNAMICBOUNDARY标记三级缓存全局缓存组织缓存会话缓存Prompt内容模块角色定义与安全红线行为准则:先阅读、少即是多、先诊断操作安全:可逆性、影响范围工具使用:优先专用工具Git安全协议输出风格:简洁,<25词记忆系统记忆类型user(用户画像)feedback(行为反馈,含Why和How)project(项目动态,日期转绝对)reference(外部指针)排除清单不存可从代码推导的信息如代码模式、Git历史、调试方案等存储方式独立.md文件+YAML头部MEMORY.md索引(≤200行/25KB)召回机制Sonnet扫描头部,选择最多5条陈旧度检测(>1天加警告)上下文窗口管理五步压缩策略第1层:大结果存磁盘(>50KB)第2层:砍掉远古消息(Snip第3层:裁剪老工具输出(Micro-Compact)第4层:读时投影(Context Collapse)第5层:全量摘要(Auto-Compact)触发条件与协调各层触发阈值递增Snip告知已释放Token,避免重复压缩设计哲学可靠性优先%代码用于可靠性能轻则轻,逐步加码先从代价最小的压缩开始信任强模型,简化应用层Tool-Use Loop仅if/else小模型做秘书,大模型做决策Sonnet负责记忆选择,Opus负责决策