c4-model

Automate C4 architecture model creation and evolution with Structurizr DSL.

Updated Mar 24, 2026
One-click install
npx skills add https://github.com/jrjsmrtn/c4-skills --skill c4-model-jrjsmrtn
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: c4-model
Source: https://github.com/jrjsmrtn/c4-skills/tree/main/skills/c4-model
Command: npx skills add https://github.com/jrjsmrtn/c4-skills --skill c4-model-jrjsmrtn

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill helps in creating and evolving C4 architecture models with precision, ensuring the right abstractions, diagram types, and notation are used.

Core Features & Use Cases

  • Model Creation: Build and update C4 architecture models with clear abstractions.
  • Diagram Types: Select the appropriate diagram type based on audience and purpose.
  • Notation Rules: Follow C4 diagram notation rules for consistency and clarity.
  • Use Case: When you need to add new elements to a C4 model, decide diagram types, or evolve an existing model as the system grows.

Quick Start

To create a new C4 model, start by identifying the abstraction level, define the element, and establish relationships. Then, add the element to relevant views and validate the model with structurizr/structurizr.

Frequently Asked Questions about c4-model

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

FAQPage Schema
How do I create a C4 architecture model using Structurizr DSL?

Select the appropriate C4 diagram type by evaluating your target audience and documentation purpose. This ensures clear abstractions and consistent notation rules for your architecture model.

Can I use C4 model notation for Elixir OTP architecture?

Follow C4 diagram notation rules to maintain consistency and clarity across your architecture models. These rules guide precise abstractions and proper element relationships for software systems documentation.

When do I need different C4 diagram types for software systems documentation?

To evolve an existing C4 model, identify the required abstraction level, define new elements, establish their relationships, add them to relevant views, and validate the updated model with structurizr/structurizr.

What is the best way to evolve an existing C4 model as a system grows?

The best way to evolve a C4 model is to identify the abstraction level, define new elements and relationships, add them to relevant views, and validate the model using structurizr/structurizr.