Claude Code 模式(CC)
CC(Claude Code)是基于 Claude Code 构件系统来结构化 AI 辅助工作的通用模式集合。它规定了如何构建代理、技能、规则、钩子、命令与设置,使任何一次 Claude Code 会话都具备纪律性,而非随意进行。
CC 本身不是一款产品,也不是一个框架,而是针对 Claude Code 所支持的七类构件的一组约定与质量规则。任何采用 CC 的项目,其会话行为都是稳定一致的,护栏具备可强制性,且知识会持续累积、不会随上下文窗口重置而流失。
CC 在 co/(英文)(CO 构件管理仓库)中开发,并分发至所有下游仓库:用于代码生成的 COC 模板(英文)、用于新领域应用的 CO 模板(英文),以及所有领域应用(co-research、co-finance、co-education 等)。
Claude Code 识别七种构件类型,每一种都有特定角色与特定的质量约束。
1. 代理(Agents)
Section titled “1. 代理(Agents)”位置: .claude/agents/
带有领域知识的专业 AI 人格。一个代理文件定义一段系统提示,塑造 Claude 在某一任务类别下的行为。当你调用某个代理时,Claude 即采纳该人格的专长、约束与工作流程。
质量规则:
- description 字段不超过 120 字符,并含触发语(“Use when…”、“Use for…”)
- 文件总长度不超过 400 行
- 不做知识堆砌:参考材料应置于技能(skills)而非代理文件内
为何这样约束: 代理描述会在每一次代理选择决策中被读入。过长的描述意味着每一轮都在浪费 token。而嵌入的参考材料会在上下文窗口中与实际任务抢占空间。
2. 技能(Skills)
Section titled “2. 技能(Skills)”位置: .claude/skills/
为渐进式披露而组织的参考知识。一个技能目录包含索引文件 SKILL.md 与若干可选的子文件,子文件承载更深入的参考内容。Claude 先读取 SKILL.md,只在问题需要时再读取子文件。
质量规则:
SKILL.md应在不读取子文件的情况下回答 80% 的常规问题- 速查表与关键模式放入索引文件
- 深度参考(API 细节、边角情况、示例)放入子文件
为何这种结构重要: 每一次子文件读取都是一次工具调用。一个需要五次读取才能回答基本问题的技能,比一个索引良好的技能慢五倍。
3. 规则(Rules)
Section titled “3. 规则(Rules)”位置: .claude/rules/
通过软性引导强制执行的行为护栏。规则塑造 Claude 处理工作的方式:编码标准、沟通风格、领域约束。Claude 遵守规则,是因为规则处于上下文之中,而非因为存在机制阻止违规。
质量规则:
- 每条规则都包含 DO / DO NOT 示例,分别展示正确与错误的模式
- 每条规则都包含 “Why” 理由说明,解释其背后的逻辑
- 尽可能使用 YAML frontmatter 的 glob 进行路径范围限定(例如 SQL 规则不应在编辑 CSS 时被加载)
为何理由说明重要: 若缺少 “Why” 一行,Claude 每次会话对规则的理解可能略有差异。理由说明有助于在边角情况下应用规则的精神。
4. 钩子(Hooks)
Section titled “4. 钩子(Hooks)”位置: scripts/hooks/
在模型之外运行的确定性强制执行脚本。钩子在特定触发条件下(每条用户消息、提交前、会话启动时)触发,执行 JavaScript 或 shell 代码。与规则不同,钩子不会被遗忘或被重新解读,属于硬性强制。
质量规则:
- 每个钩子都包含
setTimeout回退路径,返回{ continue: true }并退出 - 禁止通过正则进行语义分析(钩子只检查结构,不检查含义)
- 纵深防御:关键规则在规则文件之外,还要叠加钩子级强制
为何超时处理必要: 一个卡住的钩子会使整个 Claude Code 会话被无限期阻塞。超时回退确保即使处理过程停滞,会话仍能继续。
5. 命令(Commands)
Section titled “5. 命令(Commands)”位置: .claude/commands/
结构化工作流调用。一个命令文件定义一段提示语,当通过 /command-name 调用时,作为用户消息注入。命令是把可复用工作流封装起来的方式:/analyze、/plan、/implement、/review。
质量规则:
- 长度不超过 150 行
- 参考材料移入技能(命令作为用户消息注入,会在 token 预算中与实际用户意图竞争)
6. 设置(Settings)
Section titled “6. 设置(Settings)”位置: .claude/settings.json
工具权限、钩子配置与 MCP 服务器声明。设置控制 Claude 可以做什么(允许使用哪些工具)、哪些自动运行(哪些钩子在哪些触发条件下执行)、以及可用的外部服务(MCP 服务器)。
7. CLAUDE.md
Section titled “7. CLAUDE.md”位置: 项目根目录
每次会话都会被加载的主指令文件。CLAUDE.md 始终在上下文中。它确立项目身份、列出可用命令、定义构件分层结构并指向关键资源。CLAUDE.md 中的每一字节都在每一轮对话中消耗 token。
质量规则:
- 不要重复已在
.claude/rules/中存在的规则(它们会独立加载) - 不要嵌入应置于技能中的参考材料
CC 的关键模式
Section titled “CC 的关键模式”并非所有知识都需要在每一轮对话中被加载。CC 将信息分层组织:
| 层级 | 何时加载 | 典型长度 |
|---|---|---|
CLAUDE.md | 每一轮,始终加载 | 200 行以内 |
SKILL.md 索引 | 技能被引用时 | 10 - 50 行 |
| 主题文件 | 索引不足以回答时 | 50 - 250 行 |
| 深度参考 | 针对具体问题按需加载 | 不限 |
这样使上下文窗口聚焦当前任务,同时让深度知识在需要时可用。
对于绝不能被违反的规则,CC 使用多层彼此独立的强制机制:
- CLAUDE.md 陈述规则(始终在上下文中)
- 专用规则文件 提供完整细节、示例与理由
- 抗健忘钩子 在每条用户消息时重新注入该规则
- 会话启动钩子 在每次会话开始时确立该规则
- 校验钩子 在输出到达用户之前进行检查
共五层。若任一层失效(例如上下文压缩丢弃了 CLAUDE.md,或当前路径未加载某条规则文件),其余四层仍能强制执行。
抗健忘(Anti-Amnesia)
Section titled “抗健忘(Anti-Amnesia)”一个在每条用户消息触发的钩子,将关键规则重新注入上下文。它解决了长对话的根本问题:随着上下文窗口被填满、早期内容被压缩,重要规则可能逐渐淡出。抗健忘钩子运行于模型记忆之外,不受压缩影响。每一条消息过后,规则都以完整保真度回到上下文之中。
在从零编写任何代码之前,先检查是否已有可用的构建块。组合优先于重造。在 Kailash 生态中,这意味着先检查 188 个工作流节点,再考虑自建节点。在任一 CC 项目中,则意味着先检查已有的代理、技能与命令,再考虑新建。
CC 质量规则汇总
Section titled “CC 质量规则汇总”下列规则适用于创建或修改任何 CC 构件:
| 规则 | 理由 |
|---|---|
| 代理描述 120 字符以内并带触发语 | 描述会在每次代理选择决策中被读入 |
技能遵循渐进式披露(SKILL.md 应覆盖 80% 的问题) | 减少常规问题所需的工具调用次数 |
| 规则包含 DO / DO NOT 示例 | 使跨会话行为保持稳定 |
| 规则包含 “Why” 理由说明 | 便于在边角情况下应用规则的精神 |
| 命令 150 行以内 | 命令作为用户消息注入,过长会与用户意图争用预算 |
| 钩子包含超时处理 | 防止整会话被挂起 |
| 代理 400 行以内,不堆砌知识 | 代理上下文与任务上下文竞争 |
不在技能或规则中复制 CLAUDE.md | CLAUDE.md 始终加载,重复会让 token 成本翻倍 |
| 规则按文件类型进行路径范围限定 | 编辑 CSS 时加载 SQL 规则属于浪费 |
CC 与 CO、COC 的关系
Section titled “CC 与 CO、COC 的关系”CC、CO、COC 是三个不同层次:
- CC 是通用工具层面的模式:如何构建能良好运作的 Claude Code 构件。适用于任何使用 Claude Code 的项目,与领域无关。
- CO(认知编排)是方法论,规定了如何结构化人机协作:八项首要原则、五层架构、六阶段工作流。CO 与领域无关。参见 CO 规范(英文)。
- COC 是 CC + CO 在软件开发中的应用,即面向代码生成的形态。COC 增加了领域专属代理(数据库专家、API 构建者、测试框架)、领域专属技能(SDK 参考、框架模式)与领域专属命令(
/implement、/deploy)。参见 COC 快速入门。
构件流向:
co/ ──CC+CO 构件──→ co-template ──→ 领域仓库(研究、金融、教育……) └──→ kailash/ ──→ COC 模板 ──→ 代码生成项目CC 模式起源于 co/ 并向外分发。领域仓库在 CC 基础之上叠加自身的领域专属构件,绝不直接修改 CC 构件;改进通过 co/ 向上游回流。
Kailash 生态(github.com/terrene-foundation(英文))是 CC 的大规模参考实现:
| 构件类型 | 规模 |
|---|---|
| 代理 | 跨 7 个类别的 50 多个代理(架构、实现、测试、评审、部署、领域、管理) |
| 技能 | 31 个目录,含 600 多个参考文件 |
| 规则 | 28 个规则文件,采用纵深防御强制执行 |
| 钩子 | 8 个钩子,包括抗健忘机制 |
| 命令 | 30 个命令,实现六阶段工作流 |
COC 模板仓库将上述内容整合为新项目的单一起点。
构建新的领域应用。 克隆 CO 模板(英文)并针对所在领域进行配置。模板已预置 CC 构件结构,你只需添加领域专属的代理、技能与规则。
使用 COC 构建软件。 参见 COC 快速入门。克隆 COC 模板,运行 claude,输入 /start。
理解方法论。 阅读 CO 规范(英文),了解 CC 在工具层所实现的八项首要原则、五层架构与六阶段工作流。
查阅参考实现。 浏览 kailash-coc-claude-py(英文),查看 CC 构件在真实项目中的运作方式:代理如何引用技能、规则如何施加标准、钩子如何提供纵深防御,以及命令如何编排阶段化工作流。