---
name: bluelovers-file-naming-convention
description: "檔名與路徑命名規範：讓檔名具備職責、分類與語意， 使檔案在免讀取內容的前提下即可被識別、分類與排序， 並規範數字前置詞、公有區域使用與多級路徑分類原則。 當執行相關行為或使用者提及時觸發（包含但不限於以下關鍵字或情境）： - \"檔名原則\" / \"檔名規範\" / \"檔名命名\" - \"檔案命名規則\" / \"file naming\" / \"naming convention\"（檔名/路徑脈絡） - 檔名語意化 / 檔名分類 / 多級路徑分類 / 檔名可排序性 - 數字前置詞 / 排序前綴 / 001-xxx / 010、020 间隔编号 - docs 目錄結構 / 文件路徑規劃 / 資料夾分類 - 公有區域私有化 / 路徑過度限定 / 路徑複用性 - 建立、重新命名或搬移檔案時決定檔名 - 建立資料夾或規劃路徑分類結構時 - 撰寫 docs / 文件並決定放置位置時 - 審查既有檔名或目錄結構是否合規時"
metadata:
  decimalai-skill-id: "470e9e74-748b-4780-b8e2-2272bb40626b"
  decimalai-version-id: "a0c99bec-9dde-4ee8-acb8-274b1526f030"
  decimalai-version: "1"
  decimalai-body-sha256: "8a4449ec8a07b3ec08553234e740f6eedbda94cddeadc6001a67490df97a981b"
  decimalai-name: "bluelovers/file-naming-convention"
  decimalai-format: "1"
  decimalai-invocation: "model"
  decimalai-category: "documentation"
  decimalai-source: "https://app.decimal.ai/s/bluelovers-file-naming-convention@1/SKILL.md"
---
# 檔名命名規範 / File Naming Convention

檔名是排序、搜尋與檔案總管瀏覽時的**第一線識別依據**。即使在 Obsidian 這類以標籤與連結管理的系統中，使用者仍多數時間透過檔案總管與排序定位檔案——檔名必須在**不讀取內容**的前提下表達職責、分類與語意。

---

## 核心原則

1. **免讀可識別**：檔名須自帶語意（做什麼、屬於哪類），不依賴開啟內容才能理解，可輕鬆搜尋相關檔案。
2. **預設不加數字前置**：數字前置詞只給**確實有排序要求**的檔案；無排序需求時不得擅自添加。
3. **公有區域不私有化**：倉庫的 `docs/` 等共用目錄屬於公有區域，不得當成特定主題的專用資料夾隨意放置。
4. **多級路徑承擔分類**：優先用路徑層級表達分類，而非把所有資訊擠進檔名。
5. **路徑保持可複用**：路徑分類須具通用性，過度限定到單一主題/內容的路徑等於沒有分類。

---

## 數字前置詞規範

- **預設不加**。對無明確排序要求的檔案加上 `001-`、`002-` 會造成：
  - 無法在中間插入新檔案；
  - 部分檔案根本不該被數字排序；
  - 新增時被迫更改舊檔名。
- **确有排序需求時，以 10 為單位**：`010-`、`020-`、`030-`，預留插入空間。
- **無明確順序之分的檔案可共用相同數字**：同組檔案皆用 `010-`，組內依字母序排列。

詳細規範與決策樹見 [numeric-prefix.md](./references/numeric-prefix.md)。

---

## 路徑分類規範

- **善用多級路徑**管理分類，以資料夾層級取代冗長檔名。
- **公有區域不私有化**：`docs/` 是整個倉庫的公有區域，按主題分類放入，不得寫成特定功能的專屬資料夾。
- **路徑不過度限定**：避免將路徑細分到只能容納單一主題；通用分類層（如 `docs/features/`、`docs/guides/`）才具有複用價值。

詳細規範見 [path-classification.md](./references/path-classification.md)。

---

## 反例分析

```text
docs/01-autoRemoveSpace/README.md
```

此路徑同時違反多項原則：

| 問題 | 說明 |
| :--- | :--- |
| 濫用數字前置 | `01-` 強行排序，但 docs 下的主題文件通常無固定順序，且日後無法輕易在中間插入。 |
| 公有區域私有化 | `docs/` 是倉庫公有區域，卻被當成 `autoRemoveSpace` 功能的專屬資料夾。 |
| 路徑過度限定 | `01-autoRemoveSpace/` 只能容納單一主題，無法被其他功能複用，分類形同虛設。 |

建議改為具通用分類層的結構，例如 `docs/mechanisms/prompt-tags/auto-remove-space.md`、`docs/features/auto-remove-space.md` 或 `docs/features/auto-remove-space/README.md`（依倉庫實際分類慣例調整）。

---

## 執行流程

1. 判斷檔案是否有**明確排序需求**；無則不加數字前置。
2. 確有排序需求時，以 10 為單位分配前置號；同組無序檔案共用同一號碼。
3. 依 [bilingual-standardization-rule](../bilingual-standardization-rule/SKILL.md) 與專案慣例決定檔名語言與術語保留（多詞以連字號或專案慣用分隔符連接）。
4. 選擇具通用性的分類路徑層級，確認路徑可被同類內容複用。
5. 用下方驗證清單檢查命名與路徑。

---

## 驗證清單

- [ ] 檔名免開啟內容即可理解其職責與分類。
- [ ] 數字前置詞僅出現在有明確排序需求的檔案，且以 10 為單位。
- [ ] 無序檔案未被強加排序號，需要時共用同一前置號。
- [ ] 共用目錄（如 `docs/`）未被特定主題壟斷為專屬資料夾。
- [ ] 路徑層級具通用性，可容納同類的其他內容。
