a11y-check
Accessibility audit, scoped to the surfaces a product actually has. Detects web / rendered_markdown / terminal / native_app / video_audio / document /…
Use to analyze correction trends, surface recurring patterns, and graduate repeat corrections to guardrails or anti-patterns.
$ npx -y skills add haabe/mycelium --skill corrections-audit --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/corrections-auditContext preview
The summary Claude sees to decide when to auto-load this skill.
Use to analyze correction trends, surface recurring patterns, and graduate repeat corrections to guardrails or anti-patterns.
name: corrections-audit description: "Use to analyze correction trends, surface recurring patterns, and graduate repeat corrections to guardrails or anti-patterns." metadata: instruction_budget: "40" framework_dependency: "mycelium" framework_dependency_note: "This skill is designed to run within the Mycelium framework (https://github.com/haabe/mycelium). Standalone use will skip the canvas state, theory gates, and harness behavior the skill assumes. Install: /plugin install mycelium@haabe-mycelium."
Analyze corrections.md for trends, recurring patterns, and actionable insights.
python3 "${CLAUDE_PLUGIN_ROOT}/scripts/check_correction_attribution.py" --root . --snapshot**Added 2026-08-03.** This audit's headline number — *who caught the mistake* — was computed by hand and had been produced exactly twice, six weeks apart, each time because a human remembered to look. It is the only number that answers the question the correction loop exists to answer: **more harness, or more context.**
The script reports the escape rate **and its denominator, every time**. At the time of writing 14 of 72 entries carry a catcher, so the rate covers 19% of the corpus — quoting it without that is a claim about the whole wearing borrowed clothes, which is the failure this repo spent 2026-08-02/03 removing from its own checks. If it prints `NO RATE AVAILABLE`, that is not 0%: it means nothing in the corpus says who caught anything.
`--snapshot` appends the reading to `.claude/evals/metrics/corrections/<date>.json`, the same layout the other metric adapters use. **The level is not the signal.** Trend `caught_by_hook_or_check` rising in absolute terms; the ratio can also be improved by logging fewer user-caught mistakes, which is why this script never gates on it.
**Attribution is a HARD RULE at write time**, not a suggestion — see `engine/agent-operating-contract.md`. It was advisory until 2026-08-03 and 72 of 100 entries carry no catcher as a result. Do not backfill those in bulk: who caught a mistake six weeks ago is not recoverable by inference, and a guessed catcher corrupts the only number this loop produces.
**For entries written before the rule, add one phrase per new entry** — `caught by user`, `caught by hook`, `caught by review`, `self-caught`. The parser reads the prose forms already present rather than requiring a new field, so nothing existing needs rewriting.
1. **Load corrections AND warnings AND clusters**: Read `.claude/memory/corrections.md`, `.claude/memory/warnings-log.md`, AND `.claude/memory/cluster-instances.md` (the cluster log graduated 2026-05-08 — canonical record of recurring-pattern instances and their graduation status; without it, "the cluster has graduated N times" has no auditable backing).
2. **Categorize by frequency**:
3. **Detect recurring patterns**:
4. **Check origin distribution** (APEX alignment):
4b. **Cross-check with detection_origin** (when field is present — see .claude/memory/README.md):
5. **Root-cause recurring corrections** (5 Whys): For each correction that appears 3+ times, apply 5 Whys to find the systemic root:
A harness that asks who this is for before the agent writes code. Built on Claude Code, where the gates are structural. The files and skills port to opencode, Codex and Cursor. Outcome over output. You know how this goes.
Accessibility audit, scoped to the surfaces a product actually has. Detects web / rendered_markdown / terminal / native_app / video_audio / document /…
Bring Mycelium into a project that already has code. Detects that the repo predates the framework, asks before touching anything, then reads the codebase to…
Design the smallest viable test to validate or invalidate a critical assumption. Based on Torres's assumption testing framework, organized by Gilad's AFTER…
Use before any research activity or significant decision. Reviews cognitive biases relevant to the current stage.
Use to evaluate whether current work aligns with Better Value Sooner Safer Happier. Run at diamond completion and periodically.
Lint canvas files for staleness, missing fields, inconsistent evidence types, and orphaned references. Run periodically or before major transitions.