跳到內容

讀懂你的 OpenSpec

spek 把 repository 的 openspec/ 目錄變成可以瀏覽的介面 —— spec、change 連同它們的 tasks、schema、時間軸、全文搜尋。它只讀,從不修改任何檔案。
spek 顯示一個 OpenSpec change:依 capability 分組的 delta spec,每條 requirement 的 SHALL 關鍵字都有標示,另有 proposal、design、tasks 分頁。
一個 change 的 delta spec,逐條 requirement 呈現,規範性關鍵字都有標示。 截圖內容為示意範例。

OpenSpec 把專案的 requirement 以及每一次對它的修改,都存成 openspec/ 底下的 Markdown 檔。這個格式適合 agent 撰寫、適合 git 追蹤,卻不好讀:一個 change 就是 proposal、design、task 清單,再加上每個 capability 一份 delta,散在十幾個檔案裡。spek 讀這個目錄並把它排好 —— 有結構、spec 與 change 互相連結,進度一眼就看得到。

總覽

spec 與 change 的數量、task 完成率、平均生命週期,以及停滯不動的 change。

spec 與 change

spec 以資料夾樹呈現並附修訂歷史;change 分進行中與已封存,各自以分頁呈現 proposal、design、tasks 與 delta spec。

schema、關係圖、時間軸

repository 使用的工作流程 schema、spec 與 change 之間的關係,以及每個 change 的生命週期甘特圖。

所有 worktree 一次看

repository 所有 git worktree 裡進行中的 change 併成一份清單 —— 為平行工作的 agent 而設計。

spek 的總覽:spec、進行中與已封存 change 的數量、task 完成率與平均生命週期,下方列出進行中的 change 與其進度,以及最近封存的 change。
總覽:哪些正在進行、做到哪裡、最近封存了什麼。 截圖內容為示意範例。

四種都呈現同樣的畫面。挑一個就在你平常工作的地方用。

各自怎麼安裝與使用:安裝 spek。

spek 的時間軸:每個 change 一列,已封存的 change 是從建立到封存的長條,進行中的則延伸到今天。
所有 change 的生命週期,排在同一條時間軸上。 截圖內容為示意範例。

spek 的引擎也替 spekterm 讀 OpenSpec:spekterm 的側欄用 spek 的核心套件(@spekjs/core)掃描 spec 與 change,也畫 spek 的關係圖與時間軸(@spekjs/ui)。spek 讓你在平常工作的地方讀 spec;spekterm 是在 spec 旁邊跑 Claude Code session 的桌面工作台。兩者誰也不需要誰。

spek 以 MIT 授權釋出,原始碼在 GitHub。它沒有帳號、沒有遙測、沒有分析;資料與網路 逐項列出每種用法會連到哪裡。