DeepSeek Harness (DSH) 框架下,read_image 工具的默认输出通常仅包含路径信息。对于开发者而言,直接在界面中查看图片内容或复制图片是高频需求。dsh-image-preview 插件通过接管 DSH 的工具渲染插槽,为 read_image 提供了内联预览能力,并内置了复制功能。
核心功能¶
该插件基于 DSH 的 tool.call.toolview 插槽实现,覆盖了直接调用和嵌套调用两种场景:
- 内联预览与嵌套支持:支持直接调用
read_image,也支持在run_codeCode Mode 中通过tools.read_image(...)进行嵌套调用。 - 图片复制与格式转换:提供复制按钮,PNG 格式直接复制原字节,其他格式(JPEG, WebP, GIF)在浏览器端转换为 PNG 后复制,并反馈成功或失败。
- 安全与资源管理:仅通过
ctx.sessions.binding(sessionId).session.readAttachment(attachmentId)读取认证附件,模型提供的路径仅用于展示。Blob URL 在替换、重试、卸载或 HMR 时自动回收。
安装与启用¶
安装前需确保环境满足依赖:DeepSeek Harness 0.1.2-alpha.2 或兼容版本。
pnpm pack --pack-destination "$HOME/.dsh/packages"
dsh plugin --profile web add "$HOME/.dsh/packages/dsh-image-preview-0.3.4.tgz"
dsh --profile web --dump-config
执行上述命令后,刷新 Web Profile 页面即可生效。插件会将自定义渲染器注入到 DSH 的工具列表中。
典型用法¶
- 直接调用:在工具调用中直接使用
read_image,图片将以内联形式展示。 - Code Mode 调用:在
run_code代码块内部使用tools.read_image(...),插件会自动识别并渲染嵌套的图片。 - 手动加载预览:在 DSH 设置(Plugins)中关闭“Open previews automatically”选项后,图片默认折叠。点击工具行中的“Show preview”即可加载图片内容。
- 复制图片:点击图片区域即可复制到剪贴板,PNG 格式保留原样,其他格式自动转换。
适用场景与注意¶
该插件适用于需要在 DSH 工具调用中直观展示或处理图片的开发者。插件以当前 DSH 进程权限运行,安装前建议检查源码与许可证(MIT)。
更多细节与源码,可访问 GitHub 仓库。