Community程式設計與開發github.com

heithmurray/agent-skills

用於狀態變更工作的規劃與審核關卡。

agent-skills 是什麼?

此技能定義了一個清晰的「規劃關卡」(Plan Gate) 流程,強制 AI 代理在執行任何會改變狀態的工作之前,先提出明確的計畫並獲得人類審核。它將規劃與執行分離,確保計畫僅供決策參考,而非自動授權。此技能支援完整與簡短兩種關卡模板,適用於從簡單的單一變更到複雜的多步驟工作。它特別強調處理敏感操作(如憑證、網路、代理設定)時的安全邊界,並提供中斷後的復原與記錄指引,是提升 AI 代理自主操作可控性與安全性的關鍵工具。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/heithmurray/agent-skills/tree/HEAD/skills/plan-gate

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

在你喜歡的 AI 中提問

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

說明文件

規劃關卡

讓計畫在行動之前可視化。計畫並非核准。

請遵循 AGENTS.md 中的操作權限、委派、復原與回報規範。此技能僅定義規劃關卡;它不需要任何工作 SOP 或任務看板應用程式。

唯讀預檢

檢查所需內容,以確認確切目標、現有狀態與風險。預檢期間不得更改狀態或揭露機密。

在請求執行核准之前,先解決重大未知事項。不得要求使用者重複已經提供的事實。

何時啟用關卡

對檔案變更、狀態變更指令、實作、重構、設定、安裝及持續性的工作流程變更啟用關卡。

對於一個微小、範圍明確的單一變更,請使用簡短關卡,而非不啟用關卡。對話中提出的問題、分析與草案無需執行關卡。

完整關卡

規劃關卡 — · 修訂 <編號>

已理解任務 / 目標

  • <請求的結果>

假設

  • [輸入] <使用者提供的假設>
  • [執行] <工具或環境假設>
  • [範圍] <包含或排除的假設>

範圍內

  • <有邊界的行動>

範圍外

  • <明確的排除項目>

受影響的檔案/系統

  • <確切目標與預期的變更>

執行步驟

  1. <步驟>

驗證

  • <可觀察的驗收檢查項目>

復原

  • <任務所屬的變更如何復原,或復原限制>

核准邊界

  • <此核准授權的範圍>
  • <需要重新決定的情況>

待決定事項

  • <尚未解決的重大事項,或無>

關卡狀態

  • 待核准
  • 或 受阻 — 需要決定

省略不適用的假設類別。請勿僅為了填滿模板而憑空創造假設。

簡短關卡

規劃關卡 — · 修訂 <編號>

  • 任務:<請求的結果>
  • 目標:<確切的檔案/系統>
  • 變更:<有邊界的變更>
  • 假設:<標記的假設(若有)>
  • 驗證:<檢查項目>
  • 復原:<復原或復原限制>
  • 狀態:待核准

如果任務不再微小,請切換至完整關卡。

核准

等待對可見範圍的明確核准。「核准了」、「繼續」、「請進行」或直接確認即表示批准目前的已識別修訂。

核准在範圍未變更的情況下持續有效。請勿重複請求核准,或要求工作人員再次取得核准。

對目標、行動、需求、驗證、復原或權限的重大變更,需要一個修訂後的關卡。在該修訂獲得核准前,停止受影響的工作。

未解決的重大決定意味著狀態為「受阻 — 需要決定」,而非「待核准」。不得將未知目標稱為「相關檔案」來進行授權。

敏感邊界

在變更以下項目之前,務必揭露具體範圍並取得明確核准:

  • 憑證、驗證或權限。
  • 伺服器、網路、遠端存取 (SSH、VPN) 或公開埠。
  • 代理執行時期設定:頻道、路由或模型設定。
  • 持久性身分或操作指令。
  • 外部傳送、發布、帳戶或支出。
  • 破壞性操作或用戶端資料。

在當前對話中對使用者的例行回覆不屬於第三方傳送。一般的對話草稿不屬於持久性指令變更。

