Community程式設計與開發github.com

dehtiarone/escalating-subagents

用於修復儲存庫錯誤、實作功能或進行儲存庫變更。協調探索、實作與獨立驗證,並採用分層模型升級機制;將簡單編輯導向單一工作單元。

escalating-subagents 是什麼?

此技能提供了一個結構化的「升級式子代理」工作流程,專為 Codex 等 AI 代理設計,用於處理儲存庫變更任務。它定義了一個基於風險的層級系統(A 到 D),以決定任務的足夠性、工作流程(例如,實作 → 驗證,或探索 → 實作 → 驗證)以及初始「等級」(模型努力)。主要代理僅負責協調,從不安全接編輯產品程式碼;它將實際工作(探索、實作、驗證)委派給專用的子代理。此方法確保變更在整合前經過嚴格評估,降低引入錯誤的風險,並在需要時有效利用更強大的模型。它還包含詳細的核算規則、快照功能(使用 Bash/Git)以及處理失敗和升級的具體指引,使其成為管理複雜軟體開發任務的強大工具。

相容平台~Claude Code✓Codex CLI~Cursor
npx skills add https://github.com/dehtiarone/skills/tree/main/codex/skills/escalating-subagents

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

在你喜歡的 AI 中提問

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

說明文件

用於 Codex 的升級式子代理

建議協調器:gpt-6.1-sol 搭配低努力。保留父層選定的模型;此技能不會更改它。主代理負責協調:選擇層級、定義驗收標準、簡報工作單元、檢查交接、分類問題及報告。它從不編輯產品程式碼。從簡潔報告(最多 30 行)、範圍差異與證據路徑開始;在證據遺失、有爭議或不足以判定 D 層風險時檢查更多程式碼或執行檢查。不要機械性地對未更改的修補程式重複檢查。

工作單元執行一個指定的階段,且絕不委派或叫用此技能。尊重主機權限與協作模式;計畫模式不允許進行實作或產生變更的探索。

層級

在第一行進度中命名層級。任何階段都可以升級層級;絕不能降級。升級時,保留計數器,使用較高層級的總預算,並為每個受影響的工作單元修訂標準。對於 D 層,將探索/驗證提升至至少第 3 級;絕不降低現有等級。在進一步實作之前,執行新要求的探索。

層級工作流程起始等級
A瑣碎、完全指定、低風險的編輯,具有具體的檢查實作;交接取代驗證1
B明確的變更,受益於委派實作 → 驗證兩者皆為 1
C不明確的錯誤或重要功能;預設探索 → 實作 → 驗證三者皆為 1
D驗證、租戶隔離、遷移、佇列/同步、生產資料變更探索 → 實作 → 驗證探索/驗證 3;實作 1

階段與檢查

  1. 驗收標準 - 父層: 在調度前定義「完成意味著」。A/B 層從請求中推導檢查和預期結果;C/D 層在探索後完善草稿。實作和驗證接收相同的標準和原始請求。
  2. 探索 - C/D 層: 確認範圍或重現問題。不進行產品編輯;明確擁有的重現/測試檔案是允許的。報告原因/範圍,包含位置、證據、建議的標準和開放問題。對於唯讀探索,在簡報中禁止儲存庫編輯並驗證範圍;不要發明每個代理的沙盒設定。
  3. 實作: 僅變更擁有的檔案;報告編輯、命令、退出狀態和未完成的工作。
  4. 驗證 - B/C/D 層: 一個未參與實作的新代理,根據請求、規格和標準檢查整合後的修補程式。不進行儲存庫編輯或新增回歸測試;為實作建議遺失的測試。允許從頭開始報告和正常的測試產出物。根據每個標準報告證據和未測試的區域。

在提交命令之前執行前置測試先決條件。僅在其覆蓋範圍同等時才偏好可行替代方案。切勿僅僅為了獲得 PASS,而以單元測試取代所需的整合、端到端、視覺或裝置證據。將受阻的必要檢查帶入最終結果;不要假定任何特定的測試執行器可以在沙盒中執行。僅在具體補救措施後重試環境失敗。

探索/實作回傳 DONE、PARTIAL 或 BLOCKED。驗證回傳 PASS、FAIL、BLOCKED 或 INCONCLUSIVE。每次呼叫的時間預算:A/B 10 分鐘;C/D 25 分鐘。在極限時,回傳 PARTIAL 或 INCONCLUSIVE,並附上已完成的工作、證據、未完成的檢查和下一步。

