c4-architecture

Model multi-system architectures as Structurizr DSL and PlantUML C4 diagrams.

1|Updated Dec 17, 2025
One-click install
npx skills add https://github.com/JonnyCBB/claude-code-config --skill c4-architecture-jonnycbb
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: c4-architecture
Source: https://github.com/JonnyCBB/claude-code-config/tree/main/plugins/eng-utils/skills/c4-architecture
Command: npx skills add https://github.com/JonnyCBB/claude-code-config --skill c4-architecture-jonnycbb

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

C4-based modeling provides a consistent, human- and agent-readable way to document system architecture and reasoning about changes across services.

Core Features & Use Cases

  • Generate a primary Structurizr DSL workspace.dsl that captures the full system model and relationships.
  • Produce PlantUML C4 diagrams (Context, Container, Component) to accompany architectural documentation.
  • Offer guidance for cross-system analysis, refactoring planning, and architecture discovery from code/config.

Quick Start

Specify the system context and desired outputs to generate Structurizr DSL workspace.dsl and PlantUML C4 diagrams.

Frequently Asked Questions about c4-architecture

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

FAQPage Schema
How do I document multi-system architecture boundaries using C4 diagrams?

To document multi-system architecture boundaries using C4 diagrams, model cross-service context and deployment relationships by generating a Structurizr DSL workspace.dsl and optional PlantUML C4 diagrams. This provides consistent, human-readable architectural documentation and reasoning across services.

What is the best way to generate Structurizr DSL for cross-service system design?

Generating Structurizr DSL for cross-service system design involves modeling system boundaries and deployment relationships to produce a primary workspace.dsl file. This approach captures the full system model and relationships, offering guidance for cross-system analysis and refactoring planning.

Can I use PlantUML to create C4 container and component diagrams for architecture documentation?

Yes, you can use PlantUML to create C4 container and component diagrams for architecture documentation. The process generates optional PlantUML C4 diagrams, including Context, Container, and Component views, to accompany the primary Structurizr DSL system model.

Does C4 architecture modeling work for planning refactoring across multiple services?

C4 architecture modeling works for planning refactoring across multiple services by providing a consistent, agent-readable way to reason about changes. It offers guidance for cross-system analysis and architecture discovery from code and configuration to map system boundaries.

When do I need Structurizr DSL versus PlantUML for system design diagrams?

You need Structurizr DSL to capture the full primary system model and relationships, whereas PlantUML is used to generate optional Context, Container, and Component diagrams. Both formats work together to provide comprehensive C4 architecture documentation and rendering guidance.