前言¶
DeepSeek Harness(DSH)默認對話模型不具備視覺能力。要在會話裏「看懂」圖片或屏幕,常見做法是手動把截圖丟進別的識圖服務,再把識別結果複製回 DSH——步驟割裂,模型也無法自主決定何時需要看圖。
dsh-vision 是社區插件,由 linenxi-ctrl 維護,在 DSH 裏掛接一個可自定義地址與密鑰的外部視覺模型,覆蓋網頁選圖識圖、識別結果自動回傳,以及 agent 自主截圖與識圖工具。下文按安裝、配置與用法說明如何落地。
這是什麼¶
dsh-vision(npm 包名 @linenxi-ctrl/dsh-vision,當前版本 v0.2.6)爲 DSH 增加「外掛識圖模型」能力:讓不具備視覺能力的對話模型,通過外部視覺 API 理解圖片與屏幕內容。
插件在 SkillHub 目錄歸類爲「聯網工具」,GitHub 倉庫 linenxi-ctrl/dsh-vision 約 12 stars,許可證 MIT,面向 DSH 0.1.0-rc.6,支持 Windows、macOS、Linux。
核心功能¶
網頁配置與選圖識圖¶
頁面右下角會出現可拖動的 DeepSeek 鯨魚圓形按鈕。點擊打開配置面板,可設置外掛識圖模型的 API 地址、密鑰、模型名、識圖提示詞(skill)、代理與超時。
面板內點「發送圖片」選圖後,插件先將圖片發給外掛識圖模型;識別完成後,識別文本自動作爲消息注入當前會話,無需手動複製粘貼,DSH 再基於該文本作答。識別期間右上角會顯示「外掛模型正在識圖當中」。
模型自主截圖與識圖¶
插件爲 agent 注入 screenshot(截屏)與 recognize_image(識圖)兩個工具,並注入相應提示詞。模型可自行執行「截圖 → 識圖 → 等待結果」流程,例如用戶說「看看我現在屏幕上的報錯」時,由模型調用工具完成。
多協議自動適配¶
內置 OpenAI Chat Completions、OpenAI Responses、Anthropic Messages、Google Gemini 四種協議,protocol 默認爲 auto,按 apiBase 自動探測;另有 custom 模板協議,通過 requestTemplate 與 responsePath 適配長尾接口。
工作原理簡述¶
識圖請求在 host(Node)側發起,不受瀏覽器 CORS 限制;客戶端選圖走同源 POST /api/vision/recognize,同樣無跨域問題。
[用戶點鯨魚按鈕選圖] [模型調用工具]
│ │
▼ ▼
client 轉 base64 發送 screenshot 工具截屏
│ │
▼ ▼
POST /api/vision/recognize recognize_image 工具
│ │
▼ ▼
host 插件 ctx.vision 服務 ──► 協議自動適配後調用外掛識圖 API
│ │
▼ ▼
識別文本 → 自動注入當前會話 識別文本返回給模型
安裝與啓用¶
DSH 生態奉行「一切皆插件」;SkillHub(skillhub.cn)是社區目錄站點,與 DeepSeek / 幻方無官方從屬關係。安裝前建議瀏覽倉庫源碼並確認 MIT 許可證;插件以當前 dsh 進程權限運行,涉及截圖與網絡訪問。
方式一:npm 安裝(推薦)¶
需要系統已裝 Node.js 18+ 與 pnpm。在 DSH 的 web profile 安裝:
dsh plugin --profile web add @linenxi-ctrl/dsh-vision
安裝後 DSH 會自動把 cordis.patch.yml reconcile 進 profile 的 bundle layer,一般無需手改配置文件。
若要讓模型自主截圖與識圖,再執行 agent 工具平面配置:
node ~/.dsh/profiles/web/node_modules/@linenxi-ctrl/dsh-vision/install.mjs
方式二:手動 / 離線安裝¶
從 Releases 下載 zip 解壓:
- Windows 雙擊
install.bat,macOS/Linux 運行bash install.sh; - 腳本檢測不到 Node.js 時,會從國內鏡像(npmmirror / 華爲雲 / 騰訊雲)自動下載免安裝版,無需管理員權限;
- 腳本自動複製插件、更新
cordis.patch.yml、創建 agent presetvision並設爲默認; - 重啓 DSH(關閉後重新
dsh web)。
更新與卸載¶
更新:先卸載舊版,再安裝新版(cordis.patch.yml 與 preset 會自動重建)。
卸載:
# npm 方式先移除包
dsh plugin --profile web remove @linenxi-ctrl/dsh-vision
# 再清理 preset 與設置(任選其一)
node uninstall.mjs
# 或 Windows 雙擊 uninstall.bat,macOS/Linux 運行 bash uninstall.sh
配置¶
點頁面右下角鯨魚按鈕,或直接編輯 $DSH_HOME/settings.yaml 中的 vision 段:
| 字段 | 默認值 | 說明 |
|---|---|---|
apiBase |
https://api.openai.com/v1 |
識圖模型地址(按協議填到基礎路徑) |
apiKey |
空 | API 密鑰 |
model |
gpt-4o-mini |
模型名稱 |
protocol |
auto |
auto / openai-chat / openai-responses / anthropic / gemini / custom |
prompt |
見 README | 識圖提示詞(skill) |
proxy |
空 | 可選 HTTP 代理,如 http://127.0.0.1:65532 |
timeoutMs |
60000 |
單次識圖超時(毫秒) |
requestTemplate |
空 | 僅 custom:請求體 JSON 模板 |
responsePath |
空 | 僅 custom:響應文本取路徑 |
protocol 爲 auto 時按 apiBase 識別協議;也可手動指定。custom 協議下,requestTemplate 佔位符須裸寫(不帶引號),支持 {{model}}、{{prompt}}、{{image}}、{{dataUrl}}、{{mime}}。
典型用法¶
發送圖片識圖:打開會話後,點右下角鯨魚按鈕 → 面板點「發送圖片」選圖。識別完成後文本自動發回當前會話。
模型自主識圖:直接對模型說「看看我現在屏幕上的報錯」,模型會調用 screenshot 截圖,再調用 recognize_image 識圖並繼續推理。
適用場景與注意¶
適合需要在 DSH 內看圖、看屏、讓 agent 自主決定何時識圖的場景;外掛模型地址與密鑰由用戶自行配置,可對接 OpenAI、Anthropic、Gemini 或經 custom 適配的接口。
注意:
- 模型不調用識圖工具時,確認
tool.js已加入 preset 的agent.cordis.yml,且會話使用該 preset。 - 截圖依賴系統能力:Windows 需 PowerShell(
System.Drawing);macOS 用screencapture;Linux 需 ImageMagickimport。 - 識圖失敗常見原因:
apiKey錯誤(401/403)、apiBase與協議不匹配(404)、protocol識別不準或custom的responsePath有誤;外網不通可在proxy填代理地址。
鏈接¶
- SkillHub 目錄頁:linenxi-ctrl/dsh-vision
- GitHub 倉庫:github.com/linenxi-ctrl/dsh-vision