文件上传助手 a903067276-rgb/dsh-file-upload
DeepSeek 客户端v0.5.4一个上传按钮,还能把文件拖进对话变成本地路径:存到项目 uploads/,路径文本填进输入框,任何视觉工具都能用
39.8/100
综合分
11
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/26 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
相关生态插件(非 dsh 原生,按其对应运行时安装)
git clone https://github.com/a903067276-rgb/dsh-file-upload.git状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:已验证
是什么
生态插件
可安装,未声明 dsh 能力
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 38 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查⚠ 装前注意npm 同名包「dsh-file-upload」归属 hongming-huang/dsh-file-upload,装到的可能不是本插件
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-file-upload @ 0.5.4
✓Node 引擎要求 >=22.19 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/11/1 00:46:41
安全扫描自动 · 静态分析源码v2.7.0🔵 扫描:含敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。
可执行外部命令读写/删除本地文件发起外部网络请求
查看扫描证据(共 12 处,展示前 12 条)
- 写入本地文件lib/index.js:318
await mkdir(dir, { recursive: true }) - 写入本地文件lib/index.js:320
await writeFile(join(dir, fileName), bytes) - 写入本地文件lib/index.js:428
await mkdir(resolved, { recursive: true }) - 执行外部命令来自配置/变量lib/index.js:431
execFile(cmd, [resolved], (error) => (error ? rejectExec(error) : resolveExec())) - 写入本地文件lib/index.js:506
await mkdir(resolve(target, '..'), { recursive: true }) - 写入本地文件lib/index.js:507
await writeFile(target, Buffer.from(base64, 'base64')) - 发起网络请求lib/client.js:297
const res = await fetch( - 发起网络请求lib/client.js:329
fetch("/api/file-upload/save", { - 发起网络请求lib/client.js:390
fetch("/api/file-upload/save-folder", { - 发起网络请求lib/client.js:772
fetch("/api/file-upload/config", { cache: "no-store" }) - 发起网络请求lib/client.js:790
fetch("/api/file-upload/config", { - 发起网络请求lib/client.js:817
fetch("/api/file-upload/open-dir", { method: "POST" })
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
界面预览
2 张 · 点击查看大图功能亮点
- 拖拽文件转本地路径
- 文件存入uploads/
- 路径文本填入输入框
README
由 DeepSeek 最新模型翻译生成dsh-file-upload ⬆️
Awesome DSH Plugin
一个上传按钮 + 拖拽文件直接进对话 —— DeepSeek Harness(dsh)web 端插件。
非官方项目:由社区成员独立开发维护,不是 DeepSeek 官方产品。
⚠️ 已停止维护(2026-09-10)
dsh 0.1.5-rc.1 内置了附件系统,覆盖了本插件的核心能力(可附加任意文件类型;模型按需通过保存的只读路径读取)。本插件不再维护。
- 最高支持的 DSH 版本:0.1.2(最后验证于 0.1.2-rc.1)。不再修复,也不做兼容工作。
- 要升级到 dsh 0.1.5 或更新版本?必须先禁用/移除本插件 —— 它和 0.1.5 的附件系统一起会导致启动失败(web 应用起不来)。升级前,先从配置档 package.json 的 dsh.profile.bundles 里移除 dsh-file-upload。
- 感谢所有用过它的朋友。需要文件附件,请用官方功能(把文件拖进或粘贴进输入框)。
截图
dsh-file-upload 实际效果
输入框工具行里的上传图标按钮(用官方 DSH 设计 token,跟随深色/浅色主题);要么把文件路径插入输入框,要么 —— 对支持的图片 —— 把图片放进官方附件栏(自动复用 file_id)。
展开完整文档(README 剩余 1 节)
dsh-file-upload ⬆️ Awesome DSH Plugin 一个上传按钮 + 拖拽文件直接进对话 —— DeepSeek Harness(dsh)web 端插件。 非官方项目:由社区成员独立开发维护,不是 DeepSeek 官方产品。 ⚠️ 已停止维护(2026-09-10) dsh 0.1.5-rc.1 内置了附件系统,覆盖了本插件的核心能力(可附加任意文件类型;模型按需通过保存的只读路径读取)。本插件不再维护。 - 最高支持的 DSH 版本:0.1.2(最后验证于 0.1.2-rc.1)。不再修复,也不做兼容工作。 - 要升级到 dsh 0.1.5 或更新版本?必须先禁用/移除本插件 —— 它和 0.1.5 的附件系统一起会导致启动失败(web 应用起不来)。升级前,先从配置档 package.json 的 dsh.profile.bundles 里移除 dsh-file-upload。 - 感谢所有用过它的朋友。需要文件附件,请用官方功能(把文件拖进或粘贴进输入框)。 截图 dsh-file-upload 实际效果 输入框工具行里的上传图标按钮(用官方 DSH 设计 token,跟随深色/浅色主题);要么把文件路径插入输入框,要么 —— 对支持的图片 —— 把图片放进官方附件栏(自动复用 file_id)。 功能 | 操作 | 效果 | | 点击上传图标 | 打开系统文件选择器(可多选)→ 智能分流 → 附件栏和/或路径文本 | | 把文件拖进窗口 | 图片和任意文件类型都接管(不再弹「不支持」提示)→ 智能分流 | | 把文件夹拖进窗口 | 递归读取整个文件夹 → 在附件库下按原目录结构重建 → 草稿里只放文件夹路径(不展开内容) | | 图片(PNG/JPEG/WebP/GIF) | ① 归档到附件目录(按天分文件夹)② 加入官方草稿附件栏 → 发送时自动带上 DeepSeek Files API 的 file_id(同一张图复用 id;7 天过期自动重传) | | 其他任意文件 | 归档到附件库的 files/ 子目录,草稿里插入 <prefix> <path> 文本 | | 模型不支持图片 | 图片退化为归档 + 路径文本(绝不作为图片块发送,不会 400) | - 单文件上限:64 MB(DeepSeek Files API 硬限制;本地附件存储默认 20 MB —— 见下方大图片) - 一切都落到附件库:~/Documents/DSH/Attachments/images/<YYYY-MM-DD>/(图片)或 .../files/<YYYY-MM-DD>/(其他文件)—— 可在设置里配置 - 上传时按钮显示忙碌状态;失败会以中文提示弹出 设置卡片 设置卡片 - 附件目录(默认 ~/Documents/DSH/Attachments,支持 ~)——只用于归档图片 - 路径前缀(默认 [上传文件])——加在草稿里路径前面的文字;清空后发送的就是纯路径 - 图片走官方附件(默认开启)——关闭 = 图片沿用旧的路径文本逻辑 - 把图片归档到附件目录(默认开启)——关闭 = 只走官方附件(省磁盘;官方通道不可用时,图片仍会强制归档) - 允许公开上传(默认关闭)——关闭 = 同源检查,只放行 localhost(防 CSRF);开启 = 任何来源都能上传,适合公开访问或端口转发场景(比如 ddnsto)。只有你信任所有能访问 DSH 的人,才开启。 - 剪贴板监听(默认关闭,保留官方内置粘贴;可选:关闭 / 仅图片 / 全部文件)——粘贴拦截模式。关闭 = 用官方内置粘贴;仅图片 = 插件接管粘贴的截图和图片(模型不支持视觉时也能用——回退成路径文本);全部文件 = 任何粘贴的文件都接管(归档到文件库 + 草稿里写路径文本)。改完模式保存后立即生效,不用刷新页面。 - 只读显示:当前宿主允许的图片大小上限 大图片(20–64 MB) DeepSeek 单张图片最大接受 64 MB。DSH 本地附件库默认 20 MB;超过这个大小(且 ≤64 MB)的图片会归档 + 用路径文本引用(模型仍可通过 read_image 读取,读取时同样受附件库上限约束)。 想让大图片也走官方附件通道,把下面这段加到 ~/.dsh/profiles/web/cordis.patch.yml,然后重启 dsh web: - id: attachment-local config: maxImageBytes: 67108864 # 20 MiB → 64 MiB (DeepSeek hard limit) 注意:整行配置会被替换,所以需要的键都要保留;升级后对照 DSH 版本重新检查。不管原图多大,模型看到的始终是 harness 归一化后的版本(≤2048px / ≤4 MiB,每张图 ≤384 token)。 安装 官方 bundle 安装(一行): dsh plugin --profile web add "github:a903067276-rgb/dsh-file-upload#main" 重启 dsh web(bundle 分层在启动时组装)。需要 PATH 里有 pnpm(dsh plugin 会转发给 pnpm)。 手动挂载(备用方案):见 docs/install.md——软链到 ~/.dsh/profiles/web/node_modules/,再在 ~/.dsh/cordis.patch.yml 里加一条条目(写两条会让插件应用两次,路由重复注册直接崩溃),然后重启。 使用 1. 点上传图标选文件(可多选),或者把文件、文件夹拖到窗口任意位置。 2. 图片(当前模型接受图片时):归档到附件目录,同时显示在官方附件栏——发送后模型就能看到图片(DeepSeek Files API file_id,自动复用)。 3. 模型不接受图片时(或者你关掉了官方通道):归档到 images/,然后把 <prefix> <absolute path> 这样的行写进草稿——例如 [上传文件] /path/to/Attachments/images/xxx.png——你原有的草稿文本会保留。 4. 其他文件:归档到 files/,路径文本写进草稿。按发送,模型通过路径读取文件。 5. 文件夹:拖进来一个,它会在附件库下按原有结构重建;只有文件夹路径(一行)写进草稿。 平台支持 | 平台 | 状态 | | macOS | ✅ 已完整测试(开发环境) | | Linux | ✅ 预期可用(纯 Node 实现),未测试 | | Windows | ⚠️ 预期可用(纯 Node 实现,文件名清理兼容 Windows,路径使用平台分隔符),未测试 | 环境要求 - DSH web >= 0.1.0-rc.7(用 dsh web 运行) - 版本兼容性(尽力而为——已在 0.1.2-alpha.2 / 0.1.2-rc.1 和 0.1.1-rc.2 上本地验证;在 0.1.0-rc.7/rc.8 上无法完整检查官方图片通道,不保证): - 维护策略:已停止(2026-09-10)——被 dsh 0.1.5-rc.1 发布的官方附件系统取代。支持的最高 DSH 版本:0.1.2。 不再更新。 | 你的 DSH 版本 | 安装这个 | 说明 | | 0.1.5 及更新 | ⛔ 不要安装 | 已被官方附件系统取代;这个插件会导致启动失败——升级前请禁用/移除它 | | 0.1.1-rc.1 – 0.1.2 | main (v0.1.5+) | 最后支持的范围(功能完整,包括官方图片通道) | | 0.1.0-rc.7 – 0.1.0-rc.8 | main (v0.1.5+) | 可以正常工作;除非会话模型接受图片,否则官方图片通道会自动降级为路径文本。保守回退方案:v0.1.4 — dsh plugin add github:a903067276-rgb/dsh-file-upload#v0.1.4 | | 0.1.0-rc.6 及更旧 | v0.1.2 — dsh plugin add github:a903067276-rgb/dsh-file-upload#v0.1.2 | 最后一个没有设置卡片的版本(卡片使用 rc.7+ 的键控插槽约定) | - 不需要额外的 shell:宿主部分为纯 Node(node:fs),任何平台都不需要系统命令。 工作原理 - 宿主端(lib/index.js):POST /api/file-upload/save —— 校验会话和大小,用纯 Node 把 base64 数据写到 <library>/images/<YYYY-MM-DD>/(mode=image)或 <library>/files/<YYYY-MM-DD>/(mode=file);POST /api/file-upload/save-folder —— 接收相对路径加 base64 列表,在 <library>/files/<date>/<timestamp>-<folder>/ 下重建目录树(每段路径都做净化,拒绝 .. 以防目录穿越);GET/POST /api/file-upload/config 读写设置(走官方 settings 服务),并暴露宿主端图片上限,以及当前会话的模型是否接受图片 —— 判断依据与官方 UI 用的是同一套模型路由来源(模型选择投影 → 请求头 → agentDefaultModel,在较老的 DSH 版本上回退到旧的 apiProxy.sessions.models)。 - 客户端(lib/client.js):在 conversation.input.left 位置注册上传图标;捕获阶段的 document 监听器接管文件拖拽,并通过 webkitGetAsEntry 读取拖入的文件夹;路由规则:受支持的图片 + 官方开关打开 + 模型支持 + 未超宿主端上限 → 归档 + conversation.createDraftImages + inputActions.addImages(官方 InputBar 自带的机制)→ 走官方附件栏(不显示路径文本);其他情况一律降级为归档 + 路径文本;超过 64 MB 直接拒绝并给出提示。 - 错误边界:渲染崩溃时降级为一个小小的「⚠ upload component error」标签,而不是把整个输入区卸载掉。 说明 - 附件库只增不减,从不自动清理(我们不会删你的文件)—— 需要时请手动删除。 - 改完插件后,重启 dsh web 才会生效(客户端改动刷新页面即可;宿主端改动需要重启)。 为什么会有这个插件 当前模型不支持图片时,DSH 原生会拒绝拖入的图片。这个插件在模型能看图时,把图片走官方附件通道(于是它们会走 DeepSeek Files API,并复用 file_id),同时留一份你能访问的归档副本方便日后查找;其他情况则降级为纯路径文本 —— 一条纯文本消息,能通过模型的图片检查,任何模型或视觉插件都能用(它绕开了 DSH 原生的图片拒绝,因为降级路径根本不会提交任何图片块)。 许可证 MIT
预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
a903067276-rgb/dsh-file-upload
一个上传按钮,还能把文件拖进对话变成本地路径:存到项目 uploads/,路径文本填进输入框,任何视觉工具都能用
相关插件 · 视觉能力
智能体工作台Devin-AXIS/iPolloWork
企业级、本地优先的智能体工作台,面向个人和智能体团队——一个工作区,容纳多个智能体引擎;一套统一体系,管理插件和技能;支…
★ 7,364已汉化DSH
72
开源设计工作台nexu-io/open-design
OpenDesign:首个协作式 AI 设计智能体工作区
★ 105,709已汉化DSH
71.8
GPT 图像提示词库freestylefly/awesome-gpt-image-2
Prompt as Code | GPT Image 2 / 2.5 提示词与案例库,530+ 个案例、20+…
★ 34,534已汉化DSH
71.5
多智能体编码工作区spacering-net/codeg
多智能体协作的 AI 编程工作区:汇总 Claude Code、Codex、OpenCode、Pi、Grok Build 等来源的会话。支持桌面应用、自托管服务器或 Docker。
★ 4,319已汉化DSH
71.5
AI 用量桌面小部件Javis603/token-monitor
EN | 简 | 繁 | KO | JA | PT
★ 3,533已汉化DSH
71.1
架构图生成器tt-a1i/archify
把你想理解、规划或分享的事,变成可以互动的可视化作品。
★ 93,105已汉化DSH
71.1
这是你的仓库?认领条目