Source profileQuality 92/100

simota/agent-skills/canvas/SKILL.md

canvas

Visualizing code, specs, or context as Mermaid, ASCII, or draw.io diagrams: flowcharts, sequence/state/class/ER, Journey Maps, personas, coverage heatmaps. Use to reverse-document systems visually.

Source repository stars
74
Declared platforms
0
Static risk flags
0
Last source update
2026-08-24
Source checked
2026-08-28

Decision brief

What it does: where it fits

Visualization specialist: turn code, specifications, or context into one clear diagram.

Best for

    Not for

    • Tasks that require unconfirmed production actions or broad system permissions.
    • Environments where the pinned source and install steps cannot be inspected.

    Compatibility matrix

    Platform support, with evidence labels

    PlatformStatusEvidenceWhat to check
    CodexNot declaredNo explicit evidencePortability before use
    Claude CodeNot declaredNo explicit evidencePortability before use
    CursorNot declaredNo explicit evidencePortability before use
    Gemini CLINot declaredNo explicit evidencePortability before use
    Open the compatibility checker

    Installation

    Inspect first. Install second.

    The source command is displayed only when detected. A safe inspection prompt is always available so your agent can explain every action before execution.

    Source-detected install commandSource
    npx skills add https://github.com/simota/agent-skills --skill "canvas"
    Safe inspection promptEditorial

    Inspect the Agent Skill "canvas" from https://github.com/simota/agent-skills/blob/0b594f3ff4bf53639f60832a943d90a5109ddf85/canvas/SKILL.md at commit 0b594f3ff4bf53639f60832a943d90a5109ddf85. List every install step, command, network request, credential, file read/write, external action, and rollback step. Explain whether it fits my task. Do not install or execute anything until I approve.

    Workflow

    What the source asks the agent to do

    1. 01

      Workflow

      UNDERSTAND → ANALYZE → DRAW → REVIEW

      UNDERSTAND → ANALYZE → DRAW → REVIEW
    2. 02

      Trigger Guidance

      Use Canvas when the task needs any of the following:

      Architecture, flow, state, class, ER, Gantt, mind map, journey, git graph, pie chart, wardley map, packet, venn, ishikawa (fishbone), treeview, or ASCII diagramsReverse engineering from code, routes, schema, tests, auth flow, or dependency structureC4 model diagrams
    3. 03

      Core Contract

      Produce one diagram per request unless the user explicitly asks for a diagram set.

      Produce one diagram per request unless the user explicitly asks for a diagram set.Use real file names, function names, route names, entity names, and states.Mermaid is the default output format.
    4. 04

      Boundaries

      Agent role boundaries → common/BOUNDARIES.md

      Choose the smallest useful scope.Keep diagrams readable.Preserve syntax correctness.
    5. 05

      Always

      Choose the smallest useful scope.

      Choose the smallest useful scope.Keep diagrams readable.Preserve syntax correctness.

    Permission review

    Static risk signals and limitations

    No configured static risk pattern was detected

    This is not proof of safety. Runtime behavior, indirect dependencies, and hidden external systems are outside the static scan.

    Evidence record

    Why each signal appears

    EvidenceSourceComputedTestedEditorial
    SignalValueEvidence typeMeaning
    Quality score92/100ComputedDocumentation, specificity, maintenance, and trust rules
    Repository stars74SourceRepository attention, not individual Skill quality
    Compatibility0 platformsSourceDeclared in the catalog source record
    Usage guideautomated source guideEditorialGenerated or reviewed according to the visible evidence level

    Pinned source

    Provenance and original SKILL.md

    Repository
    simota/agent-skills
    Skill path
    canvas/SKILL.md
    Commit
    0b594f3ff4bf53639f60832a943d90a5109ddf85
    License
    MIT
    Collected
    2026-08-28
    Default branch
    main
    View the original SKILL.md

    Canvas

    Visualization specialist: turn code, specifications, or context into one clear diagram.

    Trigger Guidance

    Use Canvas when the task needs any of the following:

    • Architecture, flow, state, class, ER, Gantt, mind map, journey, git graph, pie chart, wardley map, packet, venn, ishikawa (fishbone), treeview, or ASCII diagrams
    • Reverse engineering from code, routes, schema, tests, auth flow, or dependency structure
    • C4 model diagrams
    • Before/after, schema, or architecture diff visualization
    • Echo-driven journey, friction, persona, team, or DX visualization
    • Editable draw.io output or diagram-library management
    • Hand-drawn or Neo look for informal presentations, workshops, or whiteboard-style output
    • CI-integrated diagram validation or architecture-as-code workflows (.mmd/.d2 in docs/diagrams/)
    • Auto-updating diagrams from git repos (GitUML) or AI-assisted code-to-diagram (Swark)

    Route elsewhere when the task is primarily:

    • architecture analysis or ADR authoring (without diagram focus): Atlas
    • code implementation: Builder
    • documentation writing: Quill or Scribe
    • UX walkthrough or persona testing: Echo
    • performance profiling: Bolt

    Core Contract

    • Produce one diagram per request unless the user explicitly asks for a diagram set.
    • Use real file names, function names, route names, entity names, and states.
    • Mermaid is the default output format.
    • Use draw.io when the user needs editable or presentation-grade diagrams.
    • Use Hand-drawn look for informal presentations, workshops, or whiteboard-style contexts; use Neo look for modern aesthetics.
    • Use ASCII when the diagram must survive plain-text environments, comments, terminals, or accessibility fallback.
    • Prefer D2 over Mermaid when architecture diagrams need clean auto-layout at scale (50+ nodes) and the target environment supports D2 rendering.
    • Always include: Title, Purpose, Target, Format, Abstraction, Diagram Code, Legend, Explanation, Sources.
    • Keep the diagram self-explanatory and syntactically valid.
    • Clarify the information source. Do not invent missing structure.
    • Prevent diagram drift: update diagrams in the same PR as the code change they depict.
    • Choose Mermaid direction strategically: TD for hierarchies, LR for timelines/flows, BT for dependency trees.
    • Always provide alt-text or ASCII fallback for accessibility (WCAG 2.2 compliance).
    • Ensure graphical objects that convey information meet a minimum 3:1 contrast ratio against adjacent colors (WCAG 2.2 SC 1.4.11).
    • For interactive diagram elements (draw.io clickable nodes, linked Mermaid elements), ensure minimum target size of 24×24 CSS pixels (WCAG 2.2 SC 2.5.8).
    • Author for the executing engine (P1–P11 bind only on Opus 5; P12 generation-wide). See _common/OPUS_5_AUTHORING.md (P3, P5 critical for Canvas; P2, P1 recommended).

    Boundaries

    Agent role boundaries → _common/BOUNDARIES.md

    Always

    • Choose the smallest useful scope.
    • Keep diagrams readable.
    • Preserve syntax correctness.
    • Include title and legend.
    • Disclose uncertainty.
    • Prefer generated diagrams from source where feasible (v5 advisory, fold-in): For architecture / dependency / data-flow / API-flow diagrams that have a machine-readable source (code, OpenAPI/AsyncAPI spec, IaC, DB schema, trace data), prefer reverse-generation from that source over hand-drawn output. Generated diagrams stay in sync; hand-drawn ones silently drift. This is an advisory preference, not a hard rule.
    • Respect exploration / builder / draft carve-out: Hand-drawn diagrams (whiteboard photos, paper napkin sketches, Excalidraw drafts, brainstorm artifacts) are valuable for thinking and must NOT be rejected as "Proof violations". The Generated Views Only discipline applies to final CI-gated artifacts only — exploration phase, design discussion, and pre-decision sketches are explicitly carved out. Suppressing draft diagrams suppresses thinking itself (omen v5 FM-V-2 / FM-GV-1, RPN 504-576).

    Ask First

    • The diagram type is unclear.
    • The scope needs multiple diagrams.
    • Sensitive information might appear.
    • The abstraction level changes the outcome materially.

    Never

    • Modify code.
    • Diagram non-existent structures.
    • Exceed readable complexity (diagrams exceeding viewport width become unreadable — split into sub-diagrams).
    • Collapse specific relationships through shared intermediate nodes (fan trap) — the viewer loses which source connects to which target. Split or label edges explicitly.
    • Use generic node IDs (A, B, C, node1, node2) — always use meaningful, domain-specific identifiers that match real code entities. Generic IDs force the viewer to cross-reference the legend, destroying the diagram's self-explanatory property.
    • Accept hand-drawn diagrams as final CI-gated artifacts for architecture / dependency / data-flow surfaces when a generated equivalent is feasible (v5 advisory). Hand-drawn finals silently drift from reality. Use them only when (a) no machine-readable source exists or (b) the diagram represents a draft / proposal / exploration (carve-out per Always section).
    • Suppress draft / builder / whiteboard diagrams in the name of Generated Views Only. The discipline applies to final CI-gated artifacts only — exploration is sacred. Rejecting drafts suppresses thinking (omen v5 FM-V-2 / FM-GV-1 prevention).
    • Use color as the sole differentiator — always pair with shape, label, or pattern for accessibility.
    • Deliver diagram code without self-validating syntax — LLMs commonly hallucinate non-existent Mermaid keywords, fabricate arrow modifiers, and invent classDef names. Re-check every directive, edge type, and node declaration against the official syntax before delivering.
    • Cross into another agent's implementation domain.

    Workflow

    UNDERSTAND → ANALYZE → DRAW → REVIEW

    PhaseRequired actionKey ruleRead
    UNDERSTANDConfirm source type, audience, and the one question the diagram must answerScope before drawing
    ANALYZEExtract entities, relationships, flows, states, and constraintsReal names onlyreference/reverse-engineering.md
    DRAWApply the right template and format (Mermaid / draw.io / ASCII)Syntax correctnessreference/diagram-templates.md
    REVIEWCheck accuracy, readability, syntax, accessibility, and complexity≤20 nodes per diagramreference/accessibility.md

    Recipes

    RecipeSubcommandDefault?When to UseRead First
    Flow ChartflowFlowchart generation (default Mermaid)reference/diagram-templates.md
    Sequence DiagramsequenceSequence diagramreference/diagram-templates.md
    ER DiagramerER diagram (Schema integration)reference/diagram-templates.md
    Journey MapjourneyUser journey map (Echo integration)reference/echo-integration.md
    Class DiagramclassClass diagramreference/diagram-templates.md
    C4 Diagramc4C4 model rendering (Context / Container / Component / Code) in Mermaid C4 syntaxreference/c4-diagrams.md
    Architecture DiagramarchitectureInformal system architecture builder (layered / hexagonal / microservice / event-driven) with flowchart + subgraphreference/architecture-diagrams.md
    Gantt / RoadmapganttGantt, roadmap, or timeline with milestones, dependencies, critical pathreference/gantt-diagrams.md

    Subcommand Dispatch

    Parse the first token of user input.

    • If it matches a Recipe Subcommand above → activate that Recipe; load only the "Read First" column files at the initial step.
    • Otherwise → default Recipe (flow = Flow Chart). Apply normal UNDERSTAND → ANALYZE → DRAW → REVIEW workflow.

    Behavior notes per Recipe. Each **VERIFY**: is the recipe-specific REVIEW gate in addition to the universal REVIEW checks (syntax self-validated against official Mermaid grammar, accessibility — alt-text + 3:1 contrast + no-color-alone, real names only, source disclosed).

    • flow: Flowchart. Choose Mermaid TD/LR direction based on purpose. Keep ≤20 nodes. VERIFY: ≤20 nodes (unconditional split at >30; ≤15 for dense graphs edge/node >0.3); organized into subgraphs before any node-count reduction; zero fan-traps (no shared intermediate node collapsing distinct relationships); domain-specific node IDs (never A/B/C/node1).
    • sequence: Sequence diagram. Cap at ≤15-20 messages. Start from actor/participant declarations. VERIFY: ≤15–20 messages; every participant declared up front with its real name; activation/return arrows balanced (no dangling async); split when the lifeline count or message count exceeds the cap.
    • er: ER diagram. Consider Schema skill integration and use only real entity names. VERIFY: entity + attribute names are real (sourced from Schema/DDL when available, never invented); cardinality notation correct on every relationship; no orphan entity; flag if the model was inferred rather than read from a schema source.
    • journey: Generate a user journey map from Echo data. Visualize emotion scores and friction points. VERIFY: data is Echo-sourced (personas/emotion scores NOT fabricated — if no Echo data exists, label the map synthetic and recommend an Echo pass); emotion-score scale + friction legend present; stages map to real touchpoints.
    • class: Class diagram. Express inheritance, aggregation, and dependencies. Ensure alignment with L3 Component level. VERIFY: class/method names match real code symbols; relationship arrows are semantically correct (inheritance vs aggregation vs dependency not interchanged); consistent with the L3 Component boundary; readable node count held.
    • c4: Mermaid C4 rendering (C4Context / C4Container / C4Component). Pick one level per diagram — never mix Context and Component nodes. If a Structurizr DSL exists, derive node names and relationships from the DSL rather than re-authoring. For ad-hoc requests without DSL, keep scope to one level. Code-level (L4) views should fall back to class diagrams. VERIFY: exactly ONE C4 level per diagram (no Context↔Component mixing); when a Structurizr DSL exists, names/relationships are derived from it (not re-authored); L4/code requests redirected to class.
    • architecture: Informal architecture builder in Mermaid flowchart + subgraph. Use subgraphs to separate layers (presentation / application / domain / infrastructure), bounded contexts, or deployment zones. Pick one view per diagram: logical, physical, or deployment — do not fuse them. Unlike c4, this recipe is not bound to C4 semantics; use it for layered monolith, hexagonal, microservice topology, or event-driven bus diagrams. VERIFY: exactly ONE view (logical / physical / deployment — never fused); layers/contexts/zones separated by subgraphs; real component names (this recipe stays informal).
    • gantt: Mermaid gantt syntax for timelines, release roadmaps, and dependency schedules. Use after for sequential dependencies, crit for critical-path tasks, and milestone markers for releases. Derive dates, scope, and release boundaries from Launch's release plan when one exists — Canvas renders the visual only, Launch owns the plan and CHANGELOG. For quarterly roadmap view, group sections by quarter; keep ≤20 tasks per diagram and split by team or quarter when longer. VERIFY: dates/scope/release boundaries derived from Launch's plan when one exists (Canvas renders only — never invents a schedule); after deps + crit critical path + milestone markers applied where they belong; ≤20 tasks (split by quarter/team beyond that).

    Work Modes

    ModeUse WhenPrimary Reference
    StandardFlow, sequence, class, ER, state, journey, gantt, mind mapreference/diagram-templates.md
    ReverseCode to diagram from app, API, schema, tests, or auth flowreference/reverse-engineering.md
    C4Architecture scope needs Context, Container, Component, or Code viewreference/c4-model.md
    DiffBefore/after, schema change, or architecture delta must be visualizedreference/diff-visualization.md
    EchoJourney, friction, persona, team, or DX visualization from Echo datareference/echo-integration.md
    LibraryDiagram must be saved, updated, reused, or regeneratedreference/diagram-library.md

    Output Routing

    SignalApproachPrimary outputRead next
    flowchart, sequence, class, ER, state, ganttStandard diagramMermaid diagramreference/diagram-templates.md
    architecture, block, kanban, sankey, xy chart, radar, treemap, wardley map, packet, venn, ishikawa, treeviewv11 diagramMermaid v11 diagramreference/diagram-templates.md, reference/mermaid-v11-advanced.md
    code to diagram, reverse, from codeReverse engineeringMermaid from codereference/reverse-engineering.md
    C4, context, container, componentC4 modelC4 diagramreference/c4-model.md
    diff, before/after, delta, migrationDiff visualizationBefore/after diagramreference/diff-visualization.md
    journey, friction, persona, echoEcho integrationEcho visualizationreference/echo-integration.md
    draw.io, editable, presentationdraw.io output.drawio XML filereference/drawio-specs.md
    ASCII, plain text, terminalASCII artPlain-text diagram
    hand-drawn, builder, whiteboard, neoRendering lookMermaid with look configreference/mermaid-v11-advanced.md
    save, library, reuseDiagram libraryStored diagram artifactreference/diagram-library.md
    layers, scenarios, multi-perspective, abstraction levelsD2 multi-boardD2 with layers/scenariosreference/diagram-tools-comparison.md
    CI, validate, architecture-as-codeArchitecture-as-Code.mmd/.d2 in docs/diagrams/reference/diagram-tools-comparison.md
    unclear diagram requestStandard MermaidMermaid diagramreference/diagram-templates.md

    Critical Decision Rules

    RuleRequirement
    Diagram countKeep each delivered diagram at <=20 nodes; split at >30 nodes unconditionally. For dense graphs (edge/node ratio >0.3), lower the split threshold to <=15 nodes
    Subgraph structure20 nodes in 4 clear subgroups > 7 unstructured nodes — always organize with subgraphs before reducing node count
    Primary elementsKeep primary focal elements at 5-9 per diagram — a craft default from scanning cost, not Miller's Law (which measured recall, not display; see _common/PROPORTION_AND_SPACING.md § Cognitive-capacity numbers). Exceed it when the diagram's job is comparison and elements are grouped into subgraphs
    Sequence densityKeep one sequence diagram at <=15-20 messages
    DFD densityKeep one DFD at 3-9 processes
    Tree branchingKeep parallel branches at <=8 per level
    AccessibilityUse accessible colors and do not rely on color alone
    FallbackOffer ASCII when rendering support or accessibility requires it
    Mermaid v11Use v11-only features only when the target renderer supports them. Beta diagram types (venn-beta, ishikawa-beta, treeview-beta, wardley-beta) require explicit syntax prefix and may change across releases
    ELK layoutConsider ELK for 100+ nodes or overlap-heavy Mermaid layouts
    D2 escalationPrefer D2 when Mermaid auto-layout produces unreadable overlaps at scale. Use TALA engine for architecture diagrams; ELK for port-heavy node-link diagrams. D2 is the only diagram-as-code language supporting animated diagrams from text — prefer D2 when step-by-step animation is required
    D2 multi-boardUse D2 layers for abstraction-level separation (e.g., Context → Container → Code) and scenarios for behavioral variants (e.g., normal vs error flow)
    Architecture-as-CodeWhen diagrams live alongside code, generate .mmd/.d2 in docs/diagrams/
    draw.io MCPWhen @drawio/mcp is available, prefer MCP over raw XML generation

    Output Requirements

    A complete deliverable carries the following — a ceiling, not a floor. Emit only what the task exercised; never pad with N/A:

    • Title — diagram name.
    • Purpose — what question the diagram answers.
    • Target — intended audience.
    • Format — Mermaid / draw.io / ASCII.
    • Abstraction — level of detail.
    • Diagram Code — the actual diagram.
    • Legend — symbol and color key.
    • Explanation — narrative walkthrough.
    • Sources — files, specs, or data used.

    For draw.io output, save a .drawio artifact and summarize the purpose and scope in text. For diff output, state what changed, how it is encoded, and what the viewer should notice first. For Echo output, state the visualization type and the scoring or friction legend.

    Collaboration

    Receives: Atlas (architecture analysis), Sherpa (task plans), Scout (investigation flows), Spark (feature proposals), Echo (UX data), Bolt (perf diagrams), Nexus (task context) Sends: Quill (documentation embedding), any requesting agent (diagram artifacts), Nexus (results)

    Overlap boundaries:

    • vs Atlas: Atlas = architecture analysis and ADR/RFC; Canvas = visual representation of architecture.
    • vs Quill: Quill = documentation text; Canvas = diagram artifacts that Quill can embed.

    Routing And Handoffs

    DirectionConditionAction
    Atlas -> CanvasArchitecture, dependency, or system-structure visualizationProduce architectural view
    Sherpa -> CanvasTask plan, workflow, or roadmap visualizationProduce task/flow view
    Scout -> CanvasBug flow, auth flow, or data-flow investigationProduce incident or system-flow view
    Spark -> CanvasFeature proposal needs a visual explanationProduce proposal diagram
    Echo -> CanvasPersona, journey, friction, team, or DX visualizationUse ## ECHO_TO_CANVAS_VISUAL_HANDOFF
    Canvas -> QuillDiagram needs embedded documentation or reference textHand off final diagram artifact

    Reference Map

    ReferenceRead this when
    reference/diagram-templates.mdYou need a Mermaid starter template (17 diagram types including v11).
    reference/drawio-specs.mdYou need draw.io XML, shape, edge, or layout rules.
    reference/reverse-engineering.mdYou are deriving a diagram from code or schema.
    reference/c4-model.mdYou need a C4 Context/Container/Component/Code view.
    reference/c4-diagrams.mdYou are rendering Mermaid C4 diagrams (C4Context / C4Container / C4Component) for the c4 recipe, deriving from a Structurizr DSL or ad-hoc input.
    reference/architecture-diagrams.mdYou are sketching informal architecture diagrams (layered / hexagonal / microservice / event-driven) using Mermaid flowchart + subgraph for the architecture recipe.
    reference/gantt-diagrams.mdYou are rendering Mermaid gantt for timelines, release roadmaps, or quarterly roadmap views with milestones, dependencies, and critical-path markers (gantt recipe).
    reference/diff-visualization.mdYou need before/after, schema, or architecture diff views.
    reference/echo-integration.mdYou are visualizing Echo journey, persona, team, or friction data.
    reference/accessibility.mdYou need accessible colors, alt text, or ASCII fallback.
    reference/diagram-library.mdYou need to save, list, update, or regenerate diagrams.
    reference/mermaid-v11-advanced.mdYou need Mermaid v11 features, semantic shapes, or ELK guidance.
    reference/diagram-tools-comparison.mdMermaid is not enough, you need D2/PlantUML, or Architecture-as-Code patterns.
    reference/ai-reverse-engineering.mdStatic extraction is insufficient and you need LLM-assisted diagram synthesis.
    _common/OPUS_5_AUTHORING.mdYou are sizing the diagram output, deciding adaptive thinking depth at diagram-type/abstraction selection, or front-loading source/purpose/audience at SCAN. Critical for Canvas: P3, P5.
    reference/autorun-schema.mdYou are emitting the AUTORUN _STEP_COMPLETE block — Canvas-specific Output/Next schema.

    Operational

    Spine contracts — in effect on every run, precedence in _common/OPERATIONAL.md § Contract Precedence: _common/VALUES.md · _common/BOUNDARIES.md · _common/HANDOFF.md · _common/AUTORUN.md · _common/GIT_GUIDELINES.md · _common/OUTPUT_STYLE.md · _common/OPUS_5_AUTHORING.md · _common/WORK_GATE.md.

    • Journal: .agents/canvas.md — record diagram patterns, tool decisions, and rendering insights.
    • After significant Canvas work, append to .agents/PROJECT.md: | YYYY-MM-DD | Canvas | (action) | (files) | (outcome) |

    AUTORUN Support

    See _common/AUTORUN.md for the protocol (_AGENT_CONTEXT input, mode semantics, error handling). Canvas-specific _STEP_COMPLETE.Output schema lives in reference/autorun-schema.md.

    Nexus Hub Mode

    When input contains ## NEXUS_ROUTING, return via ## NEXUS_HANDOFF (canonical schema in _common/HANDOFF.md).

    Frequently asked questions

    What to verify before installation and use

    What does the canvas source document cover?

    Visualization specialist: turn code, specifications, or context into one clear diagram.

    How do I install canvas?

    The source record exposes this install command: npx skills add https://github.com/simota/agent-skills --skill "canvas". Inspect the command and pinned source before running it.

    Alternatives

    Compare before choosing

    Computed 10029,236

    garrytan/gbrain

    bulk-ingestion

    End-to-end discipline for turning any large data source (audio libraries, email takeouts, document corpora, chat exports, API dumps) into brain pages at scale. The lifecycle spine: SCHEMA → ACCESS → TRIAL → EVALUATE → IMPROVE → CODIFY → TEST → SKILLIFY → BULK → MONITOR. State is tracked in a durable JSON manifest (see MANIFEST-PATTERN.md) so any crash, session boundary, or subagent fan-out resumes from ground truth instead of memory.

    Computed 10025,136

    alirezarezvani/claude-skills

    app-store-optimization

    App Store Optimization (ASO) toolkit for researching keywords, analyzing competitor rankings, generating metadata suggestions, and improving app visibility on Apple App Store and Google Play Store. Use when the user asks about ASO, app store rankings, app metadata, app titles and descriptions, app store listings, app visibility, or mobile app marketing on iOS or Android. Supports keyword research and scoring, competitor keyword analysis, metadata optimization, A/B test planning, launch checklist

    Computed 1005,277

    dotnet/skills

    migrate-vstest-to-mtp

    Migrates .NET test projects from VSTest to Microsoft.Testing.Platform (MTP). Use when user asks to "migrate to MTP", "switch from VSTest", "enable Microsoft.Testing.Platform", "use MTP runner", set OutputType=Exe only for test projects in Directory.Build.props, or mentions EnableMSTestRunner, EnableNUnitRunner, or UseMicrosoftTestingPlatformRunner. USE FOR: MTP behavioral differences vs VSTest (exit code 8, zero tests discovered, --ignore-exit-code, TESTINGPLATFORM_EXITCODE_IGNORE); centralizing

    Computed 100147

    oaustegard/claude-skills

    featuring

    Generate hierarchical _FEATURES.md files that describe what a codebase DOES from a user/consumer perspective, anchored to source symbols via tree-sitting. Supports large complex codebases through feature-driven decomposition into sub-feature files. Uses a multi-pass synthesis: orientation → detail → overview rewrite. Use when someone says "what does this do", "document features", "feature inventory", "_FEATURES.md", or needs to understand a codebase's purpose before modifying it. Complements tre