终极指南:HumanLayer Skills 重写 CLAUDE.md 的 5 大核心原则
【免费下载链接】skills项目地址: https://gitcode.com/GitHub_Trending/skills53/skills
skills53/skills(HumanLayer Skills)是 HumanLayer 出品的 Claude Code 技能库,其中的 improve-claude-md 技能可以按 5 大核心原则自动重写你的 CLAUDE.md,用<important if>条件块显著提升 AI 的指令遵循率。本文带你快速理解这套方法并上手使用 🚀
为什么 AI 会"选择性忽略"你的 CLAUDE.md?
问题出在 Claude Code 的机制上:它给每次注入的 CLAUDE.md 都附带一条系统提醒——"此上下文可能与你的任务相关,也可能不相关,不相关时请勿响应"。这意味着:
- Claude 会主动忽略它认为与当前任务无关的段落
- 文件里无关内容越多,AI 忽略整个文件(包括真正重要的规则)的概率就越高
improve-claude-md 的解法很巧妙:把条件相关的内容包进<important if="condition">标签——这正是 Claude Code 自身系统提示词使用的 XML 信号模式,等于给模型一个明确的"相关性提示",让该看的规则穿透"可能不相关"的框架。完整重写策略定义在 SKILL.md。
一键安装 improve-claude-md 技能
安装只需一行命令:
npx skills add humanlayer/skills --skill improve-claude-md安装完成后,在你的项目里直接运行:
/improve-claude-md技能会读取你的现有 CLAUDE.md,按下面的 5 大原则完成重写。
原则一:基础上下文裸写,领域指导才包裹
不是所有内容都要包进<important if>,这是一个常见误区:
| 内容类型 | 示例 | 处理方式 |
|---|---|---|
| 项目身份、目录地图、技术栈 | "Express API + React 前端" | 裸写在文件顶部 |
| 领域规则 | 测试模式、API 约定、状态管理 | 用精准条件包裹 |
📏 判断标准很简单:如果一条规则对 90% 以上的任务都相关,就裸写;只对特定类型的工作相关,就包裹。
原则二:条件必须具体,拒绝"万能触发"
宽泛的条件等于没有条件。❌ 反面示例:
<important if="you are writing or modifying any code"> - 使用绝对导入 - 使用函数式组件 - 文件用 camelCase 命名 </important>✅ 正面做法:每条规则拥有自己的窄触发条件——"添加或修改导入时""创建新组件时""创建新文件或目录时"各成一组,互不混杂,也绝不把不相关的规则塞进同一个宽泛条件(完整对照见 SKILL.md 原则 2)。
原则三:保持简短,谨慎拆分文件
不要把 CLAUDE.md 拆成一堆小文件、再让 Agent 靠额外工具调用去逐个发现——<important if>的价值恰恰在于"全部内容内联、按条件加权":Agent 看得到全部规则,但只关注命中的那部分。除非内容极其冗长复杂,否则尽量保持单文件简洁。
原则四:Less is More,删掉工具和代码能替代的指令
前沿模型能可靠遵循的指令数量有限(Claude Code 系统提示词已占用约 50 条),CLAUDE.md 必须尽量精简:
- ✂️删掉 linter 辖区:缩进、命名、格式等能被 linter / formatter / pre-commit 钩子强制执行的规则全部移除
- ✂️删掉可自发现的规则:LLM 是上下文学习者,代码库里已有的稳定模式,Agent 搜索几次自然就会遵循
- ✂️删掉代码片段:片段会过期且撑大文件,改用文件路径引用(如"模式参见
src/utils/example.ts")
原则五:保留所有命令
命令表是基础参考,一条都不许删。即使某些命令很少用,Agent 也需要知道"有什么可用"。做法是把全部命令整体包进一个条件块:
<important if="you need to run commands to build, test, lint, or generate code"> [完整的命令表格] </important>重写后的标准结构
技能产出的 CLAUDE.md 遵循固定结构(详见 输出结构说明):
- 一行项目身份(裸写)—— 这是什么、用什么构建
- Project map(裸写)—— 目录清单及简述
- 命令表(单个包裹块,全量保留)
- 逐条规则块—— 每条规则独立条件
- 领域分区—— 测试、API、状态管理、i18n 各占一个块
9 步执行流程(识别身份 → 提取目录地图 → 拆规则 → 删 linter 辖区 → 删代码片段……)在 How to Apply 章节 中有完整定义,文末还附了一个 Express + React Monorepo 的完整前后对比示例(Example 章节),非常适合照着理解每一处删改的原因。
同一个仓库里的其他实用技能
| 技能 | 用途 |
|---|---|
| design-control-loop | 通过访谈帮你设计并构建定制化的 AI 控制回路(传感器/控制器/执行器),以小而可审查的变更按节奏推进代码库 |
| show-me | 用简明图示、代码结构草图和 HTML 制品帮你直观理解当前话题 |
| narrow-react-prop-types | 收窄 React 组件 prop 类型,使其匹配真实代码路径而非 Storybook 或测试状态 |
各技能的安装命令与调用方式汇总在 README.md。
总结:一句话记住 5 大原则
🎯基础裸写、条件收窄、保持简短、大胆删减、命令全留—— 让 CLAUDE.md 从"AI 爱答不理的说明书"变成"条件精准加权的指令集",这是提升 Claude Code 指令遵循率最简单有效的一步。
【免费下载链接】skills项目地址: https://gitcode.com/GitHub_Trending/skills53/skills
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考