dsh-dream-skin
Manifest valid★ 295DeepSeek Harness Skin / Wallpaper / Theme Pack Plugin (dsh-plugin) — 8 Mirage theme sets, per-user accent color, Wallpaper 2.0, theme pack import/export/share links, favorites and random, implemented with a pure native token system.
中文 · English · 日本語 · 한국어 · Español · Français · Deutsch · Русский
dsh-dream-skin 🔮
Give DeepSeek Harness a face that is restrained, clear, and has texture.
Native reskin · background wallpaper · accent colors · theme packs — an elegant implementation inside a single --dsw-* token ecosystem. Install once, use for a long time.
Where code is written, it can be very quiet.
| 🎨 8 original themes | 🖼️ Wallpaper + diffused light | 🎯 Restrained accent colors | 📦 Shareable theme packs |
|---|
1-line install · Pure native (no injection / no installer modification) · Does not break on DSH updates
🎮 Two playstyles, one plugin covers both
🪄 玩法一:开箱即用的优雅 | 🧱 玩法二:随你掌控的 DIY |
| 内置 8 套设计师调校的预设皮肤(Mirage 幻梦系列),浅色 / 深色兼顾,每套自带专属弥散光背景。 戴上即高级,不用任何调参。 | 在预设之上,你还能 换壁纸(本地图 / URL / 渐变)、叠加强调色 Accent、拖入或分享一个主题包,内部每个 token 都能摸到。 想要的样子,自己捏。 |
Preset skins set "texture and base color"; the DIY layer is a pure overlay (overrideTokens), toggleable at will with one-click restore.
📸 Screenshot
Real device effect, not a concept render. Left: DSH interface after applying the skin; right: the "Appearance / Theme" section in Settings.
🎨 Playstyle 1: 8 preset skins (Mirage Dream series)
Elegant out of the box. One-click switch in Settings → Appearance (Theme). The previews below are generated from each skin's real tokens + dedicated diffused-light background — what you see is what you get; click to zoom in and see the refined textures.
Light / dark both covered:
mist,ivory,roseare light-themed; the rest are dark-themed. Don't like the presets? See Playstyle 2 below.
🧱 Powerful DIY space (Playstyle 2)
Beyond preset skins, dsh-dream-skin also gives you a complete customization system — to shape a one-of-a-kind workspace, start here.
| Capability | Playstyle 2 · What you can do |
|---|---|
| 🖼️ Custom wallpaper 2.0 | Local image / image URL / gradient preset; with opacity / blur; each skin also auto-suggests a gradient that can auto-dim (reduces distraction when focused on a task) |
| 🌈 Per-user Accent color | Overlay a custom brand accent color on the current skin (overrideTokens layer, skin itself untouched), 12 typical color swatches for one-click pick + color picker + random + restore theme color |
| 📦 Theme pack import / export / share | One *.dsh-theme.json = manifest + full token set; import file, apply with one click, copy share link (encoded in URL hash) |
| 🪟 Modal opacity | Slider controls base-fill opacity of dropdowns / overlays / modals; persisted automatically |
| 🧩 Local theme pack library | Imported theme packs displayed centrally; apply / favorite / remove in one click |
| 🎲 Surprise me | Randomly switch to a theme different from your current one; favorite skins you like for quick switching |
| ✅ Validation + rollback | Validates format / required tokens / color validity on import; safe fallback on failure or removal, no destructive changes |
Everything layers on top of presets: toggle at will, one-click restore to DSH's built-in appearance — experiment freely, nothing breaks.
⚡ One-line install
Copy the line below to your DSH — it will set everything up:
Please install the dsh-dream-skin reskin plugin (https://github.com/RevolutionLA/dsh-dream-skin or dsh-dream-skin on npm), and tell me how to restart DSH Web after installation.
Don't want to bother an Agent? One command line:
dsh plugin --profile web add dsh-dream-skin && dsh web
🚀 Now published on npm! After installing DSH, one command does the job — no clone needed.
Tribute to Codex-Dream-Skin. But the implementation path differs: Codex injects CSS (via CDP) into the desktop client's renderer process, whereas DSH itself is a token-driven web GUI with an official "third-party plugin theme registration" capability — so this plugin is a pure native integration, no injection, no binary modification, no breakage on client updates.
Not an official product. For beautifying your DeepSeek Harness workspace only.
🏆 Why it's worth using (vs. similar DSH theme plugins)
Similar plugins either port an off-the-shelf palette (nice, but config is one toggle), lock to a single aesthetic, or focus on external wallpaper import. We built reskinning into a full tunable texture & color system — not "flashier," but "more precise, restrained, enduring" like carefully refined glass. Aesthetics + tunability are our moat.
| Capability | This plugin | dsh-catppuccin-theme (palette port) | dsh-theme-mineradio (single-aesthetic custom) | dsh-wallpaper-engine (wallpaper bridge) |
|---|---|---|---|---|
| 8 original designs (not ported palettes; original tokens + diffused light) | ✅ | ❌ (4 Catppuccin official palettes) | ❌ (1 champagne-gold aesthetic) | ❌ |
| One-click switch between frosted glass / liquid glass dual textures | ✅ | Partial (fixed glass texture) | ❌ | ❌ |
| Independent opacity sliders for input box / modals | ✅ | ❌ | ❌ | ❌ |
| Ready-to-use out-of-box configuration (restart after install and it's already dialed in) | ✅ | ❌ | ✅ (itself a finished product) | ❌ |
| Custom wallpaper + opacity/blur | ✅ | ❌ | ❌ | ✅ (core capability) |
| Wallpaper 2.0 (URL / gradient preset / per-skin suggestion / auto-dim / Bing daily + scheduled refresh) | ✅ | ❌ | ❌ | Partial (depends on WE wallpapers) |
| Per-user Accent color (overlay layer, skin untouched) | ✅ | ❌ | ❌ | ❌ |
| Theme pack import/export + share link (JSON, no code distribution) | ✅ | ❌ | ❌ | ❌ |
| Local theme pack library + favorites + random switch | ✅ | ❌ | ❌ | ❌ |
| Two-generation host compatibility + runtime capability detection (auto-degrade on host upgrade without errors) | ✅ | Unknown | Unknown | ❌ (kernel upgrade required first) |
| Validation + rollback (no destructive changes) | ✅ | Partial | — | Partial |
In one line: Want Catppuccin's brand colors or mineradio's atmosphere? This plugin's theme pack system can build or layer them all — the reverse is not true.
✨ Feature overview
| Capability | Description |
|---|---|
| 🎨 8 theme presets (Mirage Dream) | One-click switch in Settings → Appearance (Theme), light / dark both covered |
| 🖼️ Custom wallpaper | Upload local image (auto-compressed ≤2MB), adjust opacity / blur |
| 🧊 Glass texture (frosted glass / liquid glass) | One-click glass texture switch, opacity slider further right = more transparent; one blur knob drives both wallpaper and glass surface |
| 🖼️ Out-of-box ready configuration | First install ships with a complete beautified setup: Nebula skin + built-in wallpaper + tuned glass values, usable right after restart |
| 🌤️ Bing daily wallpaper (preset) | Advanced wallpaper pre-filled with the Bing daily image API; just click "Apply Link"; also supports any image URL + scheduled auto-update |
| 🔤 Inner-layer opaque | Cards, input boxes, message bubbles are not covered by wallpaper; readability first |
| ↩️ Restore defaults | One click back to DSH's built-in appearance (follows system) |
| 💾 Local persistence | Skin and wallpaper saved to localStorage, survive refresh / browser restart |
🧩 What kind of plugin it is
It's DeepSeek Harness's standard "two-sided plugin" (dsh-plugin) — loading and usage are identical to the official ui-theme.
DeepSeek Harness's slogan is "everything is a plugin": models, tools, sandboxes, sessions, UI, even the Agent Loop itself are all plugins.
The essence of dsh-dream-skin is turning "reskinning" into an npm package isomorphic to the official UI pack:
┌────────────── dsh-dream-skin(标准 dsh-plugin / 双面插件)──────────────┐
│ dsh.bundle → cordis.patch.yml 插入 dream-skin 入口 (host 半边) │
│ dsh.client → lib/client.js(浏览器 bundle) (浏览器半边) │
└─────────────────────────────────────────────────────────────────────────┘
- Install command = the single official install command:
dsh plugin --profile web add dsh-dream-skin - Uses the official extension points:
ctx.theme(theme registration),ctx.theme.overrideTokens(overlay layer),ctx.slots(mounts the UI into a standalone Settings → Appearance / Theme section). - Manifest contract matches the official one:
dsh.bundle+dsh.client+exports["./client"].
In other words: what you're installing is not some backdoor script, but a standard skin plugin within the official DSH plugin system.
⚡ Quick start (3 steps)
# 1. 安装
dsh plugin --profile web add dsh-dream-skin
# 2. 重启
dsh web
# 3. 打开 设置 → 外观(Theme)→ 皮肤,挑一套 → 完。
You're installing the officially published npm package — no clone needed. If
dsh plugin addreports a workspace-related error, just add a-w.
📦 Install
Pick one of four methods. After install, restart DSH Web to apply (session interrupts, but DSH disk persistence allows restore).
Method 1: npm official package (recommended, simplest)
dsh plugin --profile web add dsh-dream-skin
Method 2: Install from GitHub (pinned to a verified commit)
dsh plugin --profile web add 'github:RevolutionLA/dsh-dream-skin#<40位commit>'
Pinned to the commit corresponding to the release; subsequent new changes on
mainwill not silently alter the installed code.
Method 3: Install from Release tarball (offline / no-git environments)
Download dsh-dream-skin-<版本>.tgz from this repository's Releases (includes the prebuilt lib/client.js; no prepare scripts are executed on install), then:
dsh plugin --profile web add ./dsh-dream-skin-<版本>.tgz
Method 4: Clone and install from a local path (dev iteration)
git clone https://github.com/RevolutionLA/dsh-dream-skin.git
cd dsh-dream-skin
dsh plugin --profile web add .
dsh pluginanchors relative paths to the directory where you run the command, installing a link dependency pointing to the clone directory: after saving source changes, just restart DSH — no reinstall needed.
Restart and verify:
dsh web
dsh --profile web --dump-config | grep -A2 dream-skin # 应出现 dream-skin loader 条目
Open Settings → Appearance (Theme) and you'll see rows for "Skin," "Accent Color," "Wallpaper / Advanced Wallpaper," and "Theme Packs."
The
-wflag is required for a bareadd: each profile ships its ownpnpm-workspace.yaml, so pnpm treats it as a workspace root; a bare add fails withERR_PNPM_ADDING_TO_ROOT. If you've already added with-w, subsequent adds on the existing workspace don't need it again.
🔄 Update / Uninstall
Update to latest (when the installed package is the npm official one):
dsh plugin --profile web update dsh-dream-skin
dsh web # 重启生效
If the old version is still shown after updating, pnpm's minimum release age (supply-chain) policy may be blocking the newly published version:\n> Run
pnpm add dsh-dream-skin@latest --config.minimumReleaseAge=0in the profile directory to bypass it.
Uninstall:
dsh plugin --profile web remove dsh-dream-skin
dsh web # 重启后恢复官方外观
🧩 Compatibility
| Item | Value |
|---|---|
DeepSeek Harness (dsh) | Compatible with two generations of hosts in a single build: the stable 0.1.0-rc.6 / 0.1.1-rc.x (peer aligned to ^0.1.0-rc.6) and DSH master (the new module surface after the dsh-client-runtime split). Compatibility is guaranteed via runtime capability probing, not engines.dsh (see below) |
| Node.js | >=18 |
| Browser | Modern Chromium / WebKit (relies on native CSS variables and matchMedia) |
Compatibility mechanism (since v9.10.0): the client bundle probes all platform seeds inside a controlled
tryblock in candidate order—react/react/jsx-runtime, and the settings store's master name@deepseek-ai/dsh-client-store→ stable name@deepseek-ai/dsh-client-runtime/client. The decision is based on "require returned successfully", not on matching host-internal error text. If the host retires all seeds in the future, the plugin degrades into a dumb module that registers no UI and emits a singleconsole.warninstead of throwing—so the kind ofFailed to load pluginsfull-screen DSH Web failure from issue #43 cannot happen again (the host does not isolate loader-entry factories; one factory throwing can drag down the entire shell).About
engines.dsh: we tried declaringengines.dshas an ecosystem compatibility signal, but since semver only allows prerelease versions on the samemajor.minor.patchtriple track, a single range cannot cover both0.1.1-rc.xand0.1.2-rc.xsimultaneously, which would judge versions we explicitly support as "incompatible" and broadcast a wrong signal; the host also currently does not read this field. So we do not declare it and rely on the runtime probing above.All peer platform packages are declared
optional(supplied by the host runtime, no npm install needed);dsh-client-storehas been published on npm since 2026-08-30, and its peer uses a wide range to accommodate host generational changes.
Version 9.16.0 (2026-09-16): DSH Desktop sidebar opacity fix (issue #55, three-party review remediation)——the desktop shell declares --dsw-specific-sidebar-fill on its own <aside class="dshDesktopSidebarSurface">, masking the theme override value; the sidebar opacity slider had no visual path on desktop (right file panel unaffected, hence left/right inconsistency); the subtree now re-inherits (inherit !important, native Web matches no element). Also: dragging the sidebar opacity slider releases "Follow wallpaper" (only when a wallpaper wash exists), two default values converge to a single source of truth, desktop-side rule covered by a drift probe anchored to host signals. Regression gate 65/65.
Version 9.15.3 (2026-09-16, unpublished): this version was never published; the entry has been voided—see the correction note in the CHANGELOG (upstream behavior description was inaccurate; the version number violated the date-based rule).
Version 9.15.2 (2026-09-15): dynamic-port desktop shell wallpaper flicker fix (issue #51)——the Electron shell changes port on every launch → origin changes → localStorage is always empty → every launch was judged "first install", flashing the factory wallpaper for one frame before being overridden by host config. Wallpaper seeding now waits for the host probe to settle: if the host has a wallpaper decision (including a user clear), no factory wallpaper is shown; true first install / host unreachable seeds as usual (just a few hundred milliseconds later). Regression gate 63/63.
Version 9.15.1 (2026-09-15): adversarial review remediation——after full blue-team → third-party → adjudication review of three-round issue #50 fixes: anchor excludes popup edit boxes (prevents mislabeling paint), tab see-through conflict with glass rules resolved, percentage radius misjudgment corrected + width guard, marker polling/observer lifecycle cleanup, no high-frequency rescans during streaming, drift probe removes own-property contamination; new behavioral regression tests (fake DOM driving the real marker). Regression gate 60/60.
Version 9.15.0 (2026-09-15): composer marker anchor switch (issue #50 round three, definitive fix)——the chat input in 0.1.5-rc.2 is actually a Lexical contenteditable (not a textarea), so the old anchor never hit; now uses the stable fingerprint data-composer-input as the primary anchor with textarea/contenteditable three-level fallback. Regression gate 59/59.
Version 9.14.2 (2026-09-14): npm metadata release (no code changes)——description bilingualized, keywords 9→15 (including dsh-desktop), improving npm search and plugin directory discoverability.
Version 9.14.1 (2026-09-14): DSH Desktop (third-party desktop client) adaptation——composer marker made self-healing: startup polling until the first marker succeeds, observer now attaches to documentElement, marks all visible input boxes, radius threshold widened in two stages. Fixes the desktop "input box opacity" slider still not working issue (issue #50 follow-up). Regression gate 59/59.
Version 9.14.0 (2026-09-14): fixed the "input box opacity" slider not working on dsh 0.1.5+ (issue #50)——the host release re-rolled the hash class names the plugin referenced, and all glass rules missed; now uses DOM-shape marking (own attribute data-dsh-dream-skin-composer) + dual selectors, works with both old and new hosts, no more gambling on class names. README also restructured (preview merged, real competitor comparison, Roadmap refreshed, all 7 languages in sync). Regression gate 59/59.
Version 9.13.1 (2026-09-14): post-release secondary review fix release. Fixed 2 low-probability, high-impact persistence defects (both require a slow/hanging host channel to trigger): the host probe timeout did not cover response body parsing, which could leave the push gate permanently closed; the push patch could erase the host's persisted accent color / skin pack / favorites config with null. Also fixed 3 minor issues like wallpaper history thumbnail escaping along the way. Regression gate 59/59.
Version 9.13.0 (2026-09-13): Glass material system released——frosted glass / liquid glass dual materials, one-click switch (pure style selection, no slider values touched), composer input box independent opacity, ready-to-use factory configuration (nebula skin + built-in wallpaper + tuned glass values). Pre-release three-party adversarial review closed loop, all findings fixed—most critical: factory config could reverse-overwrite host's persisted file on desktop restart, destroying user settings (now structurally eliminated: factory writes never push to host + persistent provenance snapshot). Factory no longer enables third-party API scheduled polling by default (Bing wallpaper scheduled updates now opt-in). Regression gate 50/50.
Version 9.10.0 (2026-09-10): closed loop of the three-party review (blue team → third-party independent re-check → blue team adoption adjudication). Fixed 3 remediation defects found in the third-party re-check——links with #fragment silently failing to refresh on schedule, rejected toggles still being persisted, new wallpapers inheriting the old refresh phase after wallpaper clear; and added hardening for skin id name-collision yielding (when a third-party theme plugin registers a same-named theme first, apply() no longer throws). Regression gate 44/44.
Version 9.9.0 (2026-09-09): significantly strengthened the guarantee that "host upgrades never error" (full fallback with platform modules degrading); advanced wallpaper "image link" gained an optional scheduled auto-refresh (periodic refresh, Bing daily wallpaper etc. auto-roll, supports catch-up triggers after shutdown/restart); fixed scheduled-refresh UI and empty-input accidental wallpaper clear issues. See CHANGELOG for details.
⚙️ How It Works
DSH's theme system is token-based: the web shell has built-in --dsw-* design tokens, and ThemeRuntime allows third-party plugins to register themes that
override the alias layer (--dsw-alias-*). This plugin is a standard "dual-sided" plugin:
┌─────────────────────────────────────────────┐
│ dsh-dream-skin (双面插件) │
├────────────────────────────┬────────────────┤
Host 半边 │ lib/index.js │ 浏览器半边 │
│ cordis.patch.yml 插入 │ lib/client.js │
│ dream-skin loader 入口 │ __ModuleLoader__│
└────────────────────────────┴────────────────┘
│ │
profile 树加载 /plugins/dsh-dream-skin/client.js
│
┌────────────────────────────────┬────────────────┐
│ │ │
ctx.theme.register(8套皮肤) ctx.theme.overrideTokens(壁纸半透明) ctx.slots.inject('settings.section' + 'settings.dreamSkin.item')
- Host side (
lib/index.js): thedsh.bundlepatch layer, inserting thedream-skinloader entry;applyis a no-op, isomorphic with the officialui-*packages. - Browser side (
lib/client.js):ctx.theme.register(...)registers 8 skins;- restores the last saved skin and applies it via
ctx.theme.setTheme(...); - renders the wallpaper as a
z-index:-1fixed background layer, overlaysctx.theme.overrideTokens(...)to make the main canvas (--dsw-alias-bg-base) and sidebar (--dsw-specific-sidebar-fill) semi-transparent; - listens to
theme/change, automatically re-tinting the wallpaper wash layer on skin / light-dark switch; - registers an independent Settings → Appearance / Theme section (
settings.section), with 5 functional rows under thesettings.dreamSkin.itemslot.
Each skin carries its own colorScheme (light/dark), driving body[data-ds-dark-theme]; alias token overrides are applied as
inline custom properties on <body> by ui-layout's ThemePresenter.
💼 Persistence Notes
- Skins and wallpapers are stored in
localStorage(key prefixdsh-dream-skin:), effective only in the current browser. - Why not Host settings? DSH's Host settings pipeline only exposes a whitelisted namespace to the browser
(
dsh-host-apiproxy'sWEB_SETTINGS_NAMESPACES); third-party namespaces returnsettings-not-exposed; the product itself also processes remote browser preferences.localStoragefits this boundary perfectly and survives refreshes.
🛠️ Development / Extending Themes
The client bundle is written directly in __ModuleLoader__ format (i.e. the shape tsdown outputs for official ui-* packages), no build step required.
lib/client.js can only require module table entities: platform seed names (react, react/jsx-runtime, …) and registered client
bundles (@deepseek-ai/dsh-client-runtime/client, …).
- Add a built-in skin: add an object to the
SKINSarray inlib/client.js(id+colorScheme+tokens), it will automatically appear in settings; remember to addskin.<id>strings to all 8 language dictionaries (zh/en/ja/ko/es/fr/de/ru). - Create a theme pack (recommended distribution method): see
docs/examples/sample-theme-pack.json, a single*.dsh-theme.jsoncan be imported in settings or shared via link to others, no code changes needed. - Use your own wallpaper: drop an image into
wallpapers/(note: only distribute if you have the right to do so), then import it in DSH's "Background Image". - Update preview images: previews are generated by
scripts/generate-skin-mockups.cjs(real tokens + diffuse light) producing an HTML mockup, screenshot with headless Chrome to getdocs/previews/*.png; rerun after changing skin tokens to keep previews in sync with the real skin. - Run validation:
npm test(VM smoke tests covering factory evaluation,applymounting, theme pack import/persistence). - Change color schemes: reference the
--dsw-alias-*tokens (full contract indocs/themes-spec.md).
📌 Roadmap
- Initial release: 8 themes + custom wallpaper (opacity / blur) + local persistence
- Theme pack format + import / export / share link (JSON + manifest + validation)
- Per-user Accent color + random
- Wallpaper 2.0 (URL / gradient / per-skin suggestions / auto dimming / Bing Daily + scheduled updates)
- Local theme pack library + one-click apply / favorites / "try another"
- Multilingual strings and docs (zh / en / ja / ko / es / fr / de / ru)
- Glass material system: frosted / liquid glass dual materials + independent opacity slider (v9.13.0)
- Ready-to-use factory config: tuned complete look on install + restart (v9.13.0)
- Host compatibility hardening: two-generation host runtime probing + class-name drift DOM shape marking (issue #50, v9.13.x)
- Full decoupling from host hash class names: remaining decorative rules (sidebar / file panel) also converted to DOM shape marking
- Online color palette / theme preview Studio (pure frontend, in-browser validation + contrast checks)
- Community theme library (submit theme packs to the repo / online Gallery; welcome to make Catppuccin-style or other derived palettes with theme packs)
- First-frame no-flash (FOUC) improvement
🤝 Contributing
Issues and PRs are welcome! Please read the Contributing Guide first and follow the Code of Conduct.
⭐ Support This Project
If you enjoy it, Star ⭐ the repo, give a 👍 on npm, or share it with your DSH friends—this helps more people discover it and encourages ongoing maintenance. Want to work on the theme library / online Studio / more themes? Contributions are welcome.
🔒 Security
Found a security issue? Please do not open a public Issue directly—see the Security Policy.
📄 License
🙏 Acknowledgements
- Architecture and API reference: DeepSeek Harness official ui-theme client package.
- Conceptual homage: Codex-Dream-Skin.
🧰 Other Projects by the Same Author
- adversarial-review —— a three-party adversarial code review Agent Skill. Blue team (hostile review) → third party (independent audit) → neutral adjudication, a structured adversarial review loop for AI coding agents. Especially useful when writing plugins or reviewing before release.
- AscendMate —— environment setup, model fine-tuning, inference deployment, and operator development handbook for Ascend AI servers.
- ascend-assistant —— Ascend server assistant Agent Skill, deeply integrated with AscendMate.
📈 Growth Curve
Auto-updated daily (GitHub Actions). Left axis: cumulative downloads (cyan); right axis: Star count (purple)—two different orders of magnitude, hence independent dual Y-axes.
Data collected automatically every 24 hours: downloads from the npm official API, stars from the GitHub API.
Compatibility
Versions
| Latest version | Published | Size |
|---|---|---|
| 0.2.1 | — | — |
| 0.2.2 | — | — |
| 0.2.3 | — | — |
| 0.2.4 | — | — |
| 0.2.5 | — | — |
| 0.3.0 | — | — |
| 0.4.0 | — | — |
| 0.4.1 | — | — |
| 0.4.2 | — | — |
| 0.4.6 | — | — |
| 8.30.1 | — | — |
| 0.4.11 | — | — |
| 0.4.5 | — | — |
| 0.4.4 | — | — |
| 0.4.8 | — | — |
| 9.10.0 | — | — |
| 9.16.0 | — | — |
| 9.13.0 | — | — |
| 9.14.1 | — | — |
| 0.2.0 | — | — |
Comments
Loading…
Similar plugins
by Vim0x3c
DeepSeek Harness 外观定制插件:八套内置主题 + 自定义壁纸(透明度/模糊),Host 设置持久化 | Appearance plugin for dsh web
★ 4
TypeScript
Aug 20, 2026
dsh plugin --profile web add dsh-skin-appearanceby dac114514
DeepSeek Harness 主题中心 · Theme Center for dsh web UI:精选主题画廊(浅色/深色分组)、一键切换、自定义壁纸、dsh-theme 导入导出
★ 0
MIT
JavaScript
Aug 15, 2026
dsh plugin --profile web add dsh-theme-center✦
No screenshots
by KinGao294
Skin switcher + custom wallpaper for DeepSeek Harness (dsh): curated --dsw-alias-* palettes, translucent wallpaper with opacity/blur controls, persisted per browser (like Codex themes) — 换皮肤 / 自定义背景插件
★ 17
↓ 139/wk
MIT
JavaScript
Aug 18, 2026
dsh plugin --profile web add dsh-skinby zxr2115-1
DeepSeek Harness (DSH) 二次元壁纸主题插件 · 随机动漫壁纸 / 四档铺满 / 边缘羽化 / 深浅色自适应 / 可拖动控制坞 · theme plugin for DeepSeek Harness
★ 0
MIT
JavaScript
Sep 26, 2026
dsh plugin --profile web add dsh-anime-themeby lueb386-lgtm
DeepSeek Harness 壁纸插件:为 Web 界面添加可自定义的壁纸背景——8 款渐变预设、自定义图片 URL、多来源随机壁纸(Bing 每日 / Picsum / LoremFlickr)、自动定时更换与设置持久化;随 DSH 启动自动加载,重启无需手动激活。
★ 0
MIT
JavaScript
Aug 18, 2026
dsh plugin --profile web add dsh-wallpaperby YangAtC
DSH (DeepSeek Harness) 主题自定义插件:背景图 + 界面透明度调节,开箱即用
★ 0
MIT
JavaScript
Aug 17, 2026
dsh plugin --profile web add @yangatc/dsh-theme






