一份可貼進任何 coding agent 的 Definition of Done 模板,把『什麼叫做完』寫成 agent 必須逐項自檢的 checklist:行為符合驗收標準、tests / lint / typecheck / build 全綠(沒跑要說原因)、有風險的改動附 rollback、最後交一份『驗證故事』。杜絕「它說完成了結果一堆紅」。
AI agent 最大的謊就是「我做完了」——結果 build 是紅的、測試沒跑、邊界沒處理。
這份 Definition of Done spec 逼它在說『完成』前,逐項自檢並貼出驗證證據;可以直接放進任務指令,或常駐進 CLAUDE.md / AGENTS.md。
[ 登入後可看完整內容 ]適用情境:交付任何稍微重要的 coding task(修 bug、加功能、改 API)時,貼在任務描述末端;或把整段精簡後放進 CLAUDE.md / AGENTS.md 變成每次都生效的常駐規則。為什麼有效:① 把『完成』從感覺變成『必須提出證據的主張』,直接打中 agent 最常見的假性完成;② 要求貼『真實未經修飾的測試/build output』,擋掉它編造綠燈;③ 明確的 out-of-scope 清單 + scope discipline 自檢,避免它順手亂改不相干檔案;④ 『驗證故事』讓人類 reviewer 30 秒就懂發生什麼。技巧:TEST_COMMAND / QUALITY_COMMANDS 填你專案真實指令(如 pnpm test、tsc --noEmit、next build),agent 才有得跑。這套 DoD 概念對 Claude Code、Codex、或任何能跑指令的 agent 都通用。
## Definition of Done 1. Behavior ✅ — 三條驗收標準逐條對應到 auth.ts L40-58。 2. Scope ✅ — 只改 auth.ts / auth.test.ts,未碰 out-of-scope 的 db/。 3. Tests ✅ — `pnpm test`:`Test Files 12 passed | Tests 84 passed`(原文貼上)。 4. Lint/typecheck/build ✅ — `tsc --noEmit` exit 0;`next build` 成功。 5. New coverage ✅ — 新增 `returns JSON on 401`,在舊 code 會 fail。 6. Edge cases ✅ — 空 body / 過期 token / 並發重送 已處理。 7. Conventions ✅ — 沿用既有 `errJson()` helper。 8. Rollback ✅ — 單一 commit,可直接 revert。 9. No placeholders ✅。 Verification story:把 401 從回 HTML 改成回結構化 JSON,新增對應測試證明新舊行為差異,型別/建置全綠,單一 commit 可回滾。
以上為此 Prompt 丟進 Claude Code / Codex 後可得到的描述性成果,實際畫面會因填入的變數而有差異。
這組 prompt 專為 Claude Code / Codex 設計。把 prompt 內 5 個方括號 [變數] 換成你自己的內容,貼進 Claude Code / Codex 執行即可。難度中等,照變數說明填好後即可上手。
完整 prompt 免費。註冊並登入 PromptCraft 帳號即可複製、收藏與留言,不需付費。
prompt 文字本身你可自由使用與修改。但 AI 生成物(圖/音樂/影片/文字)的商用授權,取決於你在 Claude Code / Codex 使用的方案與其官方服務條款,請以該工具的授權規範為準。
Studio engineer 視角拆解 Suno 致命弱點(油炸 vocals、高頻 artifact)+ 4 步驟 DAW workflow + Suno Studio 修音 prompt
提案產生器 / 會議處理器 / 內容再利用 / 週五回顧 / 收工 reset — 試了 40 個只有這 5 個沒被丟掉、各省 30+ 分鐘 / 次。
適合:部落格、Medium、Notion 公開頁、Substack — 任何支援 iframe / HTML 嵌入的地方。對方點「看完整」會回到本站、是 prompt 庫的免費 backlink。
<iframe src="https://prompt.luvai.net/embed/agent-definition-of-done-self-gate-spec" width="100%" height="380" frameborder="0" style="border:1px solid #e0dcd0;border-radius:4px;" loading="lazy" title="PromptCraft Embed"></iframe>