demacia1314/dsh-airdrop 预览 preview

demacia1314/dsh-airdrop

⭐ 支持拖拽上传文件/文件夹到 DSH 窗口任意位置;支持远程上传,字节直传服务器会话工作区——部署在服务器上的 DSH 也能像本地一样拖了就发。

Project Overview项目介绍

dsh-airdrop is a native file attachment plugin built exclusively for DeepSeek Harness (DSH). It enables drag-and-drop file and folder uploads to DSH conversations, letting the DSH AI directly access and read content from uploaded files of any format. It works equally well for both locally deployed DSH and remote server-deployed DSH instances accessed via SSH tunnel, delivering a consistent native user experience. To install the plugin via DSH’s official CLI, users can run the command dsh plugin --profile web add dsh-airdrop then restart the dsh web service to activate it.

The plugin is designed for all DSH users who need the AI to process local or remote files, and its workflow is intentionally simple and intuitive. After dragging a file or folder to any area of the DSH web window, an attachment card will automatically generate for the item. Users can preview the file directly in the browser before sending, zoom in on images, skip to different timestamps in videos, and play audio files. All uploaded files are stored only in the current session’s working directory, and are isolated from files attached to other DSH sessions.

The plugin is distributed under the permissive MIT open-source license, and supports single-file uploads up to 20 GiB. It uses chunked uploads with automatic resume after network interruptions, and will automatically retry with smaller chunks if the gateway returns a 413 “payload too large” error. Users cannot rely on it to upload completely empty folders, as most browsers do not report empty directories to the plugin. To clean up old storage, users only need to delete the plugin’s per-session metadata files, rather than the entire DSH uploads directory.

dsh-airdrop 是专为 DeepSeek Harness (DSH) 开发的原生附件上传插件,核心功能是支持用户通过拖拽的方式将本地或远程的任意格式文件、整个文件夹上传到 DSH 会话中,让 AI 直接读取文件内容。它支持部署在服务器上的 DSH 实例通过 SSH 隧道访问时,也能获得和本地部署 DSH 完全一致的拖拽上传体验。

这款插件面向需要让 DSH 处理本地文件的开发者和普通用户,使用流程非常简单:用户只需要将文件或文件夹拖到 DSH 网页窗口的任意位置,松开后就会自动生成附件卡片,用户可以在发送前直接在浏览器内预览文件内容,确认后点击发送按钮即可随消息发送给 AI。所有上传文件仅存储在当前会话的工作区内,不同会话之间的文件相互隔离,不会互相干扰。

插件采用 MIT 许可证开源,单文件上传上限为 20 GiB,支持分块上传和断网续传,如果遇到网关返回 413 错误会自动调小分块大小重试。安装可通过 DSH 官方命令行执行 dsh plugin --profile web add dsh-airdrop 后重启 dsh web 即可完成,也支持从源码构建安装。空文件夹可能无法被浏览器识别上传,清理空间只需删除对应会话的元数据即可。

Pre-install check安装前体检Compatibility · Security兼容性 · 安全性 1 warning1 项注意
  • Only 8 stars - very few users, little community feedback星标只有 8,几乎没人在用,遇到问题缺少社区反馈
DSH walks through these 9 checksDSH 会逐条核对这 9 项

Compatibility兼容性

  • DSH, Node, OS and profile requirementsDSH 版本 / Node 版本 / 操作系统 / profile 是否满足要求
  • External dependencies and runtimes (Electron / Python / Docker, ...)外部依赖与运行时(Electron / Python / Docker 等)是否齐备
  • Conflicts with installed plugins: command names, skill / tool names, ports, duplicate MCP registration与已装插件是否冲突:命令名、skill / tool 重名、端口占用、重复 MCP 注册

