前言¶
在 DeepSeek Harness(DSH)里同时开多个会话时,切换往往依赖当前工作区自带的导航,会话一多就不容易一眼看清「哪些在跑、哪些是子代理、最近改过哪条」。社区插件 dsh-plugins-session-view(仓库名 cypher-yht/dsh-plugins-session-view)在 Web 界面侧边栏增加「会话视图」入口,用一屏列表汇总全部会话及实时运行状态,点一行即可打开对应会话。它是标准 DSH bundle 插件(cordis.patch.yml + client 半区),宿主侧几乎无额外逻辑,适合只想在前端增强浏览体验的用户。
这是什么¶
维护者为 cypher-yht,分类为客户端,在 SkillHub 插件目录 与 GitHub 均可找到。插件在 DSH Web 侧边栏注册专用入口,主区域展示会话列表;数据来自宿主注入的会话 store(useSessions),状态变化时面板即时重绘,无需手动刷新页面。
核心功能¶
侧边栏与主面板¶
- 侧边栏:挂到
sidebar.panellist插槽(id: session-view,order: 20),带列表图标。 - 主视图:挂到
main插槽(key: session-view),列出全部会话。
实时状态与行内容¶
每行前有状态圆点:绿色表示运行中,其他颜色表示空闲。说明文字由以下片段按顺序拼接:
运行中/空闲· 子代理(会话origin为subagent)· 空白会话(会话被标记为blank)· 更新于 <本地时间>(存在updatedAt时)
标题优先显示会话标题;无标题时退化为「前 8 位…后 8 位」的短 id。
交互与头部¶
点击某一行会调用 uiWorkspace.openSession(id),直接切换到该会话。面板头部包含标题、一句说明,以及当前会话总数(形如 {count} 个会话)。
加载与空态¶
数据未就绪时显示「正在加载会话…」;没有任何会话时显示「还没有会话」。
国际化与开销¶
面板内置 zh/en 字典;插件列表名称与简介在 locale/zh.json、locale/en.json。宿主侧 apply() 为空实现,纯前端渲染,不轮询、不启定时器。
安装与启用¶
在 PowerShell 中执行官方安装命令:
dsh plugin add github:cypher-yht/dsh-plugins-session-view
本地开发可用软链,改源码后刷新即见效果:
dsh plugin add link:D:\path\to\dsh-plugins-session-view
桌面客户端(Electron)使用 desktop profile 时,请在桌面端会话里的 plugin_manager 中安装同一插件。
安装完成后重启宿主;在浏览器中按 Ctrl+F5 硬刷新页面。
典型用法¶
- 完成安装并重启、硬刷新后,在 DSH Web 侧边栏找到会话视图入口并打开。
- 在列表中根据圆点颜色区分运行中与空闲,阅读每行的状态说明(子代理、空白会话、更新时间等)。
- 需要切换会话时,点击目标行,由工作区打开对应会话 id。
无需额外配置文件;行为由 cordis.patch.yml 与 client.js 在加载时注册。
适用场景与注意¶
适合:经常在 Web 端并行多个 DSH 会话、需要总览运行状态并快速跳转的开发者。
注意:
- 插件以当前 DSH 进程权限运行;安装前请自行查看仓库源码与 MIT 许可证。
- SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系;星标与版本以各页面当时显示为准(package.json 中版本为 1.0.0)。
- 仅面向 DSH Web client(
package.json中dsh.client.platform为web);桌面端需通过对应 profile 的插件管理安装。
结尾¶
dsh-plugins-session-view 把「所有会话 + 实时状态 + 一点即开」收进侧边栏一块面板,改动面小、无后台轮询。进一步了解可访问 SkillHub 目录页 与 GitHub 仓库。