Back to skills
SKILL.md
Erd
ASecurityGenerate 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.
- 8 stars
- 0 votes
- 0 copies
- 1 view
- Added September 6, 2026
Security analysis
100/100npx -y skills add KhaiTrang1995/agentic-awesome-kits --skill erd --agent claude-codeAre you the author of Erd?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/khaitrang1995-erd)---
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`
Attribution
Comments
Loading comments…