AI蓝皮书:Claude Code 规则和技能的实际应用
Claude Code 系列教程
[展开/折叠]-
基础篇:10分钟学会布置 Claude Code + CC Switch 智能AI助理
学会安装、布置Claude Code和调用第三方模型降低使用门槛
-
进阶篇:Claude Code 规则和技能的实际应用
CLAUDE.md、Rules、Skills的详细教程
-
进阶篇:Claude Code 流程控制高级应用
Subagents、Hooks、Output Styles、Append System Prompt 详细教程
-
工具篇:Claude Code & Codex 通用Skills推荐
20个 Agent 通用 Skills 提示词收录!
让我们继续学习使用Claude Code,上一篇教程基础篇我们已经成功布置了使用环境,下面就是认真学习如何让Claude Code干得更好了。根据官方BLOG发布的文章,我们可以将整个Claude Code的工作流程划分成为7个步骤,按照执行的先后顺序,他们分别是:
CLAUDE.md、Rules、Skills、Subagents、Hooks、Output Styles、Append Prompt
接下来我们将逐一介绍,本文有些枯燥,但是对于任何想学习的朋友来说,与其花时间看杂乱的乱炖短视频,不如静下心来看完下面的教程。
一、CLAUDE.md(固化规则)
学习使用Cladue Code,我们首先需要学习的第一个内容就是固化规则,其通过在项目文件夹根目录下的CLAUDE.md(Markdown)文件来实现,针对该文件夹下所有内容生效。当 Claude Code 启动时,它会自动读取这个文件的内容,并将其作为底层的系统指令(System Prompt)。固化规则相当于对某一个项目的“通用规则”,比如仍然以BLOG主上面的“整理表格”为案例。如果我们提前准备好了一个“结果全部输出成excel格式”,那么第一次输出结果的时候,就不会是一份“角色汇总表.md”的md文件。这不仅有助于节省时间,还能提高效率、准确性。
下面我们一起来进行实操,首先进入需要处理的文件夹目录,并确保文件后续名正常显示。

对于不知道如何显示文件后续名的朋友,可以在任意文件夹中点击如上图所示的三个点,然后点击“选项”

随后在“查看”选项卡中,取消勾选“隐藏已知文件类型的扩展名”,最后点击确定即可。

完成后,我们在文件夹根目录新建“CLAUDE.md”文件(可以新建txt文档,然后改后续名)。

# COC跑团角色卡处理规则 (Project Rules)
## 1. 核心目标
本目录下的所有Excel(.xlsx/.xls)均为《克苏鲁的呼唤》7版角色卡。你的任务是辅助KP(守秘人)整理数据。
## 2. 输出格式强约束
- **默认格式**:除非用户特别指明,整理后的数据必须导出为 **.xlsx** 文件,禁止输出为纯文本或Markdown表格。
- **多Sheet拆分**:必须按角色职业或玩家昵称,将不同角色拆分到不同的Sheet页中。
- **表头规范**:所有输出的Excel表头**必须使用中文**(如:力量、敏捷、意志、职业、玩家名),禁止使用英文变量名(如 STR, DEX)。
## 3. 数据处理逻辑(针对COC)
- **属性计算**:如果原卡只填了“基础值”和“成长值”,AI需要自动计算“最终值 = 基础值 + 成长值”,并突出显示。
- **技能列表**:如果角色技能散落在多列,请自动汇总到一列“关键技能”中。
- **缺失处理**:如果检测到某张角色卡缺少“幸运”或“理智”关键字段,**必须**在汇总表格的首行用红色字体标记“Check!”,以便KP人工复核,**严禁**AI随意估算补全。
## 4. 文件管理(防污染)
- 严禁修改原始上传的角色卡文件。
- 所有生成的汇总文件必须统一放入当前目录下的 `output/` 子文件夹中。如果该文件夹不存在,AI需先自动创建。
- 生成的文件命名规则:`角色卡汇总_当前日期.xlsx`(例如:角色卡汇总_20260731.xlsx)。
完成后,我们打开这个文件(可以使用txt文本工具,也可以使用你喜欢的编辑器,这里范例使用的是trae),然后按照自己需求,编写合适的规则即可。对于没有接触过这种“程序员思维”的新人来说,如果觉得撰写这个东西很麻烦,不妨直接把自己的需求说出来,交给AI帮你写,也是一个不错的选择。当然如果你需要更强的把控能力,那么也可以使用下面BLOG主整理的通用模版,修改一下即可。注意模版中的各类符号“#”、“*”、“-”都是加强AI注意力的标志,请不要随意改动。
# [项目名称] 系统指令
## 1. [模块A:身份/范围]
- [单一约束条件]
- [单一约束条件]
## 2. [模块B:强制输出规则]
- **关键词**:[具体动作],[具体限制]。
- **关键词**:[具体动作],[具体限制]。
- [子级例外或补充]
## 3. [模块C:处理流程](按顺序)
1. [第一步具体操作]
2. [第二步具体操作]
3. [第三步具体操作]
## 4. [模块D:绝对禁止事项](防幻觉)
- **禁止**:[具体行为]。
- **禁止**:[具体行为]。

