c4-model

Generate canonical-C4 LikeC4 Context and Container diagrams from ADR-confirmed elements.

12|Updated Apr 19, 2026
One-click install
npx skills add https://github.com/janmohammadi/deep-adr --skill c4-model-janmohammadi
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: c4-model
Source: https://github.com/janmohammadi/deep-adr/tree/main/skills/c4-model
Command: npx skills add https://github.com/janmohammadi/deep-adr --skill c4-model-janmohammadi

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Canonical-C4 modeling enforces a canonical LikeC4 diagram style for ADR-driven architectures, preventing drift from the standard and ensuring diagrams stay aligned with the discovery-confirmed elements.

Core Features & Use Cases

  • Produce Context and Container views, with optional Deployment views.
  • Refuse Component views; if asked, redirect to LikeC4 with an explanation.
  • Ensure every relationship has a one-line description; require descriptions before generating diagrams.
  • Enforce element names to match discovery-confirmed names; no renaming.
  • Avoid styling, themes, or layout hints unless explicitly requested.

Quick Start

Generate a canonical-C4 LikeC4 model for your system-in-focus and review the Context and Container views.

Frequently Asked Questions about c4-model

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I generate canonical C4 architecture diagrams from ADR-confirmed elements?

Canonical C4 diagrams from ADR-confirmed elements are generated by mapping a single system-in-focus to Context and Container views, validating element naming against discovery to produce a standards-compliant LikeC4 model.

Does canonical C4 modeling support Component views?

Canonical C4 modeling explicitly refuses Component views. If requested, it redirects to LikeC4 with an explanation, focusing strictly on Context, Container, and optional Deployment views.

Why does my C4 architecture model fail validation without relationship descriptions?

C4 architecture model validation fails without relationship descriptions because the specification requires a one-line description for every relationship, demanding these descriptions before generating any diagrams.

Can I rename elements when generating a LikeC4 architecture model?

You cannot rename elements when generating a LikeC4 architecture model. The specification enforces element names to match discovery-confirmed names exactly, preventing any renaming to avoid architectural drift.

When do I need canonical C4 modeling for my software architecture?

You need canonical C4 modeling when preventing drift from the standard for ADR-driven architectures, ensuring diagrams stay aligned with discovery-confirmed elements through a locked specification and lint results.

What is the best way to enforce a locked C4 specification for architecture diagrams?

The best way to enforce a locked C4 specification for architecture diagrams is to use canonical C4 modeling, which validates element naming and requires one-line relationship descriptions to ensure standards compliance.