Agent skill

c4-component

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.

Stars 232
Forks 15

Install this agent skill to your Project

npx add-skill https://github.com/aiskillstore/marketplace/tree/main/skills/sickn33/c4-component

Metadata

Additional technical details for this skill

model
sonnet

SKILL.md

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:

  • 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:

mermaid
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

markdown
# 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

Expand your agent's capabilities with these related and highly-rated skills.

aiskillstore/marketplace

perigon-backend

Perigon ASP.NET Core + EF Core + Aspire conventions

232 15
Explore
aiskillstore/marketplace

perigon-agent

Pointers for Copilot/agents to apply Perigon conventions

232 15
Explore
aiskillstore/marketplace

perigon-angular

Angular 21+ standalone/Material/signal conventions for Perigon WebApp

232 15
Explore
aiskillstore/marketplace

fastapi-mastery

Comprehensive FastAPI development skill covering REST API creation, routing, request/response handling, validation, authentication, database integration, middleware, and deployment. Use when working with FastAPI projects, building APIs, implementing CRUD operations, setting up authentication/authorization, integrating databases (SQL/NoSQL), adding middleware, handling WebSockets, or deploying FastAPI applications. Triggered by requests involving .py files with FastAPI code, API endpoint creation, Pydantic models, or FastAPI-specific features.

232 15
Explore
aiskillstore/marketplace

context7-efficient

Token-efficient library documentation fetcher using Context7 MCP with 86.8% token savings through intelligent shell pipeline filtering. Fetches code examples, API references, and best practices for JavaScript, Python, Go, Rust, and other libraries. Use when users ask about library documentation, need code examples, want API usage patterns, are learning a new framework, need syntax reference, or troubleshooting with library-specific information. Triggers include questions like "Show me React hooks", "How do I use Prisma", "What's the Next.js routing syntax", or any request for library/framework documentation.

232 15
Explore
aiskillstore/marketplace

browser-use

Browser automation using Playwright MCP. Navigate websites, fill forms, click elements, take screenshots, and extract data. Use when tasks require web browsing, form submission, web scraping, UI testing, or any browser interaction.

232 15
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results