生活分享

Claude Code|拆分規則與引用其他 MD

用 rules 與檔案引用維護共用規範。當 CLAUDE.md 越寫越長,可以把規則依主題拆開,讓每份文件有清楚用途。本篇會建立 .claude/rules 測試規則、加入只在特定路徑載入的條件,並示範如何透過 CLAUDE.md 共用 AGENTS.md。你會知道整理檔案與減少上下文是不同目標,不會誤以為拆成很多檔就自動節省讀取量。

閱讀時間約 5 分鐘

拆分規則與引用其他 MD:文件、螢幕與完成記號的幾何插圖
圖片:Mokaair (© Mokaair)
本篇目錄
  1. 先把規則按用途分類
  2. 建立第一份 rules 文件
  3. 用 paths 限定檔案範圍
  4. 引用其他 MD 與共用 AGENTS.md
  5. 驗證拆分後的載入

當 CLAUDE.md 越寫越長,可以把規則依主題拆開,讓每份文件有清楚用途。本篇會建立 .claude/rules 測試規則、加入只在特定路徑載入的條件,並示範如何透過 CLAUDE.md 共用 AGENTS.md。你會知道整理檔案與減少上下文是不同目標,不會誤以為拆成很多檔就自動節省讀取量。

請先了解,並在練習專案副本操作。範例中的路徑以專案根目錄為基準;如果資料夾結構不同,要先調整條件。這篇只建立指引,不會因為新增 MD 就自動執行測試或取得更多工具權限。

先把規則按用途分類

先把規則按用途分類 → 建立第一份 rules 文件 → 用 paths 限定檔案範圍
先把規則按用途分類 → 建立第一份 rules 文件 → 用 paths 限定檔案範圍 · 圖片:Mokaair (© Mokaair)
閱讀完整文字說明

拆分規則與引用其他 MD,以流程和文件圖形呈現教學重點。

把現有規則分成專案概況、所有工作都適用的要求,以及特定檔案才需要的要求。專案概況留在 CLAUDE.md;測試命名與斷言慣例可移到 testing.md;只有介面檔需要的操作驗證,可以放在具有 paths 條件的規則。先分類再搬動,避免一條要求散落在多份文件。

需求適合方式載入特性
所有工作都需要的短規則CLAUDE.md啟動時載入
依主題整理一般規則.claude/rules/*.md無條件規則啟動時載入
特定路徑需要的規則rules 加 paths 條件讀到符合檔案時載入
共用現有文件CLAUDE.md 的 @ 引用隨引用文件載入

建立第一份 rules 文件

在專案建立 .claude/rules 目錄,新增 testing.md。檔名用主題命名,不必加流水號;子目錄也可以用來整理更多規則。沒有 paths 條件的規則會在啟動時載入,所以不要把一次性調查報告全部放進這裡。

寫入 .claude/rules/testing.md · markdown
# 待辦專案測試規則

- 使用既有 Node.js 測試工具,不新增測試框架。
- 行為變更至少涵蓋正常輸入與一個邊界情境。
- 切換或刪除項目時,確認其他識別碼的資料不變。
- 回報實際執行的命令與結果,失敗時保留關鍵錯誤。

接著從 CLAUDE.md 移除完全重複的段落,只留下必要概述或說明。刪除前先看差異,確保規則真的已完整搬到新文件。不是所有整理都需要增加引用:rules 目錄本身有載入機制,不必為每份規則再加一條 @ 引用,造成重複或混淆。

用 paths 限定檔案範圍

以下規則只針對待辦頁面的 HTML、CSS 與 DOM 程式。檔案頂端的兩組三條橫線稱為 frontmatter,其中 paths 使用 YAML 列表。這段是規則文件的中介資料,與 settings.json 的 JSON 語法不同。

寫入 .claude/rules/interface.md · markdown
---
paths:
  - "index.html"
  - "style.css"
  - "app.js"
---

# 介面變更檢查

- 輸入框必須有可辨認的標籤。
- 用 textContent 呈現使用者輸入,避免當成 HTML 解讀。
- 介面修改後,以 390px 寬度檢查按鈕、長文字與橫向溢出。

條件需要符合實際檔名。本系列樣式檔是 style.css,若你的副本已重新命名,就要同步修改規則。較大的專案可使用 glob 模式,例如 tests/**/*.js;先用少量精確路徑做實驗,再擴大匹配,會更容易知道某條規則為何出現。

