ossFrankFrank/dsh-dracula-theme 预览 preview

ossFrankFrank/dsh-dracula-theme

插件Plugin 原生Native ⭐ 2 MIT

🧛 DeepSeek Harness(DSH)的德古拉主题

项目介绍Project Overview

dsh-dracula-theme 是 DSH 的 Dracula 暗色主题插件,注册经典 Dracula 与 Dracula Soft 两套皮肤,覆盖界面令牌与代码高亮配色,可在“设置→通用”一键切换并持久保存。需要统一的 Dracula 暗色外观时使用。注意安装后需重启配置文件,本地源码改动须经发布或本地链接才生效。

dsh-dracula-theme is a DSH plugin that registers Dracula and Dracula Soft dark themes into the built-in theme runtime. It covers UI tokens, surfaces, status colors, and Shiki code highlighting using the official Dracula palette, with one-click switching under Settings → General. Use it for a consistent Dracula dark skin. After installing, restart the profile; local source edits require publishing or a local plugin link to take effect.

或使用命令行安装(适合开发者)Or use CLI install (for developers)

命令行安装CLI Install

dsh plugin --profile web add dsh-dracula-theme

ossFrankFrank/dsh-dracula-theme 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-dracula-theme

🧛 Dracula theme for DeepSeek Harness (DSH): the classic dark palette — plus the Dracula Soft variant — registered into the built-in theme runtime, with a one-click skin picker in Settings → General.

Features

  • Two faithful variants built from the official Dracula palette:
    • Dracula — the classic #282a36 canvas
    • Dracula Soft — the gentler #343746 background
  • Core logic adopted from the official Dracula DeepSeek port (MIT): the canvas/brand --dsw-static-* overrides and code-highlight palette are taken verbatim and translated into the DSH theme runtime. On top of that, full token coverage: neutral & canvas ramps, brand (purple), blue (cyan), red / green / amber state colors, alias surfaces, component-specific tokens (sidebar, bubbles, composer, menus) and the official Dracula syntax colors for code highlighting (--shiki-*).
  • One-click switching from Settings → General → Dracula theme, persisted across sessions.

Preview

Dracula skin applied to the DSH Web GUI

The classic Dracula canvas (#282a36) mapped onto the full DSH surface stack — sidebar, conversations, code blocks — with the purple/cyan brand accents from the official Dracula DeepSeek port.

Palette

Role Color
Background #282a36
Dark background (base canvas) #20212b
Current line / selection #44475a
Foreground #f8f8f2
Comment #6272a4
Purple (brand) #bd93f9
Pink (keyword) #ff79c6
Cyan (link) #8be9fd
Green (success) #50fa7b
Yellow (string) #f1fa8c
Orange (warn) #ffb86c
Red (error) #ff5555

Official spec alignment

The token mappings follow the official Dracula Syntax Highlighting Specification and the classic dracula/sublime convention:

Role Color
Keywords & storage Pink #FF79C6
Functions & methods Green #50FA7B
Classes & types Cyan #8BE9FD
Strings & text Yellow #F1FA8C
Numbers & constants Orange #FFB86C
Comments #6272A4
Variables & parameters Foreground #F8F8F2
Punctuation Foreground #F8F8F2
Diff inserted / deleted Green #50FA7B / Red #FF5555
Links Cyan #8BE9FD

UI surfaces follow the spec's current-line / selection distinction: text selection is #44475A (including the ::selection rule), the current-line highlight uses the opaque fallback #353747, and floating interactive elements use #343746 / #424450. Status colors (error/success/warning) deliberately follow the syntax palette like the official Dracula DeepSeek port, keeping the whole UI on one consistent palette.

Installation

# from npm (prebuilt, recommended)
dsh plugin --profile web add dsh-dracula-theme

# or from source
dsh plugin --profile web add https://github.com/ossFrankFrank/dsh-dracula-theme

Restart the profile, then pick the skin in Settings → General → Dracula theme.

Development

npm run generate   # rebuild themes/*.json and lib/client.js from palette/dracula.json

The token tables are generated: edit the anchors in palette/dracula.json (colors, the official canvasRamp/brandRamp/codeTokens mappings, grayRamp, soft.background) and regenerate. lib/client.js is the browser bundle consumed by the DSH client runtime; lib/index.js is a no-op host entry.

License

MIT — see LICENSE. Structure modeled on dsh-catppuccin (MIT); token mapping adopted from the official Dracula DeepSeek port (MIT).

Development workflow

  1. Edit the anchors in palette/dracula.json — colors, the official canvas/brand/code mappings, grayRamp, soft.background.
  2. npm run generate — rebuilds themes/*.json and lib/client.js (the browser bundle).
  3. Validate: node scripts/check-themes.mjs (structural token check) — CI runs the same check plus a generated-artifacts diff.
  4. Test in a live profile: dsh plugin --profile web add /path/to/this/repo (local link), restart the profile, pick a skin in Settings → General → Dracula theme.
  5. Release: bump version in package.json, commit, push, pnpm publish, then update the profile to the published version (dsh plugin --profile web add dsh-dracula-theme) and restart the app. The profile installs from npm, not from the working tree — local edits only take effect after publishing or via a local link.
上一个 Prev dsh-claudecode-tips 下一个 Next dsh-side-chat