🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

草稿附件守护 2026heshao/dsh-draft-attachments

DeepSeek Harness
2026heshao12 天前有提交已提供中文文档扫描:未发现敏感能力

DeepSeek HarnessDSH插件:把输入框的草稿图片/文件像文字草稿一样持久化。桌面端与 Web 端通用插件…

30.6/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/21 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add 2026heshao/dsh-draft-attachments
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:待复验
是什么
dsh 原生插件 · ui
装得上吗
曾在 dsh 0.2.0-rc.2 下真实安装成功,但当前 dsh 已更新至 0.2.1-rc.5,本站尚未在新版下复验
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 12 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

扫描于 2026/11/1(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 恢复未发送图片与文件
  • 切页重启不丢失
  • 草稿附件持久化

DSH 输入框的草稿附件切页不丢、重启可恢复:用 IndexedDB 捕获,再用官方 createDrafts 还原。

README

由 DeepSeek 最新模型翻译生成
dsh-draft-attachments DeepSeek Harness(DSH)插件:把输入框的草稿图片/文件像文字草稿一样持久化。桌面端与 Web 端通用(插件 UI 运行在两端同源的浏览器渲染层,行为一致)。 DSH 的已知行为:在 A 会话输入框上传了几张图片,中途点到其他页面再切回来,输入的文字还在,但上传的图片消失了。本插件修复这个问题——切换页面、切换会话、甚至重启 DSH 之后回到该会话,未发送的附件会自动恢复到输入框,缩略图原样重现。桌面端与 Web 端表现相同。 兼容性:已在 DeepSeek Harness 44.7.0(宿主内置 @deepseek-ai/dsh-typert-protocol@0.2.1-rc.2 / cordis 4.0.5)上全量测试通过;声明的 peer 范围 >=0.1.5-rc.1 继续覆盖,本版本无需代码改动。
展开完整文档(README 剩余 1 节)
dsh-draft-attachments

DeepSeek Harness(DSH)插件:把输入框的草稿图片/文件像文字草稿一样持久化。桌面端与 Web 端通用(插件 UI 运行在两端同源的浏览器渲染层,行为一致)。

DSH 的已知行为:在 A 会话输入框上传了几张图片,中途点到其他页面再切回来,输入的文字还在,但上传的图片消失了。本插件修复这个问题——切换页面、切换会话、甚至重启 DSH 之后回到该会话,未发送的附件会自动恢复到输入框,缩略图原样重现。桌面端与 Web 端表现相同。

兼容性:已在 DeepSeek Harness 44.7.0(宿主内置 @deepseek-ai/dsh-typert-protocol@0.2.1-rc.2 / cordis 4.0.5)上全量测试通过;声明的 peer 范围 >=0.1.5-rc.1 继续覆盖,本版本无需代码改动。

原理

| | 文字草稿(官方) | 附件草稿(官方) | 附件草稿(本插件) |
| 存储 | localStorage(dsh.conversation.<sessionId>) | 仅内存(draftAttachments Map + attachmentIds 数组) | IndexedDB(字节 + 元数据,按会话记序) |
| 重挂载 | 自动 seed 回输入框 | 被 release(objectURL revoke + Map 删除)→ 丢失 | 读回 IndexedDB → 官方 createDrafts 通道重建 |

- 捕获:插件在 conversation.input.dock(官方 list 型会话级插槽,hero/composer 两种输入区形态都渲染)挂一个不可见哨兵组件,订阅输入态的 attachmentIds,每次变化把草稿附件字节写入 IndexedDB(300ms 去抖;卸载/切换会话时立即冲刷)。
- 恢复:输入区重新挂载时读回记录,走 conversation.createDrafts(sessionId, files)(与点输入框「添加附件」完全同一条官方通道)重建草稿,再经 inputActions.addAttachments 回填 → 官方缩略图 rail 原样显示。
- 清空同步:发送成功或手动删除附件后 attachmentIds 变化,捕获写入同样集合(空集合 = 清除记录),不会复活已发送的图片。

不 patch 任何官方函数;全部通过官方插槽与官方服务公开方法实现。任何一步失败只 console.warn,最坏退化为官方原行为(附件照旧丢失),绝不影响正常输入。

限制

- 单附件 ≤ 30 MB,单会话合计 ≤ 120 MB(超限的附件不持久化,行为同官方)。
- 附件恢复后走官方重新上传/编码流程(图片重建 objectURL 预览;文件类草稿会重新进入后台上传)。
- 恢复时机是「输入区挂载且当前没有附件」;若在提交锁定相位(adjudicating/submitting)挂载,回填会被拒绝并释放草稿,等下次挂载再试。

安装

装进哪个 profile,就在哪个端生效:web profile = 浏览器/网页版,desktop profile = 桌面应用(两处都装则两端都有)。

1. 在 ~/.dsh/profiles/<profile>/package.json(桌面端为 ~/.dsh/profiles/desktop/package.json)的 dependencies 加入: "dsh-draft-attachments": "file:D:/桌面/AI Port/DSH plugins/dsh-draft-attachments"

2. 在同一文件 dsh.profile.bundles 数组加入 "dsh-draft-attachments"。
3. 在 profile 目录执行 pnpm install。
4. 重启 DeepSeek Harness。

卸载 = 从上面两处移除条目 + pnpm install + 重启,无残留(插件数据只存在于浏览器的 IndexedDB dsh-draft-attachments 库,可在 DevTools 清除)。

License

MIT
预览分享卡片长什么样 ↓2026heshao/dsh-draft-attachments
分享 · DeepSeek Harness Hub
2026heshao/dsh-draft-attachments

DeepSeek HarnessDSH插件:把输入框的草稿图片/文件像文字草稿一样持久化。桌面端与 Web 端通用插件…

回到顶部