DSH HUB
HomePlugin StorePlugin PacksCommunityRankingsResourcesPublish Guide
Plugin source
Back to catalog

vegetable86 /

vegetable86/dsh-multi-session

Verified

A multi-session workspace for DeepSeek Harness: view and drive many conversations side by side.

★ 0 Stars0 Forks0 IssuesN/A Community rating0 Confirmed installs
View on GitHub
READMESource: main@b9eef86c

多会话面板(dsh-multi-session)

在 DeepSeek Harness 里把多个会话并排看:一个独立的「多会话」主面板,格子数量不设上限,每格绑定一个已有会话,每格都是完整的原生对话(消息流 + 输入框)。所有格子不重叠地平铺,拖动分隔条就能像 tmux 那样调整相邻格子的长宽。

npm 包:@vegataa/dsh-multi-session

用法

  1. 左侧边栏点「多会话」图标进入面板。
  2. 首次打开自动填入最近两个会话;每格标题栏点会话名可以换一个会话(支持搜索)。
  3. 工具条「+ 添加会话格」想加多少加多少。格子不重叠地平铺:两格并排,三格是上面一整格、下面两格,四格是 2×2,更多格子按两列往下排。拖行与行之间的横分隔条,上下两行一起变高变矮;拖同一行里两格之间的竖分隔条,一边变宽另一边就变窄,和 tmux 的分屏手感一样。任何时候格子都会铺满面板、不会互相遮挡。单格可最大化 / 还原,也可关闭(至少保留一格)。工具条的「均分」把所有分隔条恢复成平均分配。
  4. 空格的「新建会话」按钮、以及每格选择器底部的「新建会话」,会直接在这一格里开一个新会话并绑定:优先建在该格当前会话所在的工作区,其次最近使用的工作区,都没有就交给 Host 的默认目录。
  5. 布局、每格绑定的会话、最大化状态都会自动记住,刷新或重启后恢复;会话不存在时那一格显示「不可用」,可以重新选择。
  6. 选择器默认不列子代理会话,也不列空白会话(当前格自己绑定的空白会话除外)。

实现要点

  • 只注册一个 main 面板(key multisession)和一个 sidebar.panellist 图标,普通对话页完全不受影响。
  • 每格通过 <SessionProvider session={reference}> 显式绑定会话,引用由 sessions.retain(...) 获取、卸载时 release()。
  • 格子内部用官方 conversation.content 工厂槽(variant: 'embedded')渲染,得到的是原生对话组件,不是自绘的聊天界面。
  • 每格包两层错误边界:格子内的渲染异常会在 0.6s / 1.2s 后自动重建两次,仍失败才显示错误卡片(可手动「重试」);整个面板崩了还有一层兜底,可以一键清掉布局重置。
  • conversation.content 是 Harness 的内部工厂槽,签名变了会抛错:每格对这次调用做了捕获,失败时只显示「此视图暂不可用」+ 重试,不会把整个面板打空。
  • 格子的外壳用 React.memo 包起来:拖动分隔条时只有父级容器重算样式,各格的对话组件不会跟着重渲染。
  • 最大化改为 CSS 覆盖层(其余格子 visibility: hidden 但保持挂载),切换最大化不会重挂载对话,滚动位置和正在流式的回复都保留。
  • 格子按「行 → 列」两级权重存储(v3 布局):每行的 rowWeights 决定高度,每行内两格的 colWeights 决定宽度;拖动分隔条只改这两级权重,所以相邻格子永远互补、整块面板始终铺满。

开发

纯手写客户端 bundle,无需构建步骤。client.js 直接就是 window.__ModuleLoader__.load(...) 包。

npm test   # 注册形态冒烟 + jsdom 渲染冒烟

目录

index.js        # Host 侧空实现(本插件纯客户端)
client.js       # 客户端 bundle:面板、格子、选择器、持久化、i18n
cordis.patch.yml
locale/*.json   # 面板名称与描述
icon.svg
scripts/        # 冒烟测试、发布打包、市场索引生成
market/         # 插件市场索引与目录提交模板
docs/superpowers/{specs,plans}/
LICENSE

许可证

MIT,见 LICENSE。

—/ 5

No ratings yet

Verified DSH bundle

Commit b9eef86c7187

Community comments

No comments yet. Be the first to write one.

DSH HUB

A community index for DSH plugins. Not an official GitHub or DeepSeek AI product.

CommunityResourcesAPIAbout