← 返回列表
⚠ 装前注意
DSH 上传插件dsh-upload-plugin
基本兼容但装前注意:未发布到 npm registry,仅可从源码安装 · 最近上游提交 2026/9/14 · 已提供中文文档
DeepSeek Harness 插件,在聊天 UI 中提供“添加照片”、“添加文件”和“已上传文件”功能,并具备视觉验证和会话隔离。
综合分
29.2
GitHub 分
29.2
用户评分
—
★ Stars
0
周下载量
—
兼容 / 相关生态插件(非 dsh 原生,请按其对应运行时安装)
git clone https://github.com/danhcng3822f/dsh-upload-plugin.git信任档位:已验证本站已于 1 天前真实安装成功
- 是什么
- 生态插件(可安装,未声明 dsh 能力)
- 装得上吗
- 本站已真实安装成功(非静态推断)
- 安全吗
- 本站尚未对该插件做风险分级(暂未覆盖,不等同于无风险)
- 还在维护吗
- 活跃:最近一次提交在 11 天前
档位由下列信号合成:本站实装验证(真实安装,当前最高到 L4)· 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。下方各区块是它的证据明细。 验证判据与等级说明 →
🟢实装验证通过· 2026/9/25
由本站实装验证器在真实 dsh 环境安装成功,非静态推断。
数据截至 2026/9/22(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查⚠ 装前注意
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包dsh-upload-plugin(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
未发布到 npm registry,仅可从源码安装
验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/23 02:25:14
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
由 DeepSeek 最新模型翻译生成DSH 上传插件(dsh-upload-plugin)
License: MIT
DeepSeek Harness (DSH) 的扩展插件,在聊天栏的加号(+)菜单中直接补充 Add photos、Add files 和 Uploaded files 功能,专业地支持来自 Custom Provider 的模型查看图片(Vision)以及按每个会话读取文档/文件。
🌟 突出功能
1. 聊天 UI 上的加号(+)菜单:
- 📷 Add photos (/photos):允许同时选择一张或多张图片(.png、.jpg、.jpeg、.webp、.gif),上传到 workspace 并自动插入提示词,引导模型调用 read_image 工具。
- 📄 Add files (/files):允许同时选择一个或多个文件/文档(.txt、.pdf、.json、.csv、代码、zip 等),上传到 workspace 并自动插入提示词,引导模型使用 read 工具读取文件。
- 📂 Uploaded files (/uploads):查看当前聊天会话中已上传的所有文件/图片列表,并点击以重新查看或重新分析。
2. 标准 DeepSeek Chat 附件界面(原生 Composer Rail):
- 附件卡片直接显示在聊天胶囊框内部,在 Light Mode 和 Dark Mode 下均与字体、颜色、边框和阴影完全同步。
- 图片卡片:标准 64x64px 正方形,16px 圆角(border-radius: 16px),点击可通过 Lightbox viewer 全屏放大查看图片。
- 文件卡片:高度 64px,16px 圆角,带有醒目的文件扩展名徽章(TXT、PDF、PY 等)以及文件名和文件大小。
- 精致的移除按钮(✕),鼠标悬停(hover)时平滑自动显示。
3. 按每个 Session 独立分离文件(Session Isolation):
- 上传的文件带有会话标识符(uploads/session_{sessionId}__),确保此会话的文件不会显示或泄漏到其他会话。
- 每个会话的 /uploads 菜单仅显示属于该会话的文件。
4. 智能自动压缩图片(> 4.5MB):
- 自动检测并压缩/调整超大分辨率图片(> 4.5MB)后再上传,有助于避免超过 DeepSeek Harness 中 read_image 工具的 5MB(5,242,880 bytes)限制。
5. 严格检查模型的 Vision 功能:
- 自动检查当前激活的模型是否配置了 input: [text, image]。如果模型仅支持文本,系统将在上传前直接警告用户。
🛠️ 安装到 DeepSeek Harness
方式 1:使用单行命令安装(推荐)
打开终端并运行命令:
Nếu dùng lệnh dsh:
dsh plugin --profile web add github:danhcng3822f/dsh-upload-plugin
Hoặc nếu dùng pnpm trực tiếp:
pnpm --prefix ~/.dsh/profiles/web add github:danhcng3822f/dsh-upload-plugin
注意: DeepSeek Harness 会自动将插件加载到 web profile 中,并自动注册到 bundles 列表中,你无需手动修改配置文件。之后只需重启 DSH 或重新加载网页 http://127.0.0.1:3080 即可。
方式 2:从本地源代码安装(面向开发者)
1. 将仓库克隆到本地计算机:
git clone https://github.com/danhcng3822f/dsh-upload-plugin.git
cd dsh-upload-plugin
pnpm install
pnpm run build
2. 运行命令链接到 profile:
pnpm --prefix ~/.dsh/profiles/web add link:/duong/dan/toi/dsh-upload-plugin
⚙️ 配置支持 Vision 的 Custom Provider
为了让 Custom Provider 中的模型能够查看和分析图片,请将 modality "image" 添加到 provider 配置中的 "input" 字段:
{
"id": "claude-opus-5-thinking",
"name": "Claude Opus 5 Thinking",
"input": ["text", "image"]
}
💻 开发与测试命令
安装依赖库
pnpm install
运行自动化测试(Vitest)
pnpm test
构建源代码(Host TypeScript 与 Client ESBuild Bundle)
pnpm run build
📁 项目结构
dsh-upload-plugin/
├── src/
│ ├── types.ts # 定义 API 接口与数据类型
│ ├── index.ts # Host 端入口点(Node.js Cordis 插件与 WebServer 端点)
│ ├── host/
│ │ ├── endpoints.ts # 处理 check vision、上传文件、列出上传内容及查看文件
│ │ └── file-utils.ts # 文件标识与唯一路径解析工具
│ └── client/
│ ├── index.ts # Client 端入口点(加载到浏览器中)
│ ├── commands.ts # 将 /photos、/files、/uploads 命令注册到加号菜单
│ ├── attachment-bar.ts # 聊天输入框中的附件栏与 Lightbox 查看器
│ └── uploader.ts # 文件选择器、图片压缩、上传及生成 prompt
├── lib/
│ ├── index.js # 已编译的 Host bundle
│ └── client.js # 浏览器端 Client bundle(Web)
├── tests/ # Vitest 自动化单元测试套件
├── cordis.patch.yml # Cordis DI 配置
├── LICENSE # MIT 开源许可证
└── package.json
📄 许可证(License)
本项目基于开源许可证 MIT License 分发。