深度

Claude Code 工作原理深度解析:代理循环、工具系统与上下文管理

Claude Code 工作原理深度解析:三阶段代理循环(收集上下文/执行动作/验证结果)、五类工具系统、上下文窗口管理策略、可访问资源范围、权限模式与检查点、多模型切换,以及 Skills/MCP/Hooks/Sub-Agents 扩展体系。

2026/3/125分钟 阅读ClaudeEagle

Claude Code 不是一个聊天机器人,它是一个代理编程系统。理解它的工作原理,能让你更有效地使用它——知道什么时候该期待什么,什么时候需要干预。

核心架构:代理循环(Agentic Loop)

当你给 Claude Code 一个任务,它进入一个三阶段循环:

你的指令 ↓ [收集上下文] → 读文件、搜索、理解代码 ↓ [执行动作] → 修改文件、运行命令、调用工具 ↓ [验证结果] → 运行测试、检查输出、对比预期 ↓ 如果未完成 → 循环回第一步 ↓ 任务完成 / 请求你介入

这个循环会自主链式执行数十个动作。修复一个 Bug,Claude 可能会:

  1. 运行测试套件,查看失败信息
  2. 搜索相关源文件
  3. 读取多个文件理解上下文
  4. 修改文件实现修复
  5. 再次运行测试验证
  6. 提交代码

每一步工具调用的结果都会反馈到下一步。你随时可以中断,重新引导方向。

工具系统:代理能力的来源

没有工具,Claude 只能输出文字。有了工具,它能真正执行动作

类别能力
文件操作读取文件、编辑代码、创建新文件、重命名和重组
搜索按模式搜索文件、正则搜索内容、探索代码库结构
执行运行 Shell 命令、启动服务器、执行测试、使用 Git
Web搜索网络、获取文档、查找错误信息
代码智能查看类型错误、跳转定义、查找引用(需插件)
子代理派发任务给其他 Claude 实例并行处理

关键点:工具不是预设步骤,而是 Claude 根据任务自主决定调用哪个。你说"修复测试失败",它自己决定先 run testsread errorsearch fileseditrun tests again

上下文窗口:最重要的资源

Claude Code 最核心的约束是上下文窗口

上下文窗口存储:

  • 完整的对话历史
  • Claude 读取的每个文件内容
  • 每次命令的输出结果
  • CLAUDE.md 和 Auto Memory

上下文满了会怎样?性能下降,Claude 开始"忘记"早期的指令,错误率上升。

上下文管理策略

bash
/status   # 查看当前上下文使用量
/clear    # 清空上下文,开始新会话
/compact  # 压缩历史(保留关键信息)

什么时候清空

  • 完成一个独立任务后
  • 上下文超过 50-60% 时
  • 发现 Claude 开始遗忘之前的指令时

用子代理管理上下文:对大型任务,把工作拆分给子代理,每个子代理有自己独立的上下文窗口,互不干扰。

Claude 能访问什么?

运行 claude 时,Claude Code 默认可以访问:

  • 你的项目:当前目录及子目录的所有文件
  • 终端:你能运行的一切命令(构建工具、Git、包管理器)
  • Git 状态:当前分支、未提交的改动、最近 commit 历史
  • CLAUDE.md:你写的项目规范(每次会话加载)
  • Auto Memory:Claude 自动记录的学习内容(前 200 行)
  • 你配置的扩展:MCP Server、Skills、子代理、Chrome 插件

Claude 看到整个项目,这是它与只看当前文件的内联补全工具的本质区别。

多模型支持

Claude Code 支持切换底层模型,适应不同任务:

bash
/model   # 查看和切换当前使用的模型

或启动时指定:

bash
claude --model claude-opus-4-5

Sonnet:大多数编程任务的最佳选择,速度与质量平衡。
Opus:复杂架构决策、深度推理任务时使用。

权限和安全

权限模式

模式行为快捷键
Normal大多数操作询问确认默认
Auto-Accept自动接受文件编辑Shift+Tab
Plan Mode只读分析,不修改任何文件Shift+Tab×2

检查点(Checkpoint)

Claude Code 在每次工具调用前自动创建 Git 检查点。出了问题:

/undo # 撤回到上一个检查点

即使没有运行 Git commit,也能安全回退。

