
Dive into Claude Code 深度解析Agent核心循环的9步管线与5种停止条件【免费下载链接】Dive-into-Claude-CodeA Systematic Analysis and Discussion of Claude Code for Designing Todays and Future AI Agent Systems项目地址: https://gitcode.com/gh_mirrors/di/Dive-into-Claude-CodeDive into Claude Code 是一个对 Claude Code 进行源码级架构分析的开项目它拆解了 AI 智能体Agent核心循环的每一轮是如何运转的。本文将带你快速看懂贯穿智能体循环的9 步管线与5 种停止条件——你会发现这套系统 98.4% 都是确定性基础设施真正负责“思考”的 AI 逻辑只占约 1.6%。为什么值得读这份解析大多数人以为“聪明的 Agent”来自更复杂的模型或更花哨的循环但 Claude Code 给出的答案恰恰相反核心循环就是一个 while 循环遵循 ReAct 模式组装上下文 → 调用模型 → 分派工具 → 检查权限 → 执行 → 重复。复杂度在循环之外权限门控、上下文管理、工具路由、故障恢复这些才是让 Agent 稳定可靠的“骨架”。这个观点来自 README.md 的 TL;DR“Agent 循环是一个简单的 while 循环真正的工程复杂度存在于它周围的系统里。”理解了这一点你就抓住了整个架构的命脉。系统全景Agent 核心循环如何嵌入整个系统Claude Code 由 7 个组件构成用户 → 接口 → Agent 循环 → 权限系统 → 工具 → 状态与持久化 → 执行环境。其中Agent Loop 是心脏它向上向工具“提出行动”由权限系统给出“允许/询问/拒绝”再把工具结果收集回来同时负责从状态中读取数据并持久化。整个系统可以看成5 层、21 个子系统表层入口与渲染、核心层Agent 循环 压缩管道、安全/行动层权限、工具、钩子、状态层转录、记忆、后端层Shell、MCP、沙箱。这张分层图能帮你定位“核心循环”在其中的位置——它处在核心层而上下文整形、压缩管道都围绕它服务。智能体循环的 9 步管线每一轮都走这条流水线这是本文的核心。Claude Code 的每一轮turn都严格执行一条 9 步管道无论来自命令行、SDK 还是 IDE所有入口最终都汇聚到同一个queryLoop步骤名称做什么1设置解析Settings resolution读取并合并配置确定本轮运行的规则2状态初始化State init初始化本轮的运行状态3上下文组装Context assembly从 9 个有序来源拼装模型能看到的内容4条件式上下文管理按压力触发 5 个“调用前整形”阶段5模型调用Model call请求大模型生成下一步动作6工具分派Tool dispatch解析模型返回的工具调用意图7权限门控Permission gate拒绝优先地判断允许 / 询问 / 拒绝8工具执行Tool execution真正运行工具拿到结果9停止条件检查Stop condition判断是否结束本轮否则回到第 1 步第 4 步是很多人忽略的关键在调用模型之前系统会按顺序检查五个上下文整形阶段预算缩减 → 裁剪 Snip → 微压缩 Microcompact → 上下文折叠 Context Collapse → 自动压缩 Auto-Compact每个阶段只在满足自身条件时才真正改动上下文。这样模型始终拿到“刚好够用、又不超载”的信息。 两条执行路径StreamingToolExecutor让工具一边流入一边开始执行降低延迟后备的runTools则把工具区分为“可并发安全”与“互斥”两类。5 种停止条件循环什么时候停一个 Agent 循环最怕失控——既不能该停不停无限打转、烧钱也不能不该停就停任务没做完。Claude Code 用恰好 5 种停止条件来控制循环的边界这也是长任务 Agent 稳定性的关键停止条件触发时机直觉理解无工具调用模型这一轮不再请求任何工具活干完了给出最终回答达到最大轮次迭代次数超过设定上限预算护栏防止无限循环上下文溢出上下文窗口撑爆信息太多触发压缩或终止钩子干预Stop 钩子介入用户/开发者插入的自定义刹车显式中止用户主动叫停人类随时保留控制权这张“停止条件清单”是长任务 Agent 的核心机制它让系统知道何时该继续、何时该验证、何时该停下来找人而不是盲目地把 token 花光。上下文与恢复循环之外的“隐形护栏”循环能跑得稳靠的是两样东西稳定的上下文和出错后的恢复。9 个有序上下文来源系统提示 → 环境信息 → CLAUDE.md 层级 → 路径规则 → 自动记忆 → 工具元数据 → 对话历史 → 工具结果 → 压缩摘要。4 级 CLAUDE.md 记忆托管级 → 用户级 → 项目级 → 本地级全部基于文件可查、可改、可进版本控制。循环并非“一错就崩”而内置了多重视恢复机制输出 token 上限逐级放宽每轮最多重试 3 次反应式压缩每轮最多触发一次提示过长降级上下文折叠溢出 → 反应式压缩 → 终止流式后备 备用模型切换主路径失败时自动兜底这套“恢复护栏”正是 98.4% 基础设施的核心体现——循环本身很简单难的是让它在真实世界里不出事。小结把这份解析用起来的 3 个要点别把复杂度押在模型上Agent 的可靠来自循环之外的权限、上下文与恢复系统这就是“护城河是 harness 而非模型”的含义。给循环装好 9 步管线和 5 种停止条件明确每一轮做什么、何时停是长任务 Agent 不打转、不失控的前提。上下文是稀缺资源先用渐进式压缩“整形”再交给模型远比事后截断更稳。想继续深入可阅读 docs/architecture.md 的“轮次执行9 步管道”章节以及 docs/architecture_zh.md 的中文详解若你想亲手构建自己的 Agentdocs/build-your-own-agent.md 提供了从设计问题到取舍的完整指南。【免费下载链接】Dive-into-Claude-CodeA Systematic Analysis and Discussion of Claude Code for Designing Todays and Future AI Agent Systems项目地址: https://gitcode.com/gh_mirrors/di/Dive-into-Claude-Code创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考