README来源: master@b8ca0ffc
dsh-settings-organizer
独立的 DSH Web 设置导航整理插件。它不属于插件安全网,不安装或修改其他插件,只整理设置侧栏的显示结构。
插件仅运行在浏览器端:通过 DSH 的 settings.section 插槽添加管理页面,并使用 MutationObserver 适配设置侧栏的动态渲染。插件不会移动、包裹或克隆 DSH 原生导航节点。
界面预览
导航管理
管理一级分组,并为 DSH 或插件提供的二级导航设置页面归属。

分组导航
一级分组可以独立展开或折叠,二级导航保留 DSH 原生页面交互。

暗色模式
导航结构与管理界面跟随 DSH 的浅色或暗色外观。

当前版本提供:
- 会话、工作区、插件安全、界面扩展等默认一级分组;
- 设置页面首次迁移时自动识别已存在的页面;
- 未识别页面保留,不删除、不隐藏;
- 一级分组可新建、重命名、删除、隐藏和调整顺序;
- 二级导航来自 DSH 和插件注册的设置页面,可修改其一级分组归属;
- 点击一级分组可隐藏或显示所属二级导航,实现稳定的折叠效果;
- 当前二级导航保持突出,切换页面后选中状态随 DSH 原生状态更新;
- 侧栏滚动和安全模式;
- 设置入口固定为“导航管理”,默认位于 Agent 预设之后;
prefers-reduced-motion下关闭动画;- 页面归属编辑:把已发现的设置页面移动到任意默认分组;
- 导航配置导入/导出和恢复默认布局;
- 安全模式可一键恢复原始设置导航。
dsh plugin --profile web add github:baihejiangnan/dsh-settings-organizer
这是独立项目,与 dsh-plugin-safety-net 无关。
数据与行为
- 配置保存在当前 DSH Web profile 中,重启启动器或重建浏览器窗口后仍会恢复;
- 浏览器
localStorage(键名dsh-settings-organizer:v2)仅用于旧版本迁移和服务暂不可用时的回退; - 配置包括一级分组、页面归属、折叠状态、是否显示空分组和安全模式状态;
- 首次打开时会读取当前已渲染的设置页面,并按内置规则归类;
- 未识别页面会归入“其他扩展”,不会被删除或隐藏;
- “显示原始导航”会启用安全模式,停止重排并恢复原始 DOM 顺序;
- 导入配置会覆盖当前导航配置,建议先使用“导出”备份。
- 导入旧配置时,历史嵌套分组会自动提升为一级分组。
首次安装时会读取已经存在的设置页面并按默认规则归类。无法识别的页面不会被删除;用户可以在“页面归属”中重新选择分组。空分组默认不显示,但可以开启“显示空分组”。
已知限制
- 页面识别依赖设置入口的可见文本;如果其他插件修改入口文字,可能需要手动重新归类;
- 插件只整理设置侧栏,不会改变设置页面本身的内容或插件加载顺序;
- 自定义分组仅支持一级;二级导航必须由 DSH 或插件实际注册;
- 配置随当前 DSH profile 保存,不会自动同步到其他设备或其他 profile;
- 真实 DSH Desktop 的窗口适配、截图和交互验收应在目标 profile 中完成。
开发
pnpm install
node --check lib/client.js
客户端入口为 lib/client.js,插件 host 入口为 lib/index.js(当前为空实现)。
License
MIT
还没有评论,来写第一条。