← ClaudeAtlas

debug-my-harnesslisted

Diagnose why an agent harness misbehaved by reading the local flight-recorder ledger (.vigiles/runs.jsonl) — which skills fired or got hijacked, which hooks blocked or wrongly allowed, which subagent tool-contract violations happened, and how a skill's trigger rate moved. Use when asked why a skill stopped firing, why a hook didn't block, why the wrong skill ran, or to debug/investigate what the harness actually did. NOT for writing new rules (use strengthen) or editing the spec (use edit-spec).
zernie/vigiles · ★ 15 · Code & Development · score 76
Install: claude install-skill zernie/vigiles
Diagnose harness misbehavior from the **flight recorder** — the local, append-only ledger at `.vigiles/runs.jsonl` that vigiles writes as your harness runs. It records what actually happened, so you debug from evidence instead of guessing. ## What's in the ledger One JSON record per line, each with a `kind`: - `hook` — a compiled-hook gate decision: `{event, decision: allow|deny|ask, mode: enforce|observe, rule, cmd, reason}`. - `agent` — a subagent tool-contract decision: `{name, tool, allowed, reason}` (a `false` = the agent went outside its lane). - `skill` — a skill activation: `{name, fired}`. - `eval` — a measured metric: `{name, metric, value}` (e.g. trigger-rate recall/precision). - `capability-diff` — a blast-radius change: `{pr, added, removed, widened}`. ## Instructions ### Step 1: Read the ledger Read `.vigiles/runs.jsonl` (JSONL — one record per line; tolerate a torn last line). If it's absent or empty, say so — there's nothing recorded yet; suggest running the harness (or `vigiles audit`) first. Do NOT fabricate records. ### Step 2: Answer the specific question, evidence-first Match the user's question to the ledger: - **"Why did skill X stop firing / why does the wrong one run?"** — count `skill` fires by name over time. If X's fire-rate dropped, look for a sibling that fired on the same kinds of prompts (a **selection collision**) and check their descriptions for overlap. Recommend differentiating or merging the descriptions. - **"Why didn't my