dsh-sidebar-organizer: DSH 7-Region Layout Long-Press Drag and Organization

前言

DeepSeek Harness(DSH)把插件、市场、技能、定时任务等能力拆成多处重复的按钮与卡片:左侧边栏、侧栏底部、对话标签、输入框工具条、会话头部、右侧栏「开始」页、设置导航。条目一多,默认顺序往往不符合个人习惯,而宿主本身并不提供统一的「排个序、少占地方」入口。社区插件 dsh-sidebar-organizer(维护者 TLEWA,分类:客户端)针对上述七处界面,用长按拖动调整顺序,并把不常用的项收进各区域自带的「更多」菜单;布局持久化,并可在桌面窗口与浏览器 Web 界面之间共用同一份配置(可在设置里关闭)。下面介绍它是什么、能做什么、如何安装与日常使用。

这是什么

dsh-sidebar-organizer 是 DSH 的客户端插件:不替换宿主 UI,只在既有行/卡片上叠加排序与收纳逻辑。早期版本曾用名 dsh-modmenu,改名后旧布局存储键会自动迁移。当前 package 版本为 0.7.3,要求 DSH >= 0.2.1-rc.3(作者在 0.2.1-rc.5 上开发)。许可证为 MIT。插件在 SkillHub 目录 与 GitHub 仓库 均可找到;社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。

整理范围与交互方式

整理覆盖七处位置,拖动轴向因区域而异:

位置 典型内容 拖动方向
左侧边栏 插件、市场、技能管理、定时任务等 上下
侧栏底部 反馈、设置等 左右
对话标签 对话、轨迹等 左右
输入框工具条 统计、上下文、活动、用量等 左右
会话头部工具条 提醒、底部面板、上下文诊断、查找等 左右
右侧栏「开始」页 文件、浏览器、终端、「更多工具」 上下
设置导航 账户、通用、模型、插件等 上下

长按拖动排序:按住目标约 0.26 秒,行或卡片浮起(ghost 跟随指针,落点有指示线);横向区域为竖线,纵向区域为横线。松手后顺序即时生效并保存。

收进「更多」:拖到本区域的「更多」按钮上松手,项从原位消失,进入该区域「更多」菜单的「已收纳」分组。侧栏底部与左侧边栏共用左侧「更多」;对话标签与输入框工具条共用对话区「更多」;右侧栏用「更多工具」;会话头部收进官方「更多操作」菜单,被收纳图标排在菜单原生项(如下载 Session 日志、反馈)上方;「…」按钮本身不参与排序也不可收纳。设置导航在出现收纳项时由插件补上「更多」入口(第一项需在配置页收起后,导航底部才会出现「更多」)。

拖回与菜单内排序:在对应「更多」里长按被收纳项拖回原区域;「已收纳」分组内也可长按调整彼此顺序。

会话头部特例:可将「更多操作」菜单里的「下载 Session 日志」「反馈」拖到条带上变成图标按钮,拖回菜单即撤下。

键盘:聚焦某行后 Alt+↑ / Alt+↓(横向区域按顺序移动)。

本版本没有右键菜单、悬浮启动器、专用快捷键、搜索或分组能力。

配置页、导入导出与跨窗口

入口:DSH 设置 →「布局整理」,或插件详情页。七张位置卡片支持拖动整行、上移/下移、收起/恢复、恢复本组;每张卡片有独立「拖动」开关,关闭后该区域不再响应长按(已有布局与收纳不变)。本插件自己的设置入口可排序不可收起;README 提到 better-sidebar 的设置入口完全固定。

配置页标题栏提供 导出配置 / 导入配置:导出为含七区域排序、收纳状态与拖动开关的 JSON;导入整份替换,版本不兼容或文件损坏时整份拒绝。导出结构含 format、version、exportedAt、scopes、drag,导入只接受 version === 3 且含 scopes 的文件。

跨窗口共用布局(0.7.2 起):桌面端与浏览器 http://127.0.0.1:<端口> 默认共用同一份顺序;配置页顶部开关(存储键 dsh.sidebar-organizer.cross-window.v1,默认开)可关闭,关闭后各窗口仅用本地 localStorage。宿主通过本机 API 将布局写入 $DSH_HOME/storages/dsh-sidebar-organizer/layout.json;无宿主路由时降级为仅本地存储,不报错。

各区域「更多」里的 恢复默认排序 只影响该区域,已收纳项会展开;不会改动各区域拖动开关。刷新页面或重启 DSH 后布局保持。

安装与启用

推荐从 GitHub Release 安装:打开 Releases,复制最新 dsh-sidebar-organizer-<版本>.tgz 链接到 DSH「插件」页 →「添加插件」,或下载本地文件后选择;发布页提供 SHA256SUMS 校验。也可直接粘贴已构建仓库地址:

git+https://github.com/TLEWA/dsh-sidebar-organizer.git#v0.7.3

从 npm 安装:

dsh plugin install dsh-sidebar-organizer

或在 DSH 插件管理器搜索 dsh-sidebar-organizer。

安装后刷新 Web 界面(Ctrl+R)。插件以当前 DSH 进程权限在客户端运行;安装前建议阅读仓库源码与 MIT 许可证,确认符合你的安全策略。

典型用法

  1. 安装并刷新界面后,在左侧边栏长按「定时任务」等条目,拖到期望位置松手。
  2. 不常用的输入框工具条按钮拖到对话区「更多」上松手收纳;需要时再打开「更多」,长按拖回。
  3. 打开 布局整理,关闭某区域「拖动」开关,避免误触;满意后 导出配置 备份,换机器或重装时用 导入配置 恢复。
  4. 若布局异常,可在浏览器控制台使用逃生 API(README 提供),例如查看状态或按区域重置:
window.__dshSidebarOrganizer.status();
window.__dshSidebarOrganizer.resetScope("footer");

执行 disable() 后需 localStorage.removeItem("dsh.sidebar-organizer.disabled") 再刷新才能重新启用。

实现与安全要点(选用)

插件采用「被整理插槽只读、顺序与隐藏只写 DOM 内联样式」的设计,避免早期版本重复注册插槽导致页面卡死;含看门狗与控制台逃生开关。跨窗口同步仅本机 GET/POST /api/dsh-sidebar-organizer/layout,不接受非 owner 请求,不发起外部网络请求。即使插件完全不工作,七处也保持 DSH 默认顺序。

结尾

dsh-sidebar-organizer 把 DSH 里重复出现的七块 UI 收成一套可长按排序、可收纳、可导出配置的布局方案,适合希望统一桌面与浏览器界面、又不愿改宿主源码的 DSH 用户。

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

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

Xiaoye