dsh-plugin-show-image:DeepSeek Harness 會話內圖片渲染插件

前言

DeepSeek Harness (DSH) 是一個用於智能體開發的框架。在對話調試或演示場景中,讓大模型直接查看本地圖片文件是常見需求。傳統的做法通常是將圖片轉爲 Base64 字符串,但這會顯著膨脹會話日誌,並增加網絡傳輸負擔。dsh-plugin-show-image 插件通過全局工具與按需 HTTP 路由,解決了這個問題,它能在對話流中內聯渲染本地圖片,且不佔用模型上下文。

核心功能

該插件主要由 justhalfbit 維護,提供以下能力:

  1. 內聯圖片渲染:在對話流中直接顯示本地圖片,無需離開會話界面。
  2. 點擊放大:縮略圖支持點擊,通過全屏 Lightbox 浮層查看大圖,支持點擊任意位置或按 Escape 關閉。
  3. HTTP 按需傳輸:圖片字節通過專用 HTTP 路由(GET /show-image?path=…)傳輸,不進行 Base64 編碼,且圖片數據不會進入會話日誌。
  4. 零依賴零構建:純手寫 JavaScript,無 npm 依賴、無構建步驟、無 TypeScript。
  5. 安全守衛:限制 8MB 文件大小,支持擴展名白名單(防止原型鏈污染),不支持的格式會被拒絕。
  6. 完全可逆:所有副作用(工具註冊、HTTP 路由、卡片渲染器)綁定在插件 fiber 上,卸載即清理。

安裝與啓用

安裝前需確保已安裝 DSH 並在 PATH 中包含 pnpm。

dsh plugin --profile web add github:justhalfbit/dsh-plugin-show-image

安裝後,需重啓 dsh web 使配置生效。卸載命令爲:

dsh plugin --profile web remove dsh-plugin-show-image

使用方式

安裝並重啓後,該插件會在所有會話中註冊全局工具 show_image。開發者可以直接對 Agent 發出指令:

把 /path/to/image.png 顯示出來

Agent 調用該工具後,圖片會以內聯卡片的形式渲染在對話流中。點擊圖片即可查看大圖。

限制與注意事項

  1. 運行環境限制:僅適用於 dsh web(瀏覽器 GUI)profile。在 tui 或 headless 環境下不可用。這是因爲插件依賴 webServer 服務,且在無渲染面的終端中註冊一個無法渲染的工具會誤導模型。
  2. 路徑解析規則:相對路徑按 DSH 進程的工作目錄解析,而非當前會話的工作目錄。建議優先使用絕對路徑。
  3. 權限模型:本機任何進程均可通過 GUI 端口讀取本地圖片文件,這與 DSH GUI 既有的本地信任模型一致,無需額外擔憂。

生態與鏈接

該插件遵循 MIT 許可證,完全開源。更多技術細節、目錄索引及源碼倉庫可參考下方鏈接:

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