dsh-file-upload

DSH PLUGIN会话与消息

仓库 awol2005ex3/dsh-file-upload

会话与消息 L4 · 沙盒安装通过 安全审查:低风险 可信度:银 可安装插件
安装这个插件

[DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness)(dsh)插件:在右侧边栏**文件树**的每个目录行上增加上传按钮,把本地文件上传到 workspace。

一句话选型结论

按资料字段整理

dsh-file-upload 是会话与消息类的 DSH 可安装插件,验证等级 L4 · 沙盒安装通过,安全审查为低风险,有可直接复制的安装命令。验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么;涉及密钥或系统权限的,建议先在隔离环境试装。

分类会话与消息 收录类型可安装插件 验证等级L4 · 沙盒安装通过 安全审查低风险
验证等级 L4 L4 · 沙盒安装通过
GitHub 星标 0 复刻 未标注 · 未关闭 issue 未标注
最近更新 2026-10-29 创建于 未标注
README 3.3 KB 正文体量,越大说明说明书写得越细

安装

可安装插件
在 DSH 里执行,装完用 dsh plugin list 确认已挂上;标了 L4 / L5 的命令已在沙盒里真实跑通
dsh plugin --profile web add github:awol2005ex3/dsh-file-upload
  1. 1
    确认版本与运行环境

    仓库没有标注兼容版本与 Node.js 要求,先确认你的 DSH 版本能装,再继续。

  2. 2
    执行安装命令

    在 DSH 里执行上面的命令;多包仓库要注意区分具体子包名,别装错包。

  3. 3
    确认已挂载

    用 dsh plugin list 查看列表里是否出现这个插件,出现即挂载成功。

  4. 4
    试跑并检查权限

    加载后跑一个最小用例,确认它能正常工作;同时看它申请了哪些文件、命令或网络权限。

兼容 DSH 版本未标注版本不匹配时安装会报错
Node.js 要求未标注来自仓库 package.json 的 engines 字段
前置依赖无需要同时安装的同级依赖
npm 包名未发布到 npm可用 npm view 查看包信息

能做什么

会话与消息
字段来自项目仓库与公开索引,中文说明由本站标注

适用场景

GitHub 集成文件读写

验证等级与安全审查

L4 · 沙盒安装通过
自动化流程结论,不是人工审核
验证等级L4 · 沙盒安装通过安装命令在隔离沙盒内真实执行成功,无依赖错误
安全审查低风险静态分析结论,未标注不代表已通过审查
仓库健康度活跃按仓库活跃度与最近更新时间给出
可信度银综合仓库活跃度与验证结果

选择建议

装之前先看这几条
按条目字段给出的判断,不替你决定用不用

值得选的地方

  • 验证等级 L4:在沙盒里真实装过,依赖能装上,不是纸面声明。
  • 静态安全审查为低风险,没有发现明显可疑行为。
  • 有可直接复制的安装命令,不用自己翻文档找入口。

先想清楚的地方

  • 没有声明 Node.js 版本要求,版本不匹配可能装不上。
  • 验证通过不等于安全:插件会读写文件、执行命令或联网,装前先到仓库确认它做了什么。

更适合

  • 需要在会话与消息场景里给 DSH 补能力的人。
  • 想装完就能用、不想自己排依赖的人。
  • 能接受在本地装依赖、愿意自己确认权限的人。

不太适合

  • 只使用 DSH 官方内置能力、不接受第三方插件的人。

同类对比

6 个同类
同分类里挑最接近的几条,字段以各自详情页为准
插件验证等级安全审查星标兼容版本安装命令
dsh-file-upload当前 L4 · 沙盒安装通过 低风险 0 未标注 有
dsh-desktop L3 · 安装规范通过 低风险 3.0 万 未标注 无
openpets L4 · 沙盒安装通过 低风险 1,274 未标注 有
deeptide L4 · 沙盒安装通过 低风险 1,104 0.1.1-rc.2 有
jingyun-dsh L3 · 安装规范通过 低风险 1,004 未标注 有
study-mate 未做沙盒验证 未标注 856 未标注 无

仓库档案

会话与消息
字段来自项目仓库与公开索引,中文说明由本站标注
作者 / 维护方awol2005ex3仓库 dsh-file-upload · 默认分支 未标注
分类会话与消息desktop
收录类型可安装插件声明了 dsh.bundle、可用 dsh plugin add 安装的条目
开发语言未标注仓库主语言
许可证Apache-2.0商用或二次分发前请确认条款原文
星标 / 复刻 / issue0 / 未标注 / 未标注收录时的数值,非实时
创建 / 更新未标注 · 2026-10-29最后推送 未标注
本站收录2026-10-30首次进入本站目录的时间

README 全文

3.3 KB
作者原文,中文版优先;只做安全转义,不改内容

dsh-file-upload

DeepSeek Harness(dsh)插件:在右侧边栏文件树的每个目录行上增加上传按钮,把本地文件上传到 workspace。

