AIDive

Anthropic 的 Claude Code playbook,終於有人實測了

AIDive · 發布

編碼 agent自動化與工作流程

沒人實測過的 playbook

Anthropic 發布了一份給 Claude Code 的 AI-native SDLC playbook:六個階段,每個階段都以一份已提交的檔案收尾,並做成免費課程開放學習。它的核心主張是,程式碼已經不再是瓶頸,真正管理瓶頸的是這條已提交產出物串成的鏈。但這份文件本身沒有任何量測,沒有時間、沒有成本、沒有基準測試。我們在一個真實的程式庫上做了第一次計時測試:十六次計時的 Claude Code 工作階段,每一道關卡都標上價格,最後的結論把這條鏈從中間劈成兩半。過程中,一個兩分鐘就能修好的 bug 走完整條鏈,讓我們量出了這套儀式的代價;而我們自己的部署也被擋了兩次,其中一次只靠四行 shell。

Playbook 與測試環境

測試環境:十六次計時的 Claude Code 工作階段、約 12 美元的運算費用、一個真實的程式庫。這份 playbook 分六個階段:規劃、設計、建置、測試、部署、維運。每個階段都以一份已提交的檔案收尾,下一個階段再讀這份檔案:intent、spec、plan、pull request、事故紀錄。這些 commit 就是稽核軌跡。Anthropic 把它做成免費的 14 堂課程,大約一小時,是為有審查關卡的企業寫的;我們測的是,當它遇上單一開發者時還剩下什麼。

這個程式庫是 RealWorld 示範應用(Express、TypeScript、Prisma、Postgres),是一個有真實測試的真實專案,而且全新 clone 下來就有一組測試是壞的(四組通過的測試、14 個綠燈測試、執行兩秒)。這個 bug 之後會成為我們的對照組。計分規則是:一道關卡的產出若能改變最終交付的內容,而且成本比它帶來的價值低,這道關卡就值得。

入場門票是放在儲存庫根目錄的一份記憶檔案:指令、慣例、架構、模型一再犯的錯,篇幅控制在一頁以內。我們的這份在 63 秒內寫好並提交,花費 $0.44。方法上有一個誠實的但書:headless 執行會把 playbook 裡的訪談壓縮成單一 prompt。

規劃:29 秒產出 intent.md

第一道關卡在任何人開始設計之前,先把想法記錄下來。我們的功能需求是:讀者想要靜音那些洗版灌爆動態的作者。playbook 把產出稱為 proto-spec,由你和模型一起寫,但由你負責擁有,並允許三種來源:一個想法、一張已開立的工單,或一則事故警報。範本有五個段落,標題本身就在替你思考:問題、預期成果、受影響的使用者與系統、限制條件、未解問題。工作流程是五個動作:描述、腦力激盪、依範本產生、修正、提交。

intent.md 時間 成本
靜音作者功能 29 s $0.18
壞掉的測試組 39 s —

價值藏在最底下的未解問題裡:被靜音作者的收藏會怎麼處理?他們的頁面還能被連到嗎?這些決定如果沒寫下來,coding agent 會默默替你做掉,現在則被寫下並標上日期。這份檔案會被提交,所以作者與時間戳記不會隨聊天紀錄消失,產品負責人也會在接受之前先修正草稿。Anthropic 為這個階段設定的目標是「以小時而非以週」完成需求釐清;單人作業的話,不到一分鐘。

設計:spec 自己標出了它的前提

第二道關卡用課程裡的一個 prompt,把 intent 變成 spec:讀取 intent、產出需求與設計 spec、套用可用的 skills,而這些 skills 本來應該承載你的品牌、安全與 UX 政策。兩分鐘後,我們拿到約 2,300 字、品質稱職的 spec:端點、資料模型、動態行為、邊界情況。它甚至如 prompt 所要求的,記錄下自己無法滿足的部分。

轉折出現在它標出的疑慮裡,那是模型自己寫的:「C0. No org skills available. This spec has not been checked against any policy.」這個階段的整個前提,假設了大多數環境裡根本不存在的檔案。講解影片都略過了這個前提,而 agent 把它白紙黑字寫了出來。第二個標記則平淡得多:未解問題的預設值需要產品端簽核才能進入建置。

