Excalidraw Architecture
SkillFiles & storageLets your agent read a codebase and generate an Excalidraw architecture diagram of its services and data stores.
Then ask your AI: use the Excalidraw Architecture skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add it as a step in a pipeline you build on Ahel, or connect Ahel to Claude, ChatGPT, Cursor, Claude Code or Codex and ask your AI to use it.
About this skill
Trigger when the user asks for an architecture diagram, says "draw the system", "update the architecture diagram", "give me an excalidraw of this codebase", or "/excalidraw-architecture". Generates or updates an Excalidraw JSON file at docs/architecture.excalidraw by reading the codebase's key entry
What this skill tells your AI
The instructions your AI receives, as published by mergisi/awesome-openclaw-agents in skills/claude/excalidraw-architecture/SKILL.md and read by Ahel’s review.
Produce an architecture diagram of the current project as an Excalidraw file (docs/architecture.excalidraw). The diagram shows services, entry points, data stores, and the edges between them — the kind of whiteboard sketch you'd draw in a design review.
Inspired by Bilgin Ibryam's Medium post on "Architecture diagrams as code with Claude Code + Excalidraw" — credit: @bibryam. This skill is a lightweight reimplementation for OpenClaw-style repos.
When to use
- New contributor asks "what does this repo look like?"
- User wants to update a stale architecture diagram after a refactor
- User says "draw me the system", "excalidraw the backend", "/excalidraw-architecture"
- Preparing a design doc and needs a canonical diagram
Instructions
- Survey the codebase. Use Glob and Grep to identify:
- Entry points:
main.*,index.*,server.*,api/**/route.*,cmd/*/main.go,package.json"scripts" field,DockerfileCMD. - Data stores: mentions of
postgres,redis,convex,sqlite,s3,mongodb,prisma. - External services: Stripe, OpenAI, Anthropic, Twilio, SendGrid, webhook handlers.
- Internal modules: top-level folders under
src/,app/,lib/,agents/. Read at most 3-5 key files to confirm how the pieces connect — don't try to read the whole repo.
- Entry points:
- Sketch the model mentally. List nodes (rectangles) and edges (arrows with labels like "HTTP", "SQL", "pub/sub"). Group related nodes into clusters.
- Generate the Excalidraw JSON. The file format is standard Excalidraw:
Each element needs at minimum:{ "type": "excalidraw", "version": 2, "source": "https://excalidraw.com", "elements": [ /* rectangle, arrow, text elements */ ], "appState": { "viewBackgroundColor": "#ffffff", "gridSize": 20 }, "files": {} }id,type(rectangle/arrow/text/ellipse),x,y,width,height,angle: 0,strokeColor,backgroundColor,fillStyle,strokeWidth,roughness,opacity,seed,versionNonce,isDeleted: false,groupIds: [],boundElements,updated,link: null,locked: false. For text elements addtext,fontSize,fontFamily,textAlign,verticalAlign. For arrows addpoints,startBinding,endBinding. Use integer pixel coordinates on a ~20px grid. Arrange nodes left-to-right by data flow. - Do not hand-forge exotic fields you're unsure about. If a field is optional and you're not confident, omit it — Excalidraw is forgiving on load. When in doubt, open the resulting file in the Excalidraw web app and confirm it renders; fix any errors it reports.
- Write the file to
docs/architecture.excalidrawusing the Write tool. If the directory doesn't exist, create it first withmkdir -p docs. - Offer to open it. Suggest the user run:
Or drag-drop into excalidraw.com.open docs/architecture.excalidraw # macOS — opens in Excalidraw desktop app if installed - Update vs regenerate. If
docs/architecture.excalidrawalready exists, read it first. If the existing layout still fits, only add/move the nodes that changed. If the shape of the system has changed significantly, tell the user and regenerate from scratch.
Style guidelines
- Rectangles for services, ellipses for datastores, small rectangles with dashed stroke for external SaaS.
- Arrows labelled with the protocol (
HTTP,gRPC,SQL,webhook). - Max ~15 nodes. If the system is bigger, produce a top-level diagram and suggest follow-up per-subsystem diagrams.
- Leave a title text element at the top:
<repo name> — architecture (generated <date>).
Example invocations
/excalidraw-architecture- "Draw the architecture of this repo"
- "Update docs/architecture.excalidraw — I just added a Redis queue"
- "Give me an excalidraw diagram of how the OpenClaw gateway talks to agents"
Signals
- GitHub stars
- 4k
- Forks
- 645
- Last commit
- Sep 2026
Advanced
- Item type
- skill
- Key
excalidraw-architecture-mergisi- Source
- github.com/mergisi/awesome-openclaw-agents
github.com/mergisi/awesome-openclaw-agents
Related picks
Skill · supabase
The pick for Postgresperforming-sqlite-database-forensics
Skill · mukul975
The pick for SQLitesqlite-ops
Skill · aiskillstore
The pick for SQLitestripe-best-practices
Skill · bex-co
The pick for Stripestripe
Skill · builderio
The pick for Stripepptx
Skill · anthropics
More in Files & storage