apw-find-root-cause — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited apw-find-root-cause (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Use this skill when something is observably broken — a defect, a failure, a wrong result — and you need to find and prove its root cause before a fix is attempted. It exists to fight one specific failure: patching the symptom, or committing to the first plausible cause without proving it. Under pressure to resolve the issue, a model latches onto the earliest explanation that fits, then "fixes" one level above the real defect — so the symptom returns, or a workaround hides a problem that was never understood. This skill replaces the first plausible story with a proven causal chain: capture the symptom, reproduce it, hold competing hypotheses, and converge on the cause through an iterative, evidence-driven loop with the user.
This skill is diagnostic-only. It ends at a proven (or best-supported) root cause and explicitly does not design or apply the fix — that is handed off to apw-implement (optionally via apw-plan). It is distinct from apw-research: research is open-ended investigation of an unknown space, while this skill diagnoses a known, observed defect. It sits upstream of the fix — it is how you prove what is wrong before anyone changes code. Follow the steps below strictly and in order.
Before forming any theory, pin down exactly what is broken — and separate the symptom from its cause:
Write this down as the ground truth of the investigation. A cause cannot be proven against a vaguely-stated symptom. Do not theorize about why yet — that is Step 3.
Attempt a reliable reproduction of the failure — the single strongest tool you have, because it both discriminates between hypotheses and lets you later prove the causal link by toggling the cause.
Where a live repro isn't possible, capture the most concrete evidence available (logs, a trace, a memory dump) as the substitute ground truth.
Enumerate multiple plausible causes — never a single track. For each hypothesis, state:
high / medium / low, given what's known so far.Holding competing hypotheses at once is the core discipline that fights anchoring: it stops you from confirming the first story and ignoring the rest. Even when one cause seems obvious, name at least one alternative before moving on.
This is the heart of the skill — a user-in-the-loop cycle, repeated until the cause converges:
Convergence rule: the loop ends when either (a) one hypothesis has a proven causal chain (Step 5) — that is the root cause; or (b) no further evidence is practical, in which case report the best-supported hypothesis with its confidence level and the precise evidence or experiment that would confirm it. Never silently upgrade "likely" to "proven."
Keep the loop proportional: when the cause is already obvious and the evidence is in hand, a single iteration is enough — don't manufacture steps for a trivial bug.
Before declaring a root cause, establish an evidence-backed chain from cause to symptom: cause → intermediate effect → … → observed symptom. Two disciplines:
No fix here — designing and applying the fix is out of scope. Name what the fix must address; do not build it.
If the investigation reveals that you're answering the wrong question, stop and tell the user rather than forcing a conclusion. Raise it when:
Let the user decide how to proceed. A confident answer to the wrong question is the failure this step prevents.
Write the diagnosis to your work item's `root-cause.md` artifact — see apw-work-with-work-item-artifacts for where work-item artifacts live — using .claude/skills/apw-find-root-cause/ROOT_CAUSE_TEMPLATE.md as the structure. The artifact must contain:
This is the structured input apw-implement / apw-plan consumes. Write it even when the cause was obvious.
When done, report in chat — briefly, since the detail is in the artifact:
apw-implement (or apw-plan first if the fix is non-trivial).Be honest. Do not present a proven root cause where the chain is unproven — reporting "this is the strongest hypothesis, here's what would confirm it" is a valid and necessary result. A confident answer to the wrong cause is the exact failure this skill exists to prevent.
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.