前言¶
DeepSeek Harness(DSH)桌面版支持通过 profile 组合加载客户端插件,但自带的 light/dark 主题切换往往只动几组配色变量,主界面、DS Bot、节点模式也可能各用一套视觉语言。若你希望长期开着桌面客户端做智能体或工作流开发,又想要一套统一、可辨认的「系统 HUD」观感,单靠换主题 id 往往不够:第三方 ui-theme 的 id 不进设置 schema,用户在设置里也选不到。
dsh-sao-theme 由维护者 EN-linkes 发布,分类属社区目录中的「趣味换装」。它不把宿主当成换色板,而是用 CSS 把主界面、DS Bot、节点模式改写成同一套刀剑神域 / Aincrad 风格:深空底、冷青全息描边、四角括号、扫描带、等宽数字,以及带刻线的命令行式输入区。许可证为 MIT,当前包版本为 1.0.2。
这是什么¶
一句话:dsh-sao-theme 是面向 DSH 桌面 profile 的客户端样式 bundle,通过 Cordis patch 注入 HUD 层 CSS,并覆盖宿主的设计令牌与关键 DOM 结构。
它不注册为官方 ui-theme,而是给 html 打上 sao 类后用 !important 压住宿主定义,从而在设置里不可见的前提下仍全局生效。星标数与社区目录展示以各站点为准;功能与安装方式以下文 README 摘录为准。
核心功能¶
三层界面统一¶
| 界面 | 说明 |
|---|---|
| 主界面 | 覆盖 --dsw-alias-* / --dsw-specific-* 令牌;定制侧栏、顶栏、工具记录条、输入区等真实 class |
DS Bot(bt-*) |
子系统不读 --dsw-*,单独硬编码青色系,与主界面消息气泡、侧栏语言对齐 |
节点模式(wf-*、react-flow__*) |
画布、节点、端口、连线、缩略图转青;「运行」为主按钮青色,「退出节点模式」为琥珀警示色 |
HUD 与细节层¶
插件注入 #dsh-sao-hud:四角 L 形括号、外圈细框、顶边系统线、缓慢下移扫描带,以及 SYSTEM // AINCRAD 标识。
细节层还包括:圆角对绝大多数元素归零(保留发送键菱形、头像六角、开关等功能圆角);字体三分(正文 UI、HUD 标签、等宽数字);斜切角与 // 分区前缀;顶栏等资源位图去色为青色单色。
附带 dsbot-patch(与主题无直接关系)¶
仓库内 dsbot-patch/ 记录了对 ds-bot 与 DSH 版本不匹配导致对话失败等问题的补丁脚本;升级 DSH / ds-bot 前请自行阅读 dsbot-patch/README.md,勿与皮肤安装混为一谈。
安装与启用¶
DSH 生态习惯是「一切皆插件」;社区目录 SkillHub 插件页 与 GitHub 仓库独立维护,与 DeepSeek / 幻方无官方从属关系。安装前应浏览源码与 MIT 许可证;客户端插件在 DSH 进程权限下运行。
在桌面 profile 目录执行官方 README 中的安装命令:
cd ~/.dsh/profiles/desktop
pnpm add github:EN-linkes/dsh-sao-theme
安装后确认两处:
package.json的dependencies中含有dsh-sao-themepackage.json的dsh.profile.bundles中含有dsh-sao-theme
插件自带的 cordis.patch.yml 会把宿主条目插入组合,一般无需手写 composition。最后重启 DeepSeek Harness——客户端插件仅在宿主启动时加载,刷新页面无效。
本地开发可指向工作副本(同样来自 README):
pnpm add file:/path/to/dsh-sao-theme
注意:profile 里 node_modules/dsh-sao-theme 为 pnpm 硬链接副本,直接改源目录不生效;需 pnpm add file: 重装,或将 lib/ 内文件 cp -f 到 node_modules 对应路径。
典型用法与开发¶
改样式并打入客户端包¶
样式唯一来源为 lib/sao.css。修改后执行:
node build.mjs
build.mjs 将 CSS 内联进 lib/client.js 的 @sao-css 标记区,并拒绝 CSS 中出现反引号或 ${(避免破坏 String.raw),且要求产物通过 node --check。
开发热更(无需每次重启宿主):
node dev.mjs
客户端 URL 带 ?sao-dev,或设置 localStorage['sao-dev']='1',由 127.0.0.1:9700 提供。
可读性回归(audit)¶
改配色前建议运行:
npm run audit
npm run audit -- --verbose
npm run audit -- --write-baseline
工具从 DSH 的 app.asar 抽取原厂 CSS,检查对比度、通配选择器误伤、浅色填充缺 color 等问题。非默认 asar 路径示例:
node tools/audit.mjs "D:/other/resources/app.asar"
适用场景与注意¶
适合:长期在 DSH 桌面版工作、希望主界面与 DS Bot / 节点模式视觉统一、能接受 SAO/Aincrad HUD 审美、并愿意在 DSH 大版本升级后按 README 重对齐 CSS Modules 哈希前缀的开发者。
务必注意:
- 特异性:例如顶栏需使用
html.sao body header.an3WzG_header[data-window-drag]才能压住宿主规则;改完若「颜色没生效也没报错」,先查特异性而非认定选择器写错。 - 版本漂移:结构层依赖当前 DSH 的 CSS Modules hash 前缀;DSH 升级后前缀可能变化,结构层会降级,令牌层配色仍可能有效。易漂移处已部分改用
[class*='…'],但对基类通配改color极易误伤全应用按钮,README 以_button_1ulci_为例。 - 权限:插件随 DSH 桌面进程加载,安装前请自检仓库代码与依赖。
结尾¶
dsh-sao-theme 把 DSH 桌面三套界面收成一套冷青色 HUD 语言,并用 Cordis patch 与内联 CSS 绕过不可选的 ui-theme 限制。若你需要在本地 profile 启用或二次开发样式,可从社区目录与 GitHub 获取同一仓库:
- 目录页:https://www.skillhub.cn/plugins/EN-linkes/dsh-sao-theme
- 仓库:https://github.com/EN-linkes/dsh-sao-theme