name: ai-md
description: “Convert human-written CLAUDE.md into AI-native structured-label format. Battle-tested across 4 models. Same rules, fewer tokens, higher compliance.”
risk: safe
source: community
date_added: “2026-03-11”
AI.MD v4 — 完整的原生 AI 转换系统
何时使用此技能
- 当你的 CLAUDE.md 很长但 AI 仍然忽略你的规则时使用
- 当系统指令冗长导致令牌使用过高时使用
- 在您想优化任何大型语言模型系统提示以符合规范时使用
- 在在不同 AI 工具(Claude、Codex、Gemini、Grok)之间迁移规则时使用
什么是 AI.MD?
AI.MD 是一种将人类撰写的CLAUDE.md(或任何大语言模型系统说明)转换的方法论
转换为 AI 模型更可靠遵循的结构化标签格式,同时使用更少的标记。
**我们证明的悖论:**在自然语言中增加更多规则会降低遵守程度。
将相同的规则转换为结构化格式会恢复并超越它。
Human prose (6 rules, 1 line) → AI follows 4 of them Structured labels (6 rules, 6 lines) → AI follows all 6 Same content. Different format. Different results.为什么有效:大型语言模型如何实际处理指令
大型语言模型不会“阅读”——它们是注意。理解这一点会改变一切。
机制 1:注意力分裂
当多条规则共享一行时,模型的注意力会均匀分布在所有标记上。
每条规则都获得一部分注意力权重。有些规则会丢失。
当每条规则都有自己的行时,模型将其作为一个独立的单元进行处理。
对每条规则的全部注意力权重。
# ONE LINE = attention splits 5 ways (some rules drop to near-zero weight) EVIDENCE: no-fabricate no-guess | 禁用詞:應該是/可能是 → 先拿數據 | Read/Grep→行號 curl→數據 | "好像"/"覺得"→自己先跑test | guess=shame-wall # FIVE LINES = each rule gets full attention EVIDENCE: core: no-fabricate | no-guess | unsure=say-so banned: 應該是/可能是/感覺是/推測 → 先拿數據 proof: all-claims-need(data/line#/source) | Read/Grep→行號 | curl→數據 hear-doubt: "好像"/"覺得" → self-test(curl/benchmark) → 禁反問user violation: guess → shame-wall机制 2:零推理标签
自然语言迫使模型从上下文中推断意义。
标签明确声明含义。不需要推断 = 不会误解。
# AI must infer: what does (防搞混) modify? what does 例外 apply to? GATE-1: 收到任務→先用一句話複述(防搞混)(長對話中每個新任務都重新觸發) | 例外: signals命中「處理一下」=直接執行 # AI reads labels directly: trigger→action→exception. Zero ambiguity. GATE-1 複述: trigger: new-task action: first-sentence="你要我做的是___" persist: 長對話中每個新任務都重新觸發 exception: signal=處理一下 → skip yields-to: GATE-3关键见解:像trigger:、action:、exception:这样的标签在所有语言中都适用。
该模型不需要解析中文/日文/英文语法来理解结构。
标签是人类与人工智能之间的通用语言。
机制 3:语义锚定
标记的子项会创建可匹配的标签。当用户的输入包含关键字时,
模型将其直接匹配到对应的标签——就像哈希表查找一样
而不是全文搜索。
# BURIED: AI scans the whole sentence, might miss the connection 加新功能→第一句問schema | 新增API/endpoint=必確認health-check.py覆蓋 # ANCHORED: label "new-api:" directly matches user saying "加個 API" MOAT: new-feature: 第一句問schema/契約/關聯 new-api: 必確認health-check.py覆蓋(GATE-5)真实证据:这个特定技术修复了连续失败5次的测试用例
在所有模型中。标签new-api:使 Codex T5 在第一次尝试时从 ❌→✅。
转换过程:当你给我一个 CLAUDE.md 时会发生什么
这是我在将自然语言指令转换为 AI.MD 格式时使用的确切思维模型。
第1阶段:理解 — 像编译器而不是人类一样阅读
我读 CLAUDE.md就好像我在构建一个状态机,而不是在读一份文档。
对于每个句子,我问:
- 这是触发器吗?(什么输入会激活此行为?)
- 这是一个动作吗?(AI应该做什么?)
- 这是一个约束吗?(人工智能不应该做什么?)
- 这是元数据吗?(优先级、时机、持久性、例外情况?)
- 这是人类的解释吗?(规则存在的原因 — 删除此内容)
示例分析:
Input: "收到任務→先用一句話複述(防搞混)(長對話中每個新任務都重新觸發) | 例外: signals命中「處理一下」=直接執行" Decomposition: ├─ TRIGGER: "收到任務" → new-task ├─ ACTION: "先用一句話複述" → first-sentence="你要我做的是___" ├─ DELETE: "(防搞混)" → human motivation, AI doesn't need this ├─ METADATA: "(長對話中每個新任務都重新觸發)" → persist: every-new-task └─ EXCEPTION: "例外: signals命中「處理一下」=直接執行" → exception: signal=處理一下 → skip阶段 2:分解 — 将每个|和()拆解为原子规则
合规失败的头号原因是复合规则。
一行中用|分隔的 3 条规则看起来像是对 AI 的 1 条指令。
它需要是三个独立的指令。
**分割测试:**如果你可以在句子的两部分之间加上“和”,
它们是独立的规则,必须写在不同的行上。
# Input: one sentence hiding 4 rules 禁用詞:應該是/可能是→先拿數據 | "好像"/"覺得"→自己先跑test(不是問user)→有數據才能決定 # Analysis: I find 4 hidden rules Rule 1: certain words are banned → use data instead Rule 2: hearing doubt words → run self-test Rule 3: don't ask the user for data → look it up yourself Rule 4: preference claims → require A/B comparison before accepting # Output: 4 atomic rules banned: 應該是/可能是/感覺是/推測 → 先拿數據 hear-doubt: "好像"/"覺得" → self-test(curl/benchmark) self-serve: 禁反問user(自己查) compare: "覺得A比B好" → A/B實測先行阶段 3:标签 — 分配功能标签
每个原子规则都会得到一个声明其功能的标签。
我使用大约12种标签类型的标准词汇:
| Label | What It Declares | When to Use |
|---|---|---|
trigger: | What input activates this | Every gate/rule needs one |
action: | What the AI must do | The core behavior |
exception: | When NOT to do it | Override cases |
not-triggered: | Explicit negative examples | Prevent over-triggering |
format: | Output format constraint | Position, structure requirements |
priority: | Override relationship | When rules conflict |
yields-to: | Which gate takes precedence | Inter-gate priority |
persist: | Durability across turns | Rules that survive conversation flow |
timing: | When in the workflow | Before/after/during constraints |
violation: | Consequence of breaking | Accountability mechanism |
banned: | Forbidden words/actions | Hard no-go list |
policy: | Decision heuristic | When judgment is needed |
标签选择技术:我选择能帮助不同 AI 模型的标签
(不是被指示的那个) 如果只看到标签,就理解这个规则的功能。
如果trigger:明确告诉你“这就是触发规则的内容”,而不需要阅读其他任何内容,
这是正确的标签。
阶段4:结构 — 构建架构
我将规则组织成一个层次结构:
<gates> = Hard stops (MUST check before any action) <rules> = Behavioral guidelines (HOW to act) <rhythm> = Workflow patterns (WHEN to do what) <conn> = Connection strings (FACTS — never compress) <ref> = On-demand references (don't load until needed) <learn> = Evolution rules (how the system improves)为什么这个顺序很重要:
闸门必须首先检查,因为它们必须在任何事情之前被检查。
模型从上到下处理指令。优先级 = 位置。
分组技巧:共享同一领域的规则将归入同一标题下作为子项。
# FLAT (bad): 7 unrelated rules, model treats equally 1. no guessing 2. backup before editing 3. use tables for output 4. check health after deploy 5. don't say "應該是" 6. test before reporting 7. all claims need proof # GROUPED (good): 3 domains, model understands hierarchy EVIDENCE: ← domain: truthfulness core: no-guess banned: 應該是 proof: all-claims-need-data SCOPE: ← domain: safety pre-change: backup pre-run: check-health OUTPUT: ← domain: format format: tables+numbers第5阶段:解决——处理冲突和极端情况
这是最关键且最不明显的阶段。自然语言指令
经常包含隐藏的冲突,人类可以用直觉解决,但人工智能无法解决。
技术:冲突检测矩阵
我检查每一对门/规则是否有冲突:
GATE-1 (複述: repeat task) vs GATE-3 (保護檔: backup first) → CONFLICT: If user says "edit .env", should AI repeat the task first, or backup first? → RESOLUTION: priority: GATE-3 > GATE-1 (safety before courtesy) yields-to: GATE-3 (explicit in GATE-1) GATE-4 (報結論: cite evidence) vs bug-close (記錄根因: write root cause) → CONFLICT: bug-close requires stating root cause, but GATE-4 bans definitive claims → RESOLUTION: timing: GATE-4 is pre-conclusion brake; bug-close is post-verification record GATE-4 not-triggered when bug already verified EVIDENCE (no-guess) vs user says "處理一下" (just do it) → CONFLICT: should AI verify assumptions or execute immediately? → RESOLUTION: signal "處理一下" = user has decided, skip confirmation技巧:非触发列表
对于任何可能过度触发的规则,我都会添加明确的负面示例:
GATE-4 報結論: trigger: 最終歸因/根因判定/不可逆建議 not-triggered: 中間進度數字 | 純指標查詢 | 工具原始輸出 | 已知事實 | 轉述文件这是被发现的,因为 Gemini 2.5 Pro 在简单的数字查询上不断触发 GATE-4
就像“成功率怎么样?”。添加not-triggered: 纯指标查询立即解决了问题。
第六阶段:测试——多模型验证(不可协商)
这不是可选的。每次转换必须由两个不同的 LLM 模型验证。
为什么?因为对Claude非常适用的格式可能会让GPT感到困惑,反之亦然。
AI.MD的全部意义在于它能跨模型工作。
我们制定的考试方案:
- 编写8个模拟真实用户行为的测试输入(而非教材示例)
- 在两个规则冲突的地方包含“陷阱”问题
- 包括规则不应该触发的“负面”测试
- 不要暗示正在测试哪些规则(AI 不应该知道)
- 独立运行每个模型
- 对每个答案评分:✅ 完全符合,⚠️ 部分符合,❌ 不符合
- 如果任何模型的分数在转换后下降 → 恢复该特定更改
我们使用的8个问题模板:
T1: Simple task (does GATE-1 trigger?) T2: Database write attempt (does GATE-2 catch it?) T3: Protected file edit (does GATE-3 fire FIRST, before GATE-1?) T4: Root cause analysis (does GATE-4 require all 4 questions?) T5: Business API addition (does AI mention health-check.py?) T6: User says "好像X比Y好" (does AI run comparison or just accept it?) T7: User says "處理一下" (does AI skip GATE-1 confirmation?) T8: Simple metric query (does GATE-4 NOT trigger?)在战斗测试中发现的特殊技巧
技巧 1:双语标签策略
标签使用英语,输出字符串使用用户的语言。
英文标签更短,并且被所有模型更普遍理解。
但是 AI 实际生成的文本必须保持用户的语言。
action: first-sentence="你要我做的是___" ← AI outputs Chinese format: must-be-line-1 ← structural constraint in English banned: 應該是/可能是 ← forbidden words stay in original language为什么这有效:英文标签词汇(trigger、action、exception)可以直接映射
到每个模型训练数据中的概念。中文语法标签(触发条件, 执行动作, 例外情况)
在各个型号之间标准化程度较低。
技术 2:状态机门
不要将规则视为一个平面的列表,而是将它们建模为一个状态机:
- 每个门都有一个
触发器(输入状态) - 每个门都有一个
action(转换) - 门具有
优先级(当多个匹配时,哪个先触发) - 门有
yields-to(显式冲突解决)
这为人工智能提供了一个明确的执行模型:
Input arrives → Check GATE-3 first (highest priority) → Check GATE-1 → Check GATE-2 → ...而不是:
Input arrives → Read all rules → Try to figure out which one applies → Maybe miss one技术 3:用于语义边界的 XML 部分标签
使用<gates>、<rules>、<rhythm>、<conn>作为章节分隔符
创建了严格的边界,防止规则溢出(即模型混淆时)
规则属于哪一部分)。
<gateslabel="硬性閘門 | 優先序: gates>rules>rhythm | 缺一項=STOP">...gates here...</gates><rules>...rules here...</rules>开标签上的label属性作为章节级指令:
这些是硬门,这些是它们的优先级,缺失 = 停止
技巧4:交叉引用而不是重复
当相同的概念出现在多条规则中时,不要重复它。
使用交叉引用标签。
# BAD: health-check mentioned in 3 places GATE-5: ...check health-check.py... MOAT: ...must check health-check.py... SCOPE: ...verify health-check.py exists... # GOOD: single source of truth + cross-reference GATE-5 驗收: checks: 新增API → 確認health-check.py覆蓋 MOAT: new-api: 必確認health-check.py覆蓋(GATE-5) ← cross-ref, not duplicate技巧 5:“是什么而不是为什么”原则
删除所有用于解释规则存在原因的文本。
人工智能需要知道做什么,而不是为什么。
# DELETE these human explanations: (防搞混) → motivation (不是大爆破,是每次順手一點) → metaphor (想清楚100倍後才做現在的) → backstory (因為用戶是非工程師) → justification # KEEP only the actionable instruction: action: first-sentence="你要我做的是___" refactor: 同區塊連續第3次修改 → extract每删除一个解释都会节省 tokens 并消除可能混淆模型的噪音
关于它实际上应该做什么。
两阶段工作流程
阶段 1:预览 — 测量,不触碰
echo"=== Current Token Burn ==="claude_md=$(wc-c<~/.claude/CLAUDE.md2>/dev/null||echo0)rules=$(cat~/.claude/rules/*.md2>/dev/null|wc-c||echo0)total=$((claude_md+rules))tokens=$((total/4))echo"CLAUDE.md:$claude_mdbytes"echo"rules/*.md:$rulesbytes"echo"Total:$totalbytes ≈$tokenstokens/turn"echo"50-turn session: ≈$((tokens*50))tokens on instructions alone"然后:读取所有自动加载的文件。识别冗余、散文冗长和重复规则。
在继续之前询问用户:“想要提取吗?”
阶段 2:蒸馏 — 带安全网转换
- 备份:
cp ~/.claude/CLAUDE.md ~/.claude/CLAUDE.md.bak-pre-distill - 第1-5阶段:运行上述完整转换过程
- 第6阶段:进行多模型测试(至少2个模型,8个问题)
- 报告:显示前后分数
=== AI.MD Conversion Complete === Before: {old} bytes ({old_score} compliance) After: {new} bytes ({new_score} compliance) Saved: {percent}% bytes, +{delta} compliance points Backup: ~/.claude/CLAUDE.md.bak-pre-distill Restore: cp ~/.claude/CLAUDE.md.bak-pre-distill ~/.claude/CLAUDE.md人工智能原生模板
# PROJECT-NAME | lang:xx | for-AI-parsing | optimize=results-over-format<user>identity, tone, signals, decision-style (key: value pairs)</user><gateslabel="硬性閘門 | 優先序: gates>rules>rhythm | 缺一項=STOP">GATE-1 name: trigger: ... action: ... exception: ... yields-to: ... GATE-2 name: trigger: ... action: ... policy: ...</gates><rules>RULE-NAME: core: ... banned: ... hear-X: ... → action violation: ...</rules><rhythm>workflow patterns as key: value pairs</rhythm><conn>connection strings (keep exact — NEVER compress facts/credentials/URLs)</conn><reflabel="on-demand Read only">file-path → purpose</ref><learn>how system evolves over time</learn>反模式
| Don’t | Do Instead | Why |
|---|---|---|
| Human prose in CLAUDE.md | Structured labels | Prose requires inference; labels are direct |
| Multiple rules on one line | One concept per line | Attention splits across dense lines |
| Parenthetical explanations | Remove them | AI needs “what” not “why” |
| Same rule in 3 places | Single source + cross-ref | Duplicates can diverge and confuse |
| 20+ flat rules | 5-7 domains with sub-items | Hierarchy helps model organize behavior |
| Compress without testing | Validate with 2+ models | What works for Claude might fail for GPT |
| Assume format doesn’t matter | Test it — it does | Same content, different format = different compliance |
| Chinese-only labels | English labels + native output | English labels are more universal across models |
| Flat rule list | State machine with priorities | Clear execution order prevents missed rules |
实际效果
测试于 2026-03,washinmura.jp CLAUDE.md,5 轮,4 个模型:
| Round | Change | Codex (GPT-5.3) | Gemini 2.5 Pro | Claude Opus 4.6 |
|---|---|---|---|---|
| R1 (baseline prose) | — | 8/8 | 7/8 | 8/8 |
| R2 (added rules) | +gates +examples | 7/8 | 6/8 | — |
| R3 (refined prose) | +exceptions +non-triggers | 6/8 | 6.5/8 | — |
| R4 (AI-native convert) | structured labels | 8/8 | 7/8 | 8/8 |
主要发现:
- 更多的散文规则 = 更差的遵守情况(R1→R3:随着规则增多,分数下降)
- 结构化格式 = 恢复 超过(R4: 尽管有更多规则仍恢复到最大值)
- 跨模型一致性:一种模型可用的格式对所有模型都适用(Grok除外)
- 语义锚定:
new-api:标签修复是影响最大的单一更改
令人不快的真相:你漂亮且精心编写的 CLAUDE.md
可能正在损害你人工智能的性能。结构 > 散文。永远如此。
限制
- 仅当任务明确符合上述描述的范围时,才使用此技能。
- 不要将输出视为环境特定验证、测试或专家审查的替代品。
- 如果缺少所需的输入、权限、安全界限或成功标准,请停下来并要求澄清。