核心用法
Dynamic UI Skill 是一套命令行驱动的可视化渲染工具,通过 HTML 模板引擎将结构化 JSON 数据转换为 PNG 图片。用户只需指定模板类型(table、chart-bar、stats、card、dashboard)并传入 JSON 数据,即可生成专业级视觉内容。
核心工作流程:
1. 准备 JSON 数据(支持命令行参数或 stdin 管道输入)
2. 选择模板和主题(modern/dark/minimal)
3. 执行渲染脚本,输出至指定路径或 Base64
4. 必须立即调用 message 工具发送图片,否则用户无法查看
支持五种模板:数据表格、柱状图、KPI 统计卡、信息卡片、组合仪表盘。内置 Chart.js CDN 支持复杂图表渲染。
显著优点
- 零前端依赖:无需浏览器环境,纯命令行完成渲染
- 模板化设计:预设样式覆盖常见业务场景,减少重复开发
- 主题灵活:三种视觉风格快速切换,适配不同场景氛围
- 输出便捷:支持文件保存和 Base64 流输出,便于自动化集成
- 实时生成:适合动态报告、机器人消息、数据看板等场景
潜在缺点与局限性
- 二进制依赖重:必须安装 wkhtmltopdf 套件和 jq,跨平台部署复杂
- 无交互能力:输出为静态图片,不支持鼠标悬停、 drill-down 等交互
- 字体限制:依赖系统字体配置,emoji 需额外安装 fonts-noto-color-emoji
- 性能瓶颈:wkhtmltoimage 基于 QtWebKit,大数据量渲染较慢
- 路径硬编码:必须保存至
~/.openclaw/media/才能被 message 工具识别 - 无缓存机制:相同数据重复渲染无优化,高频调用效率低
适合人群
- 运维/开发人员:需要快速生成监控看板截图
- 数据分析师:制作自动化报告图片用于 IM 推送
- 聊天机器人开发者:为 Bot 添加数据可视化回复能力
- 轻量级 BI 需求者:无需复杂 BI 平台的基础可视化
常规风险
- 路径遍历风险:若用户控制输出路径,可能导致任意文件覆盖
- XSS 注入可能:JSON 数据直接嵌入 HTML 模板,需防范恶意脚本标签
- 依赖服务可用性:Chart.js CDN 故障时图表模板失效
- 敏感数据泄露:生成图片可能包含未脱敏数据,需注意存储位置权限
- 资源耗尽:无限制的渲染尺寸(--width)可能导致内存溢出