dsh-web-split:给 DeepSeek Harness Web 加一个自由分屏

前言

在 DeepSeek Harness(DSH)Web 中查看多个会话时,通常需要在侧栏来回切换。如果想同时盯住两个、三个甚至四个会话的对话,就需要频繁切换面板,不仅打断思路,还容易错过信息。插件 dsh-web-split 在官方 UI 的基础上增加了一个分屏视图,把一个会话的对话放在一个窗格中,多个窗格并排显示,实现真正的并行查看。

插件定位

这是一个面向 DeepSeek Harness Web 的客户端插件,由维护者 yuloop 开发。它不依赖外部依赖,通过声明所需的官方 bundle 注入到宿主中。插件当前版本为 1.0.1,采用 MIT 许可证。

核心功能

侧栏入口

侧栏会出现「分屏」按钮,点击后分屏视图会作为主面板打开。

自由布局

  • 向右/向下分屏:初始分屏方向可配置。
  • 拖拽窗格:把一个窗格拖到另一个窗格上会交换位置;拖到窗格边缘会把窗格挪过去。
  • 调整比例:拖动分隔线改变窗格比例。
  • 双击分隔线:横竖翻转并回到 50/50。

从各处填充窗格

  • 从左侧会话列表把一行拖进窗格。
  • 点行尾的「放入分屏窗格」按钮。
  • 使用窗格右键菜单。

真对话

每个窗格挂载官方的 conversation.content 槽位,流式输出、工具调用、附件、输入框的行为与正常视图完全一致。

未读点同步

侧栏的未读指示同步到窗格标题上,可以一眼看出哪个窗格在说话。

导入运行中会话

一次把正在跑的会话按窗格上限排进分屏,不会关闭任何会话。定时任务工作区的会话会被跳过(cwd 最后一段是 cron-jobs;client.js 里的 SCHEDULED_WORKSPACE 可改)。

布局持久化

整棵窗格树(分栏、比例、分配)存在 localStorage,刷新后恢复。

中英双语界面

插件自带中文与英文文案。

宿主侧零行为

宿主那一半只负责声明客户端 bundle,不碰 Session 域。

安装与启用

插件是一个带 loader patch 的 bundle,安装方式与普通 DSH 插件相同。

# 预构建包(推荐,免 allowBuilds 构建授权)
dsh plugin --profile web add https://github.com/yuloop/dsh-web-split/releases/latest/download/dsh-web-split.tgz

# 直接从 GitHub 源码装
dsh plugin --profile web add github:yuloop/dsh-web-split

# 或者从本地目录装
dsh plugin --profile web add /path/to/dsh-web-split

装完重启 DSH,然后刷新页面,侧栏就会出现「分屏」入口。

典型用法

  1. 安装插件后重启 DSH,刷新页面。
  2. 点击侧栏的「分屏」按钮,进入分屏视图。
  3. 从左侧会话列表把一个会话拖入第一个窗格,再拖入第二个窗格。
  4. 拖动分隔线调整两个窗格的比例。
  5. 在任意窗格中输入内容,流式输出会正常工作。
  6. 刷新页面后,窗格布局会自动恢复。

适用场景与注意

适合需要在开发中同时查看多个会话、对比不同会话输出、监控多任务进度的开发者。插件以当前 DSH 进程权限运行,安装前应检查源码与许可证。

当前版本存在一个已知限制:在窗格里点击文件链接或图片会弹出错误框,原因是文件链接是通过右侧栏的 sidebarRight.require() 打开的,而它只认「当前显示在会话列上的那个会话」。全局的 main 面板不带会话上下文。想看文件就点侧栏那个会话回到普通视图,再点链接。

结尾

通过这个插件,可以在 DSH Web 中实现真正的并行会话查看,不再受限于单面板。配置持久化、中英双语界面、从各处填充窗格等功能,让它成为一个实用的日常工具。

  • 插件目录页:https://www.skillhub.cn/plugins/yuloop/dsh-web-split
  • GitHub:https://github.com/yuloop/dsh-web-split
羽毛球分组比赛记分
小程序二维码

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

Xiaoye