bundle.dot

Visual Documentation for Bundle Repos

See what’s in your bundle, how pieces compose, and what they cost

Active
April 2026

What’s actually in there?

📁

Scattered YAML Files

Which behaviors are available? What agents can you delegate to? Opening individual YAML files gives you parts — never the whole picture.

🔗

Invisible Composition

What references what? Which tools belong to which behavior? Which context files load per-request? No inventory exists.

💰

Hidden Token Costs

Context files burning tokens on every LLM request. Tool schemas inflating payloads. Completely invisible from reading source files.

One Diagram to Show It All

bundle.dot generates a complete visual map of any bundle repository — every component grouped by category, with composition edges showing how they relate.

Behaviors
Agents
Tool Modules
Providers
Experiments
Context Files

Composition Edges

composes · owns · uses · extends
Every relationship made explicit — which behavior owns which agent, which tool module is used where.

Token Cost Annotations

Every node shows its per-request token impact. Context files, tool schemas, agent descriptions — the real cost of your bundle, visible at a glance.

amplifier-foundation

78 nodes · 7 clusters
amplifier-foundation bundle diagram
Click to explore · Scroll to zoom

amplifier-bundle-recipes

Focused · Minimal
amplifier-bundle-recipes bundle diagram
Click to explore · Scroll to zoom

Token Cost Visibility

The recipes bundle diagram immediately revealed that EXAMPLES_CATALOG.md (~7,400 tokens) was being eagerly loaded on every LLM request. That’s 72% of the per-request budget — completely invisible from reading YAML files.

~9,782
tokens per request (before)
~2,376
tokens per request (after)
76% reduction

One-line fix. Invisible without the diagram.

How It Works

🔍

Discover

bundle_repo_dot() finds everything — matching validate-bundle-repo Phase 1

📐

Structure

Structural DOT with token costs, composition edges, and external distinction

Enhance

LLM refines labels for accessibility — preserving all numerical data

🖼

Render

Graphviz renders the PNG from the DOT source

🔄

Track

source_hash detects staleness — auto-regenerated on change

Reading the Diagram

Solid Border — Local

Local to this repo. Token costs are counted and displayed on the node.

Dashed + Red — External with Hidden Cost

External dependency with cost impact not counted in local estimates. These are the hidden surprises.

Dashed + Muted — External, No Cost

External reference with no per-request token impact.

Estimation Disclaimer

Token estimates use ~4 chars/token heuristic. Excludes sub-session costs and runtime-dynamic content.

Three Iterations to Find What Works

62
v1 · Files
Illustrated parts lists
27
v2 · Files
Overview + detail tables
2
v3 · Files
One diagram that earns it
“A diagram earns its existence by revealing structure that is invisible in the source format.”

Try It

# Just ask Amplifier: "Generate bundle documentation for this repo" "Run the bundle validation recipe on /path/to/my-bundle" "Is my bundle.dot up to date?"

Produces bundle.dot + bundle.png at the repo root

Works on any Amplifier bundle repository · Auto-regenerates when stale

Diagram viewer
Scroll to zoom · Drag to pan · ESC to close