跳到主内容

dsh-visualize 使用指南

让 DSH 模型在对话里直接渲染可交互卡片,把图表、模拟器、对比面板和 UI mockup 做成 HTML 片段展示。

本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。

本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。

快速上手

dsh-visualize

— 源: plugin_wiki.wiki_content

安装与验证

dsh plugin --profile web add github:Nagi-ovo/dsh-visualize

复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。

— 源: plugins.install

常见问题

安装后模型仍只用文字回复,怎么让模型调用 visualize?

模型需要在会话内加载 visualize skill 才会写出片段。如果新会话不触发,重启一次 dsh web 让 skill 注册生效;或在提问时直接说"用 visualize 卡片画一个 XX"。

工具提示 fragment contains a document-skeleton tag,怎么修?

片段里不要再写 <!doctype>、<html>、<head>、<body> 这些外层标签,宿主卡片会自己提供文档骨架、样式和主题,片段只写正文结构即可。

卡片里 fetch、XHR、WebSocket 为什么没反应?

卡片跑在不透明来源的沙箱 iframe 里,CSP 禁止 connect-src 外联,只能从白名单 CDN 加载静态资源(如 Chart.js、D3)。需要联网取数据时,模型应把数据直接写进 fragment。

卡片里的按钮按下去没反应,怎么回传到对话?

当前版本暂未支持卡片内按钮向主对话发送 follow-up 消息,需要让模型重画时只能让模型再调一次 visualize。要点"应用"等按钮请直接告诉模型。

局部修改用 update 还是重新 create?

修改范围在 20 行内、5 处以内、每回复不超过 4 次时用 action: update 做 old_str→new_str 替换,效率更高。结构性改动或较大修订重新 create 一张卡片更稳。每次 update 都会重载卡片,滑块输入等控件状态会回到初始值。

TUI 和无头客户端为什么显示不出来?

交互卡片目前只在 Web UI 渲染;TUI 和 headless 客户端只会看到一段确认文字"Rendered ... (X bytes; workspace copy at ...)",片段文件依然存在,需要在浏览器里打开 dsh web 才能看到卡片。

单张卡片最大能多大?

默认单 fragment 上限 1,000,000 字节(约 1 MB),可在 dsh profile 配置中通过 maxFragmentBytes 调大或调小。超出时会直接报错,并提示减少行数、降低精度。

怎么完全卸载?

dsh plugin --profile web remove github:Nagi-ovo/dsh-visualize,重启 dsh web。已渲染过的会话中卡片会回退为普通工具结果文字。

— 源: plugin_wiki.faq_json

兼容性

  • DSH: >=0.1.0-rc.6
  • Node: 未声明

— 源: plugin_wiki.compatibility_json

踩坑提醒

安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。

— 来源:通用规则