关于 optimise-claude
Optimise Claude 是用于审计和精简 AI 指令文件的技能,涵盖 CLAUDE.md、SKILL.md 和 AGENTS.md。它帮助仓库维护者删除重复内容、整理结构,并将特定领域的指引移入技能文件。
主要功能
- 01盘点指令文件及其行数
- 02审查 CLAUDE.md 中的有效指引
- 03减少 SKILL.md 的令牌用量
- 04检查前置元数据和章节结构
- 05查找重复技能及过长的 AGENTS.md 内容
适用场景
- 01精简篇幅过长的 CLAUDE.md
- 02重构超过目标长度的 SKILL.md
- 03去重多个技能中的指令
- 04将较大的 AGENTS.md 内容提取为技能
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ ralphcrisostomo/ nuxt-development-skills --skill optimise-claude安装后在 Claude Code 中输入/optimise-claude确认已加载。
附带文件README.md
详细介绍
优化 Claude
审查 AI 指令文件的大小、相关性和结构。每个会话都会加载 CLAUDE.md——臃肿的文件会导致 Claude 忽略你的实际指令。SKILL.md 中的每一行都会在每次调用时消耗令牌。精简这两类文件可以降低延迟和成本,并减少指令遵循失败。
范围
所有操作均限定在项目根目录($PWD)内。绝不修改仓库之外的文件。
适用情况
- CLAUDE.md 很长,Claude 会忽略规则,或询问其中已经解答的问题
- SKILL.md 文件超过约 120 行
- Frontmatter 或章节顺序不符合规范
- 多个技能包含重复内容
- AGENTS.md 中有超过 30 行、应改为技能的内嵌指令块
工作流
按顺序运行各阶段。不适用的阶段可跳过。
阶段 1 — 盘点与分类
- 列出所有 CLAUDE.md(根目录、父目录、子目录)、
.agents/skills/下的 SKILL.md,以及 AGENTS.md - 记录:文件、行数、是否有 frontmatter(是/否)、章节是否符合规范(是/否)
- 按文件类型标记违规项(参见下方标准)
- 输出按行数降序排列的分类表
| File | Lines | Type | Violations |
|------|------:|------|------------|
阶段 2 — 审查 CLAUDE.md
对每个 CLAUDE.md,逐行应用判断标准:“删掉这条会导致 Claude 犯错吗?” 如果不会,就删掉。
保留:
- Claude 无法猜出的 Bash 命令
- 与默认设置不同的代码风格规则
- 测试说明和首选测试运行器
- 仓库规范(分支命名、PR 约定)
- 项目特有的架构决策
- 开发环境的特殊要求(必需的环境变量)
- 常见陷阱或不明显的行为
删除:
- Claude 通过阅读代码就能弄清的内容
- Claude 已经了解的标准语言规范
- 详细的 API 文档(改用链接)
- 频繁变化的信息
- 冗长的解释或教程
- 逐个文件介绍代码库的内容
- “编写整洁代码”等显而易见的做法
重组:
- 将特定领域的工作流和按需知识迁移到技能(SKILL.md)
- 使用
@path/to/import语法,按逻辑章节拆分较大的 CLAUDE.md - 谨慎使用强调措辞(
IMPORTANT、YOU MUST)——仅用于 Claude 屡次违反的规则 - 如果某条规则至关重要且绝无例外,建议将其改为钩子
阶段 3 — 减少 SKILL.md 的令牌用量
对每个标记的技能:
- 将叙述性文字精简为祈使句项目符号
- 将冗长示例压缩为最精简的代码围栏
- 删除父级 AGENTS.md 或 CLAUDE.md 已涵盖的重复说明
- 删除列表项之间的空行
- 目标为不超过 120 行;若仍超出,则将详细内容移至
references/文件,并提供清晰指引 - 对多领域技能,拆分为变体参考文件(只读取相关文件)
阶段 4 — 修正结构与 Frontmatter
- YAML frontmatter:
name与目录名一致(kebab-case),description以 "Use when" 开头 - 章节顺序:H1 标题 → 适用情况 → 规则/说明 → 快速参考 → 验证
- 删除空章节或占位章节
- 全文使用祈使语气
阶段 5 — 跨技能去重
- 找出技能间重复的内容块(超过 5 行相似内容)
- 将共享内容移至根目录的 CLAUDE.md、AGENTS.md 或共享技能
- 将重复内容替换为单行指引:“参见
<skill-name>,了解……” - 改写重叠的
description字段,让每个技能都有独特的触发条件
阶段 6 — 提取臃肿的 AGENTS.md 指令块
- 扫描 AGENTS.md,找出超过 30 行的内嵌指令块
- 在
.agents/skills/<name>/SKILL.md创建新技能 - 将原指令块替换为精简指引和快速参考
- 如果存在技能同步脚本,则运行该脚本
输出格式
## Optimisation Report
| File | Before | After | Delta |
|------|-------:|------:|------:|
| ... | 250 | 110 | -140 |
Total files audited: N
Total lines saved: N
Content migrated to skills: N
验证
- 每一行 CLAUDE.md 都通过“删除后是否会导致错误?”测试
- 没有任何 SKILL.md 超过 120 行
- 每个 SKILL.md 都包含有效的 YAML frontmatter,并带有
name和description - 任意两个技能之间的相同行数不超过 5 行
- 没有任何 AGENTS.md 包含超过 30 行且未指向技能的内联指令块
- 特定领域的内容应放在技能中,而不是 CLAUDE.md
评论
支持 Markdown