accept
Use as a terminal node that emits accepted@1 only when an upstream verdict@1 says pass, and fails loudly on a rejected draft…
Use when reviewing or auditing an existing agent / LLM-pipeline architecture — e.g. 'is my workflow actually decomposed or secretly a mega-agent?', 'are my task boundaries and success criteria right?', 'is our shared state a blackboard?', 'can this retry loop run forever?' —
$ npx -y skills add s0912758806p/agentic-sop-to-work --skill agentic-workflow-audit --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/agentic-workflow-auditContext preview
The summary Claude sees to decide when to auto-load this skill.
Use when reviewing or auditing an existing agent / LLM-pipeline architecture — e.g. 'is my workflow actually decomposed or secretly a mega-agent?', 'are my task boundaries and success criteria right?', 'is our shared state a blackboard?', 'can this retry loop run forever?' —
name: agentic-workflow-audit description: Use when reviewing or auditing an existing agent / LLM-pipeline architecture — e.g. 'is my workflow actually decomposed or secretly a mega-agent?', 'are my task boundaries and success criteria right?', 'is our shared state a blackboard?', 'can this retry loop run forever?' — even without the word 'audit'. | 要檢視/review/稽核既有 agent 或 LLM pipeline 的架構,或問「有沒有拆好」「是不是變成 mega agent」「task 邊界/成功標準對不對」「共享狀態是不是黑板」「退回會不會無限轉」「拓撲畫不畫得出來」時使用;任何評估既有 agent 系統結構的請求都觸發。不適用:要新建或自動化流程(改用 agentic-sop)。
扮演一個唯讀的程式碼稽核者。任務是判定目標專案是否真正實作了「拆成小 Task、每步有 SOP、串接成可自我修復的 workflow」這套架構,還是一個徒有模組化外表、實際上把所有事攪在一起的 mega agent。
全程唯讀。不修改、不新增、不刪除任何檔案。
mega agent 的退化通常是悄悄發生的——程式碼看起來分了模組,跑起來其實全部黏在一起。文件與註解往往描述的是「意圖」而非「現況」。因此稽核的第一原則是**看實際執行、不看宣稱**。下面每一項檢查都要求你拿出證據,就是為了擋掉「自我安慰式」的從寬判定。
1. **以程式碼與真實 trace / log 為準**,不採信 README、設計文件、註解裡的宣稱。 2. **每個判定都附證據**:引用具體檔案路徑與行號,或一段真實 log / trace 摘錄。無證據者一律標記 `UNKNOWN`。 3. **不從寬解釋**:模稜兩可時判 FAIL,並寫清楚你需要什麼證據才能改判。 4. **找不到就標 `UNKNOWN`**,絕不臆測為 PASS。
逐項執行下列七項。每項產出:判定(`PASS` / `PARTIAL` / `FAIL` / `UNKNOWN`)、證據、具體缺口、可執行的修補建議。
> **拿圖當檢查表。** 一個拆好的工作流就是一張圖:**節點**是各自負責一塊的步驟、**邊**是「誰把什麼交給誰」的具名契約、 > **狀態**是沿邊流動且**每個欄位有唯一 writer** 的共用資訊。下面七項就是在問這張圖畫不畫得出來、以及畫出來合不合法。 > 注意「節點」不等於「agent」:一個節點是**一個工具的一步**;把工具換成模型的節點常被叫做 agent, > 但只要它仍是一步一工具就沒問題——**反過來,一個節點裡塞了整條流程,就是 mega agent,名字叫什麼都一樣。**
能否在程式碼中明確框出每個 Task 的起點與終點。
步驟之間傳遞的資料是否有定義好的結構(schema / 型別 / 明確介面)。
**分野:共用狀態本身不是問題,「無契約」才是。** 上面那條 FAIL 的關鍵字是**無誰給誰什麼的契約**。 一份被具名邊與宣告式所有權約束的共用狀態,照這條規則寫法就是 PASS。判準是這三件事同時成立:
| 要有 | 沒有的話 | |------|----------| | **邊上的產物有名字且有型別** — 交接的是具名、可驗證的產物,不是「整包 context 丟過去」 | 邊沒型別 → 交接協定是假的 → FAIL | | **每個狀態欄位有唯一宣告 writer** — 誰擁有哪個欄位的寫入權是靜態可查的 | 任何步驟都能寫任何欄位 → 黑板 → FAIL | | **讀之前保證寫過** — 節點讀的欄位,在**所有**到達它的路徑上都已被寫過 | 某條分支跳過了 writer → 契約有洞 → FAIL |
驗證方式:要求對方**指出宣告在哪**(哪個檔案、哪一行說了 owner 與型別)。 說不出來、只能說「大家都讀那個 dict」→ FAIL。若有靜態檢查器能在不執行的情況下判掉這三項 → PASS 的最強證據。 (`agentic-sop-kit` 的做法:`reads`/`writes`/`schema_ref` 宣告在 flow.json,`lib/graph.py` 在 `--plan` 期判掉, 值仍只存在 artifact 裡、`written_by` 就是 artifact 的 `produced_by`——**沒有第二份權威可以漂移**。)
步驟跑完後,是否有程式碼明確判定「這次是否成功」。這是最常被偷工、卻最該嚴查的一項,因為它是回退自我修復能否運作的前提。
各步驟的作業規範是否各自獨立可見(獨立 prompt 檔 / SKILL.md / 文件)。
「下一步做什麼」由編排層程式決定,還是每輪交給模型自由決定。
把「失敗處理」當成**拓撲問題**來查:圖上有沒有那條往回走的邊,以及那條邊會不會轉不停。
且**進度**由感測器量測(產物內容變沒變),無可驗證進度即早停——不是只靠次數。
或回退時不帶錯誤上下文(會原地打轉);或**退回邊沒有上界**(能無限轉); 或上界只是散文寫在 prompt/README 裡而不是程式強制。
四題有一題答不出來 → FAIL。答「模型會自己判斷什麼時候停」→ FAIL(那是檢查 5 的問題)。
不執行的情況下,能否從編排宣告畫出整張圖,並靜態判掉這些結構錯誤。
**不可達節點**(宣告了卻沒有路徑到得了)、**read-before-write**、**寫入衝突**(一欄位兩 writer)、 **無界環**、**孤邊**(指向不存在的步驟)。最強證據是這些檢查會讓 CI/dry-run 以非零退出碼失敗。
或「圖」是一張手動維護的圖片/Mermaid,**沒有任何測試綁住它與程式一致**(那是一份會說謊的文件)。
1. **單步隔離執行**:能否抽出任一步驟、以固定輸入單獨執行並驗證輸出?不能 → 切分不是真的。 2. **僅憑 log 重建**:只看一次真實執行的 log,能否清楚說出跑了哪幾步、每步輸入輸出、判定成功或失敗、是否觸發回退?不能 → 執行期沒有真正的任務分離,無論程式碼多模組化。 3. **宣告畫圖、對照實走**:只看編排宣告(不執行)畫出拓撲,再拿一次真實執行的紀錄比對—— 實際走過的節點順序(含重訪)是否都在那張圖的邊上?
可觀測性騙不了人,它直接反映底層結構——這三項是最能戳破「看起來模組化、其實攪在一起」的測試。 第 3 項尤其能抓到「文件上是一張漂亮的圖、跑起來是另一回事」。
務必照此結構回報:
## 逐項結果 (檢查 1–7,各列:判定 / 證據[檔案:行號 或 log 摘錄] / 具體缺口 / 修補建議) ## 拓撲 (用宣告畫出來的節點與邊;標出退回邊及其上界、每個狀態欄位的 owner;畫不出來就說明卡在哪) ## 試金石結果 (三項試金石各自的結論與依據) ## 總體判定(三選一) - 真・拆解式 workflow:七項多數 PASS,三項試金石皆通過 - 部分退化:模組化存在但若干關鍵項 FAIL(點名是哪幾項) - mega agent 傾向:控制流落在模型手上、或巨型 prompt 主導、或無法單步隔離、或拓撲只存在於腦中 ## 最高風險項 (最該優先修補的 1–3 點,依嚴重度排序)
同樣不得因為「有環」就直接判 FAIL——先查那條退回邊有沒有程式強制的上界。 **從嚴的方向是要求證據,不是禁止設計。**
Loop Engineering — make an agent's loop produce verifiable progress, stay honest, and stay bounded, by deterministic mechanism rather than vibes.
Use as a terminal node that emits accepted@1 only when an upstream verdict@1 says pass, and fails loudly on a rejected draft…
Use to compute summary statistics (count/sum/mean/min/max) from a readings artifact, preserving the upstream source trace. Single…
Use to extract numeric readings (key: value lines) from a plain-text input into a structured readings artifact with…
Use to render a DRAFT Markdown summary report from a stats artifact, including a source-trace section; output is always a DRAFT…
Use to derive a deterministic reject/pass verdict from a draft@1 artifact's open-defect count, emitting a verdict@1 artifact for…
Use when turning a human SOP or manual process into an agentic workflow, building or adding an agent tool, or starting a new…