在侧边栏会话菜单添加「删除」项,经二次确认后硬删除该会话。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:txlznbzsdj-collab/dsh-session-delete
装任何插件都等于在你的机器上跑第三方代码,权限和你本人一样大——能读你的文件、用你的凭据、访问网络,工具审批管不到它。GitHub 来源的插件还会在安装时执行构建脚本——pnpm 默认拦截,所以安装可能停在 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED 或 ERR_PNPM_IGNORED_BUILDS;dsh 会打印出需要添加的确切键名,把它加进该 profile 的 pnpm-workspace.yaml 的 allowBuilds 下,重跑一次即可装上。放行构建本身就是一次信任判断:请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
在 DSH Web 侧边栏「会话列表」中,给每个会话的三点下拉菜单底部新增一个 「删除」 按钮,点击后弹出二次确认对话框,确认后硬删除该会话(内存会话 + 磁盘持久化数据一并移除)。
功能
- 会话三点菜单底部新增「删除」项(危险样式,红色)。
- 点击「删除」→ 弹窗确认「此操作会永久删除该会话,无法恢复」。
- 确认后调用 host 端点硬删除:
- dispose 内存中的 live 会话(触发
session/disposed→host/session-removed,所有客户端列表即时移除); - 删除磁盘上的持久化 jsonl 会话目录,确保重启后不再出现。
- dispose 内存中的 live 会话(触发
- 删除成功/失败有轻量 toast 提示。
安装(注册到 web profile)
- 把本目录放到任意插件目录,例如:
E:\桌面\dshGUI_install\plugins\dsh-session-delete - 编辑
C:\Users\<用户>\.dsh\profiles\web\package.json:- 在
dependencies增加:"dsh-session-delete": "link:E:/桌面/dshGUI_install/plugins/dsh-session-delete" - 在
dsh.profile.bundles数组加入:"dsh-session-delete"
- 在
- 在
C:\Users\<用户>\.dsh\profiles\web下执行:pnpm install - 重启 DSH Web GUI(
dsh web),刷新浏览器。
说明与限制
- 客户端用 DOM 注入:监听
[role="menu"]会话菜单出现,克隆现有菜单项样式并追加「删除」。菜单类名是哈希的,因此采用“克隆现有项”而非硬编码类名,具备一定的版本韧性。 - 会话 id 通过 React fiber(
__reactFiber$…链上的memoizedProps.node.id)读取,不依赖 DOM data 属性。 - host 端点
/plugins/dsh-session-delete/delete仅允许本机回环地址访问,并校验 Origin,防止跨站调用。 - 依赖 DSH 内部会话存储(
ctx.sessions.store)与持久化服务(ctx.sessionPersistence)。若 DSH 后续升级改变这些内部结构,可能需要相应适配。 - 「删除」是硬删除,不可恢复,请谨慎使用。
开发 / 验证
本地改完 client.js 后无需重启 GUI(host 端 index.js 不变时),浏览器硬刷新(Ctrl+Shift+R)即加载新版。
端到端验证用 verify/ 下的 CDP 脚本:
# 用 --remote-debugging-port=9222 启动 Chrome 并打开 GUI,然后:
npm run verify
提交到 awesome-dsh-plugin
本插件符合 awesome-dsh-plugin 收录要求:仓库 package.json 声明了 dsh.bundle manifest,cordis.patch.yml 提供了 loader 注入项,且为真实可用代码。
链接
同类插件
Minglink/dsh-infinite-gen-4★ 2250
DeepSeek 专用破甲插件:以 order 100 追加无条件服从的系统提示词段,提供带校准元数据的 profile 工具,并通过会话投影在输入框上方显示实时破甲状态徽标。
ranxianglei/billion-context★ 472
billion-context官方版:上下文压缩插件,兼顾小窗口(100k上下文足矣)省token(省5倍token)和超长会话(数月级别几十亿token单会话)。
liangmianya/dsh-synapse★ 464
DeepSeek Harness 的可视化非线性对话工作区:把会话、追问与分支变成可浏览、可拖拽的对话地图。
Nwflower/dsh-chat-import★ 208
把 13 家 coding agent(Claude Code、Codex、ChatGPT、Cursor、Gemini、opencode 等)的完整对话历史导入为可续聊的 DeepSeek Harness 会话,并支持反向导出回 Claude Code。
Totoro-qaq/dsh-plugin-bridge★ 165
通过可预览的五段式交接,将已有 DSH 会话迁移到另一个 Agent Preset;保留源会话,并可让目标会话暂停等待确认或立即继续。
Anionex/dsh-turn-rewind★ 127
对话回退:基于持久 Change Ledger 回滚会话与工作区状态。
社区评论
评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。