Community程式設計與開發github.com

tderoussel/overnight-build

撰寫一個可自主運作、不受 Claude Code 使用次數限制影響的夜間建置提示,並透過 BUILD_LOG.md 檢查點機制來實現重啟。

overnight-build 是什麼?

這個技能(Skill)專為需要長時間、無人監控的開發建置作業而設計。它會產生一個完整的提示(prompt),讓 Claude Code 能夠在夜間或使用者不在場時自主執行建置流程,並透過 `BUILD_LOG.md` 檔案記錄每個階段的進度與檢查點。當遇到使用次數限制(usage-limit reset)時,建置流程可以從最近的檢查點繼續執行,而非從頭開始。技能支援多種啟動方式,包括作業系統排程器、bash 迴圈或 MCP 工具。核心原則是,提示中必須包含「Rule 8 (survive usage resets)」與「LAUNCHER」區塊,以確保建置可被重新啟動。此外,它還包含嚴格的安全護欄,禁止在無人監控時執行資料庫遷移、架構推送、部署 CLI 操作或對外發送真實訊息等危險動作。最終產出為一份可直接複製的提示內容,並應儲存為專案根目錄下的 `overnight-build-prompt.txt`。

相容平台✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/tderoussel/agent-skills/tree/main/skills/overnight-build

Installed? Explore more 程式設計與開發 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

夜間建置提示

完整範本位於 references/overnight-build-template.md。在撰寫前請先閱讀。 不要憑記憶重新推導規則結構 — 請填入使用者提供的 [方括號] 區段內容,並保留他們對自己副本所做的任何編輯。

不可妥協

每個輸出都必須包含 Rule 8 (survive usage resets) 和 LAUNCHER 區段。這是讓建置可重新啟動的關鍵;缺少這些的提示會在第一次使用次數重置後默默地從頭開始,白白浪費一個夜晚。

撰寫步驟

  1. 閱讀範本。 如果使用者保留了一份編輯過的副本,使用者的版本優先 — 保留他們的變更。
  2. 填寫規格 — 要建置的內容、背景、設計需求、技術需求、依優先順序排列的功能、種子資料、部署方式、成功標準。此處的明確性是成敗關鍵;模糊的規格會導致模糊的夜晚。
  3. 設定階段 — 4 到 8 個階段,每個階段必須能獨立完成且可驗證,時間分配總和應符合預算。
  4. 填寫應變手冊,在範本既有的應變措施之上,加入專案特定的阻礙因素。
  5. 詢問一次使用者想要哪種啟動器(A:作業系統排程器 · B:bash 迴圈 · C:排程任務 MCP),如果請求中沒有明確說明的話。只詢問一次 — 然後繼續處理。
  6. 輸出為一個可複製的程式碼區塊,並提醒使用者在啟動前將其儲存為專案根目錄下的 overnight-build-prompt.txt。

完成信號

提示必須指示建置流程在最後一行輸出 BUILD_COMPLETE — bash 迴圈啟動器會擷取這個字串來結束執行。在提示中清楚說明,當任何 P0 標準確實未達成時,不發出 BUILD_COMPLETE 是正確的行為。一個在未完成的建置上就退出的啟動器,比一個持續執行的啟動器更糟。

護欄

無人監控的代理程式沒有人可以向其提問,因此提示必須自帶邊界。

如果目標是現有的生產環境程式碼庫,請先推導檔案所有權和禁止觸碰清單(fleet-brief 技能可以產出這兩者),並將專案的驗證檢查帶入測試階段,這樣「完成」指的是驗證通過,而不只是合併。

絕對不要讓夜間提示授權執行資料庫遷移、推送架構、透過部署 CLI 進行部署、購買或發佈電話號碼或網域,或向真實聯絡人發送外寄訊息。這些操作需要人類在清醒狀態下執行。請將專案自身的不可逆操作也加入該清單。

建置必須寫入的交付物

  • BUILD_LOG.md — 階段記錄、決策、應變措施、已知問題,以及包含確切下一步的 ## CHECKPOINT — <ISO> 區塊
  • RESEARCH_NOTES.md — 實作開始前的研究發現

恢復執行時,建置流程的第一個實際動作是從頭到尾讀取 BUILD_LOG.md,並從最新的檢查點繼續 — 絕不重新研究、重新建立底層結構或重新開始。

Individual skills in this repo

This repo contains 8 individual skills — each has its own dedicated page.

tderoussel/codebase-audit

Runs a ranked, evidence-backed audit of a product, codebase, or subsystem, ending in a verify list that separates proven findings from inferred ones. Use when the user asks for an audit, a gap analysis, a deep read, a bug hunt, a readiness check, a re-audit, a state reconciliation, or asks what they are not seeing. Trigger phrases include "audit", "gap analysis", "what am I missing", "deep audit", "readiness", "bug hunt", "review the whole thing". Produces findings and a verify list; does not fix.

tderoussel/competitive-teardown

Researches a competing product against your own and produces a ranked build-or-ignore verdict, plus optional comparison-page copy. Use when the user names a competitor or asks how their product stacks up against one. Trigger phrases include "vs us", "competitor", "what does X have", "should we copy", "competitive gap", "teardown", "are we behind". Produces a ranked verdict with effort estimates and an explicit not-worth-copying list.

tderoussel/decision-council

Run a structured multi-perspective review of a decision instead of getting one agreeable answer. Use when the user says run a council, get me perspectives on this, should I do X, stress-test this decision, or is this a good idea.

tderoussel/fleet-brief

Authors a workstream brief for dispatching multiple parallel build agents across one codebase, with per-lane file ownership, shared-ground warnings, and a derived DO-NOT list. Use whenever work is about to be split across concurrent agents, workers, lanes, or waves — even if the user does not say "write a brief". Trigger phrases include "fan out", "parallel agents", "orchestrate this", "split into lanes", "workstreams", "run these in parallel", "review-gated build". Produces the brief; does not dispatch.

tderoussel/inbox-triage

Triage an email inbox — sort what needs a reply, draft the replies, flag what needs a decision, and surface what can be ignored or unsubscribed. Use when the user says triage my inbox, do my email, what's in my inbox, or clean up my email.

tderoussel/session-log

Write a durable record of a work session — what was built, root-caused, or shipped — into the project's notes. Use when the user says log this session, write a session log, record this, or when a substantial piece of work has just finished and needs to be handed off to a future session.

tderoussel/ship-gate

Verification gate for a Next.js-on-Vercel + Supabase + GitHub Actions stack, to run before claiming anything is shipped, deployed, live, merged, passing, or done. Use before saying a change is in production, before merging a PR, before reporting CI green, and before writing any status into a document — even if the user does not ask for verification. Trigger phrases include "is it live", "did it deploy", "ship it", "merge it", "is CI green", "confirm prod", "did that work". Encodes traps where the obvious check returns a false pass.

tderoussel/vault-doctor

Audits and repairs an Obsidian vault's structural health — broken [[wikilinks]], ambiguous duplicate filenames, missing or malformed frontmatter, stale status markers, and hub notes whose state sections have gone cold. Use when the user asks about vault health, broken links, vault cleanup, dead links, orphan notes, tag consistency, or says the vault feels messy or out of date. Trigger phrases include "vault health", "broken links", "clean up the vault", "audit the vault", "is the vault current". Read-only by default; every repair is proposed before it is made.

相關技能