From 40f87f82d84b13c7a760d6686be66d9627765340 Mon Sep 17 00:00:00 2001 From: Cathryn Lavery Date: Mon, 11 May 2026 12:09:28 -0500 Subject: [PATCH] feat: add org chart diagram type --- README.md | 10 +++- docs/screenshots/org-chart.png | Bin 0 -> 75674 bytes skills/diagram-design/SKILL.md | 9 ++-- .../assets/example-org-chart-dark.html | 45 ++++++++++++++++++ .../assets/example-org-chart-full.html | 45 ++++++++++++++++++ .../assets/example-org-chart.html | 45 ++++++++++++++++++ skills/diagram-design/assets/index.html | 7 +-- .../diagram-design/references/onboarding.md | 2 +- .../references/type-org-chart.md | 44 +++++++++++++++++ 9 files changed, 198 insertions(+), 9 deletions(-) create mode 100644 docs/screenshots/org-chart.png create mode 100644 skills/diagram-design/assets/example-org-chart-dark.html create mode 100644 skills/diagram-design/assets/example-org-chart-full.html create mode 100644 skills/diagram-design/assets/example-org-chart.html create mode 100644 skills/diagram-design/references/type-org-chart.md diff --git a/README.md b/README.md index bdca464..39b07fc 100644 --- a/README.md +++ b/README.md @@ -42,13 +42,18 @@ All 14 diagrams ship in three variants: minimal light, minimal dark, and full-ed Tree
Tree
Parent → children - Layers
Layer stack
Stacked abstractions + Org chart
Org chart
Ownership + routing Venn
Venn
Set overlap + Layers
Layer stack
Stacked abstractions Pyramid
Pyramid / funnel
Ranked hierarchy or drop-off +   + + Consultant 2×2
Consultant 2×2
Scenario matrix · named cells   +   @@ -180,6 +185,7 @@ diagram-design/ │ ├── type-quadrant.md │ ├── type-nested.md │ ├── type-tree.md +│ ├── type-org-chart.md │ ├── type-layers.md │ ├── type-venn.md │ ├── type-pyramid.md @@ -188,7 +194,7 @@ diagram-design/ ├── assets/ │ ├── index.html — live gallery, tabbed │ ├── template*.html — scaffolds for new diagrams -│ ├── example-.html — 3 variants × 13 types +│ ├── example-.html — 3 variants × 14 types │ └── example-quadrant-consultant.html — consultant-special 2×2 scenario matrix └── docs/screenshots/ — the images in this README ``` diff --git a/docs/screenshots/org-chart.png b/docs/screenshots/org-chart.png new file mode 100644 index 0000000000000000000000000000000000000000..c36116d038333631a41e5c002aa4544a86a5c124 GIT binary patch literal 75674 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 z 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
giD?r4PJ1Kz!1Pfa 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

AAH26mwsU9x7X3OqPVb;GmV| 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 literal 0 HcmV?d00001 diff --git a/skills/diagram-design/SKILL.md b/skills/diagram-design/SKILL.md index 9586bbb..1104423 100644 --- a/skills/diagram-design/SKILL.md +++ b/skills/diagram-design/SKILL.md @@ -1,6 +1,6 @@ --- name: diagram-design -description: Create technical and product diagrams — architecture, flowchart, sequence, state machine, ER / data model, timeline, swimlane, quadrant, nested, tree, layer stack, venn, pyramid — as standalone HTML files with inline SVG. Ships with a neutral editorial skin and a first-run gate that prompts users to customize the style guide (colors, fonts) from their own website before generating. Includes annotation-callout primitive and optional sketchy variant. +description: Create technical and product diagrams — architecture, flowchart, sequence, state machine, ER / data model, timeline, swimlane, quadrant, nested, tree, org chart, layer stack, venn, pyramid — as standalone HTML files with inline SVG. Ships with a neutral editorial skin and a first-run gate that prompts users to customize the style guide (colors, fonts) from their own website before generating. Includes annotation-callout primitive and optional sketchy variant. license: MIT metadata: version: "1.0" @@ -10,7 +10,7 @@ metadata: Create visual diagrams as self-contained HTML files with inline SVG and CSS, following an opinionated editorial design system. -Thirteen diagram types. One shared design system, complexity budget, and taste gate. Type-specific conventions live in `references/` and are loaded only when you pick a type. +Fourteen diagram types. One shared design system, complexity budget, and taste gate. Type-specific conventions live in `references/` and are loaded only when you pick a type. --- @@ -51,7 +51,7 @@ Applied to schematics: ## 2. When to Use -Use for any of the 13 diagram types (§3) when a reader will learn more from a visual than from prose, a table, or a bulleted list. +Use for any of the 14 diagram types (§3) when a reader will learn more from a visual than from prose, a table, or a bulleted list. **Don't use for:** - Quick unicode diagrams → use **wiretext**. @@ -79,6 +79,7 @@ Before drawing, ask: *Would the reader learn more from this than from a well-wri | Two-axis positioning / prioritization | **Quadrant** | [type-quadrant.md](references/type-quadrant.md) | | Hierarchy through containment / scope | **Nested** | [type-nested.md](references/type-nested.md) | | Parent → children relationships | **Tree** | [type-tree.md](references/type-tree.md) | +| Human/agent/team ownership, reporting, routing, escalation | **Org chart** | [type-org-chart.md](references/type-org-chart.md) | | Stacked abstraction levels | **Layer stack** | [type-layers.md](references/type-layers.md) | | Overlap between sets | **Venn** | [type-venn.md](references/type-venn.md) | | Ranked hierarchy or conversion drop-off | **Pyramid / funnel** | [type-pyramid.md](references/type-pyramid.md) | @@ -291,6 +292,8 @@ Quick check: if a coordinate ends in 1, 2, 3, 5, 6, 7, 9 — fix it. | Max entities (ER) | 8 | | Max nesting levels (nested) | 6 | | Max tree depth | 4 | +| Max org chart depth | 4 | +| Max org chart nodes | 12 | | Max layers (layer stack) | 6 | | Max circles (venn) | 3 | | Max layers (pyramid) | 6 | diff --git a/skills/diagram-design/assets/example-org-chart-dark.html b/skills/diagram-design/assets/example-org-chart-dark.html new file mode 100644 index 0000000..6fa2cde --- /dev/null +++ b/skills/diagram-design/assets/example-org-chart-dark.html @@ -0,0 +1,45 @@ +Agent team responsibility map +

Org chart · Diagram Design

Agent team responsibility map

A responsibility map for teams, agents, and escalation paths. Unlike a generic tree, it makes the front door, owners, invocation paths, and setup gaps visible.

+Agent team org chartOrg chart showing a command center routing work to specialist agents and escalation owners. + + +COMMAND CENTER +WORKSTREAMS +SPECIALISTS + + + + + + + + + + + + + + +FRONT +Athena@athena · route ambiguous work + +PODGrowthads · analytics +PODContentemail · blog · SEO +PODCommerceshopify · CRO +PODSystemsagents · runtime + +Media BuyerGoogle · Meta +Maximooffers · strategy +Rorycopy · newsletter +PorterShopify admin +Atlastheme · APIs +HermesPaperclip health + + +Setup gaps stay visible:specialists without Slack bots · approval gates · backend name mismatches +LEGENDfront doorpod / ownerneeds setup / gap +
\ No newline at end of file diff --git a/skills/diagram-design/assets/example-org-chart-full.html b/skills/diagram-design/assets/example-org-chart-full.html new file mode 100644 index 0000000..6c75250 --- /dev/null +++ b/skills/diagram-design/assets/example-org-chart-full.html @@ -0,0 +1,45 @@ +Agent team responsibility map +

Org chart · Diagram Design

Agent team responsibility map

A responsibility map for teams, agents, and escalation paths. Unlike a generic tree, it makes the front door, owners, invocation paths, and setup gaps visible.

+Agent team org chartOrg chart showing a command center routing work to specialist agents and escalation owners. + + +COMMAND CENTER +WORKSTREAMS +SPECIALISTS + + + + + + + + + + + + + + +FRONT +Athena@athena · route ambiguous work + +PODGrowthads · analytics +PODContentemail · blog · SEO +PODCommerceshopify · CRO +PODSystemsagents · runtime + +Media BuyerGoogle · Meta +Maximooffers · strategy +Rorycopy · newsletter +PorterShopify admin +Atlastheme · APIs +HermesPaperclip health + + +Setup gaps stay visible:specialists without Slack bots · approval gates · backend name mismatches +LEGENDfront doorpod / ownerneeds setup / gap +

Use when

The reader needs to know who owns what, where to route work, and which roles are active vs. still being wired.

Keep nodes short

Name, invocation path, and 2–4 scope words. Put detailed operating rules below the figure.

Show gaps

Unavailable owners and missing routes should be dashed, not hidden. They are operationally useful.

\ No newline at end of file diff --git a/skills/diagram-design/assets/example-org-chart.html b/skills/diagram-design/assets/example-org-chart.html new file mode 100644 index 0000000..9230e35 --- /dev/null +++ b/skills/diagram-design/assets/example-org-chart.html @@ -0,0 +1,45 @@ +Agent team responsibility map +

Org chart · Diagram Design

Agent team responsibility map

A responsibility map for teams, agents, and escalation paths. Unlike a generic tree, it makes the front door, owners, invocation paths, and setup gaps visible.

+Agent team org chartOrg chart showing a command center routing work to specialist agents and escalation owners. + + +COMMAND CENTER +WORKSTREAMS +SPECIALISTS + + + + + + + + + + + + + + +FRONT +Athena@athena · route ambiguous work + +PODGrowthads · analytics +PODContentemail · blog · SEO +PODCommerceshopify · CRO +PODSystemsagents · runtime + +Media BuyerGoogle · Meta +Maximooffers · strategy +Rorycopy · newsletter +PorterShopify admin +Atlastheme · APIs +HermesPaperclip health + + +Setup gaps stay visible:specialists without Slack bots · approval gates · backend name mismatches +LEGENDfront doorpod / ownerneeds setup / gap +
\ No newline at end of file diff --git a/skills/diagram-design/assets/index.html b/skills/diagram-design/assets/index.html index b8336b0..17d51bf 100644 --- a/skills/diagram-design/assets/index.html +++ b/skills/diagram-design/assets/index.html @@ -159,9 +159,10 @@ - - - + + + +
diff --git a/skills/diagram-design/references/onboarding.md b/skills/diagram-design/references/onboarding.md index ff1cc1f..3fff311 100644 --- a/skills/diagram-design/references/onboarding.md +++ b/skills/diagram-design/references/onboarding.md @@ -120,7 +120,7 @@ Also regenerate the dark variant via the inversion rule (`rgba(11,13,11, X)` → Write the new tokens to `style-guide.md`. Suggest running the `/regenerate-examples` flow (if it exists) or rebuilding one example to verify the new skin reads cleanly. After onboarding, the user should: -1. Open `assets/index.html` (gallery) and confirm the new palette feels coherent across all 13 types. +1. Open `assets/index.html` (gallery) and confirm the new palette feels coherent across all 14 types. 2. If any type looks off, they usually need to tune `muted` (often too dark or too light against the new `paper`). --- diff --git a/skills/diagram-design/references/type-org-chart.md b/skills/diagram-design/references/type-org-chart.md new file mode 100644 index 0000000..03b0d18 --- /dev/null +++ b/skills/diagram-design/references/type-org-chart.md @@ -0,0 +1,44 @@ +# Org Chart / Responsibility Map + +**Best for:** human teams, agent teams, support escalation maps, role ownership, routing maps, and any hierarchy where the reader needs to know *who owns what* rather than just parent → child structure. + +Use **Org Chart** instead of **Tree** when the nodes are people, agents, teams, roles, or accountable owners. A tree shows generic hierarchy. An org chart shows responsibility, invocation paths, and coverage gaps. + +## Layout conventions +- Root owner or front door at top center. Use one coral focal node for the person/team/agent that receives ambiguous work. +- Tier 1 nodes are departments, pods, queues, or primary routing buckets. Keep them horizontally aligned. +- Tier 2 nodes are responsible owners or specialists. If there are more than 8 specialists, group them under pod nodes instead of making one giant row. +- Use orthogonal connectors: vertical drop from parent → horizontal bus → vertical drops to children. No diagonal lines. +- Each node should answer three questions when space allows: + 1. **Name** — human-readable role/person/agent in Geist sans. + 2. **How to invoke** — Slack handle, queue, issue prefix, or trigger in Geist Mono. + 3. **Scope** — 2–4 terse ownership words, not a paragraph. +- Show non-Slack / not-yet-live owners with dashed optional styling rather than hiding them. Missing routes are operationally important. +- Put escalation / approval rules in a small side callout or footer strip, not as extra org nodes. + +## Node treatments +- **Front door / command center:** focal treatment (`accent-tint` + `accent`). +- **Team / pod / department:** backend treatment (white + `ink`). +- **Individual agent / owner:** store or external treatment depending on whether it is active in the system. +- **Gap / needs setup:** optional dashed treatment. +- **Approval gate:** security treatment, separate from reporting hierarchy. + +## Complexity budget +- Max visible org nodes: 12. If more, create an overview org chart plus separate detail charts per pod. +- Max depth: 4 tiers. +- Max direct reports under one parent: 5. If there are more, introduce grouping nodes. +- Max coral nodes: 1. The org chart's job is clarity, not highlighting everything. +- Max side callouts: 2. + +## Anti-patterns +- Using a swimlane when the user's real question is "who does what?" Swimlanes explain process; org charts explain ownership. +- Drawing every person/agent as an identical box. It hides the front door, specialists, gaps, and escalation paths. +- Cramming full job descriptions into nodes. Keep scope phrases short and move detail to summary cards below. +- Showing unavailable / not-yet-wired agents as normal active owners. Use dashed optional styling so gaps are visible. +- Repeating Slack handles in body paragraphs when a node sublabel can carry the invocation path. +- Floating legends in the org area. Use the standard bottom legend strip. + +## Examples +- `assets/example-org-chart.html` — minimal light +- `assets/example-org-chart-dark.html` — minimal dark +- `assets/example-org-chart-full.html` — full editorial