Releases: cheriftj/c4-model-skill
Releases · cheriftj/c4-model-skill
Release list
v2.0.0
BREAKING
- Plugin renamed from
c4-modeltoc4m. The install command is now/plugin install c4m@c4-model-skill. Existing installations must uninstallc4-model@c4-model-skilland reinstall asc4m. - Slash commands renamed to use the shorter
/c4m:namespace and shorter mode names. Full mapping:/c4-model→/c4m:auto/c4-design→/c4m:design/c4-document-code→/c4m:code/c4-document-prose→/c4m:prose/c4-review→/c4m:review/c4-update→/c4m:update
- Command file names inside
commands/shortened accordingly (c4-model.md→auto.md,c4-design.md→design.md,c4-document-code.md→code.md,c4-document-prose.md→prose.md,c4-review.md→review.md,c4-update.md→update.md).
Changed
- README example conversations updated to show the
/c4m:*slash commands as the trigger, and a second example added for/c4m:reviewdemonstrating the critique output format.
Notes
The repository name (c4-model-skill), the marketplace name (c4-model-skill), and the skill folder (skills/c4-model/) remain unchanged. Only the plugin identifier inside marketplace.json changed, which is what drives the slash-command namespace.
v1.0.3
Added
- Mode-specific slash commands:
/c4-design,/c4-document-code,/c4-document-prose,/c4-review,/c4-update. Each skips the router inSKILL.mdand goes straight to its mode's workflow (skills/c4-model/mode-<name>.md). The catch-all/c4-modelfrom v1.0.2 is still available for users who want auto-detection. All six commands live undercommands/and are registered via thecommands: ["./commands"]entry inmarketplace.json. - README: The 5 modes table now includes a Slash command column; the How it works section points at the mode commands for users who already know the mode.
v1.0.2
Added
- Slash command
/c4-modelviacommands/c4-model.md. Lets users invoke the skill explicitly instead of relying only on description-triggered activation. The command routes to the right mode based on what follows the invocation (idea, repo path, pasted diagram, prose document), or asks the user to pick if nothing follows. Registered inmarketplace.jsonvia a newcommands: ["./commands"]entry.
v1.0.1
Fixed
- Removed
.claude-plugin/plugin.jsonto resolve a conflict detected by/doctor: bothplugin.jsonandmarketplace.jsonwere specifying plugin components, which Claude Code refuses to merge. Following the pattern used byanthropics/skills,marketplace.jsonis now the single source of truth for plugin metadata and skill paths. CI's manifest validation job updated accordingly.
v1.0.0
First public release.
Added
- Mode router in
SKILL.mdthat detects the usage mode from signals in the user's message and routes to one of five workflows: design (greenfield), document-code (retro-doc from a codebase, delegates to an Explore sub-agent on large repos), document-prose (README / ADR / spec), review (critique or explanation), and update (evolve an existing C4). - Supporting diagrams reference (
supporting-diagrams.md) for System Landscape, C4Deployment, and C4Dynamic. - Common contract applied to every mode: format negotiation (Mermaid C4 + Markdown by default; Structurizr DSL, PlantUML, and images as alternatives), destination negotiation (local filesystem or connected MCP: Notion, Linear, Google Drive), notation rules, deliverable structure, and dialogue rules.
- Sourced references grounded in external authority:
mermaid-c4-syntax.mdrebuilt frommermaid.js.org/syntax/c4.html;review-checklist.mdsourced fromc4model.com/diagrams/checklist. Editorial additions are clearly separated from sourced content. - Level template (
level-template.md) and example deliverables (examples/) filled out for Simon Brown's Internet Banking System. - Bilingual discoverability: English-authored body with French trigger phrases ("modèle C4", "diagramme d'architecture") preserved in the frontmatter.
- Plugin marketplace config (
.claude-plugin/marketplace.json,.claude-plugin/plugin.json) and release automation (.github/workflows/release.yml): av*tag push triggers extraction of the matching CHANGELOG section and publishes a GitHub Release. - Test suite: an automated bash suite (
tests/claude-code/) that invokesclaude -pwith assertion helpers (assert_contains,assert_order,assert_file_exists) and a manual test matrix (tests/test-prompts.md) with expected routing, flows, and red flags per mode. - Governance:
README.md,LICENSE(MIT),CLAUDE.md,CONTRIBUTING.md,CODE_OF_CONDUCT.md,.github/PULL_REQUEST_TEMPLATE.md.
Editorial invariants
Load-bearing rules encoded in SKILL.md and mirrored in review-checklist.md:
- Simon Brown's golden rule: Context + Container are the default; Component and Code only on explicit request.
- One Markdown document per level, never a bare diagram.
- Relation labels must state intent. Bare "Uses", "Calls", and "Reads" are banned.
- Inter-container relationships must state the protocol.
- Technology is mandatory on every Container and Component.
- Assumptions stay explicit. Inferences never slip silently into the diagram.
- Interactive by default. No finalized delivery without explicit user validation.