PlantUML Check
Purpose
Use this skill to verify PlantUML .puml files with the strongest available local method. Prefer render-level validation when tooling exists, and fall back to explicit static checks when it does not.
Core Rules
- Validate the
.pumlsource with a PlantUML-compatible renderer when possible. - PNG/SVG generated by a PlantUML-compatible renderer is valid render-level evidence; generative or manually produced images are not.
- Do not send diagram content to a public network service unless the user explicitly allows it.
- Report the validation method used:
plantuml-cli,plantuml-jar,docker,podman,kroki, orstatic. - If only static validation was possible, state that render-level validation was not completed.
Quick Start
Run the bundled checker:
python skills/plantuml-check/scripts/check_plantuml.py docs/trace-code-flow
python skills/plantuml-check/scripts/check_plantuml.py docs/trace-code-flow --format svg --out-dir /tmp/puml-check
python skills/plantuml-check/scripts/check_plantuml.py docs/trace-code-flow --json
Use network rendering only when explicitly permitted:
python skills/plantuml-check/scripts/check_plantuml.py docs/trace-code-flow \
--kroki-url http://internal-kroki/render --allow-network
Workflow
- Identify
.pumlfiles or directories to validate. - Run
scripts/check_plantuml.pyagainst those paths. - Read the method and summary from the output.
- Treat
render_level_validation=falseas a weaker result, not a failure by itself. - Fix failed files before claiming the diagrams are valid.
Exit Codes
0: all files passed render-level validation or static fallback validation.1: at least one file failed validation.2: usage error, missing path, or no.pumlfiles found.
More Detail
See references/validation-strategy.md for renderer priority, safety rules, and expected reporting language.