dsh-sidebar-ratio:侧边栏按比例调整与面板继承

前言

DeepSeek Harness(DSH)网页版原生侧边栏宽度是固定像素值,拖动区间有限;右侧栏面板是按会话隔离的,父代理打开的文件面板切换到子代理会话后会丢失。dsh-sidebar-ratio 插件通过接管宽度样式和利用官方 API 实现面板共享,不修改 DSH 源码。

核心功能

侧边栏按窗口比例打开

左侧栏默认 14%,右侧栏可选。支持拖动原生把手或使用快捷键直接调整比例。比例存储在浏览器 localStorage(key dsh.sidebar-ratio.v1)。

同一父会话组内共享右侧栏面板

沿会话谱系上溯到顶层,同一个父总会话(顶层会话 + 所有层级子代理)算一组。组内共享一个面板基准。支持配置是否严格依据父会话或组内统一。

安装与启用

安装

dsh plugin --profile web add github:masknull/dsh-sidebar-ratio

重启

装完必须重启一次。

配置

在 cordis.patch.yml 的 config 里改(改完需要重启):

键 默认 说明
left 0.14 左侧栏占比;null = 不接管左栏
right null 右侧栏占比;null = 不接管右栏
minLeft 200 左栏像素下限
minRight 300 右栏像素下限
enabled true 宽度接管总开关的默认值
inherit true 是否启用「父总会话组内共享右侧栏」
inheritAll false true = 忽略分组,任意会话切换都继承
inheritFromParent false 组基准规则,false=组内统一,true=严格依据父

用法

快捷键

  • Alt + ← / →:调整左侧栏比例。
  • Alt + Shift + ← / →:调整右侧栏比例。
  • Alt + 0:总开关,关闭即回到原生行为。

控制台 API

// 宽度
dshSidebarRatio.get()          // 当前状态
dshSidebarRatio.set(0.12)      // 左侧栏 12%
dshSidebarRatio.right(0.26)    // 右侧栏 26%
dshSidebarRatio.enabled(false) // 临时交还原生行为
dshSidebarRatio.native()       // 两侧都交还原生
dshSidebarRatio.reset()        // 清掉 localStorage 记录

// 面板继承
dshSidebarInherit.get()        // 各父总会话组的当前基准
dshSidebarInherit.verbose(true) // 查看捕获/重放日志

已知边界

  • 重启要求:装完必须重启一次。
  • 不修改源码:不修改 deepseek-harness 任何源码文件,纯 JavaScript。
  • 继承限制:
    • 只能继承当前激活的那个标签。
    • 无法继承并存的多个标签、分栏、浮窗、mode。
    • 无法继承标签内的滚动位置等 params。
  • 生效条件:
    • 左栏比例在侧栏收起或帧宽 <1024px 时不生效。
    • 右栏比例在右栏没有独立轨道时不生效。

总结

该插件通过浏览器运行时改内联样式实现按比例调整,利用官方公开 API 实现面板继承。适合需要精细控制侧边栏宽度及希望父子会话共享右侧栏面板的开发者。源码:https://github.com/masknull/dsh-sidebar-ratio。

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

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

小夜