階梯與調度

等級模型reasoning_effort
1gpt-6-lunamedium
2gpt-6-lunamedium
3gpt-6.1-sollow
4gpt-6.1-solmedium
5gpt-6.1-solhigh

等級 2 是一個帶有具體修正證據的全新 Luna 重試。Sol low 在應用程式中是 Light,不是額外的等級。 對於具體的遺漏或誤讀簡報,前進一級;等級 2 是在使用更強模型之前唯一的遺漏重試。對於等級 1 或 2 的確認推理失敗,直接跳到等級 3。在等級 3 或以上,前進一級。下面的「升級」即指此規則。當不充分的工作耗盡等級 5 時停止。有成果的延續和已修正的環境失敗不會前進等級。不要在沒有具體修正的情況下重試相同的失敗方法;改為升級。這並不禁止有成果的延續。

使用暴露的 Codex 架構:spawn_agent 搭配唯一的 task_name、在 message 中提供完整的簡報、明確的 model、reasoning_effort,以及在支援的情況下使用 fork_turns: "none"。不要使用完整歷史分支進行覆蓋。報告不相容的控制項,而不是更改全域設定或透過巢狀 CLI 繞過它們。對於同一等級的延續使用 followup_task,對於模型/努力變更則使用全新的生成。等待/監聽/引導呼叫不會產生免費的額外指派。中斷逾時的工作單元,並確保在繼續之前寫入已停止。 記錄要求和可觀察到的有效設定;當有效值未暴露時使用 unavailable。從不默默地替換不可用的模型或設定。在簡報中保留證據路徑,而不是複製記錄檔。重試簡報需命名修正/假設,並說明繼續修補程式或取代這些區塊。

會計與分類

分別追蹤總呼叫數、每個階段的呼叫數以及每個階段/工作項目的等級。每個新的工作指派、重試或延續花費一次呼叫;狀態訊息和等待不花費。平行工作單元和基線測試工作單元單獨計算。在支援的情況下,為每個調度的指派或延續建立一個執行時期任務清單項目;更新它不花費呼叫。正確的驗證 FAIL 是成功的驗證,而不是升級驗證器的理由。在選擇資料列之前診斷失敗。

發現下一步行動計為
不充分的工作使用證據升級負責的階段呼叫 + 等級前進/跳躍
PARTIAL 搭配合理的方法和進度在同一等級繼續呼叫
同一等級的第二次 PARTIAL,或無進度證據升級該階段呼叫 + 等級前進/跳躍
錯誤的診斷升級探索;之後修訂實作簡報呼叫 + 等級前進/跳躍(探索)
驗證 FAIL 是錯誤的父層使用記錄的證據修正,或升級驗證;不要更改實作修正不計;重新驗證計為呼叫 + 等級前進/跳躍
驗證 FAIL 正確識別出不充分的實作升級實作,然後在其當前等級進行全新的驗證呼叫 + 等級前進/跳躍(實作),呼叫(驗證)
驗證超時,但列出了已完成的檢查在其當前等級繼續處理未完成的檢查呼叫
環境失敗或缺少先決條件在授權範圍內補救,然後重試一次;如果未解決則停止重試計為呼叫;等級不變
阻礙性的模糊性改變了「完成」或 D 層風險詢問使用者;命名阻礙者無

父層修正不會免除檢查:驗收需要每個標準的證據。僅在驗證器從未實作且修補程式未變更時,才在相同代理中繼續驗證。在修復後,使用全新的驗證器。等級 5 的正確 FAIL 並不會耗盡驗證器;分類實作。

預算: A 層 3 次呼叫;B 層 4 次;C/D 層 8 次。在調度前檢查:剩餘呼叫必須涵蓋所有提議的工作單元,加上當他們的工作需要時的最後一次最終驗證。驗證本身只需要自己的呼叫。允許剩一次加上最終驗證;允許剩兩次加上一個實作;不允許剩兩次加上兩個實作。僅當所有必要工作仍然符合時才減少批次。在探索後保留實作和驗證。升級後重新檢查。

最後一次允許的呼叫可以成功完成任務。否則在無法負擔的工作前、最終等級失敗時或未解決的阻礙者處停止。從不默默地省略必要的工作或在必要的驗證未完成時聲稱完成。一般的實作選擇不需要詢問使用者問題;記錄它們。

