skills/arc-diagrams/SKILL.md
Create architecture diagrams using Arc's JSON format. Use when asked to "create an architecture diagram", "draw a system diagram", "visualize the architecture", or "make a diagram of".
npx skillsauth add arach/arc arc-diagramsInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Arc is a visual diagram editor for creating architecture diagrams. This skill enables you to generate Arc-compatible diagram configs that can be rendered in React applications.
Activate this skill when the user asks to:
Arc diagrams are JSON objects with this structure:
interface ArcDiagramData {
layout: { width: number; height: number }
nodes: Record<string, NodePosition>
nodeData: Record<string, NodeData>
connectors: Connector[]
connectorStyles: Record<string, ConnectorStyle>
}
Set canvas dimensions (default 1600x900 for editor, smaller for exports):
"layout": { "width": 860, "height": 400 }
Each node needs an x, y position and size:
"nodes": {
"frontend": { "x": 50, "y": 100, "size": "l" },
"api": { "x": 300, "y": 100, "size": "m" },
"database": { "x": 550, "y": 100, "size": "m" }
}
Size options:
| Size | Key | Dimensions |
|------|-----|------------|
| Extra Small | xs | 80 × 36 |
| Small | s | 95 × 42 |
| Medium | m | 145 × 68 |
| Large | l | 210 × 85 |
Each node needs an icon, name, and color:
"nodeData": {
"frontend": {
"icon": "Monitor",
"name": "Frontend",
"subtitle": "React",
"description": "User interface",
"color": "violet"
},
"api": {
"icon": "Server",
"name": "API",
"subtitle": "Node.js",
"description": "REST endpoints",
"color": "emerald"
},
"database": {
"icon": "Database",
"name": "PostgreSQL",
"subtitle": "Storage",
"description": "Persistent data",
"color": "blue"
}
}
Available icons (from Lucide):
Available colors:
violet | emerald | blue | amber | sky | zinc | rose | orange
Define connections between nodes:
"connectors": [
{
"from": "frontend",
"to": "api",
"fromAnchor": "right",
"toAnchor": "left",
"style": "http"
},
{
"from": "api",
"to": "database",
"fromAnchor": "right",
"toAnchor": "left",
"style": "sql"
}
]
Anchor positions:
top | bottom | left | right | bottomLeft | bottomRight | topLeft | topRight
Optional: Add "curve": "natural" or "curve": "step" for curved connectors.
Define appearance for each connector style:
"connectorStyles": {
"http": { "color": "amber", "strokeWidth": 2, "label": "HTTP" },
"sql": { "color": "blue", "strokeWidth": 2, "label": "SQL" },
"async": { "color": "zinc", "strokeWidth": 1.5, "dashed": true }
}
Here's a full diagram for a typical web application:
{
"layout": { "width": 700, "height": 300 },
"nodes": {
"client": { "x": 50, "y": 100, "size": "l" },
"api": { "x": 300, "y": 100, "size": "m" },
"cache": { "x": 300, "y": 220, "size": "s" },
"database": { "x": 520, "y": 100, "size": "m" }
},
"nodeData": {
"client": { "icon": "Monitor", "name": "Client", "subtitle": "React", "color": "violet" },
"api": { "icon": "Server", "name": "API", "subtitle": "Express", "color": "emerald" },
"cache": { "icon": "Zap", "name": "Cache", "subtitle": "Redis", "color": "amber" },
"database": { "icon": "Database", "name": "Database", "subtitle": "Postgres", "color": "blue" }
},
"connectors": [
{ "from": "client", "to": "api", "fromAnchor": "right", "toAnchor": "left", "style": "http" },
{ "from": "api", "to": "database", "fromAnchor": "right", "toAnchor": "left", "style": "sql" },
{ "from": "api", "to": "cache", "fromAnchor": "bottom", "toAnchor": "top", "style": "cache" }
],
"connectorStyles": {
"http": { "color": "amber", "strokeWidth": 2, "label": "HTTP" },
"sql": { "color": "blue", "strokeWidth": 2, "label": "SQL" },
"cache": { "color": "emerald", "strokeWidth": 2, "label": "cache" }
}
}
l size for primary/entry-point componentsWhen generating a diagram, output:
.arc.json file or paste into the Arc editorFor React projects, diagrams can be exported as TypeScript:
import type { ArcDiagramData } from '@arach/arc'
const diagram: ArcDiagramData = {
// ... config here
}
export default diagram
development
# Arc Skills > Pre-built skills for AI coding assistants working with Arc ## Available Skills ### arc-diagram Create and modify Arc architecture diagrams. **Trigger**: When user asks to create, edit, or work with architecture diagrams **Capabilities**: - Generate ArcDiagramData from natural language descriptions - Add/remove/modify nodes and connectors - Apply themes and styling - Convert between JSON and TypeScript formats **Context to provide**: ``` Arc diagram format: JSON with layout,
development
Maintainer-only workflow for handling GitHub Secret Scanning alerts on OpenClaw. Use when Codex needs to triage, redact, clean up, and resolve secret leakage found in issue comments, issue bodies, PR comments, or other GitHub content.
development
Maintainer workflow for OpenClaw releases, prereleases, changelog release notes, and publish validation. Use when Codex needs to prepare or verify stable or beta release steps, align version naming, assemble release notes, check release auth requirements, or validate publish-time commands and artifacts.
development
Run, watch, debug, and extend OpenClaw QA testing with qa-lab and qa-channel. Use when Codex needs to execute the repo-backed QA suite, inspect live QA artifacts, debug failing scenarios, add new QA scenarios, or explain the OpenClaw QA workflow. Prefer the live OpenAI lane with regular openai/gpt-5.4 in fast mode; do not use gpt-5.4-pro or gpt-5.4-mini unless the user explicitly overrides that policy.