## 前置作業 1. 安裝 node 版本 >= 20.19.0,因 OpenSpec CLI 需要。 ``` nvm install 20.19.0 ``` 預期會看到以下內容 ``` v20.19.0 is already installed. ``` 2. 檢查版本是否切換成 20.19.0 ``` node --version ``` 如果安裝後版本沒有切換成 20.19.0,執行`nvm use 20.19.0`切換版本 預期會看到以下內容 ``` Now using node v20.19.0 (npm v10.8.2) ``` 3. 安裝 Codex CLI 或是 Claude Code CLI ``` brew install --cask codex brew install --cask claude-code ``` 安裝好後確認是否成功 ``` codex --version claude --version ``` 進入 CLI ``` codex claude ``` ## Codex 版本 先說流程,它會根據你的需求產生 Proposal(提案),有完整的規格文件 (proposal → specs → design → tasks),接著可以根據這個 Proposal 去 Apply(應用),讓 AI 根據每個步驟去撰寫程式碼,最後完成後將剛剛的提案 Archive(歸檔)存成專案文件。 1. 初始化 openspec ``` openspec init ``` 在初始化時可選擇多個工具,這邊選擇 Claude Code、Codex,按下 Enter 後會看到專案跟目錄建立了`.claude`、`.codex`兩個資料夾。  初始化時,會一併建立預設的 .codex/skills/openspec-* 裡面的 SKILL.md,可以調整內容讓 codex 參考你修改的內容執行。 輸入`/skills -> list skills -> openspec-explore`後會開始一系列定義方向。  這邊再實作過程中發現`/prompts:opsx-explore`指令和`/skills -> list skills -> openspec-explore`是有些微差異的! `/prompts:opsx-explore`:在 Codex CLI 裡調用自訂提示檔案的方式,這些提示檔放在 ~/.codex/prompts/ 目錄裡,內容是你預先寫好的 Markdown 類型提示,用來快速重用某些常見任務指令,例如放一個`opsx-explore.md`檔案,然後在 Codex 裡輸入`/opsx-explore`就會把該提示發送給模型。 這和傳統意義上的 reusable prompt 很像,但它是客製化提示而非 Skill。 `/skills -> list skills -> openspec-explore`:是比單純提示更結構化、重用性更強的工作流程或技能包,在 Codex 中,Skills 是一種包含名稱、描述、行為指令及可能的腳本/支持資源的技能包。 它可以讓模型根據任務內容自動選擇是否啟用或可以用 $skillName 類似方式手動調用。 openspec-explore 這種 Skill 通常會有完整的 SKILL.md,不是單純一段提示。 Skills 通常有更清楚的觸發條件與流程定義和支援更複雜的工作流程,而不只是直接把一段提示塞進模型上下文。 基本上用`openspec-propose`產生變更內容`proposal/design/tasks/.openspec.yaml` 都會是在規格內。 - .openspec.yaml -> 記錄這個 change 的基本設定與 schema。 - proposal.md -> 說明 why(為何要做) and what(要做什麼)。 - design.md -> 說明該 how(怎麼做)。 - tasks.md -> 執行任務。 - spec.md -> 這次 change 的規格,是 apply 前最重要的行為。 可以用以下方式判斷該在什麼時候修改什麼檔案: - 需求/測試條件錯:改 spec.md - 邏輯不對:改 design.md - 任務拆分:改 tasks.md - 範圍改變:改 proposal.md 最常修改的應該是`spec.md`、`tasks.md`。 確認規格檔案都生成好後接著執行`/skills -> $openspec-apply-change`指令,就會開始按照先前所產出的規格實作。 最後當所有的 task 完成後就可以操作`$openspec-archive-change`進行歸檔。 流程可以理解為: openspec-explore -> openspec-propose -> openspec-apply-change -> openspec-archive-change。 `openspec-explore` -> 需求不明確時使用。 `openspec-propose` -> 需求明確時可直接從這步開始。 `openspec-apply-change` -> 可重複執行很多次直到 tasks 全部完成才進 archive。 `openspec-archive-change` -> 將處理完成的任務內容進行歸檔。 - 需求明確:propose -> apply -> archive。 - 需求不明確:explore -> propose -> apply -> archive。 在進行`explore`或`propose`階段時,會在`openspec/changes`層級產生 artifacts,如果發現內容規格不正確可以在這步驟自行調整規格內容,確認沒問題後再進行`apply(應用)`,最後`archive(歸檔)`。 ## Claude Code 版本
×
Sign in
Email
Password
Forgot password
or
Sign in via Google
Sign in via Facebook
Sign in via X(Twitter)
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
Continue with a different method
New to HackMD?
Sign up
By signing in, you agree to our
terms of service
.