dsh-session-grid:多会话同屏网格

前言

在 DeepSeek Harness(DSH)里做智能体或多路对话时,原生界面通常一次只聚焦一条会话。要在几条会话之间来回切换,就要反复点侧边栏,对话轨迹、上下文和 composer 无法并排对照。下面介绍的 dsh-session-grid 由社区维护者 abluefan 发布,分类为客户端插件:它把主区域切成 n 个并列 pane,每格渲染一条完全独立的会话,对话、轨迹、上下文、编队、composer 均为原生 UI,而不是缩略图预览。

这是什么

dsh-session-grid 的定位是:在一个页面的 main 区域里,用 n 个 pane 同时渲染 n 条独立 session。它解决的是「多会话并行查看与操作」的问题,适合需要在同屏对比多条对话、或多任务并排推进的场景。插件当前在 GitHub 上星标为 0,版本 0.0.1,许可证 MIT;运行环境要求 DSH ≥ 0.2.1(package.json 中 engines 为 dsh >= 0.2.1-rc.2)。

核心功能

经 README 核实,插件具备以下能力:

  • 横向单行排列:多个 pane 横向排布,不换行。
  • 拖动手柄重排:每格左上角有 ⠿ 手柄,可调整 pane 顺序。
  • 侧边栏进出网格:侧边栏每一行提供 ⊞(加入网格)与 ▦(移出网格)。
  • 布局持久化:布局写入 localStorage,刷新页面后恢复。
  • 网格内新建会话:在网格页点「新会话」时,在最左边新开一格,不会跳回原生单页布局。
  • 空白格清理:pruneBlankPanes() 会清理累积的未命名空白格——有内容的格一律保留,空白格只保留最左那一个。

实现上,Host 入口为 index.js(空壳),全部 UI 逻辑在 lib/client.js。

安装与启用

安装前请自行查看仓库源码与 MIT 许可证;插件在当前 dsh 进程权限下运行,与任何 DSH 官方渠道无绑定关系。社区目录可在 SkillHub 插件页 或 awesome-dsh-plugin 中查找,该目录为独立站点,与 DeepSeek / 幻方无官方从属关系。

通过插件市场(推荐)

在 awesome-dsh-plugin 目录中找到本插件,或在 dsh 的 插件 → 发现 里搜索 dsh-session-grid,点安装。

手动安装

任选一种方式,不要两种同时用。

A. 复制 + 手写 insert(适合本地开发)

  1. 把插件目录复制到 $DSH_HOME/profiles/web/node_modules/dsh-session-grid/。
  2. 在 $DSH_HOME/profiles/web/cordis.patch.yml 增加:
- insert:
    - id: session-grid
      name: 'dsh-session-grid'
  1. 重启 dsh,或让 Loader 重载配置。

B. 使用 dsh plugin add(需要包已发布到 npm)

dsh plugin --profile web add dsh-session-grid

若采用 B,包名会进入 dsh.profile.bundles,bundles 层会读取包内自带的 cordis.patch.yml;此时不要再做 A 的第 2 步,否则同一 id 会被插入两次,DSH 启动会直接失败。

典型用法

  1. 安装并启用插件后,打开 web profile 下的 DSH 主界面。
  2. 在侧边栏某条会话行上点 ⊞,将该会话加入网格;需要移出时点 ▦。
  3. 用每格左上角的 ⠿ 拖动,调整同屏各会话的左右顺序。
  4. 在网格视图下点「新会话」,会在最左侧新增一格并继续停留在网格页。
  5. 刷新浏览器后,网格布局会从 localStorage 恢复;长期留大量空白格时,依赖 pruneBlankPanes() 保留有内容格与最左一个空白格。

以上步骤均来自项目 README 中的交互说明,无额外配置字段需手写。

适用场景与注意

适合谁:需要在同屏并排操作多条 DSH 会话的开发者或重度用户,例如对照不同 prompt、并行看多路 agent 轨迹,或在编队/composer 之间快速切换而不丢失上下文。

已知限制(README 原文):

  • TurnNavigator 在 pane 宽度小于 900px 时会自动隐藏——这是原生组件的设计,不是本插件缺陷。
  • 拖放图片会同时附加到所有 pane——属于 DSH 原生行为,与网格布局无关。

安装与使用前,建议在 GitHub 仓库核对 lib/client.js 等行为是否符合你的安全与合规要求。

结尾

dsh-session-grid 把 DSH 主区域变成可持久化的多会话网格,每格仍是完整原生 UI,适合多路对话同屏工作流。更多信息见 SkillHub 目录页 与 GitHub 仓库。

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

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

小夜