Generate ERD .drawio — entities, attributes, 1-1/1-N/N-N relationships, PK/FK. Hand-authored XML with TechSphereX AI palette; complex SQL DDL → /diagram --from-sql.
Scanned 9/6/2026
Install to Claude Code
npx -y skills add KhaiTrang1995/agentic-awesome-kits --skill erd --agent claude-codeInstalls into .claude/skills of the current project.
Are you the author of Erd?
Add the live security badge to your README — it updates automatically with every re-scan.
[](https://www.skillsdirectory.com/skills/khaitrang1995-erd-agentic-awesome-kits)More formats (shields.io, HTML) on the badges page.
---
name: erd
description: Generate ERD .drawio — entities, attributes, 1-1/1-N/N-N relationships, PK/FK. Hand-authored XML with TechSphereX AI palette; complex SQL DDL → /diagram --from-sql.
user-invocable: true
argument-hint: "<entity/relationship description> [--feature slug] [@schema.sql]"
---
# /erd — Entity-Relationship Diagram (draw.io)
## When to use
- Data model for design docs / BA–dev alignment
- A few–dozens of entities described in words (no SQL importer needed)
- Need a hand-editable `.drawio` file
**Switch to `/diagram` when:** large SQL DDL file (`sqlerd.py`), auto-layout for dozens of tables, or batch PNG export.
## Input examples
```
/erd Order 1-N OrderLine, Order N-1 Customer, Order 1-1 Payment --feature booking
/erd auth module: User, Role, UserRole (N-N), Permission
/erd @schema.sql → suggest /diagram --from-sql if >8 tables
```
## Workflow
### Phase 1 — Inventory
List:
| Entity | PK | Attributes (short) | Notes |
|--------|----|--------------------|-------|
| | | | |
Relationships: `A 1—N B`, `A N—N B` (// associative entity if needed).
Missing relationship names / cardinality → ask 1–2 questions; **do not invent** FKs.
### Phase 2 — L3 layout preview
Node + edge table (ASCII/table). User reviews before XML.
### Phase 3 — Generate XML
Use `@_templates/erd.drawio` as the frame:
- Entity = rounded rect (or swimlane-style header): **bold entity name** + attr list
- Mark PK as `PK`; FK as `FK` (text only)
- Edge: `endArrow=ERoneToMany` / `ERmandOne` / `ERzeroToMany` when appropriate; fallback `endArrow=block` + labels `1` / `N` on the edge
- Palette: entity fill `#dae8fc`, associative `#fff2cc`, external ref `#f5f5f5` (per conventions)
- Grid 20; entity box ~200×(40 + 20×attr count)
### Phase 4 — L1 → Write
`docs/diagrams/{feature}/erd-{slug}.drawio`
## Mandatory rules
- @.claude/rules/drawio-conventions.md (core shapes, escape XML)
- @.claude/rules/naming-conventions.md
- @.claude/rules/approval-gate.md
- Do not invent columns/relationships; TBD + ask
- ≤ 15 entities per page — more: split by domain or use `/diagram` + sqlerd/autolayout
## Output
`docs/diagrams/{feature}/erd-{slug}.drawio`
## References
- @_templates/erd.drawio
- @.claude/rules/drawio-conventions.md
- Advanced: skill `/diagram` + `scripts/sqlerd.py`
Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.
No comments yet. Be the first to comment!