skill-plantuml
能力
把 PlantUML 文本(.puml)渲染成 SVG / PNG 并校验质量。引擎(PlantUML ASL + Graphviz + 中文字体)固化在 sandbox-java 镜像里,全程 Sandbox 执行、无需联网。
是 skill-sysml-v2 / skill-mbse-capella 的出图底座:它们桥接出 .puml 后由本技能渲染。
| 图类型 | 是否依赖 Graphviz |
|---|---|
| 序列 / 活动 / mindmap / gantt / wbs / salt / json | 否(内置布局) |
| 类 / 组件 / 状态机 / 部署 / 用例 / 对象 | 是(需 dot) |
核心工作流
Rendering diagram…
⚠️ 渲染与校验一律走
bash(runtime="java")的 JVM 沙箱(预装 PlantUML + Graphviz + 中文字体);不要用默认 shell、不要自己下 plantuml / 装 graphviz(通用沙箱缺dot、且会引入 GPL 构件违反许可)。
质量校验(靠正向断言)
PlantUML 的 exit code 不可靠,以"期望元素是否出现在 SVG 文本里"为准:
| 层 | 含义 |
|---|---|
| L0 | 产物存在且含 <svg |
| L1 | 无 Syntax Error(黑名单辅助) |
| L2 | 正向断言:期望节点名 / 标签 / 中文标题全部出现(主判据) |
| L3 | 中文以 HTML 实体存储,unescape 后比对 |
| L4 | 结构图含 <polygon> / <path>(Graphviz 真布局,排除占位图) |
渲染出的
.svg/.png是主交付物,源码同名存.puml;别存成.puml.txt(会被当纯文本、用户看不到图)。
触发方式
何时用 / 不用
- 用:画 UML / SysML 风格图、把
.puml渲染成 SVG / PNG、给建模技能出图。 - 不用:纯文字说明;数据统计图(用绘图库);与图形无关任务。
相关技能
- skill-mbse-capella · skill-sysml-v2 — 桥接出
.puml交给本技能出图