从工具到系统:Claude Code 工作系统全景图

2 阅读13分钟

前面三章,我们已经把三件关键的事讲清楚了:

  1. Claude Code 的问题很多时候不是模型不够强,而是工作环境不稳定
  2. Agent、Prompt、Harness 不是一回事
  3. Claude Code 最小内核其实就是 Loop + Tools + Context

如果你现在停下来,其实已经比很多“会用 Claude Code 的人”多理解了一层。

但还不够。

因为你接下来一定会遇到一个新的困惑:

“好,我大概知道 Claude Code 为什么能动起来了。
但真正一套能长期工作的系统,到底还需要哪些层?”

这个问题非常关键。

因为现实里,绝大多数人真正卡住的地方,并不是:

  • 不知道 loop 是什么
  • 不知道 tool use 是什么

而是:

  • 不知道什么时候该写 CLAUDE.md
  • 不知道 rules、skills、commands、hooks 到底怎么分
  • 不知道 memory 和 context 是什么关系
  • 不知道 verify 应该算流程、规则还是命令
  • 不知道 MCP、subagent、worktree 这些东西到底在系统里属于哪一层

于是很多人的 Claude Code 配置会越长越乱。

像极了项目做久之后的老后台:

  • 什么都堆在一起
  • 什么都像重点
  • 什么都能讲出理由
  • 但真的出问题时,根本不知道该改哪一层

所以这一章的目标很简单:

我们要把 Claude Code 工作系统摊平成一张地图。

不是功能列表,不是参数大全,不是“你也可以这样试试”的经验贴。

而是一张足够清楚的系统图,让你知道:

  • 每一层在负责什么
  • 每一层解决什么问题
  • 哪一层和哪一层容易混
  • 你现在最缺的可能是哪一层

这张图一旦立住,后面整本书就会非常顺。

读完这一章,你应该能立刻做三件事:

  • 说清 Claude Code 工作系统至少由哪几层组成
  • 判断你现在最缺的是目标、规则、流程、状态、协作还是验证层
  • 不再把所有问题都压回 prompt,而是知道该在哪一层补系统

一、你真正要搭的,不是一个“更会聊天的 Claude Code”,而是一套工作系统

这是我现在特别坚持的一个表述。

因为“更会聊天”这个目标太弱了。

你把 prompt 写得再漂亮,它最多也只是:

  • 更懂你这一轮在说什么
  • 更容易在当前任务里表现得像样一点

但它仍然不等于:

  • 长任务更稳
  • 复杂任务更可控
  • 并行任务不撞车
  • 会话可以恢复
  • 验证不容易漏
  • 团队可以共享

这些事情,靠聊天技巧是撑不住的。

所以如果我们今天要从零搭一套 Claude Code 工作系统,真正要搭的不是“一个大 prompt”,而是至少下面这些层:

1. 任务目标层
2. 核心运行层
3. 规则约束层
4. 方法与工作流层
5. 自动化治理层
6. 记忆与状态层
7. 协作与并行层
8. 外部能力接入层
9. 验证与演化层

先别急着觉得多。

这 9 层并不是要你一次性全搭完。
它们更像一个成熟系统最后会逐渐长出来的器官。

但如果你脑子里没有这张全景图,后面很容易出现一种常见现象:

明明你已经很努力在补系统了,但总是补错位置。

比如:

  • 本来缺的是验证闭环,你却在堆 skill
  • 本来缺的是长期规则,你却继续改 prompt
  • 本来缺的是会话恢复,你却再加一个更强模型
  • 本来缺的是工作区隔离,你却继续多开几个会话硬并行

所以系统图的意义不是“知道得更多”,而是:

知道问题该落在哪一层解决。


二、第一层:目标层,决定这次到底在干什么

很多人会觉得“目标”不算一层,因为这不是配置,不是脚本,也不是机制。

但我现在越来越觉得,目标层反而是最先要独立出来的一层。

因为 Claude Code 最常见的偏航,不是技术问题,而是目标问题。

比如:

  • 本来是局部 bugfix,结果变成重构
  • 本来是接口补丁,结果开始讨论架构统一
  • 本来是“先调研”,结果中途就开始改代码

这说明什么?

说明系统没有明确区分:

  • 这次任务是什么
  • 这次任务不是什么
  • 哪些属于本轮边界

所以一个稳定工作系统,首先需要一个目标层,负责定义:

  • 任务目标
  • 本轮范围
  • 完成标准
  • 是否要先计划
  • 是否进入实现

这也是为什么后面 /plan 会是一个关键入口。

因为它做的不是“让系统更礼貌”,而是:

在系统正式动手前,先把目标层固定下来。

没有目标层,后面所有层都会漂。


三、第二层:核心运行层,系统到底怎么动

这一层我们上一章已经讲过了,就是:

  • Loop
  • Tools
  • Context

