DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Session Dustbin — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
S

@local/dsh-session-dustbin

Session Dustbin

DSH 会话垃圾桶:可直接从左侧边栏的会话菜单中删除会话(位于重命名 / 分叉 / 归档旁),并从 Settings -> Plugins -> Configurable 管理已归档的会话。仅处理头帧:不会解码任何会话日志。

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:Github-CJX/dsh-session-dustbin#199c1a6c3f8e8fa689c79cb4a1e6dce5563abdd7
README兼容性版本

兼容性与来源证明

Session Dustbin 以 @local/dsh-session-dustbin 发布,当前版本为 0.2.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/9/9

版本

0.2.0stable
2026/9/9
0.1.0stable
2026/8/21

相关插件

正在加载相关插件…

最新版
0.2.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/9/9
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 ui-customization 分类下经过校验的插件。

Web App@deepseek-ai/dsh-web-appdsh 浏览器界面捆绑包:位于 dsh-base 之上的 Web 补丁层,加上运行时粘合插件(提供前端 dist、Web 界面提示符、bash 运行时变量和 URL 行)Experimental Agent Team Web Profile@deepseek-ai/dsh-experimental-agent-team-web-profile用于 Agent Teams Remote 和 UI 插件的实验性 Web 配置层Client Ui Task Board@linxin666/dsh-client-ui-task-board面向 DSH Web GUI 的主机权威任务面板,支持实际会话执行、主机 cron 调度以及可选的跨平台空闲睡眠保护;以挂载方式提供,无需修改 DSH 源代码。Pet@linxin666/dsh-pet适用于 dsh Web GUI 的多宠物伴侣插件:由注册表驱动的浮动宠物,可响应模型活动,支持为每只宠物命名、抚摸/喂食互动以及亲密度评分

README

dsh-session-dustbin

DSH 会话纸篓 — 在左侧会话行菜单里直接删除会话(与「重命名 / 分支会话 / 归档会话」并列),并在 设置 → 插件 → 可配置 里管理已归档会话。

v0.2.0 为全新重写:旧仓库代码已全部作废,本目录可整体覆盖 Github-CJX/dsh-session-dustbin。

功能

  • 左侧会话菜单删除项:会话行「⋯」菜单里在「归档会话」下方追加「🗑 删除会话」,点击后弹出 DSH 风格确认框(需勾选「我了解这会永久删除,且无法恢复」)。
  • 删除链路(无需重启):先经平台 workspaceRegistry.archiveSession() 归档(侧边栏立即收走该行)→ 删除本地会话目录 → 删除头帧缓存 → 清理 workspace.json 标记。
  • 归档会话管理卡片:设置 → 插件 → 可配置 → 「会话纸篓」,列出归档会话,逐条删除。
  • 只展示头帧:列表只读取平台为每个会话持久化的头帧投影(session_projcache,标题 / 创建时间 / 轮数),从不解压 session.jsonl.zstd,单条 O(1),与对话长度无关。
  • 无需查看详情:没有任何对话内容读取接口,也不提供展开查看——按需求刻意不做。

工作原理

数据位置用途
归档集合运行中 workspaceRegistry.archivedSessionIds;落盘 ~/.dsh/storages/workspace.json判定 archived、驱动删除前归档
会话头帧~/.dsh/storages/session_projcache/sessions/<id>.json标题 / 创建时间 / 轮数(列表唯一数据源)
会话数据~/.dsh/sessions/<项目>/<id>/session.jsonl.zstd只用于判断存在与删除,从不解码

删除顺序(缺一不可):

删除请求
  ├─① workspaceRegistry.archiveSession(id)   内存归档 + 广播 → 侧边栏立即收行
  ├─② 删除 ~/.dsh/sessions/<项目>/<id>/     数据彻底清除
  ├─③ 删除头帧 session_projcache/<id>.json   列表不会复活该行
  └─④ 清理 workspace.json 标记(尽力而为)    运行中的 host 可能回写,列表按目录存在性过滤

目录结构

dsh-session-dustbin/
├── lib/                       # 宿主半(Node ESM)
│   ├── index.js               # 插件入口:设置命名空间 + 路由挂载
│   ├── protocol.js            # 共享常量(命名空间 / 路由 / id 校验)
│   ├── sessions.js            # 头帧读取、列表、删除(框架无关,可单测)
│   ├── routes.js              # loopback 围栏桥(ping / list / delete)
│   └── client.js              # 预构建客户端 bundle(提交以便克隆即用)
├── src/client/                # 浏览器半(rolldown 打包)
│   ├── index.ts               # 入口:locale + 设置卡片 + 侧边栏菜单注入
│   ├── DustbinCard.tsx        # 会话纸篓卡片(头帧列表 / 删除)
│   ├── sidebar-menu.tsx       # 会话行菜单注入「删除会话」
│   ├── locales.ts             # zh / en 文案
│   ├── protocol.ts            # 与 lib/protocol.js 对应的类型
│   └── dustbin-card.module.css
├── docs/                      # installation / architecture / troubleshooting
├── build-client.mjs           # 客户端构建(CSS Modules 内联 + ModuleLoader 包装)
├── sync-profile.mjs           # 一键装进 DSH profile(镜像 + 注册 + pnpm install)
├── test-host.mjs              # 宿主逻辑测试(临时目录,不碰真实数据)
├── test-mount.mjs             # 挂载测试(桩 cordis ctx)
└── smoke-client.mjs           # 客户端 bundle 冒烟(桩 loader/DOM)

开发与验证

pnpm install
node test-host.mjs      # 42 checks:头帧/列表/删除/围栏
node build-client.mjs   # 重建 lib/client.js
node test-mount.mjs     #  9 checks:设置段 + 三条路由 + 处理器
node smoke-client.mjs   # 14 checks:bundle 契约 + apply() 挂载
node sync-profile.mjs   # 装进 profile(然后重启 DSH Desktop)

样式一致性

  • 卡片严格复用平台的卡片契约:外壳 / 头部 / 正文 / 页脚取自 @deepseek-ai/dsh-client-ui-settings-plugins 的 PluginCard.module.css,行 / 标签 / 胶囊 / hint 取自同包的 fields.module.css(数值逐条照抄,仅类名本地化),因此在「设置 → 插件 → 可配置」里与「终端」「agent 循环」等卡片外观一致。
  • 菜单注入项深拷贝平台的「归档会话」项,图标用平台原生 IconTrashOutline16 的路径,配色与 hover 走 Menu.module.css 的 .danger 令牌(--dsw-alias-state-error-primary / --dsw-alias-interactive-bg-hover-danger)。

已知约束

  • 菜单注入是 DOM 注入:平台会话菜单是 dsh-client-ui-workspace 里写死的数组,没有 slot 可扩展。注入项在菜单每次打开时重新追加;React 重渲染可能吞掉已注入节点,重开菜单即恢复。
  • 会话 id 靠标题反查:会话行 DOM 不携带 id,注入项点击后通过 list 桥按标题匹配(重复标题取第一个)。
  • 删除不可逆:目录 + 头帧 + 标记一并清除,卡片与菜单均带需勾选的确认框。
  • 残留标记:运行中的 host 内存里仍保留已删 id,直到下次重启才彻底干净;列表按目录存在性过滤,不会显示空条目(卡片会提示「N 条归档标记已无对应数据」)。
  • 不读对话内容:这是刻意设计(性能),需要看内容请用平台的会话打开功能。

安装与排障见 docs/installation.md、docs/architecture.md、docs/troubleshooting.md。