DeepSeek Harness Plugin Hub

Publish and manage complete Harness Profiles. Discover Plugins for your next setup.

Explore

PluginsPresetsDocsNews

Community

Publish a pluginContactReport an issue

Resources

Plugin Hub on GitHubDeepSeek HarnessSystem statusPrivacy notice
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

Independent and unofficial. Not affiliated with, authorized by, or endorsed by DeepSeek.

Image Picker — DSH Plugin for DeepSeek Harness
DeepSeek Harness Plugin Hub
ProfilesPluginsCategoriesNewsDocsSign inManage Profiles
ProfilesPluginsCategoriesNewsDocsSign in
← Plugins
I

dsh-image-picker

Image Picker

DeepSeek Harness Web GUI input box 📎 image-picker button: Add reference images through the system file picker, bypassing drag-and-drop environment issues and reusing the official attachment pipeline (thumbnail generation, limit validation, and upload with the message).

The plugin will be installed here. Keep web if you are unsure.

npx -y @deepseek-ai/dsh plugin --profile web add github:liujia-io/dsh-image-picker#eb45eaa71cb107f8ad6d814e56acaff631ab4bd9
READMECompatibilityVersions

Description

DeepSeek Harness Web GUI input box 📎 image-picker button: Add reference images through the system file picker, bypassing drag-and-drop environment issues and reusing the official attachment pipeline (thumbnail generation, limit validation, and upload with the message). Image-picker button for the conversation composer.

Compatibility and provenance

Image Picker is published as dsh-image-picker and currently resolves to version 1.2.3. The Hub verifies its manifest and preserves the exact installation source for reproducible installs.

DSH compatibility
*
Runtime surfaces
any
Release source
github
Registry updated
9/5/2026

Versions

1.2.3stable
9/5/2026
1.2.0stable
8/26/2026
1.0.1stable
8/26/2026
Show 1 more versionCollapse versions
1.0.0stable
8/26/2026

Related plugins

Loading related plugins…

Latest
1.2.3
DSH
*
HMR
Process restart
Tree shaking
Safe tree shaking not declared
Unpacked size
Unavailable
Files
Unavailable
Surface
any
License
MIT
Source
github
GitHub
★ 0
Weekly downloads
0
Last push
9/5/2026
View source ↗
README badge

Click the badge to copy Markdown for your README.

Do you maintain this Plugin?Claim benefit · Priority security scan

Verify the GitHub repository declared in package.json to manage this listing. After you claim it, Hub will prioritize a security scan of the current version and publish the result when it passes.

Claim this Plugin →
Report an issue

Related plugins

More verified plugins in vision-media.

Tool Describe Image@linxin666/dsh-tool-describe-imageModel-facing describe_image tool for the dsh web GUI: gives a text-only model image understanding by asking a vision-language model at an OpenAI-compatible endpoint to describe one image (local path, http(s) URL, or attachment reference). Hot-pluggable — Modlens@liustack/modlensPlug-in vision for text-only LLMs, powered by the free Antigravity CLIDeepseek Ivideodeepseek-ivideoiPolloWork HyperFrames Video Studio and 27 editable video templates as a native DeepSeek Harness conversation view.Image Gendsh-image-genBring ChatGPT-like image generation to DeepSeek Harness — Gemini, OpenAI, Seedream, DashScope, local ComfyUI & more.

README

dsh-image-picker

DeepSeek Harness Web GUI 插件:在会话输入框左侧添加一个 📎 按钮,通过系统文件选择器添加附件。

  • 图片(png/jpeg/webp/gif)→ 合成 drop 注入官方附件管线:缩略图 rail、数量/大小校验、随消息上传
  • 文本类(.txt / .md / .markdown / .docx)→ 浏览器读出内容后 POST 到本地服务端暂存,消息里只插入一段极短的"回执"(保存路径 + 字符数 + 预览),正文不进会话上下文,agent 用普通读取工具按需取用

为什么这样设计

  1. 官方管线是图片专用——非图文件直接报"不支持类型"。文本类走不了上传路径。
  2. 浏览器 File 对象拿不到真实磁盘路径——"传路径让 agent 自己读"在纯前端走不通:拖拽路径会被浏览器安全策略隐藏,对话框也取不到绝对路径。
  3. 全文内联会撑爆上下文——几万字直接塞进消息既浪费又容易截断。

于是:脚本把选中文件的内容暂存为 ~/.dsh/picker-attachments/ 下的本地文件,消息里给出绝对路径 + 短预览。浏览器端无法偷懒绕过,但服务端 shell(host 插件)可以——它运行在 dsh web 进程里,有完整文件系统访问权。 .docx 在浏览器内用迷你 ZIP 解析 + DecompressionStream("deflate-raw") 提取正文后再暂存。

容量与安全护栏

护栏说明
单文件暂存上限25 MB(超出返回 413)
文件名自动清洗非法字符并加时间戳前缀,防路径遍历
暂存目录~/.dsh/picker-attachments/
降级若暂存接口不可用,自动回退为全文内联(单文件 3 万字符截断)

工作原理

点击 📎 → <input type="file" multiple>
  ├─ image/*  → DataTransfer + 合成 drop → 官方 ComposerAttachments 接收
  └─ 文本/docx → 浏览器读出 → POST /dsh-image-picker/store
              → 落盘 ~/.dsh/picker-attachments/<time>-<name>
              → 插入"回执"(路径+字符数+120字预览)到输入框

投递通道:host 壳(lib/index.js)激活时注册

  • GET /dsh-image-picker/client.js —— client 脚本,每次请求现读磁盘(改完刷新页面即生效)
  • POST /dsh-image-picker/store —— 文本类附件落盘
  • 并通过 webServer.tapIndex 注入 <script defer> 标签(whale-widget 同款模式)

client 端是免模块系统的自执行 IIFE,不对 window.__ModuleLoader__ 有任何依赖。

安装(web profile)

dsh plugin --profile web add github:liujia-io/dsh-image-picker
# 重启 dsh web 生效

要求:仓库已声明 dsh.bundle;正在申请收录 awesome-dsh-plugin(PR #3278)。

版本

  • 1.2.0 — 文本/docx 改为"暂存为本地文件 + 回执",正文不进上下文;/store 落盘路由;文档类支持
  • 1.1.0 — 文本与 docx 内容内联插入草稿;容量护栏;跳过清单
  • 1.0.1 — 打包修复:真实的 lib/index.js host 入口 + "." 导出;client 改经 webServer 路由投递
  • 1.0.0 — 📎 选图按钮(官方附件管线)