這堂課對配對要求很嚴格(spec 與 intent 一起提交,由人核准進入建置的轉換),而且還有一筆閱讀成本:每份 spec 約 12 分鐘的產品負責人時間。playbook 甚至會追蹤返工:建置開始後才標上日期的 spec commit,都會算在你頭上。在已經把政策編碼好的團隊裡,這道關卡就是這些政策被執行的地方。單人作業時,你付錢買的是一個目前的環境還兌現不了的承諾。

建置:Plan Mode、TDD,以及迴圈真正檢查的東西

第三道關卡是 Plan Mode,而它設的門檻既嚴苛又實用:一位從沒看過那段對話的工程師,光靠這份 plan 就能完成實作。Plan Mode 自己強制執行「閱讀」這一半:在 plan 被接受之前,模型不能編輯任何檔案。我們的 plan 約 4,000 字,花了四分鐘,列出會改動的檔案、工作順序、風險與驗證方式,並記下三項與 spec 不同、且都有標註的偏離,這些偏離之後在審查時會再出現。

建置跑在一個迴圈上:先寫失敗的測試,讓它通過,只有一個目標,全部變綠,否則任務就沒完成。這個迴圈受到保護(修程式碼的 agent 不能削弱針對該程式碼的檢查),並搭配一個 verifier,也就是在全新 context 中進行的第二次檢查,不受寫出那段程式碼的工作階段所影響。

建置結果 數值
Agent 時間 ~9 min, 91 turns
成本 ~$2
變更 15 個檔案、Mutes 資料表、兩個端點、兩個動態都加上過濾
測試 5 組、50 個測試,獨立重跑後全數通過
首次通過即合併 是

要加上的星號是:綠燈只證明迴圈裡包含的東西,沒有更多。端對端從未被執行,因為那需要一台運作中的伺服器和有種子資料的資料庫,而一個對準過時假資料的迴圈,同樣會亮得一片綠。團隊規模下還可以在 worktree 中平行跑工作階段(上限據說是兩到三個);這部分我們沒有測試。

部署:審查,以及說不的那道關卡

部署關卡有兩層,而且兩層都對我們說了不。第一層依照儲存庫根目錄的一份書面政策閱讀 diff:三輪檢查(bug、安全性、對照 spec 與 plan 的合規性),「Important」只保留給壞掉的行為、洩漏的資料或違反政策,nit 最多五項,其餘只以數量彙總,這份政策連自己的雜訊都設了上限。審查花了兩分鐘、$0.80,而且跑了真正的檢查:測試、建置、對照 plan 中記錄的基準線做 lint,以及涵蓋九個檔案的格式檢查。結論:零個 Important 發現、六個 nit,其中一個超出上限而被彙總。它最後說了一句我們沒有要求的話:這個 agent 不負責核准,核准仍由分支保護機制背後的人類 code owner 決定。

第二層就是關卡本身。我們要求部署,模型自己拒絕了,因為該功能不在要出貨的分支上。那是判斷,不是強制執行。所以我們先合併再問一次:四行 shell 在 14 秒內回應:已封鎖,需要發布授權。Exit code 2 會中止這次工具呼叫,理由則回到模型手上。管線端也得到同樣的處理:一個壞掉的 build 以 headless 方式在 11 秒內完成分診,花費 $0.13,它讀了 log、點出確切原因,並在沒有動任何檔案的情況下提出 diff。確定性勝過客氣;hook 的能力只取決於它的 pattern,而我們的只比對到一支腳本。

關卡稅

同一個 bug、同樣壞掉的起點、兩條路,這就是對照實驗。第一條路:直接修。第二條路:走完整條鏈,從 intent 到 build。

直接修 完整鏈 倍數
實際耗時 2:13 11:31 ×5.2
成本 $0.70 $3.46 ×4.9
Turns 40 169 —
結果 測試組全綠 測試組全綠 相同

機器的帳單只是小的那一半。為了一個一行的修正,這條鏈寫出了約 5,500 字的產出物,大約需要 27 分鐘的人工閱讀,而那個 diff 你一眼就能掃完。這條鏈把寫作時間轉換成閱讀時間,這就是關卡稅。

