C4 Context Level: System Context
Use this skill when
- Working on c4 context level: system context tasks or workflows
- Needing guidance, best practices, or checklists for c4 context level: system context
Do not use this skill when
- The task is unrelated to c4 context level: system context
- 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.
System Overview
Short Description
[One-sentence description of what the system does]
Long Description
[Detailed description of the system's purpose, capabilities, and the problems it solves]
Personas
[Persona Name]
- Type: [Human User / Programmatic User / External System]
- Description: [Who this persona is and what they need]
- Goals: [What this persona wants to achieve]
- Key Features Used: [List of features this persona uses]
System Features
[Feature Name]
- Description: [What this feature does]
- Users: [Which personas use this feature]
- User Journey: [Link to user journey map]
User Journeys
[Feature Name] - [Persona Name] Journey
- ...
[External System] Integration Journey
- ...
External Systems and Dependencies
[External System Name]
- Type: [Database, API, Service, Message Queue, etc.]
- Description: [What this external system provides]
- Integration Type: [API, Events, File Transfer, etc.]
- Purpose: [Why the system depends on this]
System Context Diagram
[Mermaid diagram showing system, users, and external systems]
Related Documentation
- Container Documentation
- Component Documentation
## Context Diagram Template
According to the [C4 model](https://c4model.com/diagrams/system-context), a System Context diagram shows the system as a box in the center, surrounded by its users and the other systems that it interacts with. The focus is on **people (actors, roles, personas) and software systems** rather than technologies, protocols, and other low-level details.
Use proper Mermaid C4 syntax:
```mermaid
C4Context
title System Context Diagram
Person(user, "User", "Uses the system to accomplish their goals")
System(system, "System Name", "Provides features X, Y, and Z")
System_Ext(external1, "External System 1", "Provides service A")
System_Ext(external2, "External System 2", "Provides service B")
SystemDb(externalDb, "External Database", "Stores data")
Rel(user, system, "Uses")
Rel(system, external1, "Uses", "API")
Rel(system, external2, "Sends events to")
Rel(system, externalDb, "Reads from and writes to")
Key Principles (from c4model.com):
- Focus on people and software systems, not technologies
- Show the system boundary clearly
- Include all users (human and programmatic)
- Include all external systems the system interacts with
- Keep it stakeholder-friendly - understandable by non-technical audiences
- Avoid showing technologies, protocols, or low-level details
Example Interactions
- "Create C4 Context-level documentation for the system"
- "Identify all personas and create user journey maps for key features"
- "Document external systems and create a system context diagram"
- "Analyze system documentation and create comprehensive context documentation"
- "Map user journeys for all key features including programmatic users"
Key Distinctions
- vs C4-Container agent: Provides high-level system view; Container agent focuses on deployment architecture
- vs C4-Component agent: Focuses on system context; Component agent focuses on logical component structure
- vs C4-Code agent: Provides stakeholder-friendly overview; Code agent provides technical code details
Output Examples
When creating context documentation, provide:
- Clear system descriptions (short and long)
- Comprehensive persona documentation (human and programmatic)
- Complete feature lists with descriptions
- Detailed user journey maps for all key features
- Complete external system and dependency documentation
- Mermaid context diagram showing system, users, and external systems
- Links to container and component documentation
- Stakeholder-friendly documentation understandable by non-technical audiences
- Consistent documentation format
Limitations
- Use this skill only when the task clearly matches the scope described above.
- Do not treat the output as a substitute for enprojectnment-specific validation, testing, or expert review.
- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.
1---2name: c4-context3description: Expert C4 Context-level documentation specialist. Creates high-level system context diagrams, documents personas, user journeys, system features, and external dependencies.4---56# C4 Context Level: System Context78## Use this skill when910- Working on c4 context level: system context tasks or workflows11- Needing guidance, best practices, or checklists for c4 context level: system context1213## Do not use this skill when1415- The task is unrelated to c4 context level: system context16- You need a different domain or tool outside this scope1718## Instructions1920- Clarify goals, constraints, and required inputs.21- Apply relevant best practices and validate outcomes.22- Provide actionable steps and verification.23- If detailed examples are required, open `resources/implementation-playbook.md`.2425## System Overview2627### Short Description2829[One-sentence description of what the system does]3031### Long Description3233[Detailed description of the system's purpose, capabilities, and the problems it solves]3435## Personas3637### [Persona Name]3839- **Type**: [Human User / Programmatic User / External System]40- **Description**: [Who this persona is and what they need]41- **Goals**: [What this persona wants to achieve]42- **Key Features Used**: [List of features this persona uses]4344## System Features4546### [Feature Name]4748- **Description**: [What this feature does]49- **Users**: [Which personas use this feature]50- **User Journey**: [Link to user journey map]5152## User Journeys5354### [Feature Name] - [Persona Name] Journey55561. [Step 1]: [Description]572. [Step 2]: [Description]583. [Step 3]: [Description]59 ...6061### [External System] Integration Journey62631. [Step 1]: [Description]642. [Step 2]: [Description]65 ...6667## External Systems and Dependencies6869### [External System Name]7071- **Type**: [Database, API, Service, Message Queue, etc.]72- **Description**: [What this external system provides]73- **Integration Type**: [API, Events, File Transfer, etc.]74- **Purpose**: [Why the system depends on this]7576## System Context Diagram7778[Mermaid diagram showing system, users, and external systems]7980## Related Documentation8182- Container Documentation83- Component Documentation84```8586## Context Diagram Template8788According to the [C4 model](https://c4model.com/diagrams/system-context), a System Context diagram shows the system as a box in the center, surrounded by its users and the other systems that it interacts with. The focus is on **people (actors, roles, personas) and software systems** rather than technologies, protocols, and other low-level details.8990Use proper Mermaid C4 syntax:9192```mermaid93C4Context94 title System Context Diagram9596 Person(user, "User", "Uses the system to accomplish their goals")97 System(system, "System Name", "Provides features X, Y, and Z")98 System_Ext(external1, "External System 1", "Provides service A")99 System_Ext(external2, "External System 2", "Provides service B")100 SystemDb(externalDb, "External Database", "Stores data")101102 Rel(user, system, "Uses")103 Rel(system, external1, "Uses", "API")104 Rel(system, external2, "Sends events to")105 Rel(system, externalDb, "Reads from and writes to")106```107108**Key Principles** (from [c4model.com](https://c4model.com/diagrams/system-context)):109110- Focus on **people and software systems**, not technologies111- Show the **system boundary** clearly112- Include all **users** (human and programmatic)113- Include all **external systems** the system interacts with114- Keep it **stakeholder-friendly** - understandable by non-technical audiences115- Avoid showing technologies, protocols, or low-level details116117## Example Interactions118119- "Create C4 Context-level documentation for the system"120- "Identify all personas and create user journey maps for key features"121- "Document external systems and create a system context diagram"122- "Analyze system documentation and create comprehensive context documentation"123- "Map user journeys for all key features including programmatic users"124125## Key Distinctions126127- **vs C4-Container agent**: Provides high-level system view; Container agent focuses on deployment architecture128- **vs C4-Component agent**: Focuses on system context; Component agent focuses on logical component structure129- **vs C4-Code agent**: Provides stakeholder-friendly overview; Code agent provides technical code details130131## Output Examples132133When creating context documentation, provide:134135- Clear system descriptions (short and long)136- Comprehensive persona documentation (human and programmatic)137- Complete feature lists with descriptions138- Detailed user journey maps for all key features139- Complete external system and dependency documentation140- Mermaid context diagram showing system, users, and external systems141- Links to container and component documentation142- Stakeholder-friendly documentation understandable by non-technical audiences143- Consistent documentation format144145## Limitations146- Use this skill only when the task clearly matches the scope described above.147- Do not treat the output as a substitute for enprojectnment-specific validation, testing, or expert review.148- Stop and ask for clarification if required inputs, permissions, safety boundaries, or success criteria are missing.