引用其他 MD 與共用 AGENTS.md

CLAUDE.md 支援 @path 引用;相對路徑以包含引用的文件為基準。一般 Markdown 超連結主要讓讀者點閱,並不等於這個匯入語法。若只是示範字串而不想匯入,可以用反引號或程式碼區塊包住,因為匯入解析會跳過這些程式碼位置。

寫入 CLAUDE.md:共用團隊規範 · markdown
@AGENTS.md

# Claude Code 補充

- 開始工作先確認目錄與既有變更。
- 完成後列出測試結果及尚未驗證事項。

目前官方明確說明 Claude Code 不會自動把 AGENTS.md 當成 CLAUDE.md 載入。使用上面的引用可以讓多種工具共用一份規範,並保留 Claude 特定補充。這裡採引用而非複製全文,能降低兩份規則日後各自修改而產生矛盾的機會。

引用可以再引用其他檔案,但官方有遞迴深度限制。實務上也應避免繞成很長的鏈,因為維護者不容易追查來源。若引用解析到專案外部位置,會涉及額外信任確認;不要把接受外部引用當成所有專案都必須做的步驟,先看清楚將讀取哪些檔案。

驗證拆分後的載入

搬動引用文件時,記得引用路徑也可能需要更新。例如把 CLAUDE.md 移到 .claude 目錄後,原本的相對 AGENTS.md 位置就要重新核對。先畫出檔案所在層級,再從包含引用的那份文件出發解析,能避免「文件存在卻找不到」的常見錯誤。

開新 session,先用 /context 查看已載入的記憶文件,再要求讀取 app.js,確認介面規則的條件能被觸發。之後讀 tests,核對一般測試規則仍然存在。若只問「你有遵守嗎」,很難分辨它是實際讀到文件還是依問題猜測。

Claude Code 對話框:核對規則來源 · text
請先列出目前載入的規則來源。
接著讀取 app.js,指出哪些額外指引適用於這個檔案。
請引用實際規則路徑,先不要修改專案。

成功判準是載入清單與回覆路徑能對上你建立的檔案,而且規則內容沒有被重複或遺漏。若 paths 沒作用,檢查 frontmatter、檔名、啟動目錄與設定來源。若 AGENTS.md 沒出現,檢查 @AGENTS.md 是否放在真正載入的 CLAUDE.md 中,且沒有被程式碼包住。

小練習是把一段測試規則從 CLAUDE.md 移到 rules,新增一個精確路徑條件,再透過 @AGENTS.md 共用一條簡短規範。完成後逐一核對來源與差異,確認沒有衝突。重複使用的完整工作流程則可以再整理成,不必把所有任務步驟常駐在規則中。

回總目錄

  • 生活分享

    Claude Code|建立第一個 mod:在 Claude Code 行程內數工具呼叫

    寫一個三檔案的 mod,用驗證器與測試確認它掛上的事件。文件把 mod 定義成多了入口檔的 plugin:入口檔叫 hooks module,Claude Code 在事件發生時呼叫裡面的函式,函式可以觀察、改寫或接手事件。

  • 生活分享

    Claude Code|Git Worktree 平行工作

    隔離多個任務的檔案與分支。Git Worktree 讓同一儲存庫擁有多個工作目錄,各自使用分支與檔案。本篇會把待辦篩選與文件整理分開,確認兩個 session 不會直接改到彼此的檔案,再把其中一個成果整合回主分支。你也會知道何時可以安全清理工作目錄。

  • 生活分享

    Claude Code|雙 Worktree 實作與衝突整合

    隔離兩項功能,最後完成整合與回歸。兩個 Claude 工作階段同時編輯專案,最容易出現的問題是互相改到同一份檔案,或各自測試通過、整合後卻失敗。本篇用兩個 Worktree 分別處理篩選預設值與介面文字,故意製造一次小衝突,再完成整合、驗證與清理。你不需要先啟用 Agent Teams。

  • 生活分享

    Claude Code|比較流程品質、用量與執行時間

    以同一資料集比較兩種工作方法。比較兩種 Claude 工作方法時,不能只挑成功那一次,也不能只看第一個答案有多快。本篇用固定案例、原始紀錄和一致判準,比較品質、重試、等待與人工整合時間,最後寫出有樣本數與限制的報告,而不是保證某個方法一定省錢。

最新旅遊情報攻略

資料來源

生活分享