C4 Component Diagram Specialist

VerifiedSafe

Expert C4 component-level documentation specialist. Synthesizes code-level documentation into component architecture, defining boundaries, interfaces, and relationships.

Sby Skills Guide Bot
DocumentationIntermediate
7/28/2026
Claude CodeCursorCodex
#c4-model#architecture-docs#component-diagrams#mermaid#software-architecture

Recommended for

Automated summary

Synthesizes C4 code-level documentation into component-level architecture documentation, defining component boundaries, interfaces, dependencies and Mermaid C4Component diagrams.

Strengths

  • Enforces a consistent template (overview, purpose, features, interfaces, dependencies) for each component
  • Produces Mermaid C4Component diagrams scoped to a single container, aligned with the C4 model
  • Maintains traceability by linking each component back to the c4-code-*.md files it groups
  • Ships a master component index template for systems with multiple components

Limitations

  • Does not read source code: it requires existing c4-code-*.md files as input
  • Templates are bracketed placeholders whose quality depends on how the agent fills them in
  • No validation of Mermaid rendering or of naming consistency across components
When to use it

Use it when code-level documentation already exists and needs to be grouped into logical components within a single container.

When not to use it

Avoid it when you need context- or container-level diagrams, or when there is no code-level documentation to synthesize.

Security analysis

Safe
Quality score78/100

This skill is purely a documentation template and methodology for C4 Component-level architecture. It declares no tools, contains no executable commands, and does not instruct destructive, exfiltrating, or obfuscated actions. The only external reference is a documentation link.

No concerns found

How this analysis is made

Examples

Synthesize code docs into components
Synthesize all c4-code-*.md files in docs/architecture into logical components, write one c4-component-<name>.md per component, and generate a master component index with a Mermaid diagram of their relationships.
Define authentication component boundaries
Define the component boundaries for the authentication and authorization code and produce a Mermaid C4Component diagram showing each component's interfaces and dependencies.
Document the API layer
Create component-level documentation for the API layer of our order service, listing each component's interfaces, operations and external dependencies.

name: c4-component description: Expert C4 Component-level documentation specialist. Synthesizes C4 Code-level documentation into Component-level architecture, defining component boundaries, interfaces, and relationships. Creates component diagrams and documentation. Use when synthesizing code-level documentation into logical components. metadata: model: sonnet

C4 Component Level: [Component Name]

Use this skill when

  • Working on c4 component level: [component name] tasks or workflows
  • Needing guidance, best practices, or checklists for c4 component level: [component name]

Do not use this skill when

  • The task is unrelated to c4 component level: [component name]
  • You need a different domain or tool outside this scope

Instructions

  • Clarify goals, constraints, and required inputs.
  • Apply relevant best practices and validate outcomes.
  • Provide actionable steps and verification.
  • If detailed examples are required, open resources/implementation-playbook.md.

Overview

  • Name: [Component name]
  • Description: [Short description of component purpose]
  • Type: [Component type: Application, Service, Library, etc.]
  • Technology: [Primary technologies used]

Purpose

[Detailed description of what this component does and what problems it solves]

Software Features

Code Elements

This component contains the following code-level elements:

Interfaces

[Interface Name]

  • Protocol: [REST/GraphQL/gRPC/Events/etc.]
  • Description: [What this interface provides]
  • Operations:
    • operationName(params): ReturnType - [Description]

Dependencies