最后,我们在项目文件夹打开Claude Code,使用dir命令,即可核实、查看自己编写的CLAUDE.md是否已经正确加载并生效。
固化规则也可以对全局生效,只要把这份“CLAUDE.md”放到“C:\Users\你的用户名\.claude”目录下即可对全局所有项目生效。特别需要注意的是,全局规则的优先级是没有文件夹中本项目的优先级高的,具体各位可以查阅下表。
| 规则类型 | 文件位置 | 作用范围 | 优先级 |
|---|---|---|---|
| 全局规则 | ~/.claude/CLAUDE.md | 所有项目 | 低(被项目规则覆盖) |
| 项目规则 | 项目根目录/CLAUDE.md | 仅当前项目 | 高(覆盖全局规则) |
| 子目录规则 | 项目根目录/子目录/CLAUDE.md | 仅当前子目录 | 最高(覆盖项目规则) |
最后,则是编写CLAUDE.md的一些建议,根据官方的提醒,我们了解到“CLAUDE.md”是每一个项目都会加载的内容,全程会常驻在上下文中,因此建议不要超过200行内容(费token),也不要写流程,只写想要的结果。如果需要规范流程,那么请接着往下看Rules和Skills部分的教学内容。
二、Rules (规则)
如果把“CLUADE.md”视为整个项目/整个Claude Code的总章程,那么Rules就是针对不同文件夹/文件类型的单独工作指导手册。他与“CLUADE.md”最大的区别,就是不会每时每刻都加载,而只有出现符合Rules的文件夹/文件类型的时候,才会被启用。节省Token的同时,还能更精准地进行控制和操作。
Rules的存放目录为:项目根目录/.claude/rules/(或者在rules下建立更多的子目录)
存放的文件名称为:任意.md(比如api-design.md/testing.md)
在优先级上,Rules的优先级高于全局的“CLUADE.md”,因此你可以使用Rules,为某些特例的规则做出修改,如果遇到两者冲突,会默认以Rules为准。下面我们仍然沿用BLOG主的项目,做一个Rules文件。
项目根目录/.claude/rules/excel-processing.md


---
paths:
- "**/*.xlsx" # 匹配所有 .xlsx 文件
- "**/*.xls" # 匹配所有 .xls 文件
---
# Excel 文件处理覆盖规则
> **本规则优先级高于项目根目录的 CLAUDE.md 中的相关条款**
## 核心指令
在处理或生成 Excel 文件时,**以本规则为准**。
## 输出格式覆盖
- **禁止**将多个角色卡合并到同一个 Excel 文件的不同 Sheet 中。
- **必须**为每个角色卡单独生成一个独立的 `.xlsx` 文件。
- 独立文件命名规则:`{玩家昵称}_{角色职业}_角色卡.xlsx`
- 示例:`张三_侦探_角色卡.xlsx`、`李四_医生_角色卡.xlsx`
## 文件输出路径
- 所有生成的独立文件**必须**放入 `output/individual/` 子文件夹中。
- 若 `output/individual/` 不存在,须**自动创建**。
## 特殊场景处理
- 如果检测到文件夹中有 50 张以上的角色卡,**必须询问用户**是否确认生成 50+ 个独立文件,避免意外批量操作。
- 如果用户明确要求“合并到一个文件”,则**优先遵循用户本次的明确指令**,覆盖本规则。
## 禁止事项
- **严禁**修改或覆盖原始上传的角色卡文件。
- **严禁**在生成独立文件的同时,再额外生成一个合并的汇总文件(除非用户明确要求)。
我们可以看到,Rules的核心是使用“paths”指定文件路径和文件类型,比如我就在指定了项目根目录下所有的xlsx和xls文件。接着就是撰写条款了,直接把自己的方法按照格式写上去即可。


