Communitygithub.com

unkos-dev/specful

用於可攜式、具備 AI 代理能力之規格、設計記錄與決策的 Rust CLI,基於開放知識格式建置。

specful 是什麼?

Specful 是一個 Rust 命令列工具,專為建立、管理和驗證架構決策記錄(ADR)而設計。它遵循開放知識格式(Open Knowledge Format),確保規格、設計記錄和決策具備可攜性,並且能與 AI 代理無縫協作。此技能能協助開發者以結構化方式記錄重要決策,包括其驅動因素、可行的替代方案以及後續影響,從而提升專案的可追溯性與溝通效率。Specful 支援透過 `specful new adr` 指令自動生成 ADR 文件、維護文件索引,並提供驗證功能以確保記錄的完整性。它特別適用於需要嚴格架構治理的團隊,以及希望讓 AI 代理能有效讀取和處理決策記錄的使用場景。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add unkos-dev/specful

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

記錄一份 Specful ADR

一個 ADR 記錄了為什麼做出一個持久性決策:其驅動因素、可行的替代方案以及後果。它不是一項需求(軟體必須做什麼),也不是一個設計(系統如何運作);如果變更涉及「什麼」或「如何」,請改載入 specful-requirement 或 specful-design。請保持在決策層級:不要包含任務序列、檔案清單或進度記錄。

工作流程

  1. 閱讀 docs/adr/ 及其索引,了解編號、狀態以及已記錄的決策;一個新的 ADR 若與已接受的 ADR 矛盾,應取代它,而非默默地不一致。
  2. 使用 specful new adr --title <TITLE> 建立草稿。切勿手動分配識別碼;該指令會負責計數器。
  3. 完成所有佔位符。使用現在式描述決策;如實呈現可行的替代方案,而非將其塑造成偏好的答案;記錄負面後果時應與正面後果同樣謹慎。一個沒有可行替代方案或沒有缺點的 ADR 是廣告,而非決策記錄。
  4. 生命週期屬於維護者:新記錄以「已提議」狀態開始,只有維護者能接受、拒絕或取代它。
  5. 執行 specful index,然後執行 specful validate;將重新生成的檢視檔案與變更一同提交。當採用此工具的儲存庫需要實質審查或用戶要求時,請使用 specful-review。

有關完整的 ADR 設定檔及逐欄位指引,請參閱 https://unkos-dev.github.io/specful/。

相關技能