Skip to content
Development
Skill

/render

Central dispatcher for the canvas/state render fleet. Routes intent to a specialist (`/mycelium:diamond-render`, `/mycelium:ost-render`, `/mycelium:cycle-render`) OR lists what's renderable. Cross-cutting views spanning multiple canvases (opp→sol→cycle traceability,

From plugin
mycelium
4662 skills
Install
$ npx -y skills add haabe/mycelium --skill render --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/render

Context preview

The summary Claude sees to decide when to auto-load this skill.

Central dispatcher for the canvas/state render fleet. Routes intent to a specialist (`/mycelium:diamond-render`, `/mycelium:ost-render`, `/mycelium:cycle-render`) OR lists what's renderable. Cross-cutting views spanning multiple canvases (opp→sol→cycle traceability,

SKILL.md

render.SKILL.md
name: render
description: Central dispatcher for the canvas/state render fleet. Routes intent to a specialist (`/mycelium:diamond-render`, `/mycelium:ost-render`, `/mycelium:cycle-render`) OR lists what's renderable. Cross-cutting views spanning multiple canvases (opp→sol→cycle traceability, confidence-over-time, cluster-graduation-flow) are research-gated and NOT emitted by default. See `${CLAUDE_PLUGIN_ROOT}/engine/render-conventions.md` for shared conventions.
metadata:
  instruction_budget: "60"
  framework_dependency: "mycelium"
  framework_dependency_note: "Routes to specialist render skills. Consults the attribution registry only if a cross-cutting view activates a YES-exposure canvas."
  identifier_exposure: "MIXED"

Render Dispatcher

Central entry point + menu for the canvas/state render fleet. Routes intent to specialists or surfaces what's available. Cross-cutting views are research-gated and NOT emitted by default. Completes the v0.40.0-announced render fleet foundation.

When to use

  • "Show me the OST" / "render the diamond state" / "visualize the cycles" → dispatcher recommends + routes to the specialist (recommend, do NOT auto-invoke).
  • "Visualize how opportunity X became cycle Y" → cross-cutting traceability intent. Dispatcher surfaces that the view is research-gated; does not emit a default rendering.
  • Discovery: "what renderable views does Mycelium have?" → dispatcher lists specialists + their states.

When NOT to use

  • If the user names a specialist directly (`/mycelium:diamond-render`, `/mycelium:ost-render`, `/mycelium:cycle-render`), the specialist is the one-hop path. Do NOT re-route through the dispatcher.
  • For cross-cutting views that already have dedicated skills (e.g., `/mycelium:framework-health` is its own audit; not a render specialist).

Identifier exposure

**Declared**: MIXED

Scope (per-canvas table — REQUIRED for MIXED)

| Canvas | Exposure | Identifier-bearing fields | Activated when | |---|---|---|---| | `.claude/canvas/opportunities.yml` | YES | `evidence_sources`, `notes` | `--view traceability` (deferred), `--view ost-summary` | | `.claude/canvas/cycle-history.yml` | YES | `learnings.process` prose, `related_corrections` | `--view traceability` (deferred), `--view cycle-summary` | | `.claude/canvas/archived-solutions.yml` | YES | `discard_notes` prose | `--view traceability` (deferred), `--view discards` | | `.claude/canvas/landscape.yml` | YES (low) | `notes`, `evidence_sources` | `--view competitive-landscape` (deferred) | | `.claude/diamonds/active.yml` | NONE | none | any view including the diamond |

Rationale

Dispatcher behavior depends on which cross-cutting view is invoked. MIXED with per-canvas scoping is the only honest declaration: YES would force registry consultation on diamond-only views (unnecessary cost); NONE would silently leak identifiers on traceability views (incident). Each cross-cutting view's implementation MUST consult the registry per `engine/render-conventions.md#hard-rule-consent--privacy-gate` for the YES-exposure canvases it activates and skip the consultation only for NONE-exposure canvases.

For v0.40.3 ship: the dispatcher ships WITHOUT cross-cutting views. All MIXED-relevant identifier surfaces are inactive. The MIXED declaration is forward-looking — it names the canvases that WILL activate when cross-cutting views land in subsequent patches per the research-first methodology.

Anon-label convention

Per `engine/render-conventions.md#anon-label-convention`. Numbering shared across a single dispatcher invocation regardless of canvas count (`cohort-tester-2` in cycle-003 IS `cohort-tester-2` in opp-004 evidence).

Consent value semantics

Per `engine/render-conventions.md#consent-value-semantics`.

Worked examples (forward-looking)

**`--view traceability` (deferred)**: activates opportunities.yml + cycle-history.yml + archived-solutions.yml. Registry consultation runs. Multi-canvas anon-label numbering shared.

**`--view diamond-only` (always available — alias for routing to diamond-render)**: touches only active.yml. Registry consultation SKIPPED per the per-canvas exposure table. No anon labels emitted.

Fixture pointer

  • `tests/bash/fixtures/render/dispatcher-recommend-not-invoke.yml` (routes to specialist)
  • `tests/bash/fixtures/render/dispatcher-list-options.yml` (discovery mode)
  • `tests/bash/fixtures/render/dispatcher-view-traceability-mixed-consent.yml` (deferred — fires once traceability view ships)
  • `tests/bash/fixtures/render/dispatcher-view-diamond-only-no-redaction.yml` (alias-to-specialist behavior)
  • `tests/bash/fixtures/render/dispatcher-view-traceability-no-registry-entry.yml` (deferred — fail-loud on missing identifier)

Arguments

| Arg | Default | Values | Effect | |---|---|---|---| | `--list` | `false` | bool | Print the dispatch table + deferred cross-cutting views, do not route | | `--view` | `null` | `traceability` \| `confidence-trajectory` \| `cluster-graduation-flow` \| `canvas-dependency-graph` | Cross-cutting view selector (all currently deferred per research-first methodology) | | `--format` | `mermaid` | `mermaid` \| `ascii` \| `json` | Format hint for routed specialists (overridable per specialist) | | `--theme` | `base` | `base` \| `dark` | Theme hint for routed specialists (`dark` opt-in for WCAG-by-construction per `engine/render-conventions.md#wcag-aa-theme-convention`) |

Workflow

Step 1: Parse intent

Identify whether the request maps to:

  • A single canvas → route to specialist (Step 2)
  • A cross-cutting view → surface the deferral (Step 3)
  • Discovery / `--list` → enumerate options (Step 4)

Step 2: Route to specialist

Map canvas to specialist. **Recommend, do NOT auto-invoke** (architecture decision Q1):

| Canvas / intent | Specialist | Beta risk | |---|---|---| | opportunities.yml | `/mycelium:ost-render` | none | | diamonds/active.yml | `/mycelium:diamond-render` | none | | cycle-history.yml | `/mycelium:cy

Read more
Ships withmycelium

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.

Get the whole plugin
Stats
46
Stars
3
Forks
Active
Maintenance
Python
Language
MIT
License
3d ago
Last commit
5mo ago
Created

Repo: haabe/mycelium

Other skills on mycelium.

adopt
Skill

adopt

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…

@haabe@haabeView Skill