跳到主要內容
免費試看

為什麼你的CLAUDE-md越寫越長

文章

CLAUDE.md 的分層設計邏輯:為甚麼越寫越長但 AI 越來越不聽。

⏱ 約 12 分鐘


你可能遇到過這個狀況

你可能已經知道 CLAUDE.md 要精簡。但「知道要精簡」跟「知道怎麼拆、拆到哪裡去、拆完怎麼確認沒丟東西」是完全不同的能力。

剛開始用 Claude Code 的時候,你在 CLAUDE.md 加了幾條規則,AI 也會乖乖照做。然後你想到更多規則,繼續加,幾十行、上百行;同時間,對話本身也越來越長,CLAUDE.md 裡的指令就慢慢被稀釋。

某天你發現 AI 好像忘了你前面寫的東西,明明 CLAUDE.md 裡寫了「回覆用繁體中文」,AI 偶爾還是跑英文出來。第一反應通常是 AI 變笨了,但問題不是模型,是你把所有規則都塞進同一個地方,讓真正重要的東西被淹掉了。

你以為每多一條規則,AI 就更聽話一點,但真實情況是規則越多,AI 越容易漏掉或不再遵從其中某些規則。常見的解釋是每多一條,所有規則的相對權重就被稀釋一次——背後的機制說法不一,但「規則多了遵從率會下降」是實務上反覆觀察到的現象。


注意力衰減:你寫越多,每條被分配到的注意力會越低

🔑 重點:CLAUDE.md 越長,每條規則越容易被其他 context 稀釋。

CLAUDE.md 的內容在對話開始時會進入 context,但對話越長、資料越多,早期規則就越容易被後面的內容淹沒(這是實務上常見的現象,背後的機制說法不一,注意力衰減是最常被拿來解釋它的說法),這也意味著你在 CLAUDE.md 塞越多東西,不一定會讓體驗更好,因為 AI 還是要在整段 context 裡判斷甚麼最重要。

如果每條規則都長得一樣重要,最後就等於沒有一條特別重要,這不是叫你不要寫規則,而是要讓真正需要常駐的規則留在入口,不要把所有偏好、流程、範例、提醒都塞進同一份檔案。


過度壓縮的副作用

你的反應可能是:那我把 CLAUDE.md 寫得更精簡,每條規則壓成一句話不就好了?

這當然也有問題,套用到前面幾章我們學到的,當指令被過度精簡之後,AI 拿到的資訊很容易不夠判斷真正的意圖,壓縮不是不好,但壓到 AI 推不出正確行為就是過頭了,每條規則都該拿掉多餘的字,但不該拿掉讓 AI 理解的關鍵資訊。


解決方案:分層

全塞在 CLAUDE.md 裡就是錯的。做法是保持 CLAUDE.md 精簡,把特定領域的指令放到 Skill 或其他文件裡。

很多實務建議都會告訴你 CLAUDE.md 可以放常用命令、測試方式、風格規則。但真正困難的是判斷甚麼不該放。CLAUDE.md 一旦長到某個程度,模型對規則的遵從率會下降(實務觀察,機制如前所述說法不一)。重點不是追求某個精確行數,而是把不該永遠佔用 context 的東西分流出去:

# 砍掉前(塞在 CLAUDE.md 裡的)
記得讀 docs/style-guide.md
記得讀 docs/api-rules.md
寫文章時用繁體中文、不要用表格、段落不要太長...(一大串規則)
每次 session 開始先讀 USER.md 再讀 MEMORY.md...
遇到會議記錄時要整理成結構化格式...

砍完之後 CLAUDE.md 只剩核心通用的指令,其餘分流出去:

CLAUDE.md           → 核心身份和行為原則(保持精簡)
.claude/rules/      → 規則文件(啟動協議、權限模型、各類文件路徑提醒... etc)

.claude/rules/ 怎麼運作的?
所有放在 .claude/rules/ 底下的 .md 檔案,會在每次 session 啟動時自動被載入 context,不需要在 CLAUDE.md 裡寫「記得讀 rules/xxx」(載入機制依 2026-08 版本與官方文件,細節可能調整)

你也可以在檔案開頭的 YAML frontmatter 加 paths 條件,指定只在特定檔案路徑下才載入這條規則(語法依版本,細節以官方文件為準)

換句話說,你把規則搬到 rules/ 之後,它依然每次都會生效,只是不佔 CLAUDE.md 的空間

🎯 實作:拿你自己的 CLAUDE.md 做下面這個分類練習。

現在打開你的 CLAUDE.md,先不用急著刪,只要逐條問自己:「這條是核心身份,還是特定情境的規則?」如果已經長到自己都讀起來吃力,那通常就是該分流的信號。

核心身份可以留下,例如「回覆用繁體中文」「語氣像朋友」,但遇到會議記錄時要怎麼整理、寫文章時要用甚麼風格、審 PR 時要看哪些風險,這些都比較像情境規則,適合搬到 rules 或做成 Skill。

CLAUDE.md 在我們這邊的定義,更像是入口,而不是一個長篇大論的文章。

