CLI-Anything >-
install
source · Clone the upstream repo
git clone https://github.com/HKUDS/CLI-Anything
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/HKUDS/CLI-Anything "$T" && mkdir -p ~/.claude/skills && cp -r "$T/drawio/agent-harness/cli_anything/drawio/skills" ~/.claude/skills/hkuds-cli-anything-179ccf && rm -rf "$T"
manifest:
drawio/agent-harness/cli_anything/drawio/skills/SKILL.mdsource content
cli-anything-drawio
A CLI harness for Draw.io — create, edit, and export diagrams from the command line.
Installation
This CLI is installed as part of the cli-anything-drawio package:
pip install cli-anything-drawio
Prerequisites:
- Python 3.10+
- drawio must be installed on your system
Usage
Basic Commands
# Show help cli-anything-drawio --help # Start interactive REPL mode cli-anything-drawio # Create a new project cli-anything-drawio project new -o project.json # Run with JSON output (for agent consumption) cli-anything-drawio --json project info -p project.json
REPL Mode
When invoked without a subcommand, the CLI enters an interactive REPL session:
cli-anything-drawio # Enter commands interactively with tab-completion and history
Command Groups
Project
Project management: new, open, save, info.
| Command | Description |
|---|---|
| Create a new blank diagram |
| Open an existing .drawio project file |
| Save the current project |
| Show detailed project information |
| Print the raw XML of the current project |
| List available page size presets |
Shape
Shape operations: add, remove, move, resize, style.
| Command | Description |
|---|---|
| Add a shape to the diagram |
| Remove a shape by ID |
| List all shapes on a page |
| Update a shape's label text |
| Move a shape to new coordinates |
| Resize a shape |
| Set a style property on a shape |
| Show detailed info about a shape |
| List all available shape types |
Connect
Connector operations: add, remove, style.
| Command | Description |
|---|---|
| Add a connector between two shapes |
| Remove a connector by ID |
| Update a connector's label |
| Set a style property on a connector |
| List all connectors on a page |
| List available edge styles |
Page
Page operations: add, remove, rename, list.
| Command | Description |
|---|---|
| Add a new page |
| Remove a page by index |
| Rename a page |
| List all pages |
Export
Export operations: render to PNG, PDF, SVG.
| Command | Description |
|---|---|
| Export the diagram to a file |
| List available export formats |
Session
Session management: status, undo, redo.
| Command | Description |
|---|---|
| Show current session status |
| Undo the last operation |
| Redo the last undone operation |
| Save session state to disk |
| List all saved sessions |
Examples
Create a New Project
Create a new drawio project file.
cli-anything-drawio project new -o myproject.json # Or with JSON output for programmatic use cli-anything-drawio --json project new -o myproject.json
Interactive REPL Session
Start an interactive session with undo/redo support.
cli-anything-drawio # Enter commands interactively # Use 'help' to see available commands # Use 'undo' and 'redo' for history navigation
Export Project
Export the project to a final output format.
cli-anything-drawio --project myproject.json export render output.pdf --overwrite
State Management
The CLI maintains session state with:
- Undo/Redo: Up to 50 levels of history
- Project persistence: Save/load project state as JSON
- Session tracking: Track modifications and changes
Output Formats
All commands support dual output modes:
- Human-readable (default): Tables, colors, formatted text
- Machine-readable (
flag): Structured JSON for agent consumption--json
# Human output cli-anything-drawio project info -p project.json # JSON output for agents cli-anything-drawio --json project info -p project.json
For AI Agents
When using this CLI programmatically:
- Always use
flag for parseable output--json - Check return codes - 0 for success, non-zero for errors
- Parse stderr for error messages on failure
- Use absolute paths for all file operations
- Verify outputs exist after export operations
More Information
- Full documentation: See README.md in the package
- Test coverage: See TEST.md in the package
- Methodology: See HARNESS.md in the cli-anything-plugin
Version
1.0.0