name: c4-context
description: Expert C4 Context-level documentation specialist. Creates
tags: [architecture, context]
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.
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
## 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
1---2name: c4-context3description: <!-- AUTO-GENERATED by export-skills.py — DO NOT EDIT -->4---5<!-- AUTO-GENERATED by export-skills.py — DO NOT EDIT -->6---7name: c4-context8description: Expert C4 Context-level documentation specialist. Creates9tags: [architecture, context]10---1112# C4 Context Level: System Context1314## Use this skill when1516- Working on c4 context level: system context tasks or workflows17- Needing guidance, best practices, or checklists for c4 context level: system context1819## Do not use this skill when2021- The task is unrelated to c4 context level: system context22- You need a different domain or tool outside this scope2324## Instructions2526- Clarify goals, constraints, and required inputs.27- Apply relevant best practices and validate outcomes.28- Provide actionable steps and verification.2930## System Overview3132### Short Description3334[One-sentence description of what the system does]3536### Long Description3738[Detailed description of the system's purpose, capabilities, and the problems it solves]3940## Personas4142### [Persona Name]4344- **Type**: [Human User / Programmatic User / External System]45- **Description**: [Who this persona is and what they need]46- **Goals**: [What this persona wants to achieve]47- **Key Features Used**: [List of features this persona uses]4849## System Features5051### [Feature Name]5253- **Description**: [What this feature does]54- **Users**: [Which personas use this feature]55- **User Journey**: [Link to user journey map]5657## User Journeys5859### [Feature Name] - [Persona Name] Journey60611. [Step 1]: [Description]622. [Step 2]: [Description]633. [Step 3]: [Description]64 ...6566### [External System] Integration Journey67681. [Step 1]: [Description]692. [Step 2]: [Description]70 ...7172## External Systems and Dependencies7374### [External System Name]7576- **Type**: [Database, API, Service, Message Queue, etc.]77- **Description**: [What this external system provides]78- **Integration Type**: [API, Events, File Transfer, etc.]79- **Purpose**: [Why the system depends on this]8081## System Context Diagram8283[Mermaid diagram showing system, users, and external systems]8485## Related Documentation8687- [Container Documentation](./c4-container.md)88- [Component Documentation](./c4-component.md)89```9091## Context Diagram Template9293According 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.9495Use proper Mermaid C4 syntax:9697```mermaid98C4Context99 title System Context Diagram100101 Person(user, "User", "Uses the system to accomplish their goals")102 System(system, "System Name", "Provides features X, Y, and Z")103 System_Ext(external1, "External System 1", "Provides service A")104 System_Ext(external2, "External System 2", "Provides service B")105 SystemDb(externalDb, "External Database", "Stores data")106107 Rel(user, system, "Uses")108 Rel(system, external1, "Uses", "API")109 Rel(system, external2, "Sends events to")110 Rel(system, externalDb, "Reads from and writes to")111```112113**Key Principles** (from [c4model.com](https://c4model.com/diagrams/system-context)):114115- Focus on **people and software systems**, not technologies116- Show the **system boundary** clearly117- Include all **users** (human and programmatic)118- Include all **external systems** the system interacts with119- Keep it **stakeholder-friendly** - understandable by non-technical audiences120- Avoid showing technologies, protocols, or low-level details121122## Example Interactions123124- "Create C4 Context-level documentation for the system"125- "Identify all personas and create user journey maps for key features"126- "Document external systems and create a system context diagram"127- "Analyze system documentation and create comprehensive context documentation"128- "Map user journeys for all key features including programmatic users"129130## Key Distinctions131132- **vs C4-Container agent**: Provides high-level system view; Container agent focuses on deployment architecture133- **vs C4-Component agent**: Focuses on system context; Component agent focuses on logical component structure134- **vs C4-Code agent**: Provides stakeholder-friendly overview; Code agent provides technical code details135136## Output Examples137138When creating context documentation, provide:139140- Clear system descriptions (short and long)141- Comprehensive persona documentation (human and programmatic)142- Complete feature lists with descriptions143- Detailed user journey maps for all key features144- Complete external system and dependency documentation145- Mermaid context diagram showing system, users, and external systems146- Links to container and component documentation147- Stakeholder-friendly documentation understandable by non-technical audiences148- Consistent documentation format149150<!-- Source: .faos/custom/skills/architecture/c4-context/SKILL.md -->