c4-component
Helps your agent create C4 component-level documentation. It combines code documentation to describe components, their interfaces, and how they connect.
What it does
This tool helps organize and document the parts (components) of a software system. It defines what each part does, how it communicates with other parts, and what technologies it uses.
When to use it
- ✓When you need to understand or describe the pieces of software.
- ✓When creating a visual map of software part interactions.
- ✓To document the functionalities and connections of a specific component.
Example of what to ask your AI
“Create documentation for the 'Authentication Service' component, including its interfaces and dependencies.”
Want more? Open the sections below.
How to use
The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.
Skill link
Ready-to-paste message
How it works
The tool analyzes code descriptions and organizes them into logical components. It defines boundaries, functions, and how these components connect, generating diagrams and descriptions.
Installation
Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.
In the terminal (Claude Code, Codex, Cursor), in your project folder:
npx skills add sickn33/agentic-awesome-skills --skill c4-componentOr download just the file:
curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/c4-component/SKILL.md -o SKILL.mdTechnical content (original SKILL.md)
Original text by the author, straight from GitHub.
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.
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:
- c4-code-file-1.md - [Description]
- c4-code-file-2.md - [Description]
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
### [Component 2]
- **Name**: [Component name]
- **Description**: [Short description]
- **Documentation**: 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
Limitations
- Use this skill only when the task clearly matches the scope described above.
…
FAQ
What's the difference between this tool and one that documents code?
This tool groups multiple code parts into larger 'components' and documents these components. The other focuses on documenting each individual piece of code.
What is a 'component' in this context?
A component is a logical part of the software that performs a specific function, like a login service, a payment system, etc.
What are the generated diagrams for?
The diagrams visually show how system components fit together and interact within a larger unit (container).
Details
Original description by the author
Expert C4 Component-level documentation specialist. Synthesizes C4 Code-level documentation into Component-level architecture, defining component boundaries, interfaces, and relationships.
Popularity
- GitHub stars
- 48k
- Ranking position
- #2485
- License
- MIT
- Updated
- 10/15/2026
Comments
- …
More skills from this repository
00-andruia-consultant
Helps your agent start or improve AI projects. It analyzes code, suggests tools, and creates action plans in Spanish.
sickn33/agentic-awesome-skills
007
Lets your agent perform security audits and threat modeling. It's useful for protecting projects against attacks and vulnerabilities.
sickn33/agentic-awesome-skills
10-andruia-skill-smith
Helps your agent create or improve AI tools. It defines how tools work, writes documentation, and validates the structure.
sickn33/agentic-awesome-skills
20-andruia-niche-intelligence
Lets your agent create a summary about a specific industry. It's useful for understanding the context, rules, usage patterns, and risks of a project, using reliable sources.
sickn33/agentic-awesome-skills
Similar skills
architecture-decision-records
Has your agent record important project structure decisions. It helps to understand the reasoning behind choices and maintain a clear history of changes.
affaan-m/ECC
code-tour
Lets your agent create step-by-step code walkthroughs with exact file and line anchors. It's useful for project introductions, code explanations, or change reviews. Helps understand how a system works.
affaan-m/ECC
codebase-onboarding
Helps your agent analyze unfamiliar code and create an onboarding guide. It includes an architecture map, entry points, and conventions. Ideal for starting on a new project.
affaan-m/ECC