Claude Code 的架构可以拆分为六大核心系统,各自承担不同的职责,共同构成一个完整的 Agent 工作闭环。
| 系统 | 核心职责 |
|---|---|
| 内置工具系统 | 读写文件、执行命令、搜索代码——Agent 的"手脚" |
| 多级记忆系统 | 跨会话保留项目规范、开发偏好——Agent 的"长期记忆" |
| 扩展能力系统 | MCP / Skills / Plugin 三套扩展机制——Agent 的"技能树" |
| 项目管理系统 | Checkpoint 回滚、Git 集成、安全沙箱——Agent 的"安全网" |
| 斜杠命令系统 | 50+ 内置命令控制 Agent 行为——Agent 的"控制面板" |
| 多 Agent 协作系统 | Sub-Agent 委托、后台任务、Team 协作——Agent 的"团队" |
这六大系统并非各自独立运行,而是以 LLM(大语言模型)为中枢,在每一次任务执行中动态协作。
图1:Claude Code 六大核心系统围绕 LLM 大脑协同工作
一张图看透 Claude Code 工作流程:
┌─────────────────────────────────────────────────────────────────┐
│ 用户输入任务 │
│ "帮我重构这个登录模块" │
└─────────────────────────┬───────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────────────────┐
│ 1. 记忆系统读取 CLAUDE.md │
│ → 了解项目技术栈、代码规范、架构决策 │
└─────────────────────────┬───────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────────────────┐
│ 2. 内置工具扫描代码库(Grep/Glob/Read) │
│ → 理解现有架构、找到相关文件 │
└─────────────────────────┬───────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────────────────┐
│ 3. LLM 决策:是否需要 /plan 先规划 │
│ → 复杂任务进入 Plan Mode,复杂方案先讨论再动手 │
└─────────────────────────┬───────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────────────────┐
│ 4. 工具执行循环(Write/Edit/Bash) │
│ ┌─────────────────────────────────┐ │
│ │ 工具执行 → 结果反馈 → LLM决策 │ ◄── 这个循环一直持续 │
│ │ ↑ │ │
│ │ └──────────────────────────│ │
│ └─────────────────────────────────┘ │
│ 同时:Checkpoint 在每次变更时自动创建快照 │
└─────────────────────────┬───────────────────────────────────────┘
▼
┌─────────────────────────────────────────────────────────────────┐
│ 5. 任务完成,用户验收 / 检查 diff │
│ 如不满意 → /rewind 回滚到任意检查点 │
└─────────────────────────────────────────────────────────────────┘
核心循环:用户输入 → 记忆理解 → 工具扫描 → LLM 决策 → 工具执行 → 结果反馈 → 下一步决策
举一个直观的例子:
当你对 Claude Code 说"帮我给这个项目添加一个用户登录功能"时,实际发生的过程是:
- 记忆系统先读取 CLAUDE.md,了解项目的技术栈和代码规范
- 内置工具(Grep/Glob/Read)扫描代码库,理解现有架构
- 斜杠命令判断是否进入 Plan Mode 先规划再执行
- 内置工具(Write/Edit/Bash)创建文件、编写代码、运行测试
- 项目管理系统在每次文件变更时自动创建 Checkpoint
- 如果任务复杂,可能委托 Sub-Agent 并行处理前端和后端
- 如果需要查询数据库 Schema,可能调用 MCP Server 获取信息
2. 内置工具系统:Agent 的执行引擎
内置工具是 Claude Code 与外部世界交互的唯一通道——模型本身不能直接操作文件系统或执行命令,所有操作都必须通过工具调用 (Tool Use) 完成。Claude Code 内置了以下核心工具:
| 工具 | 功能 | 典型场景 |
|---|---|---|
| Read | 读取文件内容(支持代码、图片、PDF) | 阅读代码、查看配置文件、分析截图 |
| Write | 创建新文件或完整覆写 | 创建新组件、写入配置文件 |
| Edit | 精准编辑文件的指定部分(基于字符串匹配替换) | 修改函数逻辑、更新导入语句 |
| Bash | 在 Shell 中执行任意命令 | 运行测试、安装依赖、Git 操作 |
| Grep | 基于正则表达式搜索文件内容 | 查找函数定义、追踪变量引用 |
| Glob | 按文件名模式匹配搜索文件 | 查找所有 .tsx 组件、定位配置文件 |
| Think | 模型内部推理(不产生外部操作) | 复杂逻辑规划、多方案权衡 |
| Agent | 启动 Sub-Agent 处理子任务 | 并行处理独立任务、深度代码探索 |
| WebSearch | 搜索互联网获取最新信息 | 查询 API 文档、搜索错误解决方案 |
| WebFetch | 获取指定 URL 的内容 | 读取在线文档、下载配置模板 |
关注点:注意终端中每个工具调用前的标识(Tool: Write、Tool: Bash),这就是 Agent 的工具链在动作——模型决策用什么工具,工具负责执行操作,结果反馈给模型决定下一步。
图2:LLM 决策 → 工具执行 → 结果反馈 → 下一步决策,循环往复
3. 多级记忆系统:跨会话的知识沉淀
一个常见的 Agent 痛点:每次新会话都从零开始,不记得之前的任何约定。Claude Code 通过一套多级记忆架构解决了这个问题:
| 记忆层级 | 存储位置 | 作用域 | 内容示例 |
|---|---|---|---|
| 项目记忆 (CLAUDE.md) | 项目根目录 CLAUDE.md | 当前项目所有会话 | 技术栈、代码规范、架构决策 |
| 用户记忆 (~/.claude/CLAUDE.md) | 用户主目录 | 所有项目 | 个人编码偏好、常用工具链 |
| 自动记忆 (Auto Memory) | ~/.claude/memory/ | 自动沉淀 | Claude 自主记录的项目细节和经验 |
注意:首次创建 CLAUDE.md 时,需要重启才能生效。规则只需声明一次,所有后续操作自动遵守。这就是 CLAUDE.md 作为"项目宪法"的意义。
图3:项目记忆 / 用户记忆 / 自动记忆,三层各司其职
Claude Code 配置文件与会话记录,如下:
| 路径 | 内容 | 说明 |
|---|---|---|
~/.claude/settings.json | 全局配置文件 | 更新通道、API Key、环境变量、MCP Server 等所有全局设置 |
~/.claude/CLAUDE.md | 全局记忆文件 | 跨项目生效的指令和偏好 |
~/.claude/projects/ | 项目级数据 | 每个项目的会话记录、自动记忆、本地配置等 |
~/.claude/credits.json | 用量与额度 | API 调用次数、Token 消耗统计 |
settings.json 是最核心的配置文件--Claude Code 的大量行为都可以通过修改这个文件来调整。比如:模型切换、权限管理、MCP配置等。
提示: 除了全局配置,每个项目根目录下也可以创建 .claude/settings.json(项目级配置)和 .claude/settings.local.json(项目私有配置,不提交到 Git)。三者的优先级为:项目私有 > 项目共享 > 全局,后续在模型替换章节会详细说明。
4. 项目管理系统:Checkpoint 回滚与安全保障
让 AI Agent 自动修改代码,最大的担忧是:改坏了怎么办?Claude Code 的项目管理系统通过 Checkpoint(检查点)机制解决了这个问题。
工作原理:Claude Code 在每次产生文件变更时,自动创建一个 Checkpoint,记录变更前的文件快照。如果对某次修改不满意,可以随时回滚到任意历史检查点——类似 Git 的 commit,但粒度更细,精确到每一轮对话中的每一次文件操作。
实际效果:Claude Code 重构了 3 个文件后,你发现新的实现方案不合适。通过 /rewind 命令选择回滚点,一键恢复到重构前的代码状态——所有被修改的文件恢复原貌,新创建的文件被删除,干净利落。
/rewind
终端会列出最近的 Checkpoint 节点,每个节点标注了对应的用户指令和变更文件。
个人经验:有一次我让 Claude Code 重构一个模块,改了 5 个文件,结果运行测试时发现有个边界条件没考虑到。想回滚但手动一个一个改回来太麻烦了,结果 /rewind 一键搞定。
底层原理:Checkpoint 的实现依赖 Git 的快照能力,每次变更时 Claude Code 实际上是在背后做了 git add + git commit 的操作,只是这些 commit 不会出现在你正常的 Git 历史里。
5. 斜杠命令系统:Agent 的控制面板
斜杠命令是与 Claude Code 交互的快捷控制方式——在对话输入框中键入 / 即可调出命令菜单。
截至 2026 年 3 月,Claude Code 内置了 59 个斜杠命令(含别名)。我把最常用的分为三类:
5.1 高频必记(建议优先掌握)
| 命令 | 功能 | 场景 |
|---|---|---|
/init | 初始化项目,生成 CLAUDE.md | 新项目第一步 |
/plan | 进入 Plan Mode,先规划后执行 | 复杂任务必用 |
/rewind | 回滚到历史检查点 | 改坏了想反悔 |
/compact | 压缩对话历史,释放上下文 | 长对话必备 |
/context | 可视化上下文使用情况 | 了解 Token 消耗 |
/diff | 查看未提交的变更 | 提交前检查 |
5.2 日常效率(提升使用体验)
| 命令 | 功能 | 场景 |
|---|---|---|
/cost | 查看当前 Token 消耗和费用 | API 用户控制成本 |
/mode | 切换 AI 模型和 Effort Level | 任务难度不同时调整 |
/review | 对 Pull Request 进行代码审查 | Code Review |
/security-review | 分析代码变更的安全漏洞 | 上线前检查 |
/simplify | 审查代码质量并自动修复 | 清理代码 |
/batch <指令> | 大规模任务分解并行执行 | 批量重构/迁移 |
5.3 配置与扩展
| 命令 | 功能 |
|---|---|
/mcp | 管理 MCP Server 连接 |
/skills | 查看可用的 Skills |
/memory | 编辑项目记忆文件 |
/hooks | 管理 Hook 事件配置 |
个人经验:我每天必用的是 /compact——长对话进行到一半时,运行这个命令可以释放大量上下文空间,相当于给会话"瘦身",继续工作时 Claude Code 不会因为上下文满了而"失忆"。
其他 40+ 命令可以通过 /help 随时查询,不必刻意记忆。(见附录)
6. 扩展能力系统:MCP、Skills 与 Plugin
Claude Code 的内置工具覆盖了文件操作和命令执行,但真实的开发场景往往需要更多能力——查询数据库、调用第三方 API、执行特定业务流程。Claude Code 提供了三套互补的扩展机制:
| 扩展类型 | 核心定位 | 技术实现 | 类比 |
|---|---|---|---|
| MCP (Model Context Protocol) | 连接外部数据源和工具 | 标准化的 Server-Client 协议 | 手机的 USB 接口——连接任何外设 |
| Skills | 封装可复用的业务流程 | Markdown 格式的提示词模板 | 标准操作手册 (SOP) |
| Plugin | 社区生态的打包扩展 | npm 包形式分发 | 手机 App Store 里的应用 |
MCP 实际效果:安装 github MCP Server 后,Claude Code 就能直接调用 GitHub API——查看 Issue、创建 PR、审查代码,无需手动在终端和浏览器之间切换。
Skills 适用场景:比如你经常需要生成 API 文档,可以写一个 api-doc-skill.md,定义好输入输出规范,之后每次用 /skills 调用即可。
Plugin 生态:可以在 npm 上找到社区开发的插件,比如集成数据库 GUI、API 测试工具等。
图4:MCP / Skills / Plugin 三套扩展机制,各有分工
7. 多 Agent 协作系统
Claude Code 的多 Agent 系统支持并行任务。
Sub-Agent(子智能体委托)
Claude Code 在处理复杂任务时,可以自主派生出一个或多个 Sub-Agent,将子任务委托给它们并行处理。每个 Sub-Agent 拥有独立的上下文和工具权限,完成后将结果汇报给主 Agent。
典型用法:
- 前后端并行开发:让一个 Sub-Agent 处理前端组件,另一个处理后端 API,同时开工
- 批量代码重构:用
/batch命令将 10 个文件的重构任务分解为 10 个 Sub-Agent 并行处理,每个在独立的 Git Worktree 中运行,互不干扰 - 深度代码探索:一个 Agent 负责阅读代码理解架构,另一个负责生成测试用例
图5:一个主 Agent 分派多个 Sub-Agent 并行工作,同时执行
Agent Team(智能体团队)
这是更高级的多 Agent 编排模式(实验性功能),允许定义多个具有不同专长的 Agent 组成团队,协同完成复杂项目。
想象一个场景:你要开发一个完整的电商系统,可以定义一个团队:
architect-agent:负责系统设计和架构决策frontend-agent:负责前端开发backend-agent:负责后端开发devops-agent:负责部署和 CI/CD 配置
你只需要描述需求,剩下的由 agent team 自行分工协作。
后台任务(Background Tasks)
如果有些任务耗时较长(比如大规模代码迁移),可以放到后台执行,通过 /tasks 查看进度,不阻塞当前对话。
总结:Claude Code 不是工具,是工作流
图6:六大系统关系总览,合力构成完整 AI 编程工作流
回顾这六大系统,你会发现它们解决的不是"单点问题",而是一套完整的 AI 编程工作流:
- 工具系统 = 执行力(能干活)
- 记忆系统 = 理解力(懂业务)
- 项目管理系统 = 安全性(敢尝试)
- 斜杠命令 = 控制力(听指挥)
- 扩展系统 = 战斗力(能外挂)
- 多 Agent = 生产力(能并行)
用一个公式概括:
Claude Code = LLM(大脑)+ 工具(手脚)+ 记忆(经验)+ Checkpoint(后悔药)+ 多 Agent(分身术)
这就是为什么,用过 Claude Code 之后,你很难再回到"单线程 AI 聊天"的工作模式。
附录A:59 个斜杠命令完整列表
以下是截至 2026 年 3 月 Claude Code 全部 59 个斜杠命令(含别名),供快速查阅。
A.1 会话管理
| 命令 | 功能 | 别名 |
|---|---|---|
/clear | 清空当前对话历史,释放上下文 | /reset、/new |
/compact [指示] | 压缩对话历史,可指定保留重点 | — |
/resume [会话] | 恢复指定历史会话(按 ID 或名称) | /continue |
/fork [名称] | 从当前对话点创建分支副本 | — |
/rename [名称] | 重命名当前会话 | — |
/export [文件名] | 导出对话为纯文本文件 | — |
/exit | 退出 CLI | /quit |
A.2 模型与模式
| 命令 | 功能 | 别名 |
|---|---|---|
/mode [模型名] | 切换 AI 模型(左右箭头调整 Effort Level) | — |
/plan | 进入 Plan Mode(先规划后执行) | — |
/fast [on|off] | 切换快速输出模式 | — |
/output-style [风格] | 切换输出风格(Default / Explanatory / Learning) | — |
/vim | 切换 Vim / Normal 编辑模式 | — |
A.3 项目与上下文
| 命令 | 功能 | 别名 |
|---|---|---|
/init | 初始化项目,生成 CLAUDE.md | — |
/add-dir <路径> | 向当前会话添加额外的工作目录 | — |
/context | 可视化当前上下文使用情况(彩色网格) | — |
/diff | 打开交互式 Diff 查看器,查看未提交的变更 | — |
/rewind | 回滚对话和/或代码到历史检查点 | /checkpoint |
/pr-comments [PR] | 获取 GitHub PR 的评论 | — |
/review | 对 Pull Request 进行代码审查 | — |
/security-review | 分析当前分支的变更是否存在安全漏洞 | — |
/copy | 复制上一条 AI 回复到剪贴板 | — |
A.4 配置与状态
| 命令 | 功能 | 别名 |
|---|---|---|
/config | 打开配置界面 | /settings |
/permissions | 查看/修改工具权限 | /allowed-tools |
/memory | 编辑 CLAUDE.md 记忆文件,管理自动记忆 | — |
/doctor | 诊断安装和配置状态 | — |
/status | 显示版本、模型、账户和连接状态 | — |
/cost | 显示当前会话 Token 用量和费用(API 用户) | — |
/stats | 可视化每日用量、会话历史和使用模式 | — |
/usage | 显示订阅套餐限额和速率限制状态 | — |
/theme | 更换颜色主题(含深色/浅色/色盲友好版本) | — |
/statusline | 配置终端状态栏信息 | — |
/keybindings | 打开快捷键配置文件 | — |
/terminal-setup | 配置终端快捷键(如 Shift+Enter) | — |
A.5 扩展与 Agent
| 命令 | 功能 | 别名 |
|---|---|---|
/mcp | 管理 MCP Server 连接和 OAuth 认证 | — |
/skills | 列出可用的 Skills | — |
/plugin | 管理 Plugin 插件 | — |
/agents | 管理自定义 Agent 配置 | — |
/tasks | 列出和管理后台任务 | — |
/hooks | 管理 Hook 事件配置 | — |
A.6 账户与平台
| 命令 | 功能 | 别名 |
|---|---|---|
/login | 登录 Anthropic 账户 | — |
/logout | 登出 Anthropic 账户 | — |
/upgrade | 打开套餐升级页面 | — |
/extra-usage | 配置超额使用(限额触达后继续工作) | — |
/privacy-settings | 查看/修改隐私设置(Pro/Max 用户) | — |
/desktop | 将当前会话转移到桌面应用 | /app |
/mobile | 显示移动端 App 下载二维码 | /ios、/android |
/chrome | 配置 Chrome 集成设置 | — |
/ide | 管理 IDE 集成状态 | — |
/remote-control | 允许从 claude.ai 远程控制此会话 | /rc |
/remote-env | 配置远程环境默认值 | — |
/install-github-app | 安装 Claude GitHub Actions App | — |
/install-slack-app | 安装 Claude Slack App | — |
A.7 信息与反馈
| 命令 | 功能 | 别名 |
|---|---|---|
/help | 显示帮助信息和可用命令 | — |
/feedback [报告] | 提交使用反馈或 Bug 报告 | /bug |
/release-notes | 查看版本更新日志 | — |
/insights | 生成使用分析报告(项目领域、交互模式、摩擦点) | — |
/stickers | 订购 Claude Code 贴纸 | — |
/passes | 分享免费试用周(符合条件的账户可见) | — |
A.8 内置 Skills
| 命令 | 功能 |
|---|---|
/simplify | 审查近期变更代码的复用性、质量和效率,自动修复发现的问题 |
/batch <指令> | 将大规模代码变更分解为 5-30 个独立子任务,并行派发给 Agent 在隔离的 Git Worktree 中执行 |
/debug [描述] | 读取会话调试日志,诊断 Claude Code 自身的运行问题 |
附录B:自动更新与手动更新 命令
通过原生安装器安装的 Claude Code 具备后台静默更新 (Background Auto-Update)机制——每次启动时自动检查新版本,在后台下载安装,下次启动时生效。这意味着开发者无需关注版本更新,始终使用最新版。
不过,Claude Code 迭代非常快(几乎每周都有新版本),偶尔新版本可能引入 Bug。前面提到的 ~/claude/settings.json 中有一个实用的配置项可以控制更新策略——发布通道 (Update Channel)。Claude Code 提供两个通道:
| 通道 | 配置值 | 更新节奏 | 适用场景 |
|---|---|---|---|
| 最新通道 | "latest" | 新版发布后立即推送 | 想第一时间体验新功能、能接受偶尔的小 Bug |
| 稳定通道 | "stable" | 比 latest 延迟约一周 | 正式项目开发,优先保证稳定性 |
对于绝大多数开发者,保持默认的 latest 即可 -- Claude Code 团队的发布质量总体很高,且新功能往往能显著提升效率。只有当你正在进行关键项目交付、不希望工具链出现任何意外时,才建议临时切换到 stable 通道。切换方式是在 ~/claude/settings.json 中添加:
{
"autoUpdatesChannel":"stable"
}
如果需要立刻获取最新版本而不想等待自动更新,可以手动触发:
claude update
提示:一般不建议禁用自动更新。Claude Code 的新版本经常修复关键 Bug 和安全问题,关闭更新可能导致兼容性问题。如果确实有特殊需求(如离线环境),可以在 settings.json 的 env 中设置 "DISABLE_AUTOUPDATER": "1"。
附录C Doctor 诊断工具
claude doctor 一站式诊断工具。它会自动扫描 Claude Code 的完整运行环境,逐项检查可能出问题的环节,并以绿色(通过)、黄色(警告)、红色(错误)直观标识每项检查结果:
claude doctor
在 Claude Code 会话内部也可以直接运行 /doctor。以下是它检查的核心项目:
| 检查项 | 能发现的典型问题 |
|---|---|
| 安装类型与版本 | 还在用旧的 npm 安装方式,应该迁移到原生安装器 |
| 自动更新状态 | 当前版本过旧,已知 Bug 在新版中已修复 |
| 配置文件有效性 | settings.json 里多了个逗号导致 JSON 解析失败,所有配置项静默失效 |
| MCP 服务器配置 | 某个 MCP Server 的路径写错了,或者依赖的 Node.js 版本不对 |
| 快捷键配置 | 自定义的快捷键与系统默认键冲突,导致某些操作无响应 |
| 上下文使用情况 | CLAUDE.md 文件写了 2000 行,每次对话都白白消耗大量 Token 在加载记忆上 |
| 插件与 Agent 加载 | 安装的某个 Plugin 与当前 Claude Code 版本不兼容 |
提示:养成一个好习惯——任何时候 Claude Code 的行为不符合预期,先跑一次 claude doctor。它相当于 Claude Code 的“体检报告”,80% 的常见问题都能在这里找到线索。