rendering
PlantUML CLI for AI Agents
Use the PlantUML CLI from KosmoKrator to call PlantUML tools headlessly, return JSON, inspect schemas, and automate workflows from coding agents, scripts, and CI.PlantUML CLI Setup
PlantUML can be configured headlessly with `kosmokrator integrations:configure plantuml`.
# Install KosmoKrator first if it is not available on PATH.
curl -fsSL https://raw.githubusercontent.com/OpenCompanyApp/kosmokrator/main/install.sh | bash
# Configure and verify this integration.
kosmokrator integrations:configure plantuml --enable --read allow --write ask --json
kosmokrator integrations:doctor plantuml --json
kosmokrator integrations:status --json Runtime Requirements
Install these host dependencies before calling PlantUML locally.
| Name | Type | Description |
|---|---|---|
java | binary | Java is required to run PlantUML. |
Credentials
Authentication type: No credentials none. Configure credentials once, then reuse the same stored profile from scripts, coding CLIs, Lua, and MCP.
No credentials are required.
Command Patterns
The generic command is stable across every integration. The provider shortcut is shorter for humans.
kosmo integrations:call plantuml.render_plantuml '{"syntax":"example_syntax","title":"example_title"}' --json kosmo integrations:plantuml render_plantuml '{"syntax":"example_syntax","title":"example_title"}' --json Discovery
These commands return structured output for coding agents that need to inspect capabilities before choosing a function.
kosmo integrations:docs plantuml --json
kosmo integrations:docs plantuml.render_plantuml --json
kosmo integrations:schema plantuml.render_plantuml --json
kosmo integrations:search "PlantUML" --json
kosmo integrations:list --json Automation Contexts
The same configured command surface works in these environments. The command does not change unless the host wrapper, credentials, or permissions change.
CLI Functions
Every function below can be called headlessly. Commands are highlighted, copyable, and scroll horizontally when payloads are long.
plantuml.render_plantuml
Render a PlantUML diagram to a PNG image. Pass valid PlantUML syntax and get back a markdown image embed. Supported diagram types: class, sequence, activity, component, state, use case, object, deployment, timing, network (nwdiag), wireframe (salt), Gantt, mindmap, WBS, JSON, YAML, ERD. Example syntax: ``` @startuml Alice -> Bob: Authentication Request Bob --> Alice: Authentication Response Alice -> Bob: Another request Bob --> Alice: Another response @enduml ``` Tips: - Always wrap syntax in @startuml / @enduml - Use `->` for solid arrows, `-->` for dashed arrows - Use `class ClassName { }` blocks for class diagrams - Use `(*) -->` for activity diagram start - Use `[Component]` for component diagrams - Use `state "Name" as s1` for state diagrams
write - Parameters
- syntax, title
kosmo integrations:call plantuml.render_plantuml '{"syntax":"example_syntax","title":"example_title"}' --json kosmo integrations:plantuml render_plantuml '{"syntax":"example_syntax","title":"example_title"}' --json Function Schemas
Use these parameter tables when building CLI payloads without calling integrations:schema first.
plantuml.render_plantuml 2 parameters
kosmo integrations:schema plantuml.render_plantuml --json | Parameter | Type | Required | Description |
|---|---|---|---|
syntax | string | yes | PlantUML diagram syntax. Should be wrapped in @startuml/@enduml (auto-wrapped if missing). |
title | string | no | Diagram title used as alt text (default: "Diagram"). |
Permissions
Headless calls still follow the integration read/write permission policy. Configure read/write defaults with
integrations:configure. Add --force only for trusted automation that should bypass that policy.