前言¶
在 DeepSeek Harness(DSH)Web 端,侧边栏顶部的全局面板菜单(sidebar.panellist)由宿主渲染:每项一行带图标与文字,末尾是「更多」启动器。左下角在未登录时也是一个「更多」,下面挂着设置、意见反馈、登录。条目一多,只能按宿主默认顺序浏览;若想用按钮行排布、限制行数,或把常用项拖到前面,宿主本身没有提供这些开关。
dsh-panel-layout 是 devome 维护的客户端插件(当前仓库版本 0.2.1,MIT 许可),把上述两处菜单合成一套可配置的界面:按钮行或列表切换、按钮行行数上限、拖动排序,溢出项收进「更多」,并把左下角三项并入面板菜单。它与只做布局二选一的 dsh-sidebar-panel-buttons 作用在同一栏,功能上是后者的超集;社区目录页见 SkillHub,源码在 GitHub。
这是什么¶
一句话:dsh-panel-layout 只改 Web 侧边栏展开态的面板菜单——布局形态、可见数量、顺序,以及设置 / 意见反馈 / 登录的入口位置。
宿主仍负责注册各面板项图标与 setPinned 钉选;本插件通过 DOM 调和与 sidebar.panellist.actions 补行,不引入 Harness 客户端包,样式门控依赖 <html data-dpl-mode>,设置与顺序写在浏览器 localStorage(dsh-panel-layout:settings、dsh-panel-layout:order),与宿主钉选互不干扰。
核心功能¶
下面按 README 中能力表归纳,均可从仓库说明核对。
布局与行数¶
在 设置 → 通用 → 侧边栏面板菜单 中,可在 按钮行 与 列表 之间切换,默认按钮行。
按钮行模式下,行数可选 1–3 行,默认 1 行。插件按侧边栏实际宽度估算每行格数(36px 单元格 + 4px 间距 + 2px 内边距),每行末尾始终留一格给「更多」。列表模式下默认只显示前 4 项,第 5 项起进入「更多」。
拖动排序与溢出¶
- 在面板菜单内可直接拖动任意一项到另一项上;按钮行按左右半区判断插入点,列表按上下半区。
- 超出上限的项用
display:none隐藏,同时通过宿主的「更多」菜单列出,顺序与面板栏一致。 - 「更多」内的项可互拖排序;也可拖回面板栏恢复可见。宿主自带的「浏览更多插件」「创建你的插件」不参与本插件排序。
- 触屏没有 HTML5 拖拽时,「更多」每行右侧的向上箭头可将该项排到第一并回到可见区。
吸收左下角「更多」¶
设置、意见反馈、登录变为面板菜单里的普通项,沿用宿主图标,可与其他项一起拖动排序。未登录时左下角那个「更多」会隐藏;登录后不再显示「登录」项,左下角恢复为账号头像入口。
登录后行为与收起侧栏是已知边界:图标栏放不下也拖不动时,不隐藏左下角入口,三项仍从原处可达。
与相近插件的关系¶
dsh-sidebar-panel-buttons 仅做按钮行 / 列表切换,没有行数上限、排序、收纳,也不动左下角。同一时间只启用其中一个;两个都开时会改同一批节点,列表模式会互相顶掉。安装本插件后建议停用 dsh-sidebar-panel-buttons。
安装与启用¶
插件以 web profile 安装,装好后刷新页面生效。若你自行改动了 lib/client.js,需重启 Harness 才会重新生成浏览器模块。
官方 README 给出的安装方式如下。
dsh plugin --profile web add dsh-panel-layout
或在 DSH 插件市场里搜索 dsh-panel-layout 安装。从源码安装:
dsh plugin --profile web add github:devome/dsh-panel-layout
package.json 中声明的 DSH 兼容范围为 ^0.2.1-rc.3 || ^0.2.2-0(含若干已标注 compatible 的 release)。安装前请对照你本地的 Harness 版本。
典型用法¶
经过上面的安装与刷新,日常操作主要在界面内完成,无需额外配置文件。
- 打开 设置 → 通用,在「侧边栏面板菜单」里选按钮行或列表,并设定按钮行最多几行(1–3)。
- 在展开侧栏的面板区域拖动图标,把常用入口排到前面;放不下的会自动进「更多」。
- 在「更多」里调整顺序,或把项拖回主栏;触屏用行右侧向上箭头置顶。
- 从未登录态起,设置、意见反馈、登录会出现在面板菜单中,与插件、MCP 等项同一套排序规则。
三项的点击行为仍走宿主能力:设置走 settings.open(或启动器回退路径)、意见反馈走公开问卷链接(__DSH_CONTACT_CONFIG__)、登录走账号流 startSignIn。
适用场景与注意¶
适合谁: 长期在 DSH Web 里切换插件市场、上下文、任务板、MCP 等面板,希望侧边栏用按钮行节省纵向空间,或固定「前几个」入口、把长尾收进「更多」的开发者。
权限与信任: 插件在当前 DSH 进程权限下作为客户端代码运行,会读写页面 DOM 与浏览器 localStorage。安装前建议浏览 源码仓库 与 MIT 许可证,确认与你的工作区策略一致。社区目录 SkillHub 为独立生态站点,与 DeepSeek / 幻方无官方从属关系。
其他边界(摘自 README):
- 仅作用于展开侧栏;收起后的图标栏保持宿主原样。
- 排序与「更多」共用一套顺序;把一项排到最前会把原本可见的最后一项挤进「更多」。
- 一行可容纳 n 格时只显示 n-1 项,因「更多」占一格。
- 面板项图标不自绘;若宿主改动图标 id,吸收进来的三项可能失图标,面板项不受影响。
结尾¶
dsh-panel-layout 针对的是 DSH Web 侧边栏面板菜单这一小块 UI:在宿主不暴露行数与顺序槽位的前提下,用客户端调和补上布局、上限、拖拽与收纳,并把左下角三项并进同一菜单。需要按钮行/列表、可排序、可收纳时,可按上文命令安装,并避免与 dsh-sidebar-panel-buttons 同时启用。
- 目录页:https://www.skillhub.cn/plugins/devome/dsh-panel-layout
- GitHub:https://github.com/devome/dsh-panel-layout