这层决定的是:

  • Claude Code 能不能持续运行
  • 能不能动手
  • 会不会基于当前状态继续判断

这一层像发动机。

如果用公司做类比:

  • Loop 是工作节奏
  • Tools 是手和脚
  • Context 是工作台上的当前资料和状态

这层的特点是:

  • 它足够小
  • 但它是一切的基础
  • 后面所有高级能力,本质上都在它外面加东西

所以这一层的最佳实践不是“加更多功能”,而是:

尽量保持核心运行层简单、清晰、稳定。

不要把太多高阶逻辑直接焊死在 loop 里。

因为一旦 loop 本身变复杂,后面每一层都会更难调试。


四、第三层:规则约束层,决定哪些线不能越

这是很多人最容易低估的一层。

因为规则看上去不像“能力”,更像“限制”。

但一个系统越强,规则层越重要。

为什么?

因为 Claude Code 最大的风险,不是“不动”,而是:

它会动,而且很愿意动。

一旦没有规则层,你很快就会看到:

  • 为了让 build 通过,顺手改配置
  • 为了省事,跳过验证
  • 为了让 diff 漂亮,改动范围扩大
  • 为了看起来完整,补了一堆本轮没要求的东西

所以规则层真正负责的是:

  • 定义边界
  • 压住冲动
  • 建立底线

这层最典型的载体包括:

  • CLAUDE.md 中的长期约束
  • rules/ 目录
  • permissions / sandbox 策略

它回答的是一句很关键的话:

无论这次任务是什么,有哪些事就是不能乱来。

如果这层没有立住,后面技能再多、命令再花、模型再强,系统都迟早会翻车。


五、第四层:方法与工作流层,决定“应该按什么套路干”

这一层很容易和规则层混。

但两者其实差别非常大。

规则层解决的是:

什么不能越线?

工作流层解决的是:

这类任务通常该怎么做?

比如:

  • 新功能:先 plan,再 TDD,再 verify
  • bugfix:先复现,再写失败测试,再最小修复,再回归
  • code review:先找 correctness,再看可维护性,再看安全
  • 调研:先搜索现有方案,再决定自研还是接入

这些都不是“硬约束”,但它们决定了系统做事有没有套路。

这一层在 Claude Code 里最典型的承载方式就是:

  • skills
  • commands

两者再细分一下:

1. Skills

偏“方法论包”。

适合放:

  • TDD workflow
  • review checklist
  • strategic compact
  • search-first
  • security review

2. Commands

偏“高频入口”。

适合放:

  • /plan
  • /tdd
  • /verify
  • /review

所以这一层真正要解决的问题是:

怎么把零散经验变成可重复调用的工作流。

没有这一层,Claude Code 每次都得临场发挥。
有了这一层,它开始像一个“知道公司里事情通常怎么做”的同事。


六、第五层:自动化治理层,决定哪些动作不该靠记忆

这层在成熟系统里非常关键,但很多人真正开始搭工作系统之前不会意识到它的重要性。

因为大多数人默认会觉得:

  • 这些事我记得住
  • 或者模型会记得

后来你就会发现,这和“我以后会记得每次发版前都仔细检查”差不多。

也就是说:

理论上会记得,实际上迟早会漏。

所以自动化治理层的职责是:

  • 把高频机械动作自动化
  • 把容易漏的事情变成系统行为
  • 在正确时间给提醒或拦截

这一层最典型的载体就是:

  • hooks

它解决的不是“系统会不会更聪明”,而是:

系统会不会更稳定。

典型场景:

  • 编辑后自动格式化
  • TypeScript 文件后自动 typecheck
  • console.log 检查
  • 长命令提醒后台化
  • compact 前保存状态
  • 会话结束时做总结或审计

你会发现,这些事情都不性感。

但也正因为它们不性感,大家最容易拖到最后不做。
而一套系统真正的稳定性,偏偏就是这些不性感的东西堆出来的。


七、第六层:记忆与状态层,决定系统能不能跨时间工作

如果 Claude Code 只工作 20 分钟,这一层问题还没那么明显。

但只要你开始处理:

  • 长任务
  • 多阶段任务
  • 跨天任务
  • 多会话协作

你就会很快发现:

系统最痛苦的问题之一,就是状态在不断蒸发。

比如:

  • 昨天已经确认过的根因,今天又重新确认
  • 上一轮已经讨论过的风险,这一轮又重复铺开
  • compact 后,某个关键决策细节没了
  • 新会话开始时,系统只知道“继续”,却不知道“从哪继续”

所以这一层需要解决:

  • 当前状态怎么落盘
  • compact 前怎么保存
  • 新会话怎么恢复
  • 哪些记忆是长期的,哪些只是本轮的

这一层的典型载体包括:

  • session summary
  • memory files
  • project memory
  • auto memory

它真正回答的是:

Claude Code 怎么不至于每次重新投胎。


