dsh-file-drop-eac
Manifest validDrag and Drop Files/Folders into Conversation - Built-in Replacement Plugin for Deepseek Harness EAC (replaces the deprecated dsh-file-drop, see issue #141)
dsh-file-drop-eac — 拖入文件/文件夹到对话(EAC 特化版)
Deepseek Harness EAC 配套插件:把本地文件/文件夹直接拖进对话输入框,让 agent 处理。 本包是已弃用的 dsh-file-drop 的 EAC 特化重写,针对"拖入图片会与视觉桥重复注入冲突"做了裁剪。
移植来源与移植目标
- 移植来源:Deepseek Harness EAC 内置插件
dsh-file-drop(仓库内resources/app/assets/plugins/dsh-file-drop),以及用户的拖拽真实路径需求 Deepseek-Harness-EAC issue #141。 - 移植目标:抽出为独立插件库
dsh-file-drop-eac, 作为 EAC 客户端内置替代插件(登记进main.js的COMPANION_PLUGINS并落到resources/app/assets/plugins/dsh-file-drop-eac),由客户端内的syncCompanionPlugins分发到 web profile,替换原dsh-file-drop。发布:https://github.com/jing-hy/dsh-file-drop-eac/releases。
与 dsh-file-drop 的差异
| 行为 | dsh-file-drop(旧) | dsh-file-drop-eac(本包) |
|---|---|---|
| 文本 / 代码文件 | 内容注入输入框(≤256 KB) | ✅ 保留 |
| 二进制 / 超大文件 | 注入完整路径提示 | ✅ 保留 |
| 图片 | 注入路径提示/文本 | ❌ 完全不接管:拖图什么都不做,交给视觉桥 / 原生缩略图 |
| 文件夹 | ❌ 不支持(被静默忽略) | ✅ 新增接管:识别并给出可操作降级提示 |
支持与限制
- 文本 / 代码文件(
.md/.js/.py/.json等常见文本扩展名与无扩展名文件): 内容自动注入输入框(上限 256 KB),带<!-- 拖入文件:<名> -->文件头。 - 二进制 / 超大文件:注入完整路径提示,agent 用文件工具按路径直接读取。
- 图片:不接管(避免与视觉桥/缩略图重复注入冲突)。
- 文件夹:识别为目录并提示 —— 浏览器 / Electron 出于安全限制拿不到文件夹的磁盘绝对路径
(
webUtils.getPathForFile只接受 File,文件夹是webkitGetAsEntry()返回的目录条目, 仅带虚拟路径),因此插件降级提示"在文件/项目目录标签打开该目录"或"关键文件逐一拖入"。
Electron 桌面端通过 preload 暴露的 dshDesktop.getPathForFile(webUtils)获取拖入文件的
完整磁盘路径;纯浏览器打开 WebUI 时自动降级为可读提示。
目录结构
dsh-file-drop-eac/
├── lib/
│ ├── index.js # host half(no-op,让包成为合法 bundle)
│ └── client.js # 浏览器半边(classic-script,经 __ModuleLoader__.load 注册)
├── test/
│ └── client.test.js # node:test + vm 沙箱(纯逻辑 + 端到端 drop 注入)
├── README.md
└── package.json
client.js 是 classic-script bundle(官方模块加载器只支持该形式,不能 import),纯逻辑挂在
window.__dshFileDropEacCore 上(生产无副作用),供 node 测试直接评估本文件。
测试
npm test
# 或
node --test
License: MIT。Deepseek Harness EAC 配套插件。
Comments
Loading…
Similar plugins
by luckamuu
DeepSeek Harness 插件:提供删除已归档会话的入口(可以彻底删除不会在次出现)
★ 0
MIT
JavaScript
Sep 30, 2026
dsh plugin --profile web add @local/archived-sessionsby Zenjibad
Extends the DSH web chat drag-and-drop to accept every file type: non-image files are saved into the active session workspace so the agent can read and use them.
★ 1
MIT
TypeScript
Sep 10, 2026
dsh plugin --profile web add dsh-drop-any-fileby CocoSgt
Bring any file into the conversation — stashed to the workspace and referenced by path; zero type rejection
★ 12
JavaScript
Aug 14, 2026
dsh plugin --profile web add dsh-attachmentsby xswt442-cmd
DSH 上下文窗口逐条归因面板——看谁占了窗口 | Per-message context window attribution for DSH — see what takes up the window
★ 0
MIT
JavaScript
Sep 29, 2026
dsh plugin --profile web add dsh-ballastby Lion-Li-git
DSH desktop (Deepseek Harness EAC) plugin: open http/https/mailto/tel/file links in the default browser/app, bypassing the broken shell.open-external bridge
★ 0
MIT
JavaScript
Sep 3, 2026
dsh plugin --profile web add dsh-external-linksby GLFzr
DSH 拖拽文件转路径插件:Codex 式拖拽,路径自动插入输入框(Drop File to Path for DeepSeek Harness)
★ 10
↓ 1.4k/wk
MIT
JavaScript
Aug 28, 2026
dsh plugin --profile web add dsh-file-upload