dsh-active-chat: Pinning Active Session Workspaces to the Top of the Sidebar

前言

在 DSH 里同时开多个 workspace 时,侧边栏只维护一份 Host 工作区顺序,默认只能靠拖拽调整。哪个会话正在跑、哪个在等你点批准或回 plan,要靠自己扫一遍活动点,容易漏看。下面介绍社区插件 @lixiangzhong/dsh-active-chat:它根据与侧边栏活动点相同的「进行中」信号,自动改写 Host 顺序,让仍有会话在跑或等你回复的工作区排在前面。

这是什么

@lixiangzhong/dsh-active-chat 由维护者 lixiangzhong 发布,npm 包名与 DSH 插件标识一致,分类为客户端(Web profile)。一句话定位:把仍有进行中会话的 workspace 钉在 DSH 侧边栏顶部,便于一眼看到哪些 chat 还在干活或等你操作。

「进行中」与侧边栏自带的活动点一致:会话处于 running,或处于 waiting for your reply(审批、plan 审阅、提问等)。

核心行为

插件写入的顺序就是 Host 的真实 workspace 顺序(与手动拖拽相同),会随页面重载和其他会话保留。

  1. 首次安装 / 启动 — 对齐一次:最近变为 active 的工作区排第一,其余保持当前相对顺序;若已与规则一致则不写入。
  2. 新的激活 — 该 workspace 跳到顶部;若多个同时 active,最近激活的排在最上。
  3. 工作结束 — 该 workspace 沉到仍 active 的工作区之下,不会回到你以前手动拖过的旧位置。
  4. 全部 idle — 插件停止写入,你手动拖拽的顺序保留,直到下一次激活。

无设置项、无独立 UI:安装即启用;禁用或卸载插件并 reload 即关闭。

安装与启用

需要 DSH >= 0.2.1-rc.2,且使用 Web profile。这是常规 DSH bundle,README 说明不声明 npm 依赖。

在 DSH 插件管理界面安装,或在 CLI 执行:

dsh plugin --profile web add @lixiangzhong/dsh-active-chat

若从本地 checkout 开发,可改为 link 路径:

dsh plugin --profile web add /path/to/dsh-active-chat

安装后 reload 页面。移除时禁用或卸载插件并 reload。

当前 npm 版本为 0.1.1(以 package.json 为准),许可证 MIT。

典型用法

没有额外配置步骤:装好并 reload 后,只要某个 workspace 里还有 running 或等你回复的 session,它就会自动上浮;你仍可手动拖拽,但在有 active 集合变化时插件会按上述规则再次写入顺序。

全部会话 idle 之后,侧边栏顺序会停在你最后一次手动排列(或插件最后一次写入后的状态),直到又有 workspace 变为 active。

实现要点(供核对源码)

README 说明:client.js 在浏览器侧运行,注入 workspaces、sessions、uiSession 客户端服务,订阅 snapshot,在 active workspace 集合变化时调用文档化的 ctx.workspaces.insertBefore(workspaceId, beforeWorkspaceId?) 调整 Host 顺序;变更会做合并,仅在 active 集合实际变化时写入。Host 侧入口 index.js 为空插件条目。

适用场景与注意

适合在 Web 版 DSH 里并行多个 agent / chat、又希望「还在跑或等我点一下」的 workspace 始终出现在侧边栏顶部的开发者。

插件以当前 DSH 进程与浏览器客户端上下文运行;安装前建议阅读 GitHub 仓库 源码与 MIT 许可证。社区目录页 skillhub.cn 为独立站点,与 DeepSeek / 幻方无官方从属关系,不要当作官方应用商店。

结尾

dsh-active-chat 不改变 DSH 的会话逻辑,只自动维护侧边栏 Host 顺序,减少在多 workspace 下漏看 active chat 的情况。目录与源码:

  • 目录页:https://www.skillhub.cn/plugins/lixiangzhong/dsh-active-chat
  • GitHub:https://github.com/lixiangzhong/dsh-active-chat
羽毛球分组比赛记分
小程序二维码

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

Xiaoye