Security安全性

  • Repo matches the facts registered here; archived or abandoned?仓库是否与页面登记一致,是否归档或长期停更
  • Safety of preinstall / install / postinstall and install.sh / setup.ps1preinstall / install / postinstall 与 install.sh、setup.ps1 是否安全
  • curl|bash, download-then-execute, obfuscation, unrelated domains → stop immediatelycurl|bash、下载即执行、混淆代码、无关域名 → 立刻停止
  • Typosquatting or unmaintained packages among the new dependencies新增依赖里有没有 typosquatting 或无人维护的包
  • Requested permissions vs. what the feature actually needs申请了哪些权限、是否超出功能所需(filesystem / network / shell / clipboard)
  • Any sudo / admin requirement, plus uninstall and rollback是否要求 sudo / 管理员权限,以及卸载与回滚方式

Anything uncertain must be marked unknown with a note on how to confirm it. This site's signal screen is a static snapshot, not a security audit.拿不准的必须标「未知」并说明要我怎么确认。本站的信号筛查是静态快照,不能替代安全审计。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add dsh-airdrop

把 demacia1314/dsh-airdrop 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

📮 dsh-airdrop

把文件拖进 DSH,AI 就能读

⭐ 支持拖拽上传 · ⭐ 支持远程上传 · ⭐ 任意格式附件

部署在服务器上的 DSH,也能像本地一样,拖了就发

English · AI 版本 · 更新日志

listed on awesome dsh plugin DSH License

附件随消息发出,AI 直接读取文件内容

✨ 亮点

  • 🖱️ 拖进来就行——文件、整个文件夹,拖到窗口任意位置,松手即传
  • 🌐 远程也好用——DSH 装在服务器上?通过 SSH 隧道访问,传文件和本地一模一样
  • 📎 不挑格式——图片、视频、音频、PDF、压缩包、代码文件……任何文件都能传
  • 👀 先看再发——发送前在浏览器里直接预览:图片放大看,视频拖进度条,音频直接播
  • 💬 原生体验——附件卡片与聊天气泡对齐,点平常见的发送按钮即可,AI 自动读取文件内容
  • 🔒 各管各的——文件只落在当前会话的工作区,会话之间互相隔离

🖼️ 看一看

拖进来 发出去 随时预览
拖入文件后显示附件卡片 附件随消息发出,AI 读取内容 浏览器内预览附件
拖到窗口任意位置,卡片立刻出现 附件跟着消息走,AI 直接读内容 点开就能预览,还能下载

🚀 三分钟上手

dsh plugin --profile web add dsh-airdrop
dsh web

重启 dsh web 生效;会话需要有工作区目录。从 0.2.1 起包名与仓库统一为 dsh-airdrop(旧名 dsh-universal-attachments 已停用);历史会话里的附件卡片与磁盘数据仍按旧格式读取,无需迁移。

想从源码构建?
pnpm install
pnpm run build
pnpm pack
dsh plugin --profile web add .\dsh-airdrop-0.2.1.tgz

❓ 可能会问

大文件能传吗? 能。文件分块上传,网络断了自动续传;网关嫌块太大(返回 413)时会自动调小重试。单文件上限 20 GiB。

支持哪些格式? 全部。不按格式拒绝任何文件。"任意格式"指不拦截字节内容,不代表 AI 一定能读懂每种格式;插件也不会自己去执行或解压你的文件。

空文件夹会一起传吗? 浏览器一般不报告空目录,所以完全空的文件夹可能不会被保留。

开多个标签页会怎样? 同一会话的多个标签页共享一份待发送附件,谁先点发送,谁就带走当时已传完的文件。

想清理空间怎么办? 先停掉 DSH,然后只删除该插件对应的会话目录和它的元数据文件(.dsh/uploads/.universal-attachments/<会话标识>.json)。不要整个删掉 .dsh/uploads/,历史附件链接会失效。

🛡️ 要放到服务器上?

DSH 没有内建的多用户认证,别直接暴露到公网。让它只监听服务器本机,用 SSH 隧道访问:

# 服务器上
dsh web --port 3080

# 你的电脑上
ssh -L 3080:127.0.0.1:3080 user@你的服务器

然后在本机浏览器打开 http://127.0.0.1:3080 即可。

License

MIT

← 上一个 Prev dsh-gui 下一个 Next dsh-agent-memory →