architecture-diagrams
Use when the deliverable is a physical diagram artifact (.svg/.png) — C4 models, dense class diagrams, network topology rendered via PlantUML.
Skill by Leostruka
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/leostruka-architecture-diagrams
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: documents, design
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/architecture-diagrams
What's inside
- Skill name
architecture-diagrams- Description
- Use when the deliverable is a physical diagram artifact (.svg/.png) — C4 models, dense class diagrams, network topology rendered via PlantUML. Not for diagrams embedded in Markdown (use Mermaid there).
- License
- MIT
- Instructions
- 86 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Architecture Diagrams (PlantUML)
Generates physical diagram artifacts via the public PlantUML server —
no Java required. Renders C4 models, dense class diagrams, and network
topologies that Mermaid cannot express well.
## Tool boundary — Mermaid vs PlantUML
**Mermaid** for diagrams *embedded in Markdown* — sequence, flow, state,
gitgraph, mindmap, ER — quick logic inside docs, wikis (`obsidian-workflow`),
and reports. Validated inline by the `validate-mermaid` hook.
**PlantUML** *exclusively* for *physical artifacts* (`.svg`/`.png` files):
- C4 models (Context / Container / Component / Deployment)
- Dense class diagrams (many entities, relations, generics)
- Network / deployment topology
If the user wants a diagram inside a Markdown doc → Mermaid. If they want a
file they can open, print, or attach → PlantUML via this skill.
## Where it is
- Renderer: `extensions/diagram-tools/plantuml_renderer.py` (installed at
`%APPDATA%\devin\extensions\diagram-tools\`) — stdlib-only; Deflate +
PlantUML modified-Base64 + GET to `plantuml.com/plantuml/{svg,png}/`.
## Flow
1. Write the PlantUML source to a file (e.g. `.devin/scratch/diagram.puml`
or a path the user chooses). Never render from a heredoc — keep the
source file as the editable artifact.
2. **Syntax sanity before the network** (mandatory):
```bash
python extensions/diagram-tools/plantuml_renderer.py --check diagram.puml
```
Fix all reported errors before proceeding.
3. Render:
```bash
python extensions/diagram-tools/plantuml_renderer.py diagram.puml # .svg
python extensions/diagram-tools/plantuml_renderer.py diagram.puml --format png
```
Verify `ok: true` in the JSON output, then open the artifact for the user.
4. If the server returns a syntax-error image (non-SVG body), read the error
it reports, fix the source, re-check, re-render.
## C4 model rules
Use the C4-PlantUML stdlib — always remote-include, never vendor:
```plantuml
@startuml
!include https://raw.githubusercontent.com/plantuml-stdlib/C4-PlantUML/master/C4_Container.puml
Person(user, "User", "End user")
System_Boundary(sys, "System") {
Container(app, "App", "Python", "Does X")
ContainerDb(db, "DB", "SQLite", "Stores Y")
}
Rel(user, app, "Uses")
Rel(app, db, "Reads/Writes")
@enduml
```
- Layer `!include` by depth: `C4_Context.puml` ⊂ `C4_Container.puml` ⊂
`C4_Component.puml`; `C4_Deployment.puml` for topology.
- One diagram per abstraction level — do not mix Context and Component.
- Every element gets `alias`, `label`, `technology`, `description` (4 args).
- `Rel(a, b, "verb")` for every arrow; direction = call order.
- Keep aliases stable across levels so diagrams stay cross-referenceable.
## Gotchas
- The public server requires network — if offline, say so and keep the
`.puml` source; it renders later unchanged.
- Server-side syntax errors return an image *containing* the error —
the script detects this and exits non-zero. Treat it as a fix-and-retry.
- PlantUML is whitespace/keyword-sensitive: `@enduml` (not `@end uml`),
arrows are `-->` / `..>` not `->`.
- Large C4 models hit URL limits (~8KB encoded); split into per-level files.From Leostruka/devin-bundle, MIT.
More from Leostruka/devin-bundle
- 0.570score
debugging
Leostruka
Use when the user says 'diagnose', 'debug this', reports something broken/throwing/failing/slow, when encountering a bug/test failure/unexpected behavior and…
SkillAFreshness: AClaude Code +9 - 0.565score
ask-bundle
Leostruka
Use when deciding which skill or flow fits your situation — the meta-router entry point for this bundle (direct specialist skills, multi-skill flows, local…
SkillAFreshness: AClaude Code +9 - 0.565score
code-review
Leostruka
Use when completing a task, reviewing a branch or PR, before merging, when the user asks to 'review since X', when publishing a GitHub PR review with inline…
SkillAFreshness: AClaude Code +9 - 0.565score
ai-tools
Leostruka
Use when running local, offline-first ML tooling — mechanistic interpretability PoCs like refusal-direction ablation on local safetensors or the HF cache, or…
SkillAFreshness: AClaude Code +9 - 0.565score
animation-direction
Leostruka
Use when turning narrated video/audio into synced code-rendered motion graphics — narration -> timestamped transcript -> scene plan -> approval gate ->…
SkillAFreshness: AClaude Code +9 - 0.565score
architecture
Leostruka
Use when designing modules, seams, and adapters, when evaluating module depth and identifying deepening opportunities in a codebase, or when modernizing…
SkillAFreshness: AClaude Code +9 - 0.565score
computer-use
Leostruka
Use when you need to see or control the local screen (screenshots, screen recording with video + contact sheet for catching transient bugs/animations, mouse…
SkillAFreshness: AClaude Code +9 - 0.565score
context-hygiene
Leostruka
Use when context is growing large or the agent forgets earlier instructions, when deciding clear vs compact, when processing documents/logs >50k tokens, when…
SkillAFreshness: AClaude Code +9 - 0.565score
cu-realtime
Leostruka
Use when computer-use or terminal automation needs the fastest reaction the runtime allows - event waits instead of screenshot polling, text perception…
SkillAFreshness: AClaude Code +9 - 0.560score
ascii-art
Leostruka
Use when generating animated ASCII art for artifacts the agent produces - README banners (SVG), CLI splash screens, loading/404 states or decorative pieces in…
SkillAFreshness: AClaude Code +9 - 0.539score
data-analyst
Leostruka
Use when the user asks to query a database, analyze data, create charts/visualizations, explore data patterns, or asks business questions about data.
SkillAFreshness: AClaude Code +9 - 0.539score
database
Leostruka
Use when the user wants to design, migrate, query, or optimize a database.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 1
- Last commit (this folder)
- Sep 22, 2026 (1 month ago)
- Last release
- Oct 24, 2026 (4 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/Leostruka/devin-bundle
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Leostruka
- 0.570score
debugging
Leostruka
Use when the user says 'diagnose', 'debug this', reports something broken/throwing/failing/slow, when encountering a bug/test failure/unexpected behavior and…
SkillAFreshness: AClaude Code +9 - 0.565score
code-review
Leostruka
Use when completing a task, reviewing a branch or PR, before merging, when the user asks to 'review since X', when publishing a GitHub PR review with inline…
SkillAFreshness: AClaude Code +9 - 0.565score
ask-bundle
Leostruka
Use when deciding which skill or flow fits your situation — the meta-router entry point for this bundle (direct specialist skills, multi-skill flows, local…
SkillAFreshness: AClaude Code +9 - 0.565score
ai-tools
Leostruka
Use when running local, offline-first ML tooling — mechanistic interpretability PoCs like refusal-direction ablation on local safetensors or the HF cache, or…
SkillAFreshness: AClaude Code +9 - 0.565score
animation-direction
Leostruka
Use when turning narrated video/audio into synced code-rendered motion graphics — narration -> timestamped transcript -> scene plan -> approval gate ->…
SkillAFreshness: AClaude Code +9 - 0.565score
architecture
Leostruka
Use when designing modules, seams, and adapters, when evaluating module depth and identifying deepening opportunities in a codebase, or when modernizing…
SkillAFreshness: AClaude Code +9
Cite this page
architecture-diagrams skill. Agent Mart. https://agentmart.dev/skills/leostruka-architecture-diagrams (last updated 2026-10-24)