用途:审计并重构 CLAUDE.md、AGENTS.md 和 .claude/rules/ 文件,遵循渐进式披露原则,把单体指令文件拆成最小根文件、带作用域的 .claude/rules/ 文件与参考文档。根文件每次请求都会加载,臃肿会挤占任务 token 并超出有效指令预算(约 150–200 条规则后注意力下降);带 paths: glob 的规则文件仅在匹配文件被触及时加载。
主要能力:检测作用域(项目级 .claude/CLAUDE.md、用户级 ~/.claude/CLAUDE.md 或两者,monorepo 还检查 **/CLAUDE.md);完整读取所有目标文件;跨根文件、规则文件、项目级与用户级查找矛盾并逐条询问保留哪版;提炼根文件必需内容(一句话项目描述、非默认包管理器、非标准构建/类型检查/测试命令、真正通用的规则、与常见用法不同的领域概念);把其余内容分类到 packages/<pkg>/CLAUDE.md、.claude/rules/<domain>.md、docs/<TOPIC>.md 或删除;审计已有规则文件的冗余、含糊、缺失或过宽 glob;标记冗余、含糊、可推断、结构性、过度指令的内容;先提出结构方案,用 AskUserQuestion 确认后再写盘。
用法:可传入路径参数($ARGUMENTS)指定目标文件,否则询问重构范围。规则文件使用 frontmatter 格式:---\npaths:\n - "src/api//*.ts"\n - "/*.test.{ts,tsx}"\n---;应始终加载的规则省略 paths:。根文件用祈使句("To X, do Y"),全大写仅用于真正的绝对规则。
适用场景:monorepo 中按包拆分约定(子目录 CLAUDE.md 惰性加载,建议每文件 100 行以内、上限 200 行);跨包按文件类型生效的规则用带 glob 的 .claude/rules/;较长参考资料放 docs/。
限制与避免:不在根文件记录文件路径或目录结构;不对无需强调的规则使用强制语气;不用 init 脚本自动生成根文件;多智能体仓库可考虑 AGENTS.md 与 CLAUDE.md 符号链接;未经用户批准不写文件;不创建与根文件重复的规则;项目级操作时不修改用户级 ~/.claude/rules/;不使用 */ 等过宽 glob;不把单条规则拆到多个文件;不为每个包都建子目录 CLAUDE.md。