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

回收站 qwertyuiop314/dsh-recycle-bin

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

把归档对话移入回收站,可批量还原或彻底删除

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

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

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

状态速览

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

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

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

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

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

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

依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-client-ui-sidebar
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 移入回收站
  • 批量还原
  • 彻底删除

DSH 回收站插件:归档垃圾、批量恢复/清除、侧边栏批量归档

README

由 DeepSeek 最新模型翻译生成
dsh-recycle-bin DeepSeek Harness 回收站为 DSH 增加独立回收站:归档对话可移入回收站、批量还原、彻底删除,并支持左侧栏批量归档。 一个独立的 DSH 回收站插件:把归档对话移入可恢复的回收站,支持批量还原或彻底清除,还能在左侧栏批量归档。 为 DeepSeek Harness (DSH) 提供独立的回收站管理能力。插件通过 DSH 官方 UI 插槽与独立 HTTP 路由工作,不修改 DSH 核心代码,也不修改其它插件源码;卸载后原界面可恢复。 这个插件通过官方 UI 插槽和自有的命名空间 HTTP 路由,为 DSH 增加回收站工作流。它不修改 DSH 核心,也不修改任何现有插件源码;卸载后即可恢复原界面。
展开完整文档(README 剩余 1 节)
dsh-recycle-bin

DeepSeek Harness 回收站为 DSH 增加独立回收站:归档对话可移入回收站、批量还原、彻底删除,并支持左侧栏批量归档。

一个独立的 DSH 回收站插件:把归档对话移入可恢复的回收站,支持批量还原或彻底清除,还能在左侧栏批量归档。

为 DeepSeek Harness (DSH) 提供独立的回收站管理能力。插件通过 DSH 官方 UI 插槽与独立 HTTP 路由工作,不修改 DSH 核心代码,也不修改其它插件源码;卸载后原界面可恢复。

这个插件通过官方 UI 插槽和自有的命名空间 HTTP 路由,为 DSH 增加回收站工作流。它不修改 DSH 核心,也不修改任何现有插件源码;卸载后即可恢复原界面。

功能 / Features

- 回收站入口
- 左侧栏左下角、设置图标上方新增“回收站”入口
- 归档管理
- 归档列表支持单个/批量/按工作区操作
- 可“还原”到原工作区/文件夹
- 可“移入回收站”
- 回收站管理
- 支持批量“还原”
- 支持批量“彻底删除”
- 安全确认
- 移入回收站与彻底删除均有二次确认
- 运行中的对话会红色高亮,并在确认弹窗中明确提示
- 左侧栏批量归档
- 对话左侧提供隐形勾选框,鼠标移动到左侧区域时亮起
- 勾选后可批量归档
- 已勾选时,三个点菜单会变为“批量归档”
- 跨平台
- 使用 Node.js path / os / fs,兼容 Windows、Linux、macOS

- Recycle bin entry
- Sidebar footer entry above Settings
- Archive management
- Single, batch, and workspace-level operations in the archive list
- Restore to the original workspace/folder
- Move to trash
- Trash management
- Batch restore
- Batch permanent delete
- Safety
- Confirmations before moving to trash and before permanent deletion
- Running conversations are highlighted in red and clearly warned in the dialog
- Sidebar batch archive
- Invisible checkboxes on the left of conversation rows; they appear on hover
- Batch archive after selection
- The row overflow menu becomes “batch archive” while selections exist
- Cross-platform
- Uses Node.js path / os / fs; supports Windows, Linux, and macOS

版本兼容 / Compatibility

同时适配 DSH 0.1.5 与 0.1.7(rc 线)。

中文:

