
NiceKate AI:提示詞時代不夠了——GSD 2 用系統把活幹完
GSD 2 將 AI Coding Agent 從提示詞升級為可運維的系統——狀態機驅動、崩潰恢復、預算控制、驗證管線,讓開發者真正可以「跑起來就走開」。
開場閒聊
歡迎來到倉儲漫遊時間。今天的主角是 GitHub 上的開源專案 GSD 2——全稱 Get Shit Done 的第二代。
主持人開門見山地說:提示詞時代不夠了,老版本教你怎麼說,新版本直接幫你做完。GSD 2 用系統把活幹完,它不再是貼在 Claude Code 裡的提示詞合集,而是一個用 TypeScript 寫成的獨立命令行工具,真正的握著智能體江湖的關鍵角色。
從新手視角來看,這集的節奏很友善——先回顧為什麼第一代會火,再深入第二代做了哪些根本性的升級,最後給出一套完整的上手指南。
懶人包速覽
| 核心痛點 | 解決方案 / 關鍵觀點 |
|---|---|
| 提示詞越聊越髒,上下文像滾雪球 | GSD 2 用代碼接管上下文管理,每個單元獨立刷新,互不污染 |
| 自動模式容易無限循環或死等 | 滑動窗口檢測重複派發 + 三檔超時(軟/空閒/硬),崩潰可恢復 |
| 成本不可控,通宵跑完帳單報表驚人 | 內建 token 台帳 + 預算上限,按階段/slice/模型拆分 |
| 輸出品質靠感覺不靠驗證 | 每個 task 有 must-have 標準,自動跑 lint/test,失敗觸發修復重試 |
這集 NiceKate AI 把 GSD 2 從安裝到進階用法完整走了一遍,對想從「人工寫提示詞」進化到「讓系統自動跑流水線」的開發者來說,資訊量非常紮實。
從 GSD 1 到 GSD 2:提示詞進化成系統
回顧第一代 GSD,它的核心概念是把規劃、執行、復盤寫進 markdown 提示裡。很多人確實因此提效了,但痛點也很真實:上下文會越來越髒,所謂自動模式大多是大模型自己套娃燒 token。規劃一崩,就只能重來,而且很難看清錢和時間到底花在哪。
GSD 2 的定位完全不同——它用 TypeScript 代碼接管了這些原本只能拜託模型自覺的事情。
技術底層是 PiSDK GSD,作為獨立 CLI 前進派的智能體框架。運行時能在 TypeScript 層直接操作對話、工具與擴展。Readme 說得很直白:以前 V1 只能注入斜槓命令,希望模型聽話;現在 V2 可以真正做到按任務清空上下文、在派發瞬間精確注入文件、管理 Git 分支與工作樹、記錄成本、識別卡死和死循環、崩潰後自動恢復。
這不是文案升級,是控制權的質變。
安裝與上手:對新手很友好
安裝路徑對新手很友善。全局安裝 npm 包 gsd-pi,然後在終端裡執行 gsd,跟著嚮導登錄模型提供商。官方列了 20 多家——Anthropic、OpenAI、Google、OpenRouter、GitHub Copilot 等等。有訂閱的話可以走 OAuth,沒有就貼 API key。
裝好後有兩個關鍵提示:Node 版本要在 22 以上,24 LTS 更佳。避免 Homebrew 誤裝成開發版 Node 導致奇怪兼容問題。
三層架構:Milestone → Slice → Task
要理解 GSD 2,得先記住它的工作分解結構。最上層叫 Milestone(可交付的軟體功能),中間是 Slice,Slice 裡再拆成 Task。
文檔強調一條鐵律:單個 Task 必須能放進一個上下文窗口,塞不下就拆成兩個。對新手來說,這強迫你把大而空的需求切成模型真能一次做完的小塊。後面自動跑流水線時,才不會報上下文爆滿或胡亂寫一通。
每個 Slice 在機器裡會走一條固定流水線:
- Plan 階段:把調研和規劃寫清楚
- Execute 階段:按 Task 執行
- Complete 階段:寫總結與驗收腳本
- Reassess Roadmap:看計劃要不要調整
- Validate Milestone:把路線圖的成功標準跟實際結果對齊
你可以把它想像成帶制動與修正的敏捷開發——只不過駕駛員是狀態機,不是你的手速。
自動模式:跑起來就可以走開
整台機器的油門在 Slash 指令 gsd auto。它讀取磁碟上 .gsd 目錄裡的狀態檔案,決定下一步該派發什麼。每完成一個最小工作單元,再讀一次盤,繼續下一步。
Readme 形容的很形象:「你跑起來就可以走開。回來看到的是一個乾淨的提交歷史、驗證過的代碼、以及結構化產物。」
新手第一次使用,建議先在 step 模式裡熟悉節奏,再切自動模式讓它長跑。
為什麼它敢讓你走開?
關鍵機制有幾個:一是每個單元刷新上下文——研究、規劃、執行互不污染,避免越聊越糊塗。另一個是 dispatch——提示詞會把任務計劃、依賴摘要、路線圖片段等預先內聯進去,讓模型開局就站在正確戰場上,而不是先花幾十輪工具調用來讀文件。
對新手來說,這意味著你少喊很多次「請先讀某某文件」,省時間也省 token。
Git 管理:乾淨的里程碑級提交
GSD 2 可以把里程碑隔離到獨立 Worktree 或分支裡。Slice 內順序提交,里程碑完成後再 squash 合併回主線,得到一條乾淨的里程碑級提交。
偏好設定在 Preference 裡。對團隊協作來說,這減少了自動模式把分支變成 spagetti 的經典事故。
崩潰恢復與超時處理
現實世界裡,繪畫會崩、機器會重啟。GSD 2 做了崩潰恢復——以檔案記錄當前單元,下一次啟動會讀取倖存狀態繼續執行。
無頭模式裡,崩潰甚至可以按指數退避、自動重啟若干次。斷線不等於從零開始。
自動跑久了最怕兩件事:無限循環和死等。GSD 2 用滑動窗口檢測重複派發模式——先重試一次並帶深度診斷,再不行就停在你該看的文件上。超時則分軟、空閒、硬三檔。軟超時是讓模型收尾,空閒看是否卡住,硬超時直接暫停自動模式。再加上 provider 的臨時側誤退避與模型回退鏈,整體更像生產環境裡的監控器,而不是裸奔的 while True。
預算控制與成本台帳
成本管理是 GSD 2 的另一個亮點。內置成本與 token 台帳,可按階段、slice、模型拆分。還能設預算上限,到了就暫停,避免通宵跑完發現帳單爆表。
配合 token 優化裡的 profile——budget、balanced、quality——一次性協調用哪檔模型、壓縮多少上下文、哪些階段可以跳過。新手建議先設一個保守 ceiling,再慢慢放開,讓數據幫你決定要不要上規模型。
品質驗證:不是感覺還行,而是可驗證
每個 Task 有 must-have 標準,分成真相、產物、關鍵、鏈接幾類。執行後會跑你配置的 verification 命令(例如 npm run lint 和 test),失敗觸發自動修復重試,次數可配。
自動從 package.json 發現的檢查,也可以先以 advisory 模式警告而不阻塞。這對老專案很友善——新手把驗證命令寫清楚,等於給智能體立了交卷標準。
Headless 模式與遠端協作
CI 與腳本場景可以用 gsd headless——無界面跑 auto next、指定 dispatch 階段、設超時,退出碼區分完成、錯誤與阻塞。
特別實用的是 gsd headless query,大約幾十毫秒返回 JSON 快照——當前階段、下一次派發預覽、並行 worker 成本,方便你寫守護進程或和其他系統集成。
需要人類點頭的場景可以配 remote questions,把問題路由到 Slack 或 Discord,配合雙終端工作流——一個視窗跑 gsd auto,另一個討論 status Q,在里程碑邊界自動觸發你的決策,不必為了說話而停自動模式。
對新手來說,這解決了「既想放手,又想隨時改方向」的矛盾,也是 GSD 2 相比純聊天視窗的一大體驗差異。
VS Code 整合與擴展生態
倉庫裡還帶一個 Next.js 的 Web 子專案。你可以在瀏覽器裡管理專案、看實時進度,終端裡繼續跑重活。對於不習慣純 CLI 的人來說,這是降低心理門檻的入口。
VS Code 的側邊欄提供診斷、工作流控制、繪畫分叉等功能。想玩並行還有 Parallel Watch 之類的原生 TUI 監控。
擴展生態很誇張:瀏覽器自動化、網頁搜索、GitHub、MCP 客戶端、語音、後台 Shell、子代理、LSP、Ollama 本地模型、Discord 機器人與守護進程,以及自訂 MCP 工具暴露專案狀態——這些都在 Readme 的更新日誌裡持續演進。
QA 精選
Q1:GSD 2 和直接在 Claude Code 裡寫提示詞有什麼本質差異?
GSD 2 的核心差異在於用程式碼接管了上下文管理和工作流程。Claude Code 是對話式的——你餵提示、模型回應、對話越來越長、上下文越來越髒。GSD 2 則用狀態機在磁碟上推進工作:每個 Task 獨立刷新上下文,研究、規劃、執行互不污染。更重要的是,崩潰可以恢復、成本可以追蹤、Git 提交可以被程式化管理。用頻道主持人的話來說:「這不是文案升級,是控制權的質變。」
Q2:GSD 2 支援哪些模型提供商?入門要用 API Key 還是 OAuth?
官方列出了 20 多家——Anthropic、OpenAI、Google、OpenRouter、GitHub Copilot 等。有訂閱的話可以走 OAuth 直接授權,沒有訂閱就貼 API Key。主持人特別提醒:盡量用 API Key 而不是把訂閱用的 OAuth Token 硬塞進第三方工具。Readme 特別強調了 Google Gemini 相關的風險。OpenRouter 可以一把鑰匙試數百種模型,而 Claude、OpenAI、Bedrock 等也都有各自的路徑。
Q3:自動模式跑一整晚,萬一模型卡住或產生無限循環怎麼辦?
GSD 2 有三層防護。第一層是滑動窗口檢測重複派發模式——如果模型反覆做同樣的事,系統會先重試一次並附帶深度診斷;第二層是分級超時機制:軟超時讓模型自己收尾、空閒超時看模型是否卡住、硬超時直接暫停自動模式;第三層是指數退避重啟——崩潰後自動重啟若干次,每次等待時間遞增。再加上 provider 的臨時錯誤退避與模型回退鏈,整體設計接近生產環境裡的監控系統。
Q4:新手第一次使用 GSD 2,最重要該設定好哪些東西才能安全地跑 Auto 模式?
主持人給出三個優先級最高的設定:API Key、預算上限、驗證命令。先在 step 模式裡熟悉節奏,了解 state machine 如何推進、dispatch 怎麼運作,再切 auto 模式。預算部份建議先設一個保守的 ceiling ceiling(上限),跑幾次之後根據實際 token 消耗再放寬。驗證命令(如 lint + test)要寫清楚——這等於給智能體立了交卷標準,避免模型自以為完成但實際上程式碼不能編譯。
Q5:GSD 2 的品質驗證機制具體怎麼運作?
每個 Task 都有 must-have 標準,分成真相(truth)、產物(artifact)、關鍵(critical)、鏈接(link)幾類。執行後自動跑你配置的 verification 命令,例如 npm run lint 和 npm test。如果驗證失敗,系統會觸發自動修復重試(重試次數可配)。自動從 package.json 中發現的檢查項目,也可以先以 advisory 模式發出警告而不阻塞進度。對於老專案匯入 GSD 2,這個 advisory 模式特別友善——不會因為既有的 lint 問題就讓 pipeline 卡死。
Q6:GSD 2 如何處理多人協作場景?
里程碑可以隔離到獨立的 Worktree 或分支,Slice 內部順序提交,里程碑完成後 squash 合併回主線。建議打開 unique milestone IDs,並配合文檔中的 getting started 建議,避免多人協作時里程碑名稱撞車。遷移前最好先有 roadmap 作為結構錨點,否則里程碑要從 phases 推斷,可能多一步人工整理。
主編隨筆
這集 NiceKate AI 把 GSD 2 的技術細節講得很透,但有一個層面我覺得值得補充——GSD 2 的出現其實反映了 AI Coding Agent 從「提示詞工程」走向「系統工程」的產業趨勢。
過去一年我們看到大量提示詞模板(prompt template)和 prompt library 專案湧現,但它們都有一個本質限制:提示詞是文字,無法真正管理狀態、無法執行錯誤復原、無法控制預算。GSD 2 選擇用 TypeScript 程式碼來做這些事,等於把 Agent 從「聰明的文字生成器」升級成「可運維的軟體系統」。
以我自己的使用經驗來說,這個方向才是對的。提示詞再好,碰上長對話的上下文衰退(context degradation)就無解;而 GSD 2 的「每個 Task 刷新上下文」設計,直接從架構層面解決了這個問題。搭配 Git worktree 隔離和 squash 合併,整個開發流程變得可審查、可復盤——這在團隊協作場景中特別有價值。
如果你正在評估要深入哪個 AI Coding Agent 生態,建議把注意力從「誰的模型最強」轉移到「誰的工作流管理最成熟」。GSD 2 雖然還在早期階段,但它的設計方向——程式碼接管流程、狀態機驅動、可觀測性內建——很可能會成為這個領域的標準架構。
結語
GSD 2 把寫提示詞升級成跑系統。狀態機在磁碟上推進,上下文與 Git 被程式管理,成本與驗證可觀測,崩潰可恢復。對於從 Claude Code 或 Copilot 剛起步的開發者來說,這是一個可以認真考慮的進階工具——它讓 AI Coding Agent 從「玩具」變成了「生產工具」。
更多細節請查閱 GitHub 上的官方文檔。
本文章僅作為學習與交流用途,不構成任何投資建議。 原始內容版權歸原節目製作人所有。本網站內容經 AI 輔助整理,並經人工審核後發布,可能仍包含錯誤。 詳見 版權聲明與免責條款。









