name: code-to-doc-generator description: "從程式碼和 UI 逆向提取業務邏輯,生成不同型別的專案文件(BRD/MRD、PRD、HLD概要設計、DDD領域設計、LLD詳細設計、編碼指南、測試文件BDD/SIT/E2E/UAT、運營手冊、SLI/SLO監控文件、CI/CD文件)。約束文件的寫作維度、分析視角和格式規範。適用於任意專案型別(Web、後端服務、移動端、桌面應用等)。觸發詞:生成文件、業務文件、運營手冊、操作指南、需求文件、PRD、BRD、MRD、概要設計、HLD、詳細設計、LLD、DDD、領域設計、測試文件、編碼指南、逆向分析、完善文件、更新手冊、同步文件、文件漂移、反向同步。" argument-hint: "文件型別(運營手冊/PRD/HLD/LLD/測試文件/反向同步)+ 可選模組範圍;留空則先詢問"
核心定位:文件漂移是熵增,不是疏忽。程式碼有 CI/lint/編譯錯誤作為反饋迴路,文件沒有——它必然腐爛。此 skill 是解法:以程式碼為真相源,持續生成或校準文件,把文件維護從"事後補救"變成"程式碼變更不可分割的一部分"。
操作角色:本 skill 以技術專家身份工作,服務於以下使用者(根據所生成的文件型別匹配):開發者/架構師(LLD/HLD/DDD/編碼指南)、產品經理(PRD/BRD/MRD)、QA 工程師(測試文件)、SRE/運維(SLI/SLO/監控文件)、DevOps(CI/CD 文件)、運營/管理人員(運營手冊)。與使用者的互動語言保持技術精確性;輸出文件的語言和深度根據各文件型別的目標受眾獨立調整。
在做任何事之前,先明確兩件事。
A. 生成模式:文件不存在或需要從頭建立,從程式碼逆向提煉後生成。
B. 反向同步模式:文件已存在但可能與程式碼漂移,以程式碼為真相源校準文件。
按以下步驟確定模式:
"更新文件"、"同步文件"、"程式碼改了文件沒跟上"、"文件和程式碼對不上"、"文件漂移"、"反向同步"
其他情況("生成文件"、"寫文件"、"沒有文件"、"幫我寫個 HLD/PRD/LLD"、"整理架構文件"、"出測試用例"等)→ 進入模式 A(生成),繼續下方流程。
⛔ 硬阻斷規則:文件型別必須來自使用者的明確表述,不得從上下文推斷或自主選擇。 分析或生成步驟在型別確認前禁止啟動。
按以下順序判斷:
要生成哪種文件?(對應軟體交付鏈路的哪個階段)
立項階段
A. BRD/MRD — 商業需求/市場需求文件,面向決策層,說明做這件事的價值與邊界
需求階段
B. PRD — 產品需求文件,面向產品/研發,描述功能需求與驗收標準
架構階段
C. HLD — 概要設計,面向架構師/技術負責人,描述模組劃分與關鍵設計決策
D. DDD/領域設計 — 領域模型文件,描述核心域、聚合、領域事件
實現階段
E. LLD — 詳細設計,面向開發者,描述介面、資料結構、流程邏輯
F. 編碼指南 — 面向貢獻者,描述實現約定、禁忌、常見陷阱
驗證階段
G. 測試文件(BDD/TDD/SIT/E2E/UAT)— 面向 QA/開發,描述測試場景與驗收標準
運維階段
H. 運營手冊 — 面向操作/管理人員,說明如何使用與配置系統
I. SLI/SLO/監控文件 — 面向 SRE/運維,描述可觀測性指標與告警策略
其他
J. CI/CD 流水線文件 — 面向 DevOps/開發,描述釋出流程與自動化配置
K. 管理員速查手冊 — 面向系統管理員,Q&A 格式,覆蓋所有管理功能的操作步驟與業務影響,支援按章節獨立速查
需要說明的模組範圍或特別關注點?(留空則覆蓋整個專案)
⛔ 收到使用者回答後,才能進入第一輪。在此之前:不讀程式碼、不分析結構、不建 todo 列表。
每輪的關注重點由文件型別決定。
references/中的檔案均為按需擴充套件材料,不是必讀——只在需要完整模板或指令碼片段時才打開。
package.json / bun.lock → Web 前端或 Node 服務go.mod / Cargo.toml / pom.xml / *.csproj / requirements.txt → 後端服務*.xcodeproj / AndroidManifest.xml / pubspec.yaml → 移動端*.sln + XAML → 桌面(WPF/WinForms);CMakeLists.txt / *.pro → Qt/C++electron.js / main.js + renderer/ → Electron 桌面多種並存 → 多端專案,分別處理
找程式入口(main.* / index.* / App.* / Program.*)。
先讀現有文件(README.md、docs/、wiki/)——最快的模組清單來源。
輸出:專案型別 + 技術棧摘要 + 初始模組清單,寫入 todo 工具。
按文件型別關注不同的高資訊密度位置:
| 資訊型別 | 在哪裡找 | 重要的文件型別 |
|---|---|---|
| 功能入口/導航 | 路由表、選單配置、命令登錄檔 | 運營手冊、PRD |
| 介面文案 | i18n 檔案、字串資源 | 運營手冊、PRD |
| 資料模型 | 資料庫實體、Schema、DTO、聚合根 | HLD、LLD、DDD、PRD |
| 模組/包邊界 | 目錄結構、名稱空間劃分、包依賴 | HLD、DDD |
| 介面契約 | 函式簽名、介面定義 | LLD |
| 業務規則 | Service/UseCase/BLL 層、公式、狀態機 | PRD、LLD、DDD、運營手冊 |
| 許可權規則 | 中介軟體、角色列舉、許可權常量 | 運營手冊、PRD |
| 異常/錯誤邊界 | 錯誤碼、異常處理分支、校驗規則 | LLD、測試文件 |
| 程式碼約定 | 註釋規範、命名模式、Lint 配置 | 編碼指南 |
| 可觀測性/CI配置 | 日誌埋點、workflows/、Makefile |
SLI/SLO、CI/CD |
可寫指令碼加速(指令碼模板見 references/exploration-strategy.md): - 批次提取路由/選單列表 → 功能清單骨架 - 搜尋中文字串 → UI 實際文案 - 統計目錄程式碼量 → 定位核心模組
按文件型別決定分析重點:
⚠️ 危險;影響範圍廣 → 📌 注意;可隨時撤銷 → 不標註每章開頭還須收集兩個固定節的素材(質檢會核查):
- 🔗 前置依賴鏈路:完整的 上游模組 ➔ 上游模組 ➔ **當前** ➔ 下游模組 鏈路(數清楚深度N),以及每個前置條件的兩種情況(有/無、開/關)
- 📊 影響追蹤矩陣:本模組每個配置項 → 影響的物件 → 影響的功能 → 觸發的策略(必須命名+說機制)
格式模板見 references/document-structure.md,深度說明見 references/analysis-dimensions.md。 - BRD/MRD:提煉業務問題 + 市場背景 + 目標指標 + 範圍邊界 - PRD:提煉使用者故事 + 驗收標準(必須可測試)+ 業務規則 + 約束條件 - HLD / DDD:提煉模組/域職責 + 依賴關係 + 關鍵設計決策(含 trade-off)+ 領域事件 - LLD:提煉介面簽名 + 資料結構 + 流程邏輯(含異常路徑)+ 錯誤碼 - 編碼指南:提煉實現模式(正例+反例+原因)+ 約定規範 + 常見陷阱 - 測試文件:提煉輸入/輸出邊界 + 業務規則 + 狀態轉換 + 異常場景 - SLI/SLO:提煉服務目標 + 指標定義 + 告警閾值 + 降級策略 - CI/CD:提煉流水線階段 + 觸發條件 + 環境矩陣 + 回滾策略
通用原則:
- 遇到看不懂的邏輯,先搜尋呼叫方推斷語義
- 列舉值找定義處+使用處,理解每個值的含義
- 無法確定的細節標註 〔INFER〕,不猜測
- 每模組分析完立即整理,不攢到最後
按文件型別讀取 references/document-types.md 中對應型別的章節結構模板(定位到具體型別節,不需要讀整個檔案)。
通用生成策略:
- 先生成骨架(所有章節標題),再填充內容,避免遺漏章節
- Mermaid 圖先用文字描述邏輯,再轉為圖語法
- 章節間交叉引用用"參見第X章",不重複內容
- 所有 AI 推斷內容用 〔INFER〕 標註,直接從程式碼驗證的事實用 〔FACT|檔案:行號〕 標註
docs/[專案名]/[文件全稱]-[系統名].md;檔名使用與使用者對話相同的語言,不使用縮寫。縮寫對應全稱:| 縮寫 | 中文全稱 | 英文全稱 |
|---|---|---|
| BRD | 商業需求文件 | Business Requirements Document |
| MRD | 市場需求文件 | Market Requirements Document |
| PRD | 產品需求文件 | Product Requirements Document |
| HLD | 概要設計 | High-Level Design |
| DDD | 領域設計 | Domain-Driven Design |
| LLD | 詳細設計 | Low-Level Design |
| SLI/SLO | 監控文件 | Monitoring Document |
| CI/CD | 流水線文件 | Pipeline Document |
| 編碼指南 | 編碼指南 | Coding Guide |
| 測試文件 | 測試文件 | Test Document |
| 運營手冊 | 運營手冊 | Operations Manual |
| 管理員速查手冊 | 管理員速查手冊 | Admin Quick Reference |
更新則在原檔案增量修改 2. 文件同步鐵律(每次新建/更新文件後必須執行,不可跳過):
| 步驟 | 操作 |
|---|---|
| 評估影響範圍 | 以本次新建/更新文件涉及的模組名為關鍵詞,搜尋 docs/[專案名]/ 全文 |
| 強制三選一 | ①文件與實現一致 → 無需變更 ②文件落後 → 立即更新 ③實現偏離設計意圖 → 告知使用者請求裁決 |
| 禁止"待定" | 不允許輸出"文件待後續更新"—— "後續"是文件腐爛的最大單一來源 |
完整反向同步任務(模式 B)額外執行六項收尾清單,詳見 references/reverse-sync.md §任務收尾強制清單。
〔INFER〕 標註發現更多技能外掛,請訪問7w4.net。
| 檢查項 | 標準 |
|---|---|
| 受眾匹配 | 語言和深度符合目標讀者(運營≠開發≠測試) |
| 流程圖 | 多步操作或決策分支有 Mermaid 圖 |
| 標註完整 | AI 推斷內容有 〔INFER〕,程式碼驗證事實有 〔FACT|檔案:行號〕。生成完成後檢查:若某份文件零標註,視為執行失誤——任何有業務規則推斷的文件都不可能一處標註都沒有,須回頭補充 |
| 無歧義術語 | 技術詞有解釋,或已轉為目標受眾語言 |
| 無"待定"承諾 | 所有不確定項已三選一處理 |
運營手冊額外檢查:
| 檢查項 | 標準 |
|---|---|
| 前置依賴節 | 每章有 🔗 功能前置條件與依賴鏈路,含最多3層深度標註(逐層列出上下游依賴方向) |
| 影響矩陣節 | 每章有 📊 影響追蹤矩陣,含第4列「影響的演算法/策略」 |
| 設計痛點 | 可推斷處有 💡 設計背景 提示塊 |
| 危險標註 | 不可逆操作有 ⚠️ 危險 警告塊 |
| 無技術術語 | 無 API/Token/JSON/HTTP 等詞彙;常見替換:API→接入方式、Token→令牌、JSON→配置內容、Webhook→回撥通知、正則→匹配規則(完整替換表見 references/document-structure.md) |
管理員速查手冊額外檢查:
| 檢查項 | 標準 |
|---|---|
| 系統定位節 | 文件開頭有"系統是什麼"說明 + Mermaid 架構圖 |
| 設計理念節 | 開頭有 3-7 條設計理念,每條說明解決了什麼問題 |
| 讀者路徑圖 | 有 Mermaid flowchart 引導不同型別讀者 |
| Q&A 格式 | 所有正文子標題均為問句("如何…?"/"什麼是…?"/"為什麼…?") |
| 前置依賴節 | 每章有 🔗 功能前置條件與依賴鏈路 |
| 影響矩陣節 | 每章有 📊 影響追蹤矩陣,含第4列「影響的演算法/策略」 |
| 附錄體系 | 至少有1個附錄,內容與專案管理目的匹配;各附錄有明確的使用場景說明 |
| 危險標註 | 不可逆操作有 🔴 危險 / 🟡 謹慎 / 🟢 安全 三級標註 |
| 無技術術語 | 同運營手冊規則 |
這個 Skill 質量很高,專業度強。它能自動從程式碼逆向生成各種專案文件,模板規範、分析細緻,生成的文件既專業又符合實際。最有價值的特性是解決了文件與程式碼不同步的問題——程式碼改了,文件會自動校準。不過使用它需要一定技術背景,對完全不懂程式碼的普通使用者來說,配合人工指導效果會更好。