BeiZi6/dsh-theme-plugin ↗★ 5

dsh-theme-plugin

DSH Web GUI theme studio with presets and per-mode customization: accent, background, foreground, fonts, translucent sidebar, and contrast. Overrides CSS tokens in every served index.html via the official webServer.tapIndex seam. 适合想深度定制界面外观的用户;通过设置页调整,改动即时生效并本地保存。

パッケージ
dsh-theme-plugin
互換性
未検証
Harness ピア範囲
^0.1.0-rc.6
Cordis ピア範囲
^4.0.1
バージョン
0.1.0
ライセンス
MIT
最終更新
2026/08/14

同名パッケージの別リポジトリ

インストール

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:BeiZi6/dsh-theme-plugin

ドキュメント

README 全文を読む ↗

Usage

Settings GUI (recommended)

After a restart, open Settings → Theme Studio:

  • Preset — one-click chips: DeepSeek default / Codex warm / Nord / Solarized / Graphite / Custom
  • Colors — color pickers for accent, background and foreground, with a "follow preset" reset
  • Fonts — dropdowns for the UI font and the code font (common stacks included)
  • Translucent sidebar — follow preset / on / off
  • Contrast — slider 0–100 with preset restore

Every change applies instantly and persists locally; GUI selections take priority over host config.

The stock preset derives no palette: color controls are disabled and only fonts can be overridden.

Config reference

FieldTypeDescription
presetenumstock · codex-warm · nord · solarized · graphite · custom (default codex-warm)
light.accentcoloraccent for light mode (primary buttons, links, …)
light.backgroundcolorlight-mode background
light.foregroundcolorlight-mode primary text
light.uiFontCSS font-familyUI font stack
light.codeFontCSS font-familycode font stack
light.translucentSidebarenumpreset · on · off
light.contrastnumber0–100; -1 = keep preset value
dark.*—same fields for dark mode

Empty strings mean "keep the preset value"; unset fields are not overridden at all.

Example — merge into the web profile patch ($DSH_HOME/profiles/web/cordis.patch.yml):

- id: theme-plugin
  config:
    preset: codex-warm
    light:
      accent: '#FF6B35'
      background: '#FFFAF0'
      foreground: '#1A1A1A'
      uiFont: '"Inter", "PingFang SC", sans-serif'
      codeFont: '"JetBrains Mono", Consolas, monospace'
      translucentSidebar: off
      contrast: 70
    dark:
      accent: '#FFB07A'
      background: '#1A1A1A'
      foreground: '#F5F5F5'
      uiFont: '"Inter", "PingFang SC", sans-serif'
      codeFont: '"JetBrains Mono", Consolas, monospace'
      translucentSidebar: on
      contrast: 70

Only set the fields you want to change; leave the rest blank ('' / preset / -1).

Presets

PresetStyleLight bg / fg / accentDark bg / fg / accent
stockDeepSeek default— (no override)— (no override)
codex-warmCodex warm#F5F3EE / #1D1B16 / #DA7756#2D2D2B / #F9F9F7 / #CC7D5E
nordNord cool#ECEFF4 / #2E3440 / #5E81AC#2E3440 / #ECEFF4 / #88C0D0
solarizedSolarized#FDF6E3 / #657B83 / #B58900#002B36 / #839496 / #268BD2
graphiteGrayscale minimal#FAFAFA / #171717 / #525252#171717 / #FAFAFA / #A3A3A3

custom starts from the codex-warm palette and takes every value from light.* / dark.*.