- 图标组件(0.1.7 起的硬断点):@deepseek-ai/dsh-client-ui-primitives 的图标导出从像素尺寸后缀(IconTrashOutline16 / …14 / …20)改成了描边粗细后缀(IconTrashOutlineRegular / …Medium)。客户端半包现在把两代名字都探一遍(primitives[modern] ?? primitives[legacy]),因此同一份 bundle 在 0.1.5 与 0.1.7+ 上都能拿到组件。旧写法在新版会解构成 undefined,React 报 error #130,slot 条目崩溃 —— 表现是界面完全没反应(而不是弹错误),这一点很容易误判成“插件没装好”。
- 归档集与工作区成员清理:0.1.7 把归档/置顶账本收拢到 Workspace registry,插件改用公开 API workspaceRegistry.unarchiveSession() / unpinSession() 与 Workspace.detachSession()(幂等、随 registry 写链串行);0.1.5 及更早的 enqueueOperation + setState / 工作区表直写路径保留为回退。
- 「彻底删除」的磁盘定位:0.1.5+ 的会话目录是 sessions/--<项目 slug>--/<会话 id>/,更早是 sessions/<slug>/<id>/,无 cwd 的会话在 _no-cwd/;插件会同时按原样 id 与 DSH 的 encodeSegment 规则比对,两种布局都能定位(日志文件名从 session.jsonl[.zstd] 变为 session.vN.jsonl[.zstd] 不影响删除整目录)。
- 客户端:0.1.7 移除了 ctx.workspaces.refresh()(工作区快照改由 follow 流驱动),插件在该方法缺失时退化为 no-op;ctx.sessions.refresh() 仍存在。
- 归档运行中的会话:0.1.7 起 Host 会以 workspace/session-active 拒绝归档(不会中断任务),批量归档会跳过这些会话并在控制台记录。

English:
- 归档 / 置顶的记录操作在 0.1.7 上走公开 registry API(unarchiveSession、unpinSession、Workspace.detachSession),0.1.7 之前的 domain-state 路径保留为回退方案。
- 彻底清除会同时定位 sessions/--<slug>--/<id>/(0.1.5+)和 sessions/<slug>/<id>/(更早版本)两种会话目录,id 按字面匹配,也按 DSH 的 encodeSegment 规则匹配。
- 浏览器端容忍 0.1.7 移除 ctx.workspaces.refresh() 的变化,把手动刷新降级为空操作。

安装 / Install

⚠️ 当前插件仍在测试阶段。请先在隔离沙盒、模拟环境或 DSH 测试实例中完整验证,再部署到生产环境或公开发布。

⚠️ This plugin is still in testing. Please validate it in an isolated sandbox, simulation environment, or a DSH test instance before deploying to production or publishing.

从本地源码安装 / Install from local source

dsh plugin --profile web add /path/to/dsh-recycle-bin

安装后重启 DSH Web 生效。
Restart DSH Web after installation.

从 Git 仓库安装 / Install from Git

dsh plugin --profile web add github:qwertyuiop314/dsh-recycle-bin

卸载 / Uninstall

dsh plugin --profile web remove dsh-recycle-bin

卸载并重启后,回收站入口和批量归档增强会移除。
After uninstall and restart, the recycle-bin entry and sidebar batch-archive enhancement are removed.

使用 / Usage

1. 重启 DSH 后打开 WebUI
2. 点击左侧栏左下角的“回收站”
3. 在“归档”页:
- 鼠标悬停单条对话可单独“还原”或“移入回收站”
- 点击“批量操作”可多选或按工作区勾选后批量操作
4. 在“回收站”页:
- 可单条/批量“还原”
- 可单条/批量“彻底删除”
5. 左侧栏批量归档:
- 鼠标移动到对话左侧空白处,隐形勾选框亮起
- 勾选多个对话后,点击浮动“批量归档”或三个点菜单中的“批量归档”

1. Restart DSH and open the WebUI
2. Click “Trash” at the bottom-left of the sidebar
3. In “Archived”:
- Hover a row for single “Restore” or “Move to trash”
- Use “Batch” to select multiple items or whole workspaces
4. In “Trash”:
- Restore items individually or in batch
- Delete items forever individually or in batch
5. Sidebar batch archive:
- Hover the blank left area of a conversation to reveal its checkbox
- Select multiple rows, then use the floating “Archive selected” button or the overflow menu

安全与隐私 / Security & Privacy

