前言¶
DeepSeek Harness(DSH)的官方主题层通过 ctx.theme.overrideTokens() 暴露,允许插件在不改动布局的情况下覆盖颜色。但这层接口在早期版本中尚未稳定,社区里鲜有利用它做细致配色的方案。本文介绍一个基于电视剧《潜伏》主题的 DSH 主题插件,提供两套配色的切换能力。
插件定位¶
- 名称:潜伏 QIANFU
- 维护者:zshao56
- 版本:0.5.0
- 许可证:MIT
- 核心价值:通过
ctx.theme.overrideTokens()覆盖主题,提供「旧纸档案」浅色与「暗夜电台」深色两套配色,并修复 macOS 侧边栏透明导致的视觉冲突。
该插件为非官方同人作品,不包含剧照、Logo 或其他受版权保护的图像素材。
核心功能¶
两套配色方案¶
| 模式 | 名称 | 氛围 |
|---|---|---|
| 浅色 | 旧纸档案 | 老式电报纸、铁胆墨、墨绿制服、铜角,仅用印泥红作为警告色 |
| 深色 | 暗夜电台 | 凌晨三点的电台室:近黑绿、烟青色表面、铜质表盘、暗红 |
主题层叠加机制¶
插件通过官方的 ctx.theme.overrideTokens() 接口叠加一层「别名令牌」,不替换内置主题。切换 Appearance 时,主题在「旧纸档案」和「暗夜电台」之间切换,字号、字体和终端设置保持不变。禁用插件后该层自动清除,无遗留 CSS。
macOS 侧边栏与玩偶¶
在 macOS 上,原生侧边栏是透明窗口(窗口毛玻璃),会露出灰色背景,与纸张内容产生冲突。从 0.2.0 版本开始,主题会将侧边栏涂成相同的纸张颜色,并在底部挂载一个原创「潜伏间谍鲸」玩偶:礼帽、风衣领、红领带、电报纸和印泥红印章。
玩偶上方有一张「站长引语」卡片,每 5 分钟自动切换下一句,点击可立即切换并重置计时器。引语在浏览器中按会话记忆。九句短引语来自剧集台词。
若不需要引语,可在 lib/client.js 中设置 QUOTES 为 [],然后重新安装。
玩偶为原创插画,不含剧照、演员肖像或剧标。
对比度与实现约束¶
- 颜色仅通过
--dsw-alias-*/--dsw-specific-*令牌表达,不使用组件选择器或布局覆盖 - 主体、次要、三级文本、链接、状态文本和按钮文本在两套配色中均满足 ≥ 4.5:1 的对比度
- 仅覆盖颜色,不改动字体、大小、圆角、阴影或动效
安装与启用¶
DSH Desktop(推荐)¶
- 打开 DSH Desktop
- 进入 Settings → Plugins
- 点击 Install plugin
- 输入插件目录的绝对路径,例如:
/Users/apple/Documents/deepseek-harness/default-workspace/dsh-theme-qianfu
- 按提示重启 / 刷新 DSH
- 在 Appearance 中切换 Light / Dark,观察两套配色
Web profile(命令行)¶
从 GitHub 仓库安装:
dsh plugin --profile web add github:zshao56/dsh-theme-qianfu
dsh web
从本地检出安装:
dsh plugin --profile web add /absolute/path/to/dsh-theme-qianfu
dsh web
安装后在浏览器中硬刷新(Cmd/Ctrl + Shift + R)。
从 tarball 安装¶
cd dsh-theme-qianfu
npm pack
dsh plugin --profile web add /absolute/path/to/dsh-theme-qianfu-0.5.0.tgz
典型用法¶
- 在 Appearance 中切换 Light / Dark,观察「旧纸档案」与「暗夜电台」的配色差异
- 在 macOS 上观察侧边栏与玩偶的渲染效果
- 若需关闭引语,编辑
lib/client.js,设置QUOTES = [],然后重新安装插件
适用场景与注意¶
- 适合在 DSH 0.2.0-rc.2 及以上版本中尝试主题层叠加配色
- 插件为纯客户端插件(
platform: "web"),不注册模型工具,不发起网络请求,不写入配置状态 - 安装前建议检查源码与许可证(MIT),确保符合工作环境的安全策略
短结尾¶
本文介绍的潜伏 QIANFU 主题通过 ctx.theme.overrideTokens() 提供了两套配色与侧边栏优化,适合希望在 DSH 中尝试非官方主题层的开发者。项目地址见下方目录页与 GitHub 仓库。