Claude Code TutorialMental Models

引擎盖下的 Claude Code

TAOR 循环、工具体系、上下文压缩、权限系统——理解内部机制以更好地协作

用了这么久 Claude Code,你有没有好奇过:当你按下回车之后,到底发生了什么?

理解内部机制不是为了炫技,是因为理解之后,很多之前困惑的现象突然就说得通了。

TAOR 核心循环

Claude Code 的心脏是一个叫 TAOR 的 Agent 循环。你输入一个任务后,它不是直接生成一整段代码,而是不断循环:

  1. Think(思考) — 分析当前状态,决定下一步做什么
  2. Act(行动) — 调用一个工具执行操作(读文件、写代码、运行命令)
  3. Observe(观察) — 读取返回结果,判断任务是否完成
  4. Repeat(重复) — 未完成则回到 Think 继续。整个过程可能转几十圈才停下来

这就解释了为什么 Claude 有时候看起来"绕弯路"——它不是一个从输入到输出的直线程序,而是一个不断试探和调整的循环体。这是设计的一部分,不是 bug。

[!TIP] 实操建议 给 Claude 明确的验证标准特别重要。告诉它"测试通过就停"或"生成文件就行",它收敛的速度会快很多。

四个能力原语

Claude Code 内置 40+ 工具,但所有能力归结为 4 个原语:

原语做什么典型工具
Read读文件、读代码、搜索内容Read、Grep、Glob
Write写文件、编辑代码Write、Edit
Execute运行命令、执行脚本Bash
Connect连接外部服务MCP 工具、WebFetch

其中 Bash 是万能适配器npm installpython test.pygit push,通过它可以操作一切。这也是 Claude Code 能在几乎任何技术栈中工作的原因,不像某些 IDE 插件只支持特定语言。

技术栈

组件技术选择为什么
运行时Bun比 Node.js 更快的冷启动和 I/O
UI 框架React + Ink终端里跑 React,组件化管理复杂 UI
语言严格模式 TypeScript全面的类型安全
Schema 验证Zod v4运行时类型检查

为什么在终端里用 React?因为 Claude Code 的终端 UI 其实很复杂:实时更新的进度条、可折叠的代码 diff、权限确认弹窗、多层嵌套的工具调用展示。React 的组件模型让这些变得自然。

上下文压缩

你可能遇到过这种情况:和 Claude 聊了很久之后,它突然忘了你之前说过的某个要求。

这不是它在敷衍你。当上下文窗口快满的时候,系统会把整个对话历史压缩成一段摘要文本。这是有损操作——核心信息会保留,但具体措辞、边角细节容易丢失。

更重要的是:如果经历多次压缩,信息损失会累积。每压缩一次就损失一点,几次之后,最早的上下文可能只剩一个模糊的影子。

[!WARNING] 实操建议 重要的约束和要求,写进 CLAUDE.md 而不是只在对话里说一次。对话会被压缩,但 CLAUDE.md 每次都会重新读取。这也是"三层模型"里的结论:把信息沉淀到 Context 层。

权限系统

Auto 模式背后不是简单的全放行,而是一个 ML 驱动的分类器:

级别示例处理方式
LOW读取文件自动放行
MEDIUM写入配置文件视上下文判断
HIGHrm -rf、推送代码必须用户确认

一些文件被硬编码为受保护状态(.gitconfig.ssh/.aws/credentials),无论什么权限模式都会额外小心。甚至还有路径穿越防御,防止恶意代码绕过权限检查。

自动记忆维护

Claude Code 有一个后台子代理,会定期整理你的记忆文件。它分四步走:

  1. 审阅现有内容
  2. 提取新的有用信息
  3. 整合重复条目
  4. 修剪过长的部分

目标是把记忆保持在合理大小内。这就是为什么长期使用后,你会觉得 Claude 越来越"懂你"——你的偏好、习惯、项目上下文,都被这个系统慢慢积累和维护着。

功能演进时间线

时间里程碑
2024.11MCP 协议发布,获得连接外部服务的能力
2025.02公开发布 Beta 版
2025.05GA 正式发布,稳定性大幅提升
2025.07SubAgents 上线,支持子进程并行
2025.09Hooks 机制引入,事件驱动的自动化
2025.10Skills 系统发布,社区共享能力包
2026.02Agent Teams 推出,多 Agent 协作
2026.03Computer Use + Voice Mode 上线

平均每 2 个月一个大功能。具体命令可能变,但"描述需求 → 审查输出 → 迭代改进"这个核心循环,在可预见的未来不会变。

[!NOTE] 最后 理解 Claude Code 的内部机制不是为了把它当黑盒拆开,而是当你知道循环怎么转、上下文怎么压缩、权限怎么判断之后,你就能更好地和它协作。就像开车不需要懂发动机原理,但懂了之后你会知道什么时候该换挡。

本章节为会员专属内容

购买全站技能解锁即可免费阅读所有进阶教程,包括对话技巧、扩展能力、实战项目和思维模型等完整内容。

已购买会员?请先登录你的账号,即可自动解锁。