dsh-sidebar-guide-scroll:右侧栏「开始」页卡片溢出时可滚动

前言

DeepSeek Harness(DSH)右侧栏的「开始」页会把文件、代码审查、上下文、终端、Git、浏览器、任务管理、侧边对话等能力渲染成一列工具卡片。插件装得越多,或配合 dsh-better-sidebar 等同页扩展时,列表很容易高于面板可视区域。原生这一页没有独立滚动视口,上下会被裁切,滚轮也拖不动列表。

yhPrime 维护的客户端插件 dsh-sidebar-guide-scroll 只针对这一问题:在卡片溢出时让「开始」页可纵向滚动,滚动条沿用宿主主题样式,且仅在需要时出现。

这是什么

dsh-sidebar-guide-scroll 是一个体量很小的 DSH 客户端插件(dsh.client.platform: web,页面加载时 immediately 注册)。它不改 DSH 本体,也不改 node_modules 里任何第三方包,而是给上游自带的稳定 DOM 标记 [data-sidebar-right-guide] 加作用域样式与视口测量,把这一页变成自己的滚动容器。

与右侧栏生态里其他插件的关系:dsh-better-sidebar 等标签也注册在同一「开始」页,本插件可与它们同页协作,但不依赖它们;即便卸掉 better-sidebar,原生卡片溢出时修复仍生效。

核心功能

下面所列行为均来自仓库 README 与 client.js 侧的设计说明。

  1. 溢出滚动:对 [data-sidebar-right-guide] 设置 overflow-y: auto,内容超出时出现纵向滚动;未溢出时不强行显示滚动条。
  2. 保留居中观感:上下各加弹性占位,卡片不足一屏时仍接近原来的垂直居中布局。
  3. 随布局变化同步高度:用 ResizeObserver 把可视高度写入该根节点,在面板尺寸、标签切换、窗口变化时更新。
  4. 滚动条外观随宿主:不单独定义颜色,沿用 dsh-client-ui-theme 对全站 ::-webkit-scrollbar(约 5px、主题色、hover)的规则。
  5. 可干净卸载:通过插件上下文的 ctx.effect 清理函数还原样式、观察器与内联高度,无需手工清 DOM。

上游若更换内部哈希类名,只要仍保留 data-sidebar-right-guide 标记,插件就不受影响。

安装与启用

插件在 DSH 进程、当前 profile 对应的权限与沙箱策略下运行;安装前建议浏览 GitHub 仓库 源码并确认 MIT 许可与 package.json 中的版本(资料中可见 0.1.0)。

方式一:插件管理器本地目录

在 DSH 中通过 plugin_manager → install_bundle,将 target 设为本插件目录的绝对路径,刷新页面后,在插件管理里应出现「侧边栏开始页滚动 / Sidebar start page scrolling」,启用即可。

方式二:从 GitHub 安装到指定 profile

dsh plugin --profile <profile> add git+https://github.com/yhPrime/dsh-sidebar-guide-scroll.git

装完后在插件管理里启用,再刷新页面(客户端插件在页面加载时注册)。

典型用法

本插件没有额外配置项或 CLI 子命令,启用并刷新后即生效。使用方式可以概括为:

  1. 打开 DSH Web 客户端右侧栏,切到「开始」页。
  2. 当工具卡片总高度超过面板时,在该页内用滚轮或拖动滚动条浏览完整列表。
  3. 卡片较少、未溢出时,页面外观与未装插件时接近,不应出现多余滚动条。

仓库提供 npm test(node test/check.mjs 与 node test/client.test.mjs)做静态自检,供维护者或二次打包时验证,终端用户通常不必执行。

适用场景与注意

适合谁

  • 长期在 DSH 里堆叠多个客户端插件,右侧「开始」页卡片经常看不全的用户。
  • 使用 dsh-better-sidebar 等同页工具、又希望原生「开始」列表可滚动的用户。

注意

  • 分类为客户端插件,只影响浏览器端 UI,不提供 Host 侧 apply 逻辑(index.js 中 apply 为空)。
  • 安装命令须使用 README 给出的 git+https://github.com/yhPrime/dsh-sidebar-guide-scroll.git 形式,勿凭插件名自行拼接未在文档中出现的地址。
  • 卸载:在插件管理里关闭或删除 dsh-sidebar-guide-scroll 即可,不必手动清理页面。

结尾

dsh-sidebar-guide-scroll 用最小侵入的方式,把右侧栏「开始」页从「溢出即裁切」改成「需要时可滚动」,并依赖上游稳定的 data-sidebar-right-guide 标记,降低与 DSH 版本迭代的耦合。

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

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

小夜