plantuml-c4-designer

Creates C4 Container and C4 Sequence architecture diagrams in PlantUML for GCP systems.

Updated Jul 24, 2026
One-click install
npx skills add https://github.com/oliverconstance/webapp-scrum-team --skill plantuml-c4-designer-oliverconstance
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: plantuml-c4-designer
Source: https://github.com/oliverconstance/webapp-scrum-team/tree/main/.agent/skills/plantuml-c4-designer
Command: npx skills add https://github.com/oliverconstance/webapp-scrum-team --skill plantuml-c4-designer-oliverconstance

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Writing consistent, standards-compliant C4 architecture diagrams for cloud systems is error-prone and time-consuming, especially when documenting GCP service boundaries, data stores, and asynchronous event flows. This Skill provides a mandatory standard operating procedure for authoring C4 Container and C4 Sequence diagrams in PlantUML. ## Core Features & Use Cases - C4 Container Diagrams: Declares external actors, GCP project boundaries, Cloud Run containers, and data stores like Cloud SQL and Firestore using official C4-PlantUML macros. - C4 Sequence Diagrams: Models synchronous REST/gRPC calls and asynchronous Pub/Sub event flows with activation blocks and error-handling notes. - Validation & Troubleshooting: Enforces .puml formatting rules and documents fixes for common errors like failed remote includes and unrecognized macros. - Use Case: When designing a new microservice on GCP, use this Skill to generate a C4 Container diagram showing Cloud Run, Firestore, and Secret Manager interactions, plus a sequence diagram for the authentication flow. ## Quick Start Create a C4 Container diagram in PlantUML showing my GCP architecture with Cloud Run, Cloud SQL, and Pub/Sub inside a GCP project boundary.

Frequently Asked Questions about plantuml-c4-designer

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a C4 Container diagram with PlantUML?▼

Include the C4_Container.puml library, declare actors with Person(), group GCP resources inside System_Boundary(), and define services with Container() or ContainerDb(). Connect elements using Rel() with explicit directionality and protocol labels like HTTPS or gRPC.

How to model asynchronous Pub/Sub events in a C4 sequence diagram?▼

Use the asynchronous arrow notation (--> or -x) in a C4 Sequence diagram to represent Pub/Sub event emissions and webhook callbacks. Use synchronous arrows (->) for blocking REST or gRPC requests, and add activation blocks to clarify state changes.

Can PlantUML C4 diagrams render offline in CI/CD pipelines?▼

Yes, but remote !include URLs to raw.githubusercontent.com fail in air-gapped environments. Replace them with locally cached copies of C4_Container.puml and C4_Sequence.puml, then render with the PlantUML CLI or Docker image.

Why does PlantUML report unrecognized macro ContainerDb?▼

This error occurs when the include points to C4_Context.puml or C4_Component.puml instead of C4_Container.puml. Verify the !include directive references the correct C4-PlantUML library file for container-level diagrams.

What PlantUML version is required for C4 diagram syntax?▼

The diagrams must be compatible with PlantUML 1.2023 or later. Files should start with @startuml on line 1, end with @enduml, use the .puml extension, and contain no unused definitions.