dsh-session-delete:在会话头部添加删除按钮

前言

DeepSeek Harness (DSH) 是一个插件化的智能体开发平台。在日常使用中,管理过长的会话列表是常见需求。官方界面虽然支持归档,但侧边栏的入口较为隐蔽。这个插件通过扩展官方 UI 槽位,在会话头部提供了直观的删除入口。

这是什么

这是一个由 yhPrime 维护的 DSH 客户端插件。它通过在 Web 界面会话头部右侧(”Session log” 导出按钮旁边)添加一个红色垃圾桶按钮,解决了需要二次确认才能删除当前会话的需求。

核心功能

  • 悬停显现的垃圾桶按钮:按钮位于会话头部右侧,属于官方可扩展的 conversation.session.header.utilities 槽位。交互逻辑与头部其他图标一致:鼠标悬停时,按钮由半透明变为全亮红,并伴随高亮背景。
  • 二次确认对话框:点击按钮会弹出确认对话框,语言跟随界面设置(中文或英文)。
  • 官方 API 归档:确认后调用 ctx.workspaces.archiveSession(sessionId) 客户端 API。会话会被持久化归档并隐藏(从侧边栏移除),若删除的是当前会话,系统会自动清除选中状态并跳转到新建会话界面。
  • 零副作用:插件不替换任何官方 UI,无 host 端副作用,卸载后即可完全移除。

安装与启用

安装主要分为本地 profile 部署和 npm 安装两种方式。

方式一:本地 profile 部署(推荐开发/自用)

  1. 将插件目录放入你的 profile 文件夹(例如 C:\Users\<你>\.dsh\profiles\web\)。
  2. 在 profile 的 package.json 中:
    * 在 dependencies 添加 "dsh-session-delete": "file:./dsh-session-delete"。
    * 在 dsh.profile.bundles 数组中追加 "dsh-session-delete"。
  3. 在 profile 目录运行 pnpm install,然后重启 DeepSeek Harness Web 服务。

方式二:从 npm / Git 安装

  1. 运行 pnpm add dsh-session-delete。
  2. 在 profile 的 package.json 的 dsh.profile.bundles 数组中注册 "dsh-session-delete"。

典型用法

在 profile 的 package.json 中配置 bundles 即可启用:

{
  "dependencies": {
    "dsh-session-delete": "file:./dsh-session-delete"
  },
  "dsh.profile.bundles": [
    "dsh-session-delete"
  ]
}

适用场景与注意

  • 位置说明:侧边栏会话行上的 ⋯ 菜单是产品内置组件硬编码的,没有给插件留扩展槽位。因此删除按钮被放置在会话头部右侧的官方可扩展槽位中,这是目前唯一安全、不遮蔽官方 UI 的会话级入口。
  • 运行环境:插件在客户端运行,请确保安装前已阅读源码和许可证。

短结尾

该插件通过复用官方 API 和扩展槽位,为 DSH 用户提供了标准化的会话清理能力,安装与卸载过程无残留。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