5.2 KiB
5.2 KiB
LLM Wiki 範本集
CLAUDE.md 範本
# CLAUDE.md — [專案名稱]
> 導航牌。細節在兩個地方,不在這裡。
> Hook 機制在 `.claude/hooks/`(如果有的話)。
---
## 絕對鐵律(違反 = 停手)
1. [專案最重要的限制,例如:任何 code 變動前必須先讀 SDD]
2. [技術棧限制]
3. [...]
找不到對應文件 → **停手問 [負責人名稱]**,不要自行決定。
---
## 工作流程(強制)
開始任一任務,按順序:
1. 讀 `.claude/wiki/status.md`(3 分鐘)
2. 確認有對應 SDD(`docs/3-specs/`)
3. 動手前宣告範圍
4. 完成後更新 wiki
---
## Wiki 讀取順序
| 檔案 | 時機 | 用途 |
|------|------|------|
| `.claude/wiki/status.md` | session 開始第一件事 | 當前進度、下一步 |
| `.claude/wiki/mistakes.md` | 做新功能前 | 已知誤解 + 快速檢查清單 |
| `.claude/wiki/decisions-summary.md` | 遇到設計判斷時 | 架構決策快速查 |
| `.claude/wiki/INDEX.md` | 找不到東西時 | wiki 導引 |
---
## 規範索引
| 檔案 | 內容 |
|-----|------|
| [規範檔路徑] | [說明] |
---
## 文件位置
| 類別 | 位置 |
|------|------|
| 原始文件 | `docs/`(見 `docs/README.md`) |
| 架構決策 | `docs/2-architecture/decisions/` |
| SDD | `docs/3-specs/` |
| 操作手冊 | `docs/4-guides/` |
| 事件記錄 | `docs/5-records/incidents/` |
docs/README.md 範本
# [專案名稱] 文件分類索引
## 分類規則
| 目錄 | 放什麼 | 例子 |
|------|--------|------|
| **1-vision/** | 為什麼做這個 | 產品願景、北極星 |
| **2-architecture/** | 系統怎麼設計的 | MVP 架構、元件關係 |
| **2-architecture/decisions/** | 架構決策(為什麼選A不選B)| ADR 文件 |
| **3-specs/** | 需求和 SDD | design.md + tasks.md |
| **4-guides/** | 操作手冊:怎麼做 | 部署、CLI 用法 |
| **5-records/** | 歷史記錄 | 壓測報告、問題追蹤 |
| **5-records/incidents/** | 生產問題復盤 | 故障原因、改進方案 |
| **5-records/test-reports/** | 測試結果 | 功能驗收、效能測試 |
| **6-user/** | 對外文件 | self-hosted 安裝、FAQ |
## 分類判斷規則
- 子系統設計文件 → `3-specs/[子系統]/`
- 決策記錄(為什麼)→ `2-architecture/decisions/`
- 操作說明(怎麼做)→ `4-guides/`
- 歷史記錄(發生過)→ `5-records/`
- 給外部使用者看的 → `6-user/`
- 不確定 → 列為「待確認」,問使用者
.claude/wiki/INDEX.md 範本
# .claude/wiki/ — [專案名稱] LLM 記憶系統
> 新 session 開始時從這裡導航。
> 目的:讓 CC 不需要重新學習已知的事。
## 核心檔案
| 檔案 | 何時讀 | 內容 |
|------|-------|------|
| `status.md` | session 開始第一件事 | 當前進度、下一步 |
| `mistakes.md` | 做新功能前 | 已知誤解、快速檢查清單 |
| `decisions-summary.md` | 遇到設計判斷時 | 架構決策摘要 |
## 維護規則
- `mistakes.md`:只 append,不刪除
- `status.md`:每次 session 結束更新
- `decisions-summary.md`:重大決策後更新
- 所有 wiki 檔案:CC 維護,不是人類維護的地方
.claude/wiki/mistakes.md 範本
# CC 已知誤解 + 避坑方法
> 做新功能前讀一遍。格式:每條必須有症狀 + 正確做法 + 原因。
## 快速檢查清單
- [ ] 有對應 SDD 嗎?沒有 → 停手
- [ ] 這次修改影響哪些模組?有沒有連帶破壞?
- [ ] 驗收標準是什麼?有客觀證據嗎?
## 誤解記錄
(初始化時為空,隨專案進行 append)
.claude/wiki/decisions-summary.md 範本
# 架構決策摘要
> 遇到設計判斷時查這裡。完整脈絡在 docs/2-architecture/decisions/。
(初始化時為空,隨專案進行 append)
格式:
## [主題] — [YYYY-MM-DD]
**結論**:[一句話]
**原因**:[簡短說明]
**詳細**:docs/2-architecture/decisions/[對應檔案]
ADR 範本(docs/2-architecture/decisions/YYYY-MM-DD-topic.md)
# [主題]
**日期**:[YYYY-MM-DD]
**狀態**:[提議中 / 已採納 / 已廢棄]
## 背景
[為什麼需要做這個決定?]
## 決定
[結論,一句話]
## 原因
[詳細說明]
## 放棄的選項
| 選項 | 放棄原因 |
|------|---------|
| [選項 A] | [原因] |
## 影響
[影響哪些地方,有什麼後續要注意]
SDD design.md 範本(docs/3-specs/[子系統]/design.md)
# [子系統] — Design
> 狀態:[草稿 / 已採納]
> 建立:[YYYY-MM-DD]
## 一句話說明
## 背景與問題
## 範圍
In Scope:
Out of Scope:
## 設計
### 架構概覽
### 關鍵決策
### API 定義
### 資料模型
## 技術限制
## 驗收標準
- [ ] [可客觀驗證的條件]
SDD tasks.md 範本(docs/3-specs/[子系統]/tasks.md)
# [子系統] — Tasks
> 動手前標 [🔄],完成立刻標 [x],不批次更新。
## Phase 1:[名稱]
- [ ] 1.1 [task 描述]
- 驗收:[客觀標準]
## 狀態說明
| 標記 | 意義 |
|------|------|
| `[ ]` | 未開始 |
| `[🔄]` | 進行中 |
| `[x]` | 完成 |
| `[~]` | 暫緩 |
| `[!]` | 阻擋中 |