playbook 還加上了一筆經常性費用:持續評測。二十到五十個真實任務,每次設定變更都重跑,每個案例都是一個真實的過往任務,prompt 維持原樣,從變更前的 commit 開始跑,並附帶可檢查的驗收條件。從歷史紀錄寫出五個案例花了五分鐘,但要把它們跑對就沒那麼容易:我們第一版的測試框架把兩個案例對準了錯的 commit,而兩個 agent 都抓到了這件事,而不是假裝通過。以每個案例約一分鐘計算,完整的一套每跑一次最多要花一小時的 agent 時間,而且每一次正式環境事故都應該作為永久的回歸評測加入這套案例。在受監管的團隊裡,這份閱讀本身就是交付物;單人作業時,它就是額外負擔。

結論:六道關卡有三道值回票價

六道關卡中有三道自己就值回票價:

階段 結論 證據
規劃 保留 40 s 買到沒人問過的問題
建置 保留 plan mode + 測試迴圈交出 50 個綠燈測試
部署 保留 $0.80 的審查加上真正的檢查,以及 14 s 的確定性封鎖
設計 單人可跳過 為你還沒編碼的政策向你收費
測試(持續評測) 可以等 每跑一次最多一小時,而且容易對錯目標
維運 尚未證實 需要數週的正式環境遙測資料

維運在紙面上很優雅:確定性的腳本監看控制區間,一旦越界就寫出一份新的 intent 檔案;但要證明它,需要我們沒有的正式環境遙測資料。如一位分析師所說,Anthropic 自己的文件通篇沒有任何量測;這些是第一批數字,限制也很明顯:一個程式庫、一位開發者、一天。

外部資料顯示這份壓力是真實的。Faros 追蹤了 1,200 多個團隊、超過 10,000 名開發者:高採用率的團隊合併的 pull request 多了 98%,審查時間增加 91%,平均每個 pull request 的大小成長超過一倍。最新的 DORA 報告也有類似的訊號:有了 AI,吞吐量上升,穩定性下降。審查正在成為瓶頸,而這份 playbook 瞄準的正是這個位置。社群的變體已經把這條鏈砍到只剩兩個由人做的決定:一個提供範本與一份關卡帳本,另一個只讓人留在設計與測試兩個環節。採用那三道值回票價的關卡,等你的團隊長大了,再慢慢接上其餘的。Anthropic 自己的結尾那句話,正是最恰當的墓誌銘:迴圈持續運轉,人的判斷力始終在它之上。

來源

常見問題

Anthropic 的 AI-native SDLC playbook 是什麼?
這是一門免費的 14 堂 Claude Academy 課程,把 AI 開發分成六個階段(規劃、設計、建置、測試、部署、維運),每個階段都以一份已提交的檔案收尾,並由下一個階段讀取:intent.md、spec.md、plan.md、pull request 與事故紀錄。
AI-native SDLC playbook 值得照著做嗎?
在真實專案上實測,六道關卡中有三道自己就值回票價:規劃(29 到 40 秒換來沒人問過的問題)、建置(plan mode 加上 TDD 迴圈交出改動 15 個檔案、50 個綠燈測試的功能),以及部署($0.80 的審查加上真正的檢查,再加一個確定性的 hook 封鎖)。設計、持續評測與維運,要等團隊把政策編碼好、並握有正式環境遙測資料後才值得。
完整的產出物鏈比起直接修,成本差多少?
同一個 bug,直接修花了 2:13 和 $0.70;完整的 intent → spec → plan → build 鏈花了 11:31 和 $3.46,時間與成本都約為五倍,結果卻相同,另外還要加上約 27 分鐘的人工閱讀。
Claude Code 的 hook 要怎麼當作部署關卡?
PreToolUse hook 會在每個 Bash 指令執行前先讀取它;如果符合受保護的 pattern(例如 deploy-prod),它會印出理由並以 exit code 2 結束,這會中止該次工具呼叫,並把理由交還給模型。我們的在 14 秒內就回應了。
playbook 裡的持續評測是什麼?
一套由 20 到 50 個真實過往任務組成的案例,每次設定變更都重跑,每個案例都附帶可檢查的驗收條件。寫五個案例花了五分鐘,但完整的一套每跑一次最多要花一小時的 agent 時間,而且每一次正式環境事故都應該作為回歸評測加入這套案例。
AI 寫程式真的會把瓶頸轉移到審查嗎?
實地資料說會:Faros 對 10,000 多名開發者的遙測顯示,高採用率的團隊合併的 pull request 多了 98%,審查時間增加 91%,平均 PR 大小成長超過一倍;最新的 DORA 報告則顯示吞吐量上升、穩定性下降。

相關影片