DeepSeek Harness (DSH) 采用「一切皆插件」的理念,允许通过扩展来定制客户端行为与外观。对于需要统一视觉风格或追求特定界面体验的开发者来说,更换客户端的皮肤是一个常见需求。dsh-plugin-gemini-theme 提供了一套现成的样式覆盖方案。
定义与定位¶
该插件是一个由 dingyi580 维护的样式包,它通过单一样式表覆盖 DSH Web 客户端的 --dsw-* 设计令牌,无需修改客户端源码即可改变界面外观。
核心功能¶
插件主要对以下界面元素进行了样式重置:
- 对话区域和侧边栏填充。
- 侧边栏的胶囊行和圆角图标按钮。
- 新聊天药丸。
- 英雄问候的缩放比例。
- 输入框的圆角、填充和阴影。
- 输入框背后的蓝色背景光晕。
- 空白会话打开时的入场动画。
- 滚动区域两端的淡入淡出效果。
安装与启用¶
安装插件需要使用 DSH 的插件管理命令:
dsh plugin --profile web add dsh-plugin-gemini-theme
安装后需重启 dsh web 才能使样式生效。
典型用法¶
若需移除该插件并恢复客户端的默认外观,可执行:
dsh plugin --profile web remove dsh-plugin-gemini-theme
适用场景与注意¶
- 无 DOM 干扰:该插件不提供新的 DOM 结构、插槽占用或服务,仅作为样式层存在。
- 样式优先级:插件样式加载顺序位于所有功能包样式表之前,因此组件规则带有
!important。 - 实现机制:规则通过 CSS 模块编译后的类名(
[hash]_[local])进行匹配。使用class*="_local"的方式存在误伤其他组件的风险,开发者需通过标签限定符、:has()等选择器加以限制。 - 功能限制:以下功能不在插件覆盖范围内,保持客户端原生行为:
- 会话头部(标题、模式芯片、视图标签)保持原生。
- 英雄问候为客户端原生行,非轮播内容。
- 侧边栏的开启状态、启动姿态或宽度由客户端决定。
- 对话过程中的顶部进度条(插件无法获取该 DOM 信号)。
该插件遵循 MIT 许可证。
总结¶
通过此插件,开发者可以在不改动代码的情况下快速将 DeepSeek Harness Web 客户端的视觉风格调整为类似 Google Gemini 的外观。更多详情与源码,请访问 GitHub。