八、第七层:协作与并行层,决定系统能不能从单兵扩展成团队

到了这里,系统已经不只是“一个会话怎么跑”了。

你会开始遇到更复杂的问题:

  • 某些分析能不能分出去?
  • 长命令能不能后台执行?
  • 多个任务能不能并行做?
  • 多个会话同时改代码怎么不撞?

这层其实至少包含三类东西:

1. 认知并行

比如 subagent。

把“思考和探索”分出去,减轻主上下文负担。

2. 执行并行

比如 background task。

把“等待”分出去,让主流程继续推进。

3. 工作区并行

比如 worktree、多会话、多任务隔离。

把“工位”分出去,避免文件级冲突。

这层真正重要的点在于:

并行不是多开几个会话,而是让不同工作流在边界清晰的前提下同时推进。

所以这层一旦缺失,就会出现:

  • 多开会话但互相污染
  • 多 agent 很忙但没有协作
  • 所有 worker 都在干活,但最后根本合不上

九、第八层:外部能力接入层,决定系统怎么接世界

这层最典型的代表就是:

  • MCP

但不要把它理解成“越多越高级”。

它真正解决的问题是:

Claude Code 如何用标准化方式接外部能力。

例如:

  • 浏览器
  • 数据库
  • 文档
  • 搜索
  • 平台 API

这层的重要性在于:

  • 没有它,Claude Code 很难高质量接真实外部系统
  • 但一旦接太多,它又会开始吃 context 和治理成本

所以这一层的关键词不是“接更多”,而是:

接入 + 治理

这一层如果没设计好,最容易出现的不是“能力不足”,而是:

  • 配置太重
  • MCP 太多
  • 上下文被 schema 撑爆
  • 不健康 server 反复拖慢流程

十、第九层:验证与演化层,决定这套系统能不能长期可信

最后这一层,我觉得是很多人真正开始做工作系统后才会意识到的重要问题。

一开始大家都关注:

  • 怎么写
  • 怎么配
  • 怎么跑

但系统一旦开始长期使用,真正的问题会变成:

  • 这套东西是不是越来越稳?
  • 它有没有在漂?
  • 哪些规则过时了?
  • 哪些 skill 没人用了?
  • 哪些 hook 已经成了噪声?
  • 这套系统本身有没有被测试?

所以这一层负责的事情是:

  • verify 流程
  • quality gate
  • review
  • security review
  • harness 自身的校验
  • 持续学习与演化

你可以把它理解成:

系统的质检层 + 维护层。

没有这一层,你搭出来的东西就很像一个前期很惊艳、后期越来越混乱的内部工具。

有了这一层,它才开始像一个能长期运营的系统。


十一、现在把它们放回同一张图里

到这里,我们终于可以把整套 Claude Code 工作系统收束成一张图。

目标层
  - 这次到底做什么,不做什么

核心运行层
  - Loop
  - Tools
  - Context

规则约束层
  - CLAUDE.md
  - Rules
  - Permissions / Sandbox

方法与工作流层
  - Skills
  - Commands
  - Plan / TDD / Review / Verify

自动化治理层
  - Hooks
  - 生命周期自动化

记忆与状态层
  - Session Summary
  - Memory
  - Compact 前后状态保存

协作与并行层
  - Subagent
  - Background Task
  - Task System
  - Worktree

外部能力接入层
  - MCP

验证与演化层
  - Verify
  - Quality Gate
  - Review
  - Harness 自测与演化

你现在应该能看出来了:

这本书后面的每一章,其实都只是把这张图里的某一层展开。

也就是说,我们从这一章开始,终于不再是在讨论一个“工具怎么更会用”,而是在讨论:

一套工作系统应该有哪些器官。


十二、本章交付:Claude Code 工作系统全景图

这一章的交付物,就是这张工作系统全景图。

以后你每次感觉系统越来越乱时,都可以用它问自己:

  • 我现在出的问题,到底属于哪一层?
  • 我是不是在错误层上修问题?
  • 我缺的是规则、技能、记忆、并行,还是验证?

如果你能养成这个判断习惯,后面很多“盲目加配置”的冲动都会自然减少。


十三、本章小结

这一章最重要的作用,不是增加知识点,而是把系统摊平。

我们得到的最关键结论是:

Claude Code 工作系统不是一份 prompt,也不是几个命令的合集,而是一套分层结构。

这套分层里:

  • loop 只是发动机
  • tools 只是手脚
  • context 只是工作内存

真正让系统长期稳定工作的,是外面那一层层器官:

  • 规则
  • 技能
  • 命令
  • hooks
  • 记忆
  • 并行机制
  • MCP
  • 验证闭环

这张图一旦立住,后面的实战就好写了。

因为接下来我们终于可以从“看懂系统”进入“开始动手搭系统”。

下一章,我们正式开始干第一件最实际的事:

从零搭建自己的 Claude Code 工作台。