接下来我们实际操作一次,向Claude Code输入重新整理角色卡的需求,可以看到Claude Code已经顺利读取rules文件夹,最终也正确输出了我需要处理的文件。
三、Skills (技能)
相对于前两章的“CLAUDE.md”和“Rules”,Skills则更为重要,它是Claude Code的声明式能力扩展机制。直白点讲就是,前两者主要是告诉AI什么能做、什么不能做,而Skills就是告诉AI,接下来要怎么做。Skills的目的,就是帮助AI建立一套做项目的方法,建立一套独属于项目的专业能力。我们用一个标准的JRPG做例子,大概很容易就能看出来
| 机制 | 本质 | 打个比方 |
|---|---|---|
| CLAUDE.md | 游戏的世界观 | 你是一个勇者,这个世界有魔法,怪物有属性,相互克制。 |
| Rules | 特定的条件 | 在火焰关卡,必须用冰系魔法;在森林关卡,禁止用火系魔法 |
| Skills | 可复用的操作流程 | 勇者可以学习魔法技能书,技能书有冰系魔法、火焰魔法 |
那么具体到实际操作中,skills到底有什么用呢?我们还是继续用上面COC跑团作为例子。比如这次我们结团了。然后准备开新的团。BLOG主又收到了5张人物卡(excel表格)。我如果需要再次对这些人物卡做整理,我就需要重新对Claude Code说一次“帮我整理表格、导出成excel、按玩家分sheet、表头用中文、缺字段要标红……”等等。很麻烦,耗时间、耗精力、消耗Token。这时候,我们如果将这个内容,转变成一个“Skills”,只需要让Cladue Code执行预设好的Skill,就可以快速完成任务。
下面我们还是用COC跑团作为案例,来看看实际要怎么操作。Skills 有两种存放位置,决定它“谁可以用”:
| 位置 | 作用范围 | 路径 |
|---|---|---|
| 全局Skill | 所有项目都能用 | ~/.claude/skills/技能名/ |
| 项目Skill | 只有当前项目能用 | 项目根目录/.claude/skills/技能名/ |
像“整理角色卡”这种跟COC强相关的,就没必要放在全局里面,而是可以放在项目Skill里;而像是“生成提交信息”、“代码审查”这种通用操作,就可以放全局Skill。
比如,我需要给我的COC项目追加一个名字是“coc-sort”的Skill(名字随意),那么具体的路径和文件就应该是这样:


---
name: coc-sort
description: 当用户需要整理、汇总或处理COC(克苏鲁的呼唤)跑团角色卡Excel文件时,使用此技能。用户可能说"整理角色卡"、"汇总表格"、"处理这些卡"。
---
# COC角色卡整理技能
## 触发条件
当用户提到整理、汇总、处理角色卡时,自动加载本技能。
## 执行流程
### 第一步:扫描文件
1. 扫描当前目录下所有 `.xlsx` 和 `.xls` 文件。
2. 列出找到的角色卡文件数量,向用户确认是否全部处理。
### 第二步:读取数据
1. 逐个读取每个Excel文件。
2. 提取关键字段:玩家名、角色名、职业、力量、敏捷、意志、理智、幸运、技能列表。
### 第三步:数据清洗
1. 如果某张卡有"基础值"和"成长值"两列,自动计算"最终值 = 基础值 + 成长值"。
2. 如果技能散落在多列,统一汇总到"关键技能"一列。
3. 检查"理智"和"幸运"字段是否为空。
### 第四步:输出汇总
1. **默认**:将所有角色卡合并到一个Excel文件中,按玩家昵称拆分到不同Sheet。
2. **表头必须使用中文**(力量、敏捷、意志、职业、玩家名)。
3. **异常标记**:如果某张卡缺少"理智"或"幸运",在汇总表的首行用红色字体标注"⚠️ 缺少关键属性,请KP复核!"。
4. **严禁**AI猜测或补全缺失的数据。
### 第五步:文件归档
1. 所有生成的文件**必须**放入 `output/` 子文件夹。
2. 如果 `output/` 不存在,自动创建。
3. 文件命名:`角色卡汇总_YYYYMMDD.xlsx`(日期取当天)。
## 禁止事项
- 严禁修改原始角色卡文件(只读)。
- 严禁输出Markdown表格或纯文本(必须输出Excel)。
完成之后保存,现在我不需要跟Claude Code说一大堆指令,只需要输入“/coc-sort”指令


Claude Code就会自动执行我过去需要说一大堆的命令了,而且这对未来所有这个目录下的卡片都生效。未来如果我需要开多个模组,我只需要追加skill说明就行了,就可以了。
最后我们来说说CLAUDE.md跟Skills之间的区别和使用方法,虽然上面也说过,但BLOG主还是不厌其烦再次重申:
| CLAUDE.md | Skills | |
|---|---|---|
| 放什么 | 项目背景、技术栈、通用规范 | 具体的操作流程、多步骤任务 |
| 什么时候加载 | 启动即加载,全程常驻 | 需要的时候才加载,用完即走 |
| 适合写什么 | “这个项目是做什么的” | “这件事具体怎么做” |
| 举例 | “输出必须是EXCEL文件” | “每个人物的内容/数据单独分xlse文件存放” |
接着是重要信息的答疑
Q:如何同时执行多个Skills?
A:Claude Code支持同时接受多个SKILLS甚至自然语言来组合需求,你只需要输入类似“/coc-sort /coc-report 整理今天的角色卡并生成战报”就可以了,Claude Code会同时加载这两个Skills执行,一次最多链接6个。
Q:如果不写入命令“/coc-sort”,这个skill是否就不执行?
A:不是的,仍然执行。实际上,Claude Code执行命令的时候会加载所有skill的“name”和“description”字段,如果有匹配的内容,AI就会自动加载并执行对应的Skill。所以这套自动化流程其实不太需要你主动输入/技能。
Q:如果CLAUDE.md、Rules、Skills之间的内容互相冲突,那谁的优先级更高?
A:我们只需要记得Claude Code的优先级规则即可:用户指令>Skills>Rules>CLAUDE.md


