drawio-skill
Create and edit draw.io/diagrams.net diagrams as editable `.drawio` files.
Skill by Agents365-ai
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/paschalidi-drawio-skill
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: backend, testing, writing
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/drawio-skill
What's inside
- Skill name
drawio-skill- Description
- Create and edit draw.io/diagrams.net diagrams as editable `.drawio` files. Covers architecture, UML/ERD/sequence, BPMN, network, and swimlane views authored from a description or converted from code, IaC, SQL, and API schemas, plus sync, query, test, review, export, and publish of existing diagrams. Use when the user asks for draw.io/diagrams.net or an editable diagram; prefer Mermaid/PlantUML when diagrams-as-code is enough.
- License
- MIT
- Metadata
- author: Agents365-ai · version: 3.4.3 · homepage: https://github.com/Agents365-ai/drawio-skill · compatibility: Core IR, XML, sync, query, test, review, and Story workflows need Python 3 only; native export needs draw.io; Graphviz is optional.
- Instructions
- 141 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Agent Skills spec issues
- allowed-tools: must be a space-separated string
Files (80)
- INSTALLED-FROM
- LICENSE
- SKILL.md
- openai.yaml · agents/
- SHAPE-INDEX-NOTICE.md · data/
- databricks-icons.json · data/
- diagram-ir.schema.json · data/
- lobe-icons.json · data/
- shape-index.json.gz · data/
- autolayout.md · references/
- ci-gate.md · references/
- cookbook.md · references/
- databricks.md · references/
- derasterize.md · references/
- diagram-ir.md · references/
- diagram-types.md · references/
- live-infra.md · references/
- mcp.md · references/
- mermaid-authoring.md · references/
- pr-bot.md · references/
- security.md · references/
- semantic-workflows.md · references/
- shapes.md · references/
- style-extraction.md · references/
- style-presets.md · references/
- toolbox.md · references/
- troubleshooting.md · references/
- tubemap.md · references/
- xml-authoring.md · references/
- aiicons.py · scripts/
- asyncapiimports.py · scripts/
- autolayout.py · scripts/
- buildup.py · scripts/
- c4.py · scripts/
- ciimports.py · scripts/
- composeimports.py · scripts/
- compress.py · scripts/
- dbxicons.py · scripts/
- diagram_ir.py · scripts/
- diagramctl.py · scripts/
- diagramctl_mcp.py · scripts/
- dockerimports.py · scripts/
- drawio2mermaid.py · scripts/
- drawio2pptx.py · scripts/
- drawiodiff.py · scripts/
- drawiohtml.py · scripts/
- edgeports.py · scripts/
- encode_drawio_url.py · scripts/
- explain.py · scripts/
- goimports.py · scripts/
- graphqlerd.py · scripts/
- heatmap.py · scripts/
- jsimports.py · scripts/
- k8simports.py · scripts/
- openapiimports.py · scripts/
- prdiff.py · scripts/
- protoimports.py · scripts/
- pyclasses.py · scripts/
- pyimports.py · scripts/
- raster2drawio.py · scripts/
- …and 20 more
SKILL.md (first lines)
# Draw.io Architecture Studio Produce editable `.drawio` artifacts, not flattened pictures. The preferred entrypoint is `scripts/diagramctl.py`, which unifies generation, incremental sync, multi-view projection, semantic queries/tests/reviews, failure analysis, and accessible publishing over a shared Diagram IR. ## Choose the workflow | Request | Route | | --- | --- | | Natural-language diagram with precise styling | Read `references/diagram-types.md`, then `references/xml-authoring.md` and author XML | | Standard flowchart/mindmap/gantt/timeline/etc. with no special styling | If draw.io >=30, read `references/mermaid-authoring.md` and convert Mermaid to native `.drawio` | | Large graph (~15+ nodes) that needs automatic layout | Use `autolayout.py`; read `references/autolayout.md` before passing any `--layout` value | | Code, Terraform, K8s, compose, SQL, OpenAPI, AsyncAPI, or CI source | Use `diagramctl.py build`; read `references/diagram-ir.md` | | Protocol Buffers schema (.proto) | Use `protoimports.py` or `diagramctl.py build`; read `references/toolbox.md` | | GraphQL SDL schema (.graphql/.gql) or introspection JSON | Use `graphqlerd.py` or `diagramctl.py build`; read `references/toolbox.md` | | Running cluster/stack/cloud (actual state, not declared config) | Read `references/live-infra.md`, then use `tfstate.py`, `dockerimports.py`, or `k8simports.py -` | | Update a generated diagram without losing manual layout | Use `diagramctl.py sync`; read `references/diagram-ir.md` | | Executive/system/deployment/data-flow/security views | Use `diagramctl.py views`; read `references/diagram-ir.md` | | Query, architecture policy, review, what-if, or guided walkthrough | Read `references/semantic-workflows.md` | | MCP host (Claude Desktop, Cursor, VS Code, Codex) should call these workflows | Register `scripts/diagramctl_mcp.py`; read `references/mcp.md` | | Prompt phrasing for a diagram type or semantic workflow | Read `references/cookbook.md` | | Enforce architecture rules or visual diffs in GitHub Actions CI | Read `references/ci-gate.md` | | Rendered before/after/diff images as a PR review comment | Use `prdiff.py`; read `references/pr-bot.md` | | Existing `.drawio` to HTML/PPTX/Mermaid/Markdown/animation/runbook | Read `references/toolbox.md`; `diagramctl.py transform` exposes the existing tools | | Pipeline, journey, or subsystem map drawn as a metro/subway map | Use `tubemap.py`; read `references/tubemap.md` | | Shape, cloud/vendor, AI, or Databricks icon | Read `references/shapes.md` or `references/databricks.md`; never guess shape names | | Learn/apply/manage a visual style | Read `references/style-presets.md` | | Extract a reusable style from an existing diagram or theme | Read `references/style-extraction.md` | | Existing image to editable diagram (screenshot, whiteboard photo, legacy PNG) | Read `references/derasterize.md` | | Export/platform problem | Read `references/troubleshooting.md`; for access/network questions read `references/security.md` | ## Unified CLI Run from this skill directory, or replace `scripts/` with the absolute path to this skill's scripts directory: ```bash python3 scripts/diagramctl.py doctor python3 scripts/diagramctl.py build model.json --from ir -o architecture.drawio python3 scripts/diagramctl.py build ./infra --from terraform --group \ --ir-output architecture.ir.json -o architecture.drawio python3 scripts/diagramctl.py sync architecture.drawio ./infra --from terraform \ -o architecture.next.drawio python3 scripts/diagramctl.py views architecture.ir.json \ --views executive,system,deployment,dataflow,security -o views.drawio python3 scripts/diagramctl.py test architecture.drawio --rules policy.yml python3 scripts/diagramctl.py review architecture.drawio -o review.md python3 scripts/diagramctl.py query architecture.drawio --from internet --to orders-db python3 scripts/diagramctl.py whatif architecture.ir.json --fail kafka \ --drawio kafka-failure.drawio -o impact.json python3 scripts/diagramctl.py story architecture.ir.json -o walkthrough.html ``` `doctor` does not launch GUI tools unless `--probe` is passed. Core semantic commands are offline and stdlib-only. ## Creation workflow 1. Infer the diagram type, audience, scope, output format, and location from the request. Ask only when a missing choice materially changes the result; default to PNG plus `.drawio` in the working directory. 2. Select the authoring route from the table above. For a data-backed diagram, prefer Diagram IR and preserve provenance. For a large graph, use an importer or `autolayout.py`; do not hand-place more than roughly fifteen nodes. 3. Resolve an explicitly named style preset, or the user's default preset, as documented in `references/style-presets.md`. Structural diagram conventions and visual presets compose; they do not replace each other. 4. Generate the `.drawio`, then run structural validation: ```bash python3 scripts/validate.py diagram.drawio --score ``` When semantic metadata or an architecture policy is in scope, also run `diagramctl.py test`. Do not present inferred semantic findings as verified runtime facts. 5. Export a draft PNG without embedded XML and inspect it visually. Fix obvious overlap, clipping, disconnected edges, edge-through-node routing, stacked edges, and unreadable labels. Stop automatic vision repair after two rounds. When the drawio binary is unavailable or a visual check is inconclusive, verify the renderer's own DOM instead (`--dump-dom` on the viewer URL, see `references/troubleshooting.md`): read each edge's `<path>` segments and label anchor coordinates directly — vision alone both misses geometry defects and hallucinates new ones. 6. Show the draft and apply targeted edits. Preserve existing geometry for local changes. Use `sync` for source-backed changes and write a reviewable output; use `--prune` only when deletion was requested. 7. After approval, create final requested formats and report both editable source and export paths. ## Export invariants Resolve the available binary once (`drawio`, `draw.io`, the macOS app path, or the Windows executable) and use that exact binary for the run. ```bash # Draft for visual inspection: never use -e here drawio -x -f png --width 2000 -o diagram.png diagram.drawio # Final editable PNG drawio -x -f png -e -s 2 -o diagram.drawio.png diagram.drawio python3 scripts/repair_png.py diagram.drawio.png # Final editable SVG/PDF drawio -x -f svg -e --embed-svg-images -o diagram.svg diagram.drawio drawio -x -f pdf -e -o diagram.pdf diagram.drawio ``` Do not combine `--width` and `-s`. Embedded PNG exports require `repair_png.py`; draft PNGs used by vision must not use `-e`. On Linux headless, follow `references/troubleshooting.md` rather than improvising Electron flags. If the CLI crashes in a macOS sandbox, try one permitted escalated run, then use `encode_drawio_url.py` or deliver XML; do not repeatedly launch it. ## Editing and identity - Use stable semantic IDs and never reuse reserved IDs `0` or `1`.
From paschalidi/opencode-config, MIT.
More from paschalidi/opencode-config
- 0.582score
domain-explorer
paschalidi
Research a domain or area of a codebase (e.g.
SkillAFreshness: A★ 1Claude Code +9 - 0.582score
full-cycle
paschalidi
Run the full ticket-to-PR pipeline as a multi-agent loop.
SkillAFreshness: A★ 1Claude Code +9 - 0.582score
python-pr-review
paschalidi
Review a Python GitHub PR across five specialist axes — DynamoDB data modeling, Python logic & code smells, REST API design, tests, architecture — verify…
SkillAFreshness: A★ 1Claude Code +9 - 0.582score
open-draft-pr
paschalidi
Commit staged changes with a Conventional Commits message, push the current branch, and open a draft PR against a specified base branch using the repository's…
SkillAFreshness: A★ 1Claude Code +9 - 0.578score
drawio
paschalidi
Always use when user asks to create, generate, draw, or design a diagram, flowchart, architecture diagram, ER diagram, sequence diagram, class diagram…
SkillAFreshness: A★ 1Claude Code +9 - 0.542score
create-jira-ticket
paschalidi
Create a Jira ticket (optionally with subtasks) from a description, Slack thread, or conversation context.
SkillBFreshness: B★ 1Claude Code +9 - 0.542score
review-feature-architecture
paschalidi
Review and improve the architecture of a specific feature the user points to.
SkillBFreshness: B★ 1Claude Code +9 - 0.538score
ticket-planner
paschalidi
Read a ticket, stress-test the plan via @grill-me, and write a plan document split into PR-sized chunks.
SkillBFreshness: B★ 1Claude Code +9 - 0.472score
impeccable
paschalidi
Use when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or…
SkillCFreshness: C★ 1Claude Code +9 - 0.462score
grill-me
paschalidi
Interview the user relentlessly about a plan or design until reaching shared understanding, resolving each branch of the decision tree.
SkillCFreshness: C★ 1Claude Code +9 - 0.456score
handoff
paschalidi
Compact the current conversation into a handoff document for another agent to pick up.
SkillCFreshness: C★ 1Claude Code +9 - 0.261score
blog-writer
paschalidi
No description from the publisher yet.
SkillCFreshness: C★ 1Claude Code +9
Signals
- Stars
- 1
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Oct 24, 2026 (5 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 3.4.3
- License
- MIT
- Repository
- github.com/paschalidi/opencode-config
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Agents365-ai
- 0.529score
drawio-skill
Agents365-ai
Use when the user requests diagrams, flowcharts, architecture diagrams, ER diagrams, UML / sequence / class diagrams, network topology, ML/DL model figures…
SkillBFreshness: BClaude Code +9 - 0.525score
drawio-skill
Agents365-ai
Use when the user requests diagrams, flowcharts, architecture diagrams, ER diagrams, UML / sequence / class diagrams, SysML / MBSE diagrams (block definition…
SkillBFreshness: BClaude Code +9
Cite this page
drawio-skill. Agent Mart. https://agentmart.dev/skills/paschalidi-drawio-skill (last updated 2026-10-24)