a11y-check
Accessibility audit, scoped to the surfaces a product actually has. Detects web / rendered_markdown / terminal / native_app / video_audio / document /…
Evaluate Mycelium's own process effectiveness. Measures cycle velocity, discard trends, confidence calibration, gate effectiveness, regression rate. Run quarterly or every 20 cycles.
$ npx -y skills add haabe/mycelium --skill framework-health --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/framework-healthContext preview
The summary Claude sees to decide when to auto-load this skill.
Evaluate Mycelium's own process effectiveness. Measures cycle velocity, discard trends, confidence calibration, gate effectiveness, regression rate. Run quarterly or every 20 cycles.
name: framework-health description: "Evaluate Mycelium's own process effectiveness. Measures cycle velocity, discard trends, confidence calibration, gate effectiveness, regression rate. Run quarterly or every 20 cycles." metadata: instruction_budget: "50" 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."
Mycelium evaluates its own process. This is triple-loop learning — the framework assessing whether it is getting better at producing good outcomes.
Read `.claude/canvas/cycle-history.yml`.
**Framework-self-host detection** (per `engine/cycle-learning.md#framework-on-framework-exemption`): if the project root contains `plugins/mycelium/plugin.json` AND `CLAUDE.md` begins with `# Mycelium:`, this is the framework dogfooding itself. Skip the cycle-count gate and route to a corrections-graduation summary:
Otherwise (product project, not framework-self-host): if fewer than 5 cycles recorded, report: "Insufficient cycle data for framework health assessment. [N] cycles recorded; minimum 5 needed. Continue recording outcomes."
For each dimension, compute the metric and compare against trend (if prior assessments exist):
**Cycle Velocity**:
**Discard Rate**:
**Confidence Calibration**:
**Gate Effectiveness**:
this dimension previously said "count the gates" without saying from what — and the field that `engine/cycle-learning.md` added expressly to close it (*"was unInstrumented in cycle records"*) was read by nothing. Producer specced, consumer unwired, dimension computed from air.
*"no-data: 0 of N closed cycles carry gates_fired"* — and say the next `/mycelium:retrospective` populates it. **Do NOT reconstruct gate outcomes from memory, the transcript, or a read of the guards.** A dimension filled by hand at assessment time reports on the assessor, not on the cycles, and it is indistinguishable in the dashboard from one backed by records. The validator already emits this absence as a WARN; the dashboard must not paper over what the validator flags.
**Demand Mix** (Seddon: value demand vs failure demand):
A Claude Code harness that asks who this is for before the agent writes code. Outcome over output. You know how this goes. The idea turns up on a Thursday and it is a good one.
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.