DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
A

dsh-attach-picker

Attach Picker

DSH Web 输入框工具栏图片按钮:点击打开系统文件选择器,将图片添加到 DSH Web 编辑器中,无需拖放。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:qwerty-k-de/dsh-attach-picker#9c43e26c7a00d318b6cddaf5ff5e42e8e1096bf1
README兼容性版本

说明

DSH Web 输入框工具栏按钮,可打开系统文件选择器将图片添加到 DSH Web 编辑器中,无需拖放。

兼容性与来源证明

Attach Picker 以 dsh-attach-picker 发布,当前版本为 0.1.2。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/9/30

版本

0.1.2stable
2026/9/30
0.1.0stable
2026/9/1

相关插件

正在加载相关插件…

最新版
0.1.2
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/9/30
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 ui-customization 分类下经过校验的插件。

Dafeiyudsh-dafeiyu由 DeepSeek Harness 会话事件驱动的原生桌面端 BigFish companion。Codex Ui@michengai/dsh-codex-uiDSH Codex UI — 为 DeepSeek Harness 提供极速历史召回、全屏设置皮肤、原生物理毛玻璃换肤、模块化侧栏与桌面原生窗口菜单 · 输入增强、设置皮肤、原生玻璃主题、模块化侧栏和桌面标题栏菜单,适用于 DSHDeepseek Idesigndeepseek-idesign作为原生 DeepSeek Harness 对话视图的 iPolloWork Design Studio 及其精选设计模板。Claude Styledsh-claude-styleDeepSeek Harness (dsh) Web GUI 的 Claude Code Desktop 主题——视觉与交互全面改造

README

dsh-attach-picker

Adds a picture button to the DeepSeek Harness Web composer toolbar. Click it to open the system file dialog and pick one or more images — no drag-and-drop or paste needed. The chosen images land in the same draft-image rail that drag-and-drop and paste fill, and send with the message like any other attachment.

中文说明见 README.zh.md

Features

  • One-click picture icon in the composer tool row (slot conversation.input.left)
  • Native OS file picker, multi-select, filtered to the host's supported image types
  • Honours the host's imageLimits: supported formats, max images per message, max bytes per image — with inline error toasts (e.g. 单张图片不能超过 X MB)
  • Uses the same draft-attachment pipeline as drag-and-drop and paste — conversation.createDrafts(sessionId, files) then inputActions.addAttachments(ids) — so no special handling anywhere else
  • Works on both composer generations (DSH 0.2 and 0.1) from one build; the available pipeline is probed at render time
  • Browser-side only; zero dependencies, tiny footprint

Install

From npm (recommended, prebuilt):

dsh plugin --profile web add dsh-attach-picker

From GitHub:

dsh plugin --profile web add github:qwerty-k-de/dsh-attach-picker

Restart dsh web (or just refresh the page — hot reload usually applies it).

Usage

  1. Open a conversation in DSH Web.
  2. Click the picture button in the composer tool row — the OS file dialog opens.
  3. Pick one or more images. They appear in the draft-image rail.
  4. Send the message; the images are attached like any others.

The button is disabled while a request is in flight.

How it works

  • Client plugin registered via package.json → dsh.client (platform: "web", exports["./client"]).
  • Injects into the composer slot conversation.input.left with order: -50.
  • On selection: limits come from the host projection imageLimits (mediaTypes, maxImagesPerMessage, maxImageBytes) and are checked locally first; admitted files then go through the host's own intake path:
    • DSH 0.2 (dsh 0.2.x, the published contract): conversation.createDrafts(sessionId, files) yields draft descriptors, then inputActions.addAttachments(ids) fills the rail. When addAttachments answers false (adjudicating/submitting), conversation.releaseDraftAttachments(drafts) releases the drafts so nothing leaks.
    • Fallback: the parent composer entry's injected addFiles(files, directories) — a host-internal channel, used only when that verb pair is absent.
    • DSH 0.1: the legacy conversation.createDraftImages(files) + inputActions.addImages(...).
  • The outer element carries data-dsh-attach-picker="<build>:<pipeline>" so the active path is identifiable from the DOM.
  • The Node side (lib/index.js) is intentionally empty — all logic is browser-side.

Screenshots

Storefronts (e.g. dsh-market) show App-Store style screenshots. Declare them in this repo:

// screenshots.json
["assets/screenshot-1.png", "assets/screenshot-2.png"]

(1–8 images; paths relative to the file, inside this repo. Without it, storefronts fall back to images found in this README.)

Requirements

  • DSH Web (dsh web) with the standard conversation / slots client services.
  • Both 0.1.x and 0.2.x work; 0.1.1 onwards targets the 0.2 attachment API.
  • No runtime dependencies.

Changelog

See CHANGELOG.md.

License

MIT