DeepSeek Harness 插件

txlznbzsdj-collab/dsh-session-delete

Star 数 ★ 0 分类 会话与消息 收录于 2026-08-19

在侧边栏会话菜单添加「删除」项,经二次确认后硬删除该会话。

安装

# 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 端点硬删除:
    1. dispose 内存中的 live 会话(触发 session/disposed → host/session-removed,所有客户端列表即时移除);
    2. 删除磁盘上的持久化 jsonl 会话目录,确保重启后不再出现。
  • 删除成功/失败有轻量 toast 提示。

安装(注册到 web profile)

  1. 把本目录放到任意插件目录,例如: E:\桌面\dshGUI_install\plugins\dsh-session-delete
  2. 编辑 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"
  3. 在 C:\Users\<用户>\.dsh\profiles\web 下执行:
    pnpm install
    
  4. 重启 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 注入项,且为真实可用代码。

内容来自项目 README(GitHub)↗

链接

同类插件

查看整个分类 →

社区评论

评论公开保存在 GitHub Discussions。加载评论会连接 GitHub 和 Giscus;发表内容需要 GitHub 账号。