前言¶
DeepSeek Harness Web(DSH)采用令牌驱动的设计系统,整套 --dsw-* 变量控制界面配色。主题插件通过覆盖这些令牌来改变整体视觉,但手动维护整套令牌成本高,容易因版本升级失效。下面介绍一个专门为 DSH Web 打造的换装插件,直接覆盖令牌、提供装饰层,装完即生效。
是什么¶
- 插件名:dsh-theme-aemath(AEMEATH 主题)
- 维护者:yll86
- 分类:趣味换装
- 定位:为 DeepSeek Harness Web 提供紫罗兰玫粉配色的客户端主题插件,覆盖全套
--dsw-*令牌、对话背景立绘、Q 版徽章和 favicon。
核心功能¶
- 全局换装:提供浅色「樱花晨光」和深色「樱夜」两套配色,覆盖所有
--dsw-*令牌。主题色为紫罗兰玫粉:浅色#963f86、深色#c96f9e,按钮、链接、选中态、滚动条、代码块全部联动。 - 对话区背景立绘:将立绘处理成淡彩,作为对话区背景层。实现方式为
html body::before,z-index: 50,在内容层之上、弹层之下,pointer-events: none。 - Q 版徽章:左下角圆形小头像,白圈 + 紫粉描边 + 柔光。实现方式为
html body::after,z-index: 999,pointer-events: none。 - favicon 与标题:页面标题改为
DeepSeek Harness - AEMEATH Theme;favicon 为「飞行雪绒·像素海豹」。 - 零请求:样式表、立绘、favicon 全部内联在插件里,不向外请求任何资源。
安装与启用¶
主题是客户端插件,装完刷新页面即可生效。
- 从插件市场:设置 → 插件市场 → 搜索
aemath(或「爱弥斯」)→ 一键安装 → 刷新页面。 - 命令行(
dsh web的 web profile):
dsh plugin --profile web add dsh-theme-aemath
装完重启 dsh web。
- 手动启用(本地目录 / 压缩包已在 profile 中):
在 profile 的 ~\.dsh\profiles\web\cordis.patch.yml 中插入:
- insert:
- id: ui-theme-aemath
name: 'dsh-theme-aemath'
然后重启 dsh web。
关闭主题¶
在 ~\.dsh\profiles\web\cordis.patch.yml 中将对应条目禁用或注释掉,或在设置 → 插件里热禁用。重启 / 热重载后主题消失,界面回到出厂配色——插件不会残留任何注入。
生效范围¶
主题覆盖的是配色令牌 + 两个装饰层,不动组件结构:
- 全部
--dsw-*令牌:在html body下重定义,浅深两套靠[data-ds-dark-theme]切换。 - 对话区背景立绘:
html body::before,z-index: 50,pointer-events: none。 - 左下角 Q 版徽章:
html body::after,z-index: 999,pointer-events: none。 - favicon / 页面标题:客户端插件在
ctx.effect里切换,卸载即还原。
由于只使用 body 上的伪元素和 CSS 变量,前端升级换构建 hash 也不会失效。
微调¶
直接修改 src/aemath-theme.css 顶部的变量:
--aemath-art-opacity: 0.42; /* 背景立绘强度:越高越明显,也越"蒙" */
--aemath-chibi-size: 96px; /* Q 版徽章尺寸 */
--aemath-chibi-left: 92px; /* 徽章水平位置(侧边栏宽 - 尺寸)/ 2 */
--aemath-chibi-bottom: 170px; /* 徽章离底距离 */
修改后重建:
node scripts/build-client.mjs
重建是幂等的、可复现的:背景图按内容哈希 stamp 缓存标记,Q 版内联为 data URI,favicon 内联为 SVG data URI。
- 换立绘:
1. 新的背景图存为assets/aemath-bg.jpg(建议 1600px 宽、JPEG 质量 80 左右,主题会按--aemath-art-opacity透明度作为水印使用)。
2. 新的 Q 版小图存为assets/aemath-chibi.jpg(正方形,会被裁成圆形)。
3. 运行node scripts/build-client.mjs。
内置立绘为作者自有素材。替换/二次分发前请确认你拥有所用图片的权利。
项目结构¶
dsh-theme-aemath/
├── package.json # dsh.client.platform = web
├── lib/ # 发布产物
│ ├── client.js # 浏览器半边:内联整份样式表
│ └── index.js # host 半边:提供 /aemath-assets/* 素材路由
├── src/
│ ├── aemath-theme.css # 主题源头:两套配色 + 背景层 + Q 版
│ └── client.template.js # client 半边模板(__CSS__ / __SVG__ 占位)
├── scripts/
│ ├── build-client.mjs # 零依赖构建脚本
│ ├── self-check.mjs # 上架前自检(63 项)
│ └── make-poster.py # 生成 assets/aemath-poster.jpg
├── assets/
│ ├── aemath-poster.jpg # 市场/README 预览海报
│ ├── aemath-bg.jpg # 对话背景立绘
│ ├── aemath-chibi.jpg # Q 版徽章
│ └── aemath-favicon.svg # 像素海豹 favicon
├── screenshots.json # 市场截图清单
└── PUBLISHING.md # 上架插件市场的完整步骤
自检与上架¶
改完后发布前可运行:
node scripts/self-check.mjs
自检包含 63 项:包清单、素材格式、lib/client.js 可执行性、apply() 是否正确挂载样式表、favicon 切换、host 路由安全等。
插件市场的条目来自 awesome-dsh-plugin 精选列表,上架步骤在 PUBLISHING.md 中,包含 npm 发布、GitHub 仓库、提 PR 等流程。
适用场景与注意¶
- 适合希望快速统一 Web 界面配色、增加装饰层的 DSH 用户。
- 插件以当前 dsh 进程权限运行,安装前建议查看源码与许可证。
- 本主题为非官方同人作品,与《鸣潮》/ 库洛游戏无关,许可为 MIT。
短结尾¶
AEMEATH 主题通过覆盖 --dsw-* 令牌和 CSS 伪元素,为 DSH Web 提供一套即装即用的紫罗兰玫粉配色方案,并内置立绘与 Q 版徽章。目录页与 GitHub 仓库见下方链接。