Skip to content

dsh-plugin-style

Verified

dsh-plugin-style · v0.2.2 · MIT · Web UI

Multi-style skin collection for the DeepSeek Harness (dsh) web GUI. Each skin registers a theme (Settings → Appearance / sidebar-foot picker) plus scoped decoration CSS keyed to its active state.

Install

dsh plugin add dsh-plugin-style

Confirm the layer applied with dsh --profile default --dump-config — see the install guide.

Source

Tags

Creators

Readme

dsh-plugin-style

npm version license dsh-plugin

DeepSeek Harness(dsh)Web 界面的多风格皮肤合集。每个皮肤注册一套主题外加作用域装饰 CSS;侧边栏底部的小图标打开菜单,独立管理皮肤与基础配色——选「关闭皮肤」即完全恢复原生外观。

English | 简体中文

皮肤一览

主题 id 风格 明暗 招牌效果
wabi-sabi Wabi-Sabi 侘寂 浅 大地色系、纸纹颗粒、衬线字体、图片 sepia、圆相(Enso)启动淡出、朱红 DSH 印章 Logo
terminal Terminal 终端 暗 虚空黑底磷光绿、VT323 等宽、CRT 扫描线 + 文字辉光、方块滚动条
cyberpunk Cyberpunk 赛博朋克 暗 青/品红/酸性绿霓虹、Space Grotesk、扫描线、切角图片
film-noir Film Noir 黑色电影 暗 明暗对照暗角、胶片颗粒、Oswald 标题 + 打字机正文、黑白照片悬停复色
swiss Swiss 国际主义 浅 米白网格、Inter 黑体大写标题、瑞士红强调、直角
bauhaus Bauhaus 包豪斯 浅 红黄蓝三原色扁平几何、Jost 字体、无阴影、红色滚动条
brutalism Brutalism 野性主义 浅 4px 黑边框、8px 硬阴影、警示黄色块、颗粒覆盖
dark-glass Dark Glass 暗黑玻璃 暗 深海军蓝 + 蓝/紫/青氛围光晕、毛玻璃代码块
pixel-retro Pixel Retro 像素复古 暗 靛蓝街机、Press Start 2P 像素标题、CRT 扫描线 + 暗角、像素投影

风格来源:uiprompt.dev web-styles 的设计提示词;每个皮肤把提示词中的调色板映射为 --dsw-alias-* 令牌,招牌效果落地为作用域 CSS。

工作原理

  • 皮肤 ≠ 主题偏好。官方 ThemeRuntime 只持久化 light/dark/system;把皮肤 id 存进去会在每次设置保存或模式切换时回退。本插件用自有的持久化标记驱动 body[data-dsh-skin-<id>] 属性——没有任何自动路径能撤销它。
  • 皮肤只设定初始明暗:选中皮肤时,明暗偏好一次性切到该皮肤的设计方案(colorScheme),避免暗色皮肤配到亮色组件上;之后以你的选择为准——皮肤激活时菜单里的「外观」组仍可切 跟随系统 / 浅色 / 深色。「皮肤」组里的 关闭皮肤 恢复原生外观。
  • 配色随属性走:每个皮肤的 --dsw-alias-* 令牌同时以普通 CSS 形式输出到该属性上,客户端插件树重建后依然生效。
  • 菜单分两组:「外观」(跟随系统 / 浅色 / 深色,就是原生偏好)和「皮肤」(首行关闭皮肤,其后是各个皮肤)。
  • 在官方 设置 → 外观 里选择的皮肤 id 会被自动收编。
  • 入口在哪:侧边栏底部是 28px 圆形小图标(sidebar.footer.action),与设置行并排而不叠在它上面:宽栏用圆形图标,折叠成窄轨时换成和其他窄轨控件一致的 36px 方块。它在设置行之上,且设置弹窗打开时仍然挂载,所以桌面版任何状态都点得到。皮肤激活时图标转为品牌色。
  • 备用入口与关闭开关:设置 → 通用 里是同一个选择器,外加一个隐藏底部按钮的开关。关掉底部按钮不会让功能失联,因为设置行里保留着同一个菜单。

安装

# 从 npm
dsh plugin --profile web add dsh-plugin-style

# 或直接从 GitHub(lib/ 为预构建产物,安装时不执行任何构建脚本)
dsh plugin --profile web add github:NonchalantLudens/dsh-plugin-style

重启 dsh web。点侧边栏底部的齿轮图标切换皮肤;「关闭皮肤」恢复原生外观。皮肤同样出现在 设置 → 外观 下拉里。设置 → 通用 里也有同一个选择器和显示/隐藏该按钮的开关。

安装期零代码执行:包内全部是预构建产物,未声明任何构建脚本。

目录结构

  • lib/client.js — 客户端产物,加载器闭包工厂格式(手写维护;纯 CSS/DOM 皮肤无需构建链)
  • lib/index.js — Node 半边(no-op cordis 插件桩)
  • src/client/index.ts、src/skins/ — 可读源码留档,与 lib/ 保持同步
  • cordis.patch.yml — 安装时把插件插入 web roster

新增皮肤

  1. 在 lib/client.js 的 EXTRA_SKINS 里追加条目(id、label、theme.tokens、可选 Google Fonts imports、作用域 css)。
  2. 即可——注册、选择器菜单、调色板输出与属性守卫全部数据驱动。
  3. 升版本号后重装。

注意:所有皮肤的 Google Fonts @import 会提升到合并样式表顶部(CSS 要求 @import 先于其它规则);请把字体地址放进皮肤的 imports 数组,不要写进 CSS 正文。

许可

MIT