🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

侧栏文件拖拽 JiayuREN1127/dsh-file-drag

DeepSeek Harness
JiayuREN112711 天前有提交已提供中文文档扫描:未发现敏感能力

把侧边栏文件拖进输入框,变成附件或 @ 路径

30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/24 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add JiayuREN1127/dsh-file-drag
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:仅索引
是什么
dsh 原生插件 · browser
装得上吗
本站尚未做安装检查
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 11 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/3(1 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

DeepSeek Harness 插件:把文件或文件夹从侧边栏文件面板拖进输入框,直接变成 @ 提及。

README

由 DeepSeek 最新模型翻译生成
dsh-file-drag 从 DeepSeek Harness 的 Files 侧边栏把文件和文件夹直接拖进消息输入框。默认情况下,拖入的文件会变成附件卡片;如果你更喜欢,也可以变成 @ 路径。 DeepSeek Harness 本来就接受从操作系统拖入的文件,但侧边栏的 Files 面板根本没有拖拽源,而输入框只接收 payload 类型为 Files 的拖拽。这个插件从外部补上这个缺口:它给现有的文件行加上拖拽能力,用私有 MIME 类型携带相对路径,然后要么把文件上传成卡片,要么把引用作为粘贴内容回放进草稿编辑器。 环境要求 - DeepSeek Harness 0.2.1-rc.2,或仍会渲染右侧边栏 Files 标签页的构建版本。 - desktop 配置档(~/.dsh/profiles/desktop),macOS 应用用的就是这个。
展开完整文档(README 剩余 1 节)
dsh-file-drag

从 DeepSeek Harness 的 Files 侧边栏把文件和文件夹直接拖进消息输入框。默认情况下,拖入的文件会变成附件卡片;如果你更喜欢,也可以变成 @ 路径。

DeepSeek Harness 本来就接受从操作系统拖入的文件,但侧边栏的 Files 面板根本没有拖拽源,而输入框只接收 payload 类型为 Files 的拖拽。这个插件从外部补上这个缺口:它给现有的文件行加上拖拽能力,用私有 MIME 类型携带相对路径,然后要么把文件上传成卡片,要么把引用作为粘贴内容回放进草稿编辑器。

环境要求

- DeepSeek Harness 0.2.1-rc.2,或仍会渲染右侧边栏 Files 标签页的构建版本。
- desktop 配置档(~/.dsh/profiles/desktop),macOS 应用用的就是这个。

安装

git clone https://github.com/JiayuREN1127/dsh-file-drag.git
cd dsh-file-drag
./install.sh

install.sh 会把包复制到 ~/.dsh/profiles/desktop/node_modules/dsh-file-drag,并向 ~/.dsh/profiles/desktop/cordis.patch.yml 追加一行 Loader 记录,追加前先给该文件留一份带时间戳的备份。

手动安装就做同样两件事:

1. 把这个包复制到 ~/.dsh/profiles/desktop/node_modules/dsh-file-drag。
2. 向 ~/.dsh/profiles/desktop/cordis.patch.yml 追加:

- insert:
- id: file-drag
name: dsh-file-drag

然后彻底退出应用(Cmd-Q)再重新打开。Loader 树在启动时构建,所以首次安装只刷新页面不够。之后的插件更新只需刷新页面。

用法

1. 打开右侧边栏的 Files 标签页。
2. 按住文件或文件夹,拖到消息输入框上。
3. 松开。

拖拽过程中,输入框会显示虚线轮廓,提示你可以放下。

拖放行为

在 Settings → General → File drag 里选择行为:

| 模式 | 结果 |
| Card(默认) | 文件被上传,显示为附件卡片,和从操作系统拖入的文件完全一样。 |
| @ path | 文件作为普通 @ 引用插入,文本与输入框自带选择器生成的一致。 |

拖放时按住 Alt(⌥),可以临时改用另一种行为,不改动设置。

偏好按客户端保存在 localStorage 的 dsh-file-drag:mode 键下。

两种模式分别插入什么:

| 源行 | Card 模式 | @ path 模式 |
| src/client/index.ts | 该文件的附件卡片 | @src/client/index.ts |
| 文件夹 packages | 回退为路径引用 | @packages/ |
| my notes.md | 附件卡片 | @"my notes.md" |

路径沿用输入框自己的 formatFileMention 语法:文件夹以斜杠结尾,含空白字符的路径加引号。目录,以及大到工作区读取器处理不了的文件,都会回退成 @ 路径形式。

工作原理

拖拽源。 Files 标签页把每一行渲染成 。插件不猜树形结构:在 pointerdown 时,它给最近的这类行设置 draggable,这样按下就能转成拖拽。

传输。 dragstart 写入私有载荷 application/x-dsh-file-path,里面存相对路径和条目类型。拖拽本身刻意不用原生 Files 类型,因为合成的 File 没有宿主路径,桌面路径桥会拒绝它。

卡片模式。 放下时,插件通过 workspaceFiles 客户端 Remote(readBytes)读取文件,把字节包进真正的 File,再把内置的 Files drop 重放到输入框上。输入框随后走自己的上传路径,所以卡片的行为和从操作系统拖进来的一模一样。会话 id 取自输入框自己的 React 组件,因为客户端没有暴露「当前会话」的访问器。

@ 路径模式。 提及以合成 paste 事件的形式投递,在编辑器根节点上携带 text/plain。草稿编辑器是 Lexical,它忽略直接 DOM 写入和 document.execCommand;paste 是唯一可靠的入口。

设置行。 这项偏好是注册进 settings.general.item 槽位的一行,所以它会出现在 DeepSeek Harness 自己的设置页里。

兼容性

基于 DeepSeek Harness 0.2.1-rc.2 构建。插件依赖一些实现细节,它们不是公开契约:

- 侧边栏行上的 data-files-entry / data-files-path 属性,
- 输入框是处理 paste 的 [contenteditable="true"] 元素,
- settings.general.item 设置槽位,
- window.__ModuleLoader__.load 作为客户端 bundle 入口。

如果未来版本改动了其中任何一项,插件会退化成什么都不做,而不是弄坏页面:每个处理器都有守卫,卡片模式回退到 @ 路径,apply 包了一层,失败也绝不阻塞启动。

限制

- 每次拖拽一个条目;多选拖拽未实现。
- 只在 Files 标签页渲染时可用,因为行就是拖拽源。
- 窗口内任何位置都接受放下,不限于输入框上方。
- 卡片模式通过 workspace-files Remote 读文件,因此继承该服务的大小限制;超大文件回退到 @ 路径。
- 提及相对于 Files 标签页根目录,也就是会话工作区。在另一个文件夹打开的会话仍会收到同样的相对路径。

卸载

rm -rf ~/.dsh/profiles/desktop/node_modules/dsh-file-drag
cp ~/.dsh/profiles/desktop/cordis.patch.yml.bak-<timestamp> ~/.dsh/profiles/desktop/cordis.patch.yml

然后重启应用。

许可证

MIT
预览分享卡片长什么样 ↓JiayuREN1127/dsh-file-drag
分享 · DeepSeek Harness Hub
JiayuREN1127/dsh-file-drag

把侧边栏文件拖进输入框,变成附件或 @ 路径

这是你的仓库?认领条目

回到顶部