会话管理

Claude Code 支持跨设备继续会话:

bash
claude --resume          # 恢复最近的会话
claude --resume <id>     # 恢复指定会话
/sessions                # 查看会话列表

会话可以分叉(fork):从某个历史点创建新的对话分支,尝试不同方案。

扩展 Claude Code 的能力

核心工具是基础,还可以按需扩展:

  • Skills:打包可重用的工作流(如 /review-pr/deploy-staging
  • MCP Server:连接外部服务(Jira、Google Drive、Slack、数据库)
  • Hooks:在工具调用前后自动运行 Shell 命令(格式化、Lint 检查)
  • Sub-Agents:把任务拆分给多个 Claude 实例并行处理

实际工作建议

委托,不要指令

  • ❌ 微管理每一步:"先读文件 A,然后修改第 42 行,然后……"
  • ✅ 描述目标:"修复认证 Bug,确保测试通过"

给 Claude 验证手段

  • 有测试:"写完后运行测试套件"
  • 有 UI:粘贴截图,让 Claude 对比实现效果

中途纠偏而不是等到结束 Claude 在工作过程中随时可以中断。如果发现方向不对,直接输入重新引导,比等它做完再全部返工高效得多。


来源:How Claude Code works - Claude Code Docs | Anthropic 官方文档

相关文章推荐

深度Claude Code 底层原理详解:代理循环、工具系统与上下文窗口管理Claude Code 底层原理深度解析:代理循环(收集上下文/执行动作/验证结果)、五类内置工具体系(文件/搜索/命令/Web/代码智能)、上下文窗口管理(监控/清理策略)、权限控制模式,以及与普通聊天工具的本质差异。2026/3/13深度Claude Code 工作原理深度解析:Agentic Loop 三阶段、五类内置工具与 Context 窗口管理Claude Code 工作原理深度解析:Agentic Loop 三阶段(收集上下文/采取行动/验证结果)、五类内置工具(文件操作/搜索/执行/Web/代码智能)、Claude Code 可访问的六类资源、三种执行环境(本地/云端/Remote Control)、会话管理(恢复/分叉/跨分支)、Context 窗口自动压缩机制,以及 Checkpoints 安全机制和三种权限模式详解。2026/3/5深度Claude Code 最佳实践 2026:资深用户总结的 20 个效率提升技巧Claude Code 资深用户总结的 20 个实用最佳实践:上下文管理技巧(精准投喂 vs 全量读取)、CLAUDE.md 高价值写法、自定义命令的场景化设计、权限配置的最小化原则、子代理并行的触发时机、会话压缩与续接的使用策略、与 Git 工作流的结合方式、代码审查的标准提示词、让 Claude 解释而不只是修改代码的技巧、以及避免 Claude「过度自信」的提示词防护模式。2026/3/21深度Claude Code 重构策略完全指南:大型项目安全重构的 AI 辅助方法论Claude Code 辅助代码重构的完整方法论:重构前的安全网搭建(特征测试/快照测试)、渐进式重构策略(不要一次大改)、让 Claude 识别并命名坏味道(Long Method/God Class/Shotgun Surgery)、提取函数/类/模块的标准流程、依赖注入重构(方便测试)、数据库层重构(Repository 模式迁移)、重构进度追踪与 CLAUDE.md 配置,以及大型单体应用向微服务迁移的 AI 辅助路径。2026/3/21深度Claude Code 上下文窗口管理完全指南:100 万 Token 的高效利用策略Claude Code 超长上下文(100万 Token)完整使用指南:上下文窗口的构成(系统提示/工具定义/对话历史/当前请求)、会话压缩(Compaction)的触发机制与配置、--continue 跨会话续接上下文、如何避免上下文溢出、超大代码库的分批处理技巧、Prompt Caching 配合长上下文降低成本,以及 Token 计数工具的使用方法。2026/3/18深度Claude Code 微服务架构实战:设计、拆分与服务间通信完整指南Claude Code 辅助微服务架构开发完整指南:单体到微服务拆分策略、服务边界识别、API Gateway 设计、服务间 gRPC/REST 通信、分布式事务(Saga 模式)、服务发现与健康检查、Docker Compose 本地开发环境,以及微服务监控和链路追踪配置。2026/3/16