新增、取代或更正憑證時,請在唯讀預檢期間確認目標系統實際如何使用該憑證(其自身的憑證儲存庫、其擁有的檔案、環境變數,或是在傳輸過程中注入機密的代理),使用該整合系統的架構、文件或程式碼,而非憑空假設。如果目標系統必須自行讀取憑證,請勿將其經由會在傳輸過程中替換值的代理路由;請使用整合系統支援的憑證儲存庫或其自有檔案。在請求機密之前,請先關卡處理該機密的名稱、儲存位置、允許使用該機密的主機,以及整合系統所需的任何執行時期設定或重新啟動。對於整合系統擁有的憑證檔案,請關卡處理由人類進行遮罩輸入、拒絕覆寫現有檔案、確切的擁有者與嚴格的權限設定、絕不印出該值的驗證,以及僅刪除該檔案作為復原;僅在整合系統要求時才包含重新啟動。僅能透過遮罩提示或工具自身的機密儲存庫收集機密;絕不能透過聊天、日誌、命令列引數或透過聊天貼上的多行 shell 來收集,也絕不能複製或別名現有機密。以所需的名稱請求一個全新的輸入。如果沒有可用的遮罩提示或機密儲存庫,或者遮罩請求無法送達使用者,請停止並告訴使用者確切的機密名稱、必須存放的位置以及哪些主機可以使用它,以便使用者自行輸入。保留舊憑證直到下次執行驗證新憑證為止,並且僅在核准範圍中包含刪除舊憑證時才進行刪除。

對於從純文字設定遷移至機密儲存庫的情況,請關卡處理每個機密的完整擁有者集合,並將純文字移除視為驗證後的單向操作。僅對非機密結構和雜湊進行快照;絕不建立純文字的復原副本。透過遮罩輸入收集每個當前值,然後使用工具支援的稽核或遷移規劃器來證明每個儲存的值與其確切的純文字來源相符,而不顯示任何一個。審查並試執行一個僅限於已核准路徑的計畫,在套用前立即重新檢查設定與計畫的雜湊,然後套用一次。驗證確切的機密參考、零殘留的純文字、未解決或隱藏的值、工具保存的任何其他儲存庫(快取、工作階段或驗證儲存庫、備份、暫存或遷移檔案)中沒有殘留的機密、以及任何內容重新啟動前的有效設定。僅重新啟動需要重新啟動的擁有者,證明新程序正在運行,而非信任排程報告,並對每個憑證擁有者進行端到端測試。保留非機密遷移計畫,直到所有重新啟動後的檢查均通過,然後僅刪除該計畫。除非有洩露或單獨的輪換決定要求,否則不要輪換憑證。

持續性與復原

對於多步驟的工作,請在寫入範圍中包含雙方同意的任務記錄位置。在那裡保存已核准的修訂、核准參考與執行證據。不需要特定的追蹤應用程式。

將記錄識別碼限制在一個工作流內。當工作轉移到本質上不同的目標或成果系列時,請開始一個新的記錄系列,並交叉連結先前的證據,而不是繼續其序列或合併歷史。如果一個範圍錯誤的關卡未獲核准且未建立任何成果,請棄用其提議的識別碼,並在正確的系列下重新發布未變更的範圍;請勿建立遷移工作。

對於版本敏感的庫存,請記錄觀察到的執行時期/目錄版本並保存該快照。如果升級正在進行中,請在凍結許可清單或相依性目標之前完成並驗證升級,然後建立一個可比較的升級後修訂;切勿在不知不覺中重寫升級前的狀態。

中斷後,在恢復之前檢查實際狀態。請勿重複一個結果不確定的動作。

套用 AGENTS.md 中的復原限制;如果未設定,對於一個阻礙因素,最多允許一次安全、邏輯上合理且在範圍內的嘗試,該嘗試由主導代理與任何工作人員共享。重試並非強制性,也不能擴展權限。重新啟用關卡或啟動新工作人員並不會重置此配額。

回報成功的復原以及失敗的復原。記錄失敗的內容、嘗試的內容、原因以及觀察到的結果。

正確回報的阻礙因素是一個有效的結果——而非允許即興完成。當請求的交付物仍然不完整時,請明確說明。

Individual skills in this repo

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

相關技能