READMESource: main@d0349511
dsh-dracula
A third-party Dracula dark theme for the DeepSeek Harness web UI. Dark-only, covers the full --dsw-alias-* layer plus --shiki-* syntax highlighting, and ships a "Themes" settings page for switching.
Quick read (for agents)
- What it is: a DSH bundle npm package that registers a third-party theme (
dracula) through the client theme servicectx.theme.register(...), recolouring the whole web UI by overriding--dsw-alias-*and--shiki-*CSS tokens. - Shape: one package is both the bundle and the client plugin —
package.jsondeclaresdsh.bundle.patch(→cordis.patch.yml) anddsh.client(→./client). - Files:
src/client.tsx(theme registration + settings page + persistence),src/index.ts(empty host half),cordis.patch.yml(one self-referential rowdsh-dracula). - Persistence:
localStoragekeydsh.dracula-theme.preferencemirrors everytheme/change; restores on startup, defaults todraculaon first run. Guarded against quota/privacy/parse failures. - Build:
pnpm install && pnpm build(tsdown →lib/client.js,lib/index.js). - Install on another DSH:
dsh plugin --profile web add dsh-dracula.
Install / use
dsh plugin --profile web add dsh-dracula
dsh web
Then open Settings → Themes to switch between Light / Dark / System / Dracula.
Develop
pnpm install
pnpm build # or: pnpm watch
Publish
Tag a v* release; GitHub Actions runs pnpm install && pnpm build && pnpm publish using the NPM_TOKEN secret.
Design record
See ../doc/CONTEXT.md (glossary) and ../doc/adr/0001-dracula-theme-persistence.md (persistence decision).
No comments yet. Be the first to write one.