Some_claude_skills diagramming-expert
Master of text-based visual communication using ASCII art, Unicode box-drawing, and structured diagram notation. Creates clear, maintainable diagrams for systems, processes, hierarchies, relationships,
git clone https://github.com/curiositech/some_claude_skills
T=$(mktemp -d) && git clone --depth=1 https://github.com/curiositech/some_claude_skills "$T" && mkdir -p ~/.claude/skills && cp -r "$T/.claude/skills/diagramming-expert" ~/.claude/skills/curiositech-some-claude-skills-diagramming-expert && rm -rf "$T"
.claude/skills/diagramming-expert/SKILL.mdDiagramming Expert
Master of text-based visual communication. Proactively creates diagrams to enhance understanding of complex concepts, systems, processes, and relationships.
Core Philosophy
"Above all else, show the data." — Edward Tufte
Diagrams should:
- Reduce cognitive load — not add to it
- Maximize signal — minimize noise (data-ink ratio)
- Be maintainable — easy to update as understanding evolves
- Work everywhere — monospace text renders universally
When to Use This Skill
Use for:
- System architectures and component relationships
- Process flows and state transitions
- Hierarchical structures (org charts, taxonomies)
- Psychological structures (psyche maps, parts work)
- Decision trees and conditional logic
- Data relationships and entity models
- Feedback loops and causal systems
- Before/after comparisons
- Timelines and sequences
NOT for:
- Photo editing or image manipulation
- Vector graphics or GUI-based design tools
- Pixel-perfect mockups (use design tools)
- Complex 3D visualizations
Ask yourself: "Would this be clearer with a picture?" If yes → diagram it.
Diagram Types Reference
See
for complete taxonomy/references/diagram-types.md
Quick Reference
| Type | Use For | Key Pattern |
|---|---|---|
| Flowchart | Processes, decisions | Boxes + arrows |
| Hierarchy | Org structures, taxonomies | Tree structure |
| Layers | System architecture | Stacked boxes |
| Relationship | Connections, networks | Nodes + edges |
| Sequence | Time-ordered events | Vertical flow |
| Comparison | Side-by-side analysis | Parallel columns |
| Cycle | Feedback loops | Circular arrows |
| Matrix | 2D categorization | Grid structure |
Character Reference
See
for complete character set/references/unicode-characters.md
Essential Characters
BOXES: ARROWS: CONNECTORS: ┌─┬─┐ ╔═╦═╗ → ← ↑ ↓ ├ ┤ ┬ ┴ │ │ │ ║ ║ ║ ◄ ► ▲ ▼ ╠ ╣ ╦ ╩ ├─┼─┤ ╠═╬═╣ ⟶ ⟵ ⟷ ┼ ╋ ╬ │ │ │ ║ ║ ║ ⇒ ⇐ ⇔ └─┴─┘ ╚═╩═╝ ──► ◄── EMPHASIS: ═══ ━━━ ROUNDED: BULLETS: ═══ ━━━ ╭───╮ • ○ ● │ │ ├── └── DASHED: ╰───╯ ■ □ ▪ ┄ ┅ ┆ ┇
Design Principles
1. Tufte's Data-Ink Ratio
MAXIMIZE: MINIMIZE: ┌─────────────────┐ ╔══════════════════╗ │ Essential info │ ║ ╭──────────────╮ ║ │ Clear structure │ ║ │ Same info │ ║ │ Direct labeling │ ║ │ + decoration │ ║ └─────────────────┘ ║ ╰──────────────╯ ║ ╚══════════════════╝ ✓ Good ✗ Chartjunk
2. Cognitive Load Management
CHUNKING: Group related elements BAD: GOOD: ┌─┬─┬─┬─┬─┬─┬─┬─┐ ┌─────┐ ┌─────┐ ┌─────┐ │A│B│C│D│E│F│G│H│ │ A B │ │ C D │ │ E F │ └─┴─┴─┴─┴─┴─┴─┴─┘ │ (1) │ │ (2) │ │ (3) │ └─────┘ └─────┘ └─────┘
3. Gestalt Principles
PROXIMITY: SIMILARITY: ENCLOSURE: ○ ○ ● ● ○ ● ○ ● ○ ┌───────────┐ ○ ○ ● ● ● ○ ● ○ ● │ ○ ○ ○ ○ ○ │ Groups by Groups by │ (grouped) │ nearness appearance └───────────┘
4. Visual Hierarchy
EMPHASIS LEVELS: ═══════════════════════ Level 1: Double/Heavy ─────────────────────── Level 2: Single - - - - - - - - - - - - Level 3: Dashed . . . . . . . . . . . . Level 4: Dotted SIZE HIERARCHY: ╔═══════════════════════════╗ ║ PRIMARY ELEMENT ║ ╠═══════════════════════════╣ │ Secondary Element │ ├───────────────────────────┤ │ tertiary element │ └───────────────────────────┘
Common Patterns
See
for comprehensive patterns/references/patterns-library.md
Process Flow
┌─────────┐ ┌─────────┐ ┌─────────┐ │ Start │───►│ Process │───►│ End │ └─────────┘ └─────────┘ └─────────┘
Decision Tree
┌──────────┐ │ Decision │ └────┬─────┘ ┌─────────┴────────┐ ▼ ▼ ┌────────┐ ┌────────┐ │ Yes │ │ No │ └────────┘ └────────┘
Layered Architecture
┌─────────────────────────────────────┐ │ PRESENTATION LAYER │ ├─────────────────────────────────────┤ │ BUSINESS LOGIC │ ├─────────────────────────────────────┤ │ DATA ACCESS │ ├─────────────────────────────────────┤ │ DATABASE │ └─────────────────────────────────────┘
Feedback Loop
┌──────────────────┐ │ │ ▼ │ ┌───────┐ ┌───┴───┐ │ Input │─────────►│Output │ └───────┘ └───────┘ ▲ │ │ │ └──────────────────┘
Anti-Patterns
Chartjunk
✗ BAD: Excessive decoration ╔══════════════════════════════════╗ ║ ╭━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╮ ║ ║ ┃ ★ ★ ★ IMPORTANT INFO ★ ★ ★ ┃ ║ ║ ╰━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╯ ║ ╚══════════════════════════════════╝ ✓ GOOD: Clean and direct ┌──────────────────┐ │ Important Info │ └──────────────────┘
Spaghetti Arrows
✗ BAD: Crossing lines, unclear flow ┌───┐ ┌───┐ │ A │──┬──│ B │ └───┘ │ └───┘ │ ╳ │ ┌─┴─┐ │ ┌─┴─┐ │ C │──┴──│ D │ └───┘ └───┘ ✓ GOOD: Clear hierarchy, minimal crossings ┌───┐ ┌───┐ │ A │ │ B │ └─┬─┘ └─┬─┘ │ │ ▼ ▼ ┌───┐ ┌───┐ │ C │ │ D │ └───┘ └───┘
Information Overload
✗ BAD: Too much in one diagram [Cramming 15 concepts with 30 arrows] ✓ GOOD: Break into focused diagrams "Overview Diagram" + "Detail Diagram A" + "Detail Diagram B"
Skill Integrations
Works with:
- jungian-psychologist: Psyche mapping, parts work diagrams
- system-architect: System architecture diagrams
- backend-architect: API and data flow diagrams
Jungian Psychology Diagrams
See
for psychology-specific patterns/references/jungian-diagrams.md
This skill integrates closely with
jungian-psychologist for:
- Psyche structure mapping
- Parts work visualization
- Shadow content diagrams
- Individuation journey maps
- Complex anatomy diagrams
- Ego-Self axis visualization
Mermaid Integration
When appropriate, provide Mermaid notation for diagrams that benefit from rendering:
graph TD A[Conscious] --> B[Personal Unconscious] B --> C[Collective Unconscious] B --> D[Complexes] C --> E[Archetypes]
Workflow
- Understand the content — What are we visualizing?
- Choose the right type — Hierarchy? Process? Relationship?
- Sketch the structure — Start rough, refine
- Apply principles — Data-ink ratio, chunking, hierarchy
- Test readability — Would someone new understand this?
- Iterate — Diagrams improve with revision
Remember: A good diagram is worth a thousand words. Create them proactively whenever complex concepts arise.