功能

  • 文件树的每个目录行(hover 时)显示一个上传图标按钮
  • 点击后弹出文件选择框,支持多选,上传到该目录
  • 通过认证的 /api/file 路由上传文件
  • 上传失败给出 toast 提示(目标目录不存在 / 无权限 / 超过大小上限 / 暂时不可用)

安装

独立工程按 dsh CLI 安装(装完重启宿主——插件集在启动时扫描并缓存):

npx @deepseek-ai/dsh plugin --profile web add D:/path/to/dsh-file-upload

或发布到 npm / Git 后通过插件页的 bundle 安装入口安装。

验证装配:npx @deepseek-ai/dsh --profile web --dump-config 应能看到 file-upload 行;浏览器 DevTools 检查 window.__DSH_BOOT__.entries 含本包、/plugins/dsh-file-upload/client.js 返回 200。

构建

npm install
npm run typecheck   # tsc --noEmit(strict)
npm run build       # tsc 编译到 lib/ + wrap-client.mjs 包装浏览器 bundle

> Windows PowerShell 提示 npm.ps1 未进行数字签名 时,改用 npm.cmd run build。

架构

dsh-file-upload/
├── package.json          # 包声明 + dsh.bundle / dsh.client 配置
├── cordis.patch.yml      # Cordis profile patch(注册插件到配置树)
├── tsconfig.json         # strict + noUncheckedIndexedAccess
├── scripts/
│   └── wrap-client.mjs   # 浏览器 bundle 闭包工厂包装脚本
├── lib/                  # 构建产物(gitignore),勿手改
└── src/
├── index.ts          # 宿主端入口(纯客户端插件,无宿主逻辑)
└── client.ts         # 浏览器端全部逻辑:行扫描 + 按钮注入 + 上传 + toast

插件类型

纯客户端插件(client-only)、纯 DOM 实现:不依赖任何 dsh / cordis 内部 API,因此不需要 inject,也不碰 ctx。

与上游 PR 的关系

上游 feat(ui-sidebar-files) 在文件树组件内部加了 download face 与行内按钮。本插件在外部复现同一交互契约:

环节 上游 PR 本插件
触发 行内 React 按钮 MutationObserver 给行注入 DOM 按钮
取数 fileMediaUrl → /api/file?path= 同一 URL 规则(本地复刻,见踩坑 4)
保存 anchor click anchor click

上传方面采用 POST 方式与同等交互契约对齐。

关键 DOM 锚点

选择器 用途
li[data-files-entry="directory"] 目录行(仅注入上传按钮,文件行不注入)
li[data-files-path] 行的绝对路径属性,上传 URL 的来源

调试

打开 DevTools Console:

日志 判读
[dsh-file-upload] plugin loaded 缺失 → 插件未加载(安装 / bundle 问题),或 init 抛错(查 window.__dshFileUploadError)
refused: 预检被服务端拒绝的原因与状态码

> 更新插件代码后必须整页刷新(F5):插件带单例守卫(__dshFileUploadMounted),仅热更新不会加载新代码。

License

Apache License 2.0

常见问题

5 问
答案由本站依据条目字段整理,不引用上游原文
dsh-file-upload 怎么安装?

在 DSH 里执行 `dsh plugin --profile web add github:awol2005ex3/dsh-file-upload` 即可。

dsh-file-upload 的验证等级是什么意思?

L4 · 沙盒安装通过。安装命令在隔离沙盒内真实执行成功,无依赖错误

dsh-file-upload 安全吗?

低风险。

dsh-file-upload 装之前要先确认什么?

先看它会读写哪些文件、执行哪些命令、连接哪些网络地址;验证等级只说明装得上、跑得起来,不等于安全。涉及密钥或系统权限的,建议先在隔离环境试装。

dsh-file-upload 用的是什么许可证?

上游标注为 Apache-2.0。商用或二次分发前请到仓库确认许可证原文。

同名或近似条目

7 条
不同作者的仓库分开列,请确认你要装的是哪一个
会话与消息
按星标排序,可作替代方案

dsh-desktop

dsh-desktop

为 DeepSeek Harness (DSH) 插件生态打造的现代化桌面端解决方案。万物皆「插件」,桌面本身也是「插件」。

L3 · 安装规范通过 3.0 万 星

openpets

openpets

L4 · 沙盒安装通过 1,274 星

deeptide

deeptide

L4 · 沙盒安装通过 1,104 星

jingyun-dsh

jingyun-dsh

井云 DSH 客户端插件,为 DeepSeek Harness 注入会员登录、订阅支付、算力管控与应用市场,让智能体和技能快速变成可交易商品

L3 · 安装规范通过 1,004 星

study-mate

study-mate

StudyMate 是 DSH 的「学习模式」预设与技能包,为数学、计算机科目定制学习路线、讲解课件与练习评估,跨科目共享记忆。

未标注验证等级 856 星

awol2005ex3 的其它插件

6 个

插件的元信息来自作者仓库;分类、验证等级与安全结论的中文说明为中文整理,最近核验 —。