快照與交接

父層獨自執行以下內嵌的 Bash/Git 快照腳本。不需要伴隨檔案。使用 umask 077,建立 ${TMPDIR:-/tmp}/escalating-subagents/,然後使用 mktemp -d 在其中建立一個唯一的 task.XXXXXX 目錄。使用以下命令提取標記的區塊,從不透過重新輸入(SKILL 是此文件的絕對路徑,TASK 是任務目錄):

sed -n '/^<!-- agent-snapshot:start -->$/,/^<!-- agent-snapshot:end -->$/p' SKILL | sed '1,/^```bash$/d;/^```$/,$d' > TASK/agent-snapshot.sh

其 SHA-256(shasum -a 256 或 sha256sum)必須為 ddc6cd474ae00cb7fc7613deefb4a9f5ff959f6b641abf041f1a7e26d7d8ca95;不符即為阻礙者。對於快照,單獨使用 <task>/state。不要將腳本放在最初為空的狀態目錄內。使用 Bash 執行它,從不 source 它。

在父層帳冊中記錄絕對的儲存庫、輔助程式和狀態路徑;在每次呼叫時明確傳遞它們,不依賴跨命令的 shell 狀態。工作單元從不執行輔助程式或接收其控制路徑。在任何調度之前成功初始化;報告初始化錯誤並停止,僅在權限導致問題時識別沙盒阻礙者。下面的大寫單詞是佔位符;引用實際路徑:

bash HELPER init REPO STATE
bash HELPER capture STATE base
bash HELPER capture STATE pre-1
bash HELPER capture STATE post-1
bash HELPER diff STATE pre-1 post-1 names0
bash HELPER diff STATE pre-1 post-1 stat
bash HELPER diff STATE base post-1 patch

捕捉 base 一次,pre-N 緊接在每次調度/批次之前,以及 post-N 在其所有工作單元和寫入完成之後。將整合的修補程式輸出儲存在草稿證據中。命名的快照是不可變的。狀態會保留樹狀 ID 和臨時索引/物件;實際的索引/物件資料庫不變。包含追蹤的忽略檔案和未被忽略的未追蹤檔案。不要使用 git diff HEAD 作為替代。

輔助程式失敗是阻礙者。它拒絕並發寫入;除非其記錄的處理程序已確認停止,否則不要刪除鎖。中斷的未發布快照無法取代命名的快照。保留狀態直到報告和任何預期的後續工作完成。

使用 NUL 分隔的變更路徑進行範圍檢查,使用 stat 進行摘要,以及使用整合的修補程式進行驗證。超出範圍的編輯將被拒絕,除非父層為合法的依賴項明確擴展所有權。保留無關的工作;從不自動重置、清理、儲藏或還原它。

在可用容量內一起調度不相交的實作工作單元。對於每個批次,針對所有權的聯集進行比較;報告提供個別歸屬,而非作者證明。在檢查範圍或驗證之前等待整個批次。序列化共享檔案/基礎架構和會污染快照的無關並發寫入者。

在交接時驗證命令結果、證據路徑、引用位置和檔案狀態相關性。新的編輯會使受影響的檢查失效。已接受的工作前進;被拒絕的工作返回分類。追蹤長時間運行的命令直至完成,並在快照前停止未完成的寫入;背景啟動不等同於完成。

儲存庫限制與簡報

閱讀適用的 AGENTS.md、範圍內的說明、規格和設計指南。使用儲存庫的套件管理器、鎖定、依賴版本、遷移和文件政策。將生產資料限制明確帶入相關的工作單元簡報,包括適用時的即時資料和僅新增需求;不要依賴工作單元間接發現它們。

工作單元從不提交、推送、部署或執行無關的外部寫入。僅當儲存庫和主機規則允許時,父層才能執行明確請求的動作。

每個簡報包含:任務、層級、原始請求、絕對的儲存庫/說明/證據路徑、模型/努力、逐字的標準、所有權、命令超時、牆上時鐘預算、生產資料限制,以及「不要委派、叫用此技能或執行快照輔助程式」。

  • 探索: 相關路徑,如果重試則包含先前的報告;除了明確授權的重現/測試檔案外,不擁有任何東西。不進行產品編輯或安裝。報告結果、原因/範圍、位置、證據、建議的標準、開放點、下一步...

相關技能