你可以把這個想成分工,CLAUDE.md 負責定義「你是誰、基本行為是甚麼、要遵循哪些規則文件」,rules 負責定義「每次 session 開始要做甚麼」,Skills 負責處理「遇到特定情境時該怎麼做」,各管各的,不用全擠在同一個地方。

⚠️ 如果拆完之後 AI 反而更亂:常見原因是把 AI 每次都需要看到的規則搬進了只偶爾載入的 Skill,先把搬走的東西列出來,問自己「這條不是每次對話都看到的話,AI 會不會行為偏掉?」會的話搬回 rules。

Skill 使用的是「漸進式揭露」機制,AI 對話開始前主要看到每個 Skill 的 description,觸發了才載入完整內容;你可以保留多個 Skill,但不會每次都把全部內容塞進 context(機制細節在後面的 Skill 章節;觸發與載入行為依版本,以官方文件為準)。


官方 2026 的驗證:規則只是建議,要硬擋就寫進工具

以前我們會覺得「規則寫得越多越清楚,AI 就越聽話」。Anthropic 在 2026 年公開了一個實測結果:把 Claude Code 自己那套系統指令砍掉 80% 以上,AI 行為沒有變差(截至 2026-08 官方文件查證)——這正好呼應前面說的「注意力衰減」:規則不是越多越好,是會互相淹沒。這代表一件事:規則的數量不是重點,AI 需要的是判斷依據,不是行為清單。

所以判斷「這條要不要寫進 CLAUDE.md」時,先問一句:AI 忘了這條,會出事嗎?

  • 會出事(不能刪檔、不能直接發布、不能碰敏感資料)→ 不要只寫規則。寫進 Hook、權限設定、測試或 CI——這些是「硬擋」,AI 繞不過去。規則只是建議,AI 可能漏看;硬擋不會。
  • 不會出事(語氣、偏好、流程偏好)→ 才留在 CLAUDE.md 當建議,而且寫成原則而不是條列規則。

官方 2026 的指引給了一個四層選擇法,可以直接當分類表用:

這條資訊的性質放哪裡
不變的事實與底線(身份、安全邊界、語氣)CLAUDE.md
必須執行、漏了會出事Hook/權限/測試/CI(硬擋)
某類任務的工作方法(多步驟流程)Skill
探索性、需要 AI 自己判斷的事對話或子代理

細節依 2026-08 官方文件與版本調整;核心判斷不變:能用工具擋的,不要用文字拜託。


那規則寫到甚麼程度才夠

規則文件只能打底,剩下很多細節還是來自互動中的默契。規則負責打底,互動負責磨合。不要追求完美規則,先把你個人認為最重要的內容寫下來:行為原則、紅線、偏好,剩下的讓 AI 從互動中慢慢校準。

最容易卡住的往往是風格類規則,例如「語氣不要太正式」,因為「正式」的定義因人而異,這種規則寫得再精確,AI 也常常需要幾輪互動才能校準到你的標準,比如寫作 Skill 原本沒寫「段落不要太長」,但我們連續幾次把長段落拆短,AI 就可能從互動裡學到偏好。

這種磨合很多時候靠互動比靠規則快,冗餘規則砍掉之後,AI 反而更容易抓到真正重要的事。

⚠️ 如果一直改規則但 AI 表現沒有明顯提升:問題可能不在規則,而是互動默契還沒累積,這時候繼續加規則只會讓 context 更重,先用幾次,把 AI 做得好的地方記下來,讓下次有參考基礎。

反過來,如果每次執行類似任務時,我提供它之前發生過甚麼狀況,它的交付品質也會大幅提升。這就是為甚麼後面的記憶系統很重要,記憶是那段互動默契的載體,有沒有記憶,體驗差距會很大。


到這裡,我們有了分層的起點:CLAUDE.md 精簡當入口,rules 放啟動與固定規則,Skill 留給特定情境的工作方式。下一篇會把這些放到第一週的實際使用坑裡看。


你現在可以做的一件事:打開你的 CLAUDE.md,逐條問自己「這條是核心身份還是特定情境的規則?」。把特定情境的規則搬到 .claude/rules/ 或做成 Skill。

不用擔心搬過去不會被讀到,.claude/rules/ 的檔案會在下次 session 自動載入,不需要額外設定


讀完這章,你能

判斷 CLAUDE.md 該留甚麼、該搬到 rules 或 Skill——會出事的事用硬擋(Hook/權限/測試),不會出事的才當規則、寫成原則。


這章 FAQ

Q:CLAUDE.md 越寫越長,AI 反而不聽? A:注意力衰減——把情境規則搬去 rules 或 Skill,入口只留核心身份與行為原則。

Q:規則寫了 AI 還是不聽,是規則不夠多嗎? A:先確認這條是不是該硬擋:會出事的事(刪檔、發布、碰敏感資料)寫進 Hook/權限/測試,不會出事的才當規則、寫成原則——規則只是建議,AI 可能漏看,硬擋不會。

試看到這裡,想繼續嗎?

查看《Claude Code 深度工程手冊》完整內容

定價

NT$5,999單次購買

查看商品頁