dock-images:DSH 生態的圖片查看插件

前言

在 DSH(DeepSeek Harness)環境中,當涉及文件域操作時,需要專門的組件來處理不同類型的文件展示。對於圖片文件,通用組件往往難以兼顧性能與安全性。dock-images 旨在解決這一痛點,提供一套專用的圖片查看方案。

是什麼

dock-images 是一個由 AKS1st 維護的客戶端插件。它爲 dock-files 文件域註冊了 image 查看器,用於接管柵格和圖片擴展名的文件展示,通過 /dock-images 路由讀取圖片內容。

核心功能

  • 多格式支持:支持 PNG、JPEG、GIF、WebP、BMP、SVG、ICO、AVIF 八種常見圖片格式。
  • 整文件讀取:插件一次性讀取文件內容並轉換爲 base64 數據 URL 進行渲染。如果文件大小超過 20 MiB,讀取操作會在前即被拒絕,返回 413 狀態碼。
  • SVG 安全:SVG 文件僅通過 <img src="data:..."> 標籤進行渲染,不會執行 innerHTML 注入,防止潛在的安全風險。
  • 內存與路徑:由於採用整文件讀取,超大圖片可能會佔用較多內存(目前沒有像素級上限)。讀取路徑不限定會話工作區,支持打開對話上下文中提及的工作區外的圖片。

安裝與啓用

該插件需要與 dock-base 和 dock-files 一起安裝。請按順序執行以下命令:

dsh plugin --profile web add dock-base
dsh plugin --profile web add dock-files
dsh plugin --profile web add dock-images

典型用法

  • 共存使用:與 dock-editor、dock-markdown 等查看器共存,系統會根據文件擴展名自動分配對應的查看器。
  • 分發打開:dock-images 作爲 image 查看器被分發打開,用於在 DSH 環境中展示圖片內容。

注意事項

  • 依賴項:
  • 必需依賴:dock >= 0.1.0、dock-files >= 0.1.0、DSH Web 環境、cordis ^4.0.0-rc.7。
  • 可選依賴:react ^18.2.0(客戶端渲染需要;未提供時查看器 UI 不會激活)。
  • 路由安全:/dock-images 路由只接受受信任來源(迴環地址 / trustedHosts + 同源檢查)的 POST 請求。
  • 文件大小限制:文件讀取有 20 MiB 的上限,超過該大小會被拒絕。

結尾

dock-images 提供了在 DSH 環境下查看圖片的底層能力,特別是對 SVG 的安全處理和跨工作區的文件讀取支持。其源碼與目錄信息可參考下方鏈接。

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

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

小夜