explain-with-canvas
Skill8 starsChanged 3 months agoMITView on GitHub
Use when Codex should explain a codebase, app flow, UI surface, generated artifact set, architecture, route map, or design system visually with Agent Canvas. Triggers include requests like "explain this with canvas", "map this repo", "show the app flows visually", "help me understand this codebase", "visualize this vibe-coded app", or "create an Agent Canvas overview". Requires Agent Canvas MCP or CLI access; use read-only scanning unless the user explicitly asks to modify the target project.
In this repository8 other files it gives its agents.
- agent-skill-inventory-and-consolidationSkill
- bloggerSkill
- copy-to-clipboardSkill
- dialkitSkill
- pressableSkill
- project-setupSkill
- pr-review-guideSkill
- tweak-controlsSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
22 rules. About 0 are common, 17 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈17
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 8
Use Agent Canvas as a visual explanation surface, not as a decorative diagram.
- Distinctive: line 12
Treat the target repository as read-only unless the user explicitly asks for code changes.
- Very specific: line 13
Prefer agent-canvas scan-repo or scripts/safe-repo-scan.mjs for discovery.
- Very specific: line 14
If the target repo is actively being edited by other agents, store Agent Canvas state outside that repo with --workspace …
- Distinctive: line 15
Check git status --short before and after scanning when the user asks to avoid disturbing a repo.
- Distinctive: line 16
Do not run install, build, format, migration, or test commands in the target repo during an explanation pass unless the user asks for them.
- Distinctive: line 30
If a live Agent Canvas is available, generate the canvas:
- Distinctive: line 35
If no live canvas is available, prepare operations without posting them:
- Distinctive: line 41
Add focused nodes for unclear flows.
- Very specific: line 43
Add provenance to new nodes using metadata.agentCanvas.files.
- Distinctive: line 44
Avoid focusing every created node unless the user asks to follow the generation.
- Distinctive: line 48
Create or update stable sections:
- Distinctive: line 65
Use deterministic node IDs based on repo name and topic so reruns update existing nodes.
- Distinctive: line 66
Keep summaries short enough to scan.
- Distinctive: line 67
Use document nodes for synthesized explanations.
- Distinctive: line 68
Use website nodes only for actual generated previews or captured app screens.
- Distinctive: line 69
Use sections for spatial grouping, not as fake decorative frames.
- Distinctive: line 70
Use layout/tidy tools after creating multiple nodes.
- Distinctive: line 74
Every explanation node should identify where its claim came from.
- Distinctive: line 88
When the agent is uncertain, say so in the node.
- Very specific: line 92
Read references/codebase-canvas-patterns.md when deciding what kind of canvas to create for a repo.
- Very specific: line 93
Use scripts/safe-repo-scan.mjs when agent-canvas scan-repo is not on PATH but this skill is available from the source package.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Explain With Canvas
Use Agent Canvas as a visual explanation surface, not as a decorative diagram. The goal is to leave the user with a canvas that shows what exists, where it lives, how it connects, and what to inspect next.
Safety First
- Treat the target repository as read-only unless the user explicitly asks for code changes.
- Prefer
agent-canvas scan-repoorscripts/safe-repo-scan.mjsfor discovery. These commands read files and write only to an explicit output path. - If the target repo is actively being edited by other agents, store Agent Canvas state outside that repo with
--workspace /safe/path/.agent-canvas/external/<project>. - Check
git status --shortbefore and after scanning when the user asks to avoid disturbing a repo. - Do not run install, build, format, migration, or test commands in the target repo during an explanation pass unless the user asks for them.
Quick Workflow
- Check canvas access:
agent-canvas doctor - Scan the target repo read-only:
agent-canvas scan-repo /path/to/repo --out /tmp/repo-agent-canvas-scan.json --pretty - If a live Agent Canvas is available, generate the canvas:
agent-canvas explain /path/to/repo --workspace /path/to/workspace/.agent-canvas - If no live canvas is available, prepare operations without posting them:
agent-canvas explain /path/to/repo --workspace /path/to/workspace/.agent-canvas --dry-run - Inspect the generated canvas and refine with MCP tools:
- Add focused nodes for unclear flows.
- Re-layout sections if nodes overlap.
- Add provenance to new nodes using
metadata.agentCanvas.files. - Avoid focusing every created node unless the user asks to follow the generation.
Canvas Structure
Create or update stable sections:
- Project overview: purpose, runtime, manifests, commands, current git state.
- Architecture map: major modules and responsibilities.
- Flows: route, screen, API, data, event, or user journeys.
- Source map: top directories, file types, important files.
- Questions: uncertainties, missing context, suggested next probes.
For UI apps, add optional sections when useful:
- Screens and routes.
- Components and design system.
- Data/state flow.
- Build/deploy surface.
Node Rules
- Use deterministic node IDs based on repo name and topic so reruns update existing nodes.
- Keep summaries short enough to scan. Link detail through provenance, not giant pasted files.
- Use document nodes for synthesized explanations.
- Use website nodes only for actual generated previews or captured app screens.
- Use sections for spatial grouping, not as fake decorative frames.
- Use layout/tidy tools after creating multiple nodes.
Provenance
Every explanation node should identify where its claim came from. Prefer this metadata shape:
{
"agentCanvas": {
"generatedBy": "explain-with-canvas",
"repoRoot": "/path/to/repo",
"gitHead": "abc1234",
"files": ["src/app.ts", "package.json"],
"readOnly": true
}
}When the agent is uncertain, say so in the node. A useful visual map is allowed to have open questions; it should not pretend guessed architecture is fact.
References
- Read
references/codebase-canvas-patterns.mdwhen deciding what kind of canvas to create for a repo. - Use
scripts/safe-repo-scan.mjswhenagent-canvas scan-repois not on PATH but this skill is available from the source package.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

