AI coding tools
Spec Kit 0.14 將代理工作流封裝為可重現 Bundle,並收緊遠端目錄下載邊界
GitHub 的規格驅動開發工具 Spec Kit 0.14 新增可版本化的 Bundle、Python 腳本路徑與可重現建置。緊接發布的 0.14.2 又移除 shell 執行參數並加強輸入驗證,反映代理工作流開始面對套件供應鏈與命令注入問題。

GitHub 於 7 月 23 日發布 Spec Kit 0.14.0,並在翌日推進至 0.14.2。這次值得注意的並非新增一組提示詞,而是把規格驅動開發的組件分發方式進一步套件化:Bundle 可用 `bundle.yml` 將 extensions、presets、workflows 與 steps 組成單一、具版本的 ZIP 成品,安裝時展開釘選版本、檢查 integration 衝突,並記錄各組件的來源,以便後續更新或移除。
0.14.0 也正式納入 `py` 腳本類型,將部分原先分別維護的 Shell、PowerShell 流程移植至 Python;Bundle 建置則按標準 POSIX 路徑排序成員,降低同一份輸入在不同機器產生不同雜湊的機率。對需要審核代理設定、把工作流送進 CI,或在多個程式代理間維持一致規格的團隊,可重現成品比直接複製提示檔更容易做簽章、快取與變更比對。
安全面同樣是本輪主軸。0.14.0 對遠端 catalog 採用有上限的 HTTP 讀取,並逐次驗證重新導向,避免受信任 URL 跳往未預期主機;0.14.2 進一步從 `run_command()` 移除 `shell` 參數,並替 malformed host、非 mapping 的 workflow inputs 等情況加入失敗處理。這些修補不代表 Bundle 已成為完整沙箱:文件明確指出失敗後的復原是 best-effort,磁碟仍可能留下部分狀態;版本釘選也只在首次安裝或明確更新時重新套用,已存在的同名組件不會單憑 `install` 比對版本。
工程團隊下一步應測試乾淨環境與升級環境是否得到相同檔案樹,並將社群 catalog 視為程式供應鏈,而非普通提示詞清單。若 Bundle 會執行 shell 或代理工具,仍需在外層配置容器、網路限制及人工審批。