- 插件仅在本机 DSH 内工作,不收集、不上传任何对话内容或个人信息
- 不包含遥测、统计、广告或第三方请求
- 回收站状态只保存在本机:
- <DSH_HOME 或 ~/.dsh>/cache/dsh-recycle-bin/state.json
- “移入回收站 / 还原”只做逻辑状态管理,不修改本地对话文件
- “彻底删除”会先二次确认,再删除对应的本地会话文件,并清理 DSH 元数据
- Host 路由固定为 /dsh-recycle-bin/,不占用其它插件命名空间
- 请勿将 DSH Web 暴露到不可信网络或公网;若必须暴露,请在反向代理层增加鉴权

- The plugin works locally inside DSH only; it does not collect or upload conversation content or personal data
- No telemetry, analytics, ads, or third-party requests
- Trash state is stored locally only:
- <DSH_HOME or ~/.dsh>/cache/dsh-recycle-bin/state.json
- “Move to trash / restore” is logical state management and does not modify local conversation files
- “Delete forever” requires confirmation, then removes the local session files and cleans DSH metadata
- Host routes are namespaced under /dsh-recycle-bin/ and do not conflict with other plugins
不要把 DSH Web 暴露到不受信任的网络或公网;如果确实需要暴露,请在反向代理层加上认证

原理 / How it works

| 部分 | 文件 | 机制 |
| 宿主路由 | lib/index.js | 注册 /dsh-recycle-bin/* 路由;管理回收站状态、取消归档、恢复和彻底清除 |
| 浏览器 UI | lib/client.js | 注册侧边栏底部操作和回收站面板;添加侧边栏批量归档的 DOM 增强 |

cordis.patch.yml 是 bundle 补丁层:当 bundle 出现在配置档中时,它插入 dsh-recycle-bin 行。

数据存储说明 / Data storage

- 回收站索引:<DSH_HOME 或 ~/.dsh>/cache/dsh-recycle-bin/state.json
- 该文件只包含回收站条目的 sessionId、trashedAt、deletedAt 等元数据,不包含对话正文
- 删除该文件只会丢失回收站视图,不会删除 DSH 会话文件
- 彻底删除操作会按用户确认删除本地会话文件,属于不可恢复操作

已知限制 / Known limitations

- 左侧栏批量归档的隐形勾选框通过 DOM 增强实现,可能随 DSH UI 版本变化而需要适配
- 回收站面板打开时,左侧栏批量选择会暂时禁用,避免两个批量操作界面冲突
- 彻底删除后会在插件状态中保留 tombstone,避免已删除对话在刷新前重新出现

- The sidebar batch-archive checkboxes are a DOM enhancement and may need adjustment when DSH UI class names change
- While the recycle-bin panel is open, sidebar batch selection is disabled to avoid conflicting batch modes
- Permanent deletion keeps a local tombstone so deleted conversations do not reappear before a UI refresh

开发 / Development

dsh-recycle-bin/
├── package.json
├── cordis.patch.yml
├── README.md
├── README.en.md
├── lib/
│ ├── index.js # Host: HTTP routes + state + purge/unarchive logic
│ └── client.js # Browser: sidebar entry + recycle-bin panel + batch archive
└── test/
└── plugin.test.mjs # Automated tests

运行测试 / Run tests:

npm test

License

MIT

关于本插件的“出生证明”

本插件同样是人类与 AI 的混合双打产物:需求是人类提的,方向是人类定的,代码的“手”(其实是 token)主要出自模型。

请把它当作一份参考实现来用——就像菜谱:照着做可以,但别指望不粘锅:

- 用之前自己先过目:代码翻一翻、测试跑一跑、按你的场景调一调;
- 代码按 “现状”(AS-IS) 提供,没有保修卡,也没有延保服务;
- 要是翻车了,那大概率是 AI 的锅——欢迎提 issue 或 PR 帮它“补课”;
- 欢迎 fork、修改、分发,也欢迎提 issue 或 PR 一起改进——独乐乐不如众乐乐。

说人话:回收站能正常清空是缘,误删能救回来是福;踩坑了一起填,改好了记得回来分享 😄
预览分享卡片长什么样 ↓qwertyuiop314/dsh-recycle-bin
分享 · DeepSeek Harness Hub
qwertyuiop314/dsh-recycle-bin

把归档对话移入回收站,可批量还原或彻底删除

这是你的仓库?认领条目

回到顶部