前言¶
在 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