前言¶
在 DeepSeek Harness(DSH)里长时间使用 Web 界面时,默认浅色/深色切换往往只改配色,背景仍偏「平面」。若你希望界面统一为深空观感,并在内容层背后有缓慢闪烁的星点与淡淡星座线,又不想改核心代码或依赖额外 npm 包,可以用社区主题插件在 Client 侧叠加 token 与全屏 overlay。下面介绍维护者 Nektropy 发布的 dsh-starry-sky-theme:面向 DSH Web UI 的「仅深色」星空主题,关闭插件即可在同一轮热更新里撤掉配色与星空。
这是什么¶
dsh-starry-sky-theme 是 DeepSeek Harness 的主题类插件:深空色板、确定性生成的闪烁星场,以及四组 faint 星座折线与发光锚点,绘制在界面背后的同一层天空中。浅色与深色外观设置都会被解析为夜间天空——插件启用时 Client 会把外观偏好固定在 dark,在 Settings → Appearance 里选 Light 会被改回 Dark。包版本为 1.0.0,许可证 MIT,要求 Harness Web UI >= 0.2.1-rc.2;除 Harness 已提供的 react 外无额外依赖。
社区目录页:skillhub.cn 上的 Starry Sky 主题。源码与说明:GitHub — Nektropy/dsh-starry-sky-theme。目录站点为独立社区索引,与 DeepSeek / 幻方无官方从属关系。
核心功能¶
外观与配色¶
- 一套天空覆盖两种外观设置:Light 与 Dark 都解析为夜空;Client 将外观偏好钉在
dark,启用插件期间在设置里选 Light 会被纠正回 Dark。 - 深空色板:海军蓝—紫罗兰表面、月光色文字、星辉蓝强调色,通过 alias-token 层叠在当前主题之上;禁用插件时该层与 overlay 一并移除。
视觉层与交互¶
- 星座图形:四条淡淡的星图折线,锚点星带光晕,与闪烁星点同层绘制。
- 尽量不打扰操作:星空放在 frame 级、可穿透点击的 overlay 上(
pointer-events: none),不抢指针、不引发布局偏移,并尊重prefers-reduced-motion(减弱动效时关闭闪烁动画)。
可逆性¶
禁用或卸载插件后,在同一 HMR 流程内去掉配色层与星空,并停止固定外观;无需为 Client 半端单独重启进程。
安装与启用¶
插件以当前 dsh 进程权限运行;安装前建议阅读仓库源码与 MIT 许可证,确认符合你的环境策略。
方式一:插件市场(上架后)
Settings → Plugins → Plugin Market → Themes,选择 Starry Sky。
方式二:直接装入 profile
将包加入指定 profile(将 <profile> 换成你的 profile 名):
dsh plugin --profile <profile> add dsh-starry-sky-theme
然后刷新页面。Client 半端会立即生效,一般不需要为插件单独重启 Harness。
典型用法¶
- 安装并刷新后,打开 Settings → Appearance:插件会保持外观为 Dark;界面里仍能看到 Light 选项,但在插件启用期间会弹回 Dark。
- 若需要恢复可长期停留在 Light 的行为,在 Settings → Plugins 中禁用该插件(或移除安装)。注意:禁用前若已固定在
dark,保存的偏好会仍是dark,直到你再次手动修改外观。 - 若只想关掉星空与深空配色、恢复原先主题色板,禁用插件即可,原 palette 会马上回来。
实现要点(便于排查)¶
Client 模块注册三件事(均不修改 session、不读其他插件样式、不操作组件外的 DOM):
theme.overrideTokens('<package id>', tokens):alias-token 层,浅色/深色方案均使用同一套 dark 值,dispose 时移除。- 监听
theme/change,当解析结果为 light 时调用theme.setTheme('dark')。 slots.register('shell.overlay', ...):在最上层列之上渲染穿透式天空层;星点由带种子的 PRNG 确定性生成,星座线为固定百分比坐标,闪烁由 CSS keyframes 驱动(在 reduced motion 下关闭)。
适用场景与注意¶
- 适合:日常在 DSH Web UI 中工作、希望统一深空视觉、接受「启用即固定 Dark」的开发者或使用者。
- 不适合:必须在同一 Harness 实例里长期使用系统 Light 主题且不想禁用插件的场景——此时应关闭插件后再改外观。
- 兼容性:仅 Web UI;
engines.dsh为>= 0.2.1-rc.2。 - 安全与信任:与所有 DSH 插件一样,代码在 Harness 进程内执行;安装前请自行审查 GitHub 仓库。
结尾¶
dsh-starry-sky-theme 用 token 覆盖与 shell.overlay 在不大改布局的前提下提供深空配色与可关闭的星空背景,并以固定 Dark 保证 Light/Dark 设置下视觉一致。需要试用或查看更新时,可访问 社区目录页 与 GitHub 仓库。