DeepSeek Harness(DSH)的设计理念是“一切皆插件”。在默认的界面基础上,开发者往往需要更贴合个人或品牌风格的视觉体验。@dshp-inx/custom-ui 是一个专为 DSH 定制的 UI 套件,旨在通过主题画廊和外观配置工具,解决界面风格单一和偏好持久化缺失的问题。
核心功能¶
该插件提供了外观定制的一整套能力,主要包括:
- 主题画廊:内置 23 套主题,包含 14 套品牌适配(如 Linear、GitHub、Notion 等)和 9 套原创主题。
- 一键切换:在设置页的“外观定制”模块中,直接点击色卡即可切换主题。
- 偏好持久化:补全了官方
ui-theme.preference仅支持light/dark/system的缺陷,支持自定义主题 ID 的保存与读取,重启后自动恢复。 - 全局圆角配置:支持 -1(跟随主题)、0(全锐角)、12(统一圆润)三档配置,保存即生效。
- 壁纸取色:基于 Material You 算法,上传壁纸后提取调色板,生成包含 MD3 导出的 Token,支持一键启用。
- 全量 Token 映射:每套主题包含约 110 个
--dsw-*令牌,覆盖背景、边框、按钮、交互态、文字、阴影等所有 UI 层面。
安装与启用¶
插件挂载在 DSH 的 Web Profile 层。执行以下命令完成安装:
cd ~/.dsh/profiles/web
pnpm add --offline "@dshp-inx/custom-ui@link:../../plugins/dsh-custom-ui"
rm -rf node_modules/@dshp-inx/custom-ui
ln -s "$HOME/.dsh/plugins/dsh-custom-ui" node_modules/@dshp-inx/custom-ui
安装完成后,重启 DSH Web 即可生效。
典型用法¶
- 切换主题:进入“设置” -> “外观定制” -> “主题画廊”。点击色卡即可切换,当前使用的主题会有实时徽标跟随。
- 配置圆角:在“外观定制”中找到“全局圆角”配置项,选择 -1、0 或 12,点击保存。
- 壁纸取色:在“外观定制”中找到“壁纸取色”区域,上传本地壁纸。插件会生成 5 组调色板(亮/暗模式),支持一键启用或复制 MD3 Token。
注意事项¶
- 数据源结构:主题数据源为
lib/themes/,Host 端只下发 Token,Client 端只存储元数据(id、label、swatch 等)。新增主题需在目录添加文件、更新聚合索引,并运行校验脚本。 - 版本冲突:如果系统中同时存在动态插件版(会话内 cordis_define)和静态挂载版,会导致
WEB_DUPLICATE_PROVIDER错误。静态挂载前应先cordis_undefine动态版。 - 限制说明:官方主题服务的设置 Schema 仅支持
light/dark/system,本插件通过扩展 Settings 命名空间实现了自定义主题的持久化。