dsh-sao-theme:为 DeepSeek Harness 套上刀剑神域 / Aincrad 风格 HUD 皮肤

前言

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

安装后确认两处:

  1. package.json 的 dependencies 中含有 dsh-sao-theme
  2. package.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
羽毛球分组比赛记分
小程序二维码

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

Xiaoye