Components Used

  • [Component Name]: [How it's used]

External Systems

  • [External System]: [How it's used]

Component Diagram

Use proper Mermaid C4Component syntax. Component diagrams show components within a single container:

C4Component
    title Component Diagram for [Container Name]

    Container_Boundary(container, "Container Name") {
        Component(component1, "Component 1", "Type", "Description")
        Component(component2, "Component 2", "Type", "Description")
        ComponentDb(component3, "Component 3", "Database", "Description")
    }
    Container_Ext(externalContainer, "External Container", "Description")
    System_Ext(externalSystem, "External System", "Description")

    Rel(component1, component2, "Uses")
    Rel(component2, component3, "Reads from and writes to")
    Rel(component1, externalContainer, "Uses", "API")
    Rel(component2, externalSystem, "Uses", "API")

**Key Principles** (from [c4model.com](https://c4model.com/diagrams/component)):

- Show components **within a single container** (zoom into one container)
- Focus on **logical components** and their responsibilities
- Show **component interfaces** (what they expose)
- Show how components **interact** with each other
- Include **external dependencies** (other containers, external systems)

Master Component Index Template

# C4 Component Level: System Overview

## System Components

### [Component 1]
- **Name**: [Component name]
- **Description**: [Short description]
- **Documentation**: [c4-component-name-1.md](./c4-component-name-1.md)

### [Component 2]
- **Name**: [Component name]
- **Description**: [Short description]
- **Documentation**: [c4-component-name-2.md](./c4-component-name-2.md)

## Component Relationships
[Mermaid diagram showing all components and their relationships]

Example Interactions

  • "Synthesize all c4-code-*.md files into logical components"
  • "Define component boundaries for the authentication and authorization code"
  • "Create component-level documentation for the API layer"
  • "Identify component interfaces and create component diagrams"
  • "Group database access code into components and document their relationships"

Key Distinctions

  • vs C4-Code agent: Synthesizes multiple code files into components; Code agent documents individual code elements
  • vs C4-Container agent: Focuses on logical grouping; Container agent maps components to deployment units
  • vs C4-Context agent: Provides component-level detail; Context agent creates high-level system diagrams

Output Examples

When synthesizing components, provide:

  • Clear component boundaries with rationale
  • Descriptive component names and purposes
  • Comprehensive feature lists for each component
  • Complete interface documentation with protocols and operations
  • Links to all contained c4-code-*.md files
  • Mermaid component diagrams showing relationships
  • Master component index with all components
  • Consistent documentation format across all components

From the file to a first result

The download contains exactly the content displayed on this page. This copy may differ from the latest version in the source repository.

View the source and supporting files

This download contains SKILL.md only. Any scripts, references, templates and dependencies are not included. Get the required files from the source, preserving their directory structure, before continuing.

1. Download the file

Download SKILL.md

From the root of a test project, save the file as .skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md, or use the command below. This folder is for inspecting the skill before installation.

Command for macOS/Linux or WSL: requires a POSIX shell and curl. On Windows without WSL, use the download button and create the folder manually.

mkdir -p '.skill-downloads/c4-component-diagram-specialist-ms47vpt8' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/c4-component-diagram-specialist-ms47vpt8/download' --output '.skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md.part' && mv '.skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md.part' '.skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md'

2. Check prerequisites

Read SKILL.md before using it. If it references scripts or external services, inspect them and prepare the required access in your test environment.

Original excerpt: Dependencies

Components Used

  • [Component Name]: [How it's used]

External Systems

  • [External System]: [How it's used]

The platforms on this page are catalog indications. The paths below follow tool documentation; they do not prove this skill has been run in those tools. No minimum tool version is confirmed for this listing.

3. Load the skill

After inspection, copy the complete folder into your project using one of the commands below, then open a new tool session. The command stops if a folder with the same name already exists: compare the files before replacing it.

Claude Code
test -f '.skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md' && test -s '.skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/c4-component' && cp -R '.skill-downloads/c4-component-diagram-specialist-ms47vpt8' '.claude/skills/c4-component'

Cursor
test -f '.skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md' && test -s '.skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md' && mkdir -p '.cursor/skills' && test ! -e '.cursor/skills/c4-component' && cp -R '.skill-downloads/c4-component-diagram-specialist-ms47vpt8' '.cursor/skills/c4-component'

Codex
test -f '.skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md' && test -s '.skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md' && mkdir -p '.agents/skills' && test ! -e '.agents/skills/c4-component' && cp -R '.skill-downloads/c4-component-diagram-specialist-ms47vpt8' '.agents/skills/c4-component'

OpenSkills

OpenSkills must already be installed. The local install/read procedure is checked with OpenSkills 1.5.0, which requires Node.js ≥ 20.6.0. Catalog slugs are not resolved automatically.

Official OpenSkills installation
openskills install './.skill-downloads/c4-component-diagram-specialist-ms47vpt8'

openskills read 'c4-component-diagram-specialist-ms47vpt8'

Reading should display the installed file content and its base directory. It does not run the skill or install its dependencies.

For an agent that reads AGENTS.md, then sync the index. This command changes AGENTS.md: review the diff before using it.

openskills sync

Manual method or another tool: attach SKILL.md to a conversation, or open it in an agent that can read files. Include any required supporting resources. No universal folder is recognized by every tool.

4. Try a first task

Use a short, synthetic input: an API endpoint, a small document or an interface brief. In a new conversation, attach the file or give the agent its path, then adapt this request:

Read .skill-downloads/c4-component-diagram-specialist-ms47vpt8/SKILL.md and apply its instructions to this example: [describe a test input]. Identify any missing files, dependencies or access. Produce the result requested by the skill without inventing data or running unreviewed scripts.

Expected result: output matching the skill instructions, or a precise list of missing prerequisites. A read confirmation alone does not validate a first use. If an external resource is unavailable, that path remains untested.

Related skills