GLFzr/dsh-file-upload

GLFzr★ 5JavaScript最后同步: 2026-08-16

在 GitHub 打开

DSH 拖拽文件转路径插件:Codex 式拖拽,路径自动插入输入框(Drop File to Path for DeepSeek Harness)

README 摘要

DSH 文件上传插件(File Upload)v2.1.0 把 DSH Web GUI 原版 只支持图片 的附件通道,扩展为 任意文件上传 :拖入任意文件(PDF、3MF、ZIP、Excel、代码、图片……)→ 文件上传/引用到本机中转目录 → 输入框出现一个 蓝色文件 chip → agent 可以直接读取该文件。 定位说明(v2.0.0 起) :本插件的本质是 文件上传功能 ,不是"路径展示"。路径只是内部机制——agent 读取文件必须依赖磁盘路径,浏览器又拿不到(见下文"为什么必须上传"),所以插件负责把文件物化到本机、并把路径交给 agent。用户界面不再出现任何路径概念:chip 只显示文件名,用户只需知道"文件上传好了,agent 能读了"。 本仓库是 持久化 profile 插件 ( dsh.bundle + dsh.client 双声明):按官方方式安装一次, DSH 重启后自动生效 。 功能特性 - 🖱️ 页面任意位置拖入任意文件 (多文件、图片均可);拖拽时全屏提示"松开以接收文件" - 📦 任意文件类型 :原版"仅图片"附件通道被完全静默接管,任何文件都可拖入 - 📍 本机文件零上传直引 :Chromium(Edge/Chrome)拖拽会经 entry API 暴露源文件路径——直接引用, 零上传、零复制 (你电脑里那份文件就是唯一的一份);仅当浏览器拿不到路径(如 Firefox)时才走上传中转 - 🔵 文件以 一个整体 chip 插入输入框:蓝色文字( 只显示文件名+格式 )、不可被局部删改(Backspace/Delete 一次删除整个引用) - 📐 篮筐宽度随文件名自适应 :插入时用 composer 真实字体实测文件名宽度,pill 精确贴合(误差 从旧名 dsh-drop-file-to-path 升级:插件 id 与路由已更名为 file-upload ,重装后旧版本无需卸载(同一 bundle 行被覆盖)。 工作原理 部件 位置 职责 Host 半( lib/index.js ) 宿主进程, inject: ['webServer'] HTTP 路由 /api/file-upload/begin\ chunk\ end\ abort\ list\ clean :分块校验、两级去重(lastModified+sha256)、manifest 清单、Origin 校验、node:fs 落盘、清理接口 Client 半( lib/client.js ) 浏览器( ModuleLoader bundle, dsh.client 声明) 全局拖拽监听(capture 接管)、fetch 分块上传、待机圆环、注册 trigger source、经 conversation.input.insertReference 插入…

在 GitHub 查看完整 README →
皮肤/UIai-agentscordisdeepseek-harnessdrag-dropdshdsh-pluginweb-uiagent

分类