원클릭으로
mermaid-architect
Scan a codebase and auto-generate relevant diagrams from its structure
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Scan a codebase and auto-generate relevant diagrams from its structure
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Use when checking Paperclip org health, reviewing agent efficiency, diagnosing token waste, verifying governance compliance, or before and after making org changes. Also use when agents seem idle or unproductive, costs spike, tasks stall, heartbeats fail silently, you see 409 conflicts, stale locks, blocked deadlocks, or suspect agents burning tokens with no progress.
This skill should be used when the user asks to "show dev-setup config", "change the worktrees directory", "update the port pattern", "configure dev-setup settings", or wants to view or update settings in .claude/dev-setup.json.
Generate dev server lifecycle scripts (start/stop/status/ports) from detected project structure
This skill should be used when the user asks to "create a worktree", "set up an isolated workspace", "create a branch for a feature", "start working on a new branch", or before executing an implementation plan that needs an isolated git workspace.
Scan a codebase and auto-generate relevant diagrams from its structure
Generate a D2 diagram from a text description
| name | mermaid-architect |
| description | Scan a codebase and auto-generate relevant diagrams from its structure |
| argument-hint | ["path"] |
| allowed-tools | Read, Bash, Glob, Grep, Write, Edit |
User request: "$ARGUMENTS"
Analyze a codebase or project path and generate a relevant suite of Mermaid diagrams (typically 3-5 types based on what's found).
/mermaid-diagram generates one diagram from a text description/mermaid-architect generates multiple diagrams from actual code/files at a given pathfind "$HOME/.claude/plugins/cache" -type d -name "mermaid" -path "*/skills/mermaid" 2>/dev/null | head -1
If empty:
find "$HOME" -maxdepth 8 -type d -name "mermaid" -path "*/skills/mermaid" 2>/dev/null | head -1
bash "$PLUGIN_DIR/scripts/ensure-deps.sh"
If .claude/mermaid.json does not exist, display a one-time nudge before continuing:
First time using the mermaid plugin? Run
/mermaid-configto pick a theme and output settings. Using defaults for now (zinc-light,./diagrams).
If .claude/mermaid.json exists, read output_directory, theme, auto_validate, auto_render.
Resolve output path:
output_directory is "same" AND an input path is known:
OUTPUT_DIR=$(dirname {input_file}) (for a directory argument, use the directory itself)output_directory is "same" AND no argument was provided:
OUTPUT_DIR=./diagramsOUTPUT_DIR=<output_directory from config>Respect the configured theme/themeVariables as the visual source of truth.
classDef fill/stroke/color by default.Run these to understand what's present:
find {path} \( -name "*.py" -o -name "*.ts" -o -name "*.js" -o -name "*.rb" -o -name "*.go" \) | grep -v node_modules | head -50
find {path} \( -name "*.sql" -o -name "*.prisma" -o -name "*schema*" \) | grep -v node_modules | head -20
find {path} \( -name "routes*" -o -name "router*" -o -name "urls*" \) | grep -v node_modules | head -20
Read key files to understand the domain (models, routes, services, main entry point).
Based on what's found:
| Found | Generates |
|---|---|
| Database models / ORM / schema files | ER diagram |
| API routes / controllers / endpoints | Sequence diagram (request flow) |
| Service classes / modules | Architecture diagram |
State/lifecycle fields (status, state) | State diagram |
| Config / deployment files (docker, k8s, cloud) | Deployment diagram |
| Class files with inheritance | Class diagram |
Select 3-5 most relevant types. Do not generate all 7 unless the codebase clearly warrants it.
For each selected type, load the specialist:
cat "$PLUGIN_DIR/specialists/mermaid-{type}.md"
Follow the specialist's Process section using the actual code found in Step 4 as input. Generate diagram content from real code, not hypothetical examples.
When rendering diagrams in Step 9:
If theme == "custom" and themeVariables is present in config:
Pass --custom-theme '{serialized themeVariables JSON}' to the render script.
If theme == "custom" but themeVariables is absent from config:
Render without custom theme and display a note:
Custom theme configured but no themeVariables found — run
/mermaid-config→ option 6 to define colors.
Otherwise: pass --theme {theme} to the render script.
For each generated diagram:
node "$PLUGIN_DIR/scripts/extract_mermaid.js" {output_file} --validate
Fix any errors using $PLUGIN_DIR/references/guides/troubleshooting.md.
Apply theme handling from the section above:
# Named theme:
node "$PLUGIN_DIR/scripts/resilient_diagram.js" {file} --output-dir $OUTPUT_DIR --theme {theme}
# Custom theme:
node "$PLUGIN_DIR/scripts/resilient_diagram.js" {file} --output-dir $OUTPUT_DIR --custom-theme '{serialized themeVariables JSON}'
If the script fails (Node.js not found, node_modules missing): stop and tell the user to run /mermaid-config → option 7 (health check) to diagnose missing dependencies.
Analyzed: {path}
Generated {N} diagrams:
✅ $OUTPUT_DIR/er-{name}-{timestamp}.mmd (ER — 5 entities, 7 relationships)
✅ $OUTPUT_DIR/sequence-{name}-{timestamp}.mmd (Sequence — 4 actors, 8 messages)
✅ $OUTPUT_DIR/architecture-{name}-{timestamp}.mmd (Architecture — 6 components)
Validation: all passed
If 3 or more diagrams were generated, offer to assemble them into a system design document:
💡 Generated {N} diagrams — want me to assemble them into a system design document?
I'll use the system-design-template and embed each diagram in the relevant section.
If user accepts:
$PLUGIN_DIR/assets/system-design-template.md$OUTPUT_DIR/{project-name}-system-design.mdIf fewer than 3 diagrams: skip silently.
/plugin install mermaid@claude-toolshed."-not -path "*/node_modules/*" and -not -path "*/dist/*".