前言¶
在 DSH 的插件式开发里,一个常见问题是:模型对话、网页预览和媒体生成之间缺少一个稳定的入口。
比如你希望在 Web UI 里生成图片、视频、语音或音乐,也希望模型能检查前端截图、图表、设计稿,并且让生成结果直接在对话卡片里预览。
AtropinolTT/dsh-guide-dog 是一个面向 DSH web profile 的多模态插件,基于 MiniMax 能力,把视觉检查、媒体生成、语音交互和同源预览放在同一个插件里。
这是什么¶
它由 AtropinolTT 维护,许可证为 MIT。
这个插件的核心定位是:给 DSH Web 端增加多模态能力,包括视觉检查、媒体生成、语音交互和 Web UI 预览。
主要能力包括:
- MiniMax VLM 视觉描述/检查:
guide_dog_vision、guide_dog_inspect - 图像、视频、语音、音乐、文本与网页搜索生成
- Web UI 同源预览/播放:
/guide-dog/media/<file> - 设置页包含认证状态与 speak tester
guide_dog_speak可复用audio-conversation和speech-mmxskill pipeline,缺失时回退mmx speech synthesize- 系统提示自动调用视觉检查工具:
guide-dog-vision,order 110 - 实时通话模式:VAD/压键说话、流式句级 TTS、barge-in、写操作共识保护、进度提示、中/英文界面
- 可访问性模式处于 planned 阶段,
a11y配置块保留
核心功能¶
视觉描述与检查¶
插件提供两个视觉相关工具:
guide_dog_vision:通用视觉描述guide_dog_inspect:结构化视觉检查
这适合需要模型“看图”后再继续工作的场景,例如检查图表、截图、前端设计稿或生成图片是否符合预期。
插件还会挂载系统提示段落 guide-dog-vision,order 为 110,用于在需要视觉检查的任务中自动调用相应工具。
媒体生成¶
插件提供多类生成能力:
- 图像生成
- 视频生成
- 语音生成
- 音乐生成
- 文本生成
- 网页搜索
生成结果会进入插件的媒体目录,并在 Web UI 中通过统一路径预览或播放。
Web UI 预览¶
生成媒体后,插件会提供同源预览路径:
/guide-dog/media/<file>
这个路径用于在对话卡片中渲染或播放生成结果。回复中应包含返回的 url 字段,便于前端展示可访问的媒体地址。
语音与实时通话¶
guide_dog_speak 用于处理语音请求。它可以复用现有的 audio-conversation 和 speech-mmx skill pipeline;当相关 skill 脚本缺失时,会回退到 mmx speech synthesize。
实时通话模式提供以下能力:
- VAD 或压键说话
- 流式句级 TTS
- barge-in
- 写操作共识保护
- 进度提示
- 中文/英文界面
设置页中提供认证状态和 speak tester,可用于检查语音链路是否正常。
可访问性模式¶
可访问性模式目前处于 planned 阶段。
仓库中保留了 a11y 配置块,用于后续扩展。
安装与启用¶
安装命令如下:
dsh plugin --profile web add github:AtropinolTT/dsh-guide-dog
这条命令带有 --profile web,属于 web profile 安装。
如果是静态 bundle 部署,步骤是:
- 编辑
plugin-host.js/plugin-client.js - 运行
deploy/convert_bundle.py - 运行
deploy/publish.py - 重启 DSH
bundle 在 DSH 启动时解析,因此部署后需要重启 DSH。当前部署不使用动态插件、审批卡片或 per-session instances。
典型用法¶
视觉检查示例¶
一个典型的视觉检查流程是:先生成或创建图片文件,再调用检查工具,最后根据结果迭代。
示例:创建 chart.png 后,调用:
guide_dog_inspect({ image: "chart.png", focus: "figure" })
根据返回的检查结果调整图表,再重新检查。确认没有问题后,在最终回复中返回可预览的 url。
生成媒体后预览¶
生成媒体后,在 Web UI 中通过以下路径预览:
/guide-dog/media/<file>
同时,在回复中包含返回的 url 字段,方便用户在对话卡片中访问生成结果。
语音请求¶
语音请求会路由到 guide_dog_speak。
如果你已经配置了 audio-conversation 和 speech-mmx skill pipeline,guide_dog_speak 会复用这些 pipeline;如果缺失,会回退到 mmx speech synthesize。
适用场景与注意¶
这个插件适合需要在 DSH web profile 中增加多模态能力的开发者,尤其是以下场景:
- 需要让模型检查图片、截图、图表或前端设计
- 需要在对话中生成图像、视频、语音、音乐或文本
- 需要在 Web UI 中直接预览生成结果
- 需要语音输入、语音输出或实时通话模式
使用前注意:
- 插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。
- 媒体全局存储位于
~/.dsh/guide-dog,自 2026-08-16 起为整个 web profile 单实例。 - 媒体服务使用扩展名 allowlist、basename-only lookup/traversal guard,并支持 byte-range。
plugin-source.js是 legacy 参考文件,不参与当前 deploy flow。
结尾¶
AtropinolTT/dsh-guide-dog 的价值在于把视觉检查、多模态生成、语音交互和 Web UI 预览整合进 DSH web profile,让插件能力更贴近实际开发流程。
仓库地址:
https://github.com/AtropinolTT/dsh-guide-dog