cli-anything-mermaid
Create, edit, and render Mermaid diagrams via stateful project files and the mermaid.ink renderer. Designed for AI agents and power users who need to generate flowcharts, sequence diagrams, and other visualizations without a GUI.
Installation
This CLI is installed as part of the cli-anything-mermaid package:
bashpip install cli-anything-mermaid
Prerequisites:
- Python 3.10+
- No external software required (rendering uses mermaid.ink cloud service)
Usage
Basic Commands
bash# Show help cli-anything-mermaid --help # Start interactive REPL mode cli-anything-mermaid # Create a new project cli-anything-mermaid project new -o diagram.json # Run with JSON output (for agent consumption) cli-anything-mermaid --json project info
REPL Mode
When invoked without a subcommand, the CLI enters an interactive REPL session:
bashcli-anything-mermaid # Enter commands interactively with tab-completion and history
Command Groups
Project
Project lifecycle commands.
| Command | Description |
|---|---|
new | Create a new Mermaid project with optional sample preset and theme |
open | Open an existing Mermaid project file |
save | Save the current project to a file |
info | Show current project information |
samples | List available sample diagram presets |
Diagram
Diagram source manipulation commands.
| Command | Description |
|---|---|
set | Replace the Mermaid source text (inline or from file) |
show | Print the current Mermaid source code |
Export
Render and share commands.
| Command | Description |
|---|---|
render | Render the diagram to SVG or PNG via mermaid.ink |
share | Generate a Mermaid Live Editor URL for sharing |
Session
Session state commands.
| Command | Description |
|---|---|
status | Show current session state |
undo | Undo the last diagram source change |
redo | Redo the last undone change |
Examples
Create and Render a Flowchart
bash# Create a project with flowchart sample cli-anything-mermaid project new --sample flowchart -o flow.json # Replace diagram source cli-anything-mermaid --project flow.json diagram set --text "graph TD; A-->B; B-->C;" # Render to SVG cli-anything-mermaid --project flow.json export render output.svg --format svg
Create a Sequence Diagram
bash# Create project with sequence sample cli-anything-mermaid project new --sample sequence -o seq.json # Set diagram from file cli-anything-mermaid --project seq.json diagram set --file my_diagram.mmd # Render to PNG cli-anything-mermaid --project seq.json export render output.png --format png
Share a Diagram
bash# Generate an editable Mermaid Live URL cli-anything-mermaid --project flow.json export share --mode edit # Generate a view-only URL cli-anything-mermaid --project flow.json export share --mode view
Interactive REPL Session
bashcli-anything-mermaid # new flowchart # set graph TD; A-->B; B-->C; # render output.svg # share # quit
State Management
The CLI maintains session state with:
- Undo/Redo: Revert or replay diagram source changes
- 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 (
--jsonflag): Structured JSON for agent consumption
bash# Human output cli-anything-mermaid project info # JSON output for agents cli-anything-mermaid --json project info
For AI Agents
When using this CLI programmatically:
- Always use
--jsonflag for parseable output - 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 render 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

