Warm light and dark theme for DSH Web with responsive layout, bilingual settings, safe Markdown preview, per-block copy controls, and no telemetry.
Install
# from npm (prebuilt)
dsh plugin --profile web add dsh-ivory
# from a prebuilt release tarball
dsh plugin --profile web add "https://github.com/ZJUZhiyuCai/dsh-ivory/releases/latest/download/dsh-ivory.tgz"
# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)
dsh plugin --profile web add github:ZJUZhiyuCai/dsh-ivory
Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time. Only install sources you trust, and pin a commit (github:owner/repo#sha).
README
Ivory gives the DSH web interface a quieter reading rhythm without changing how the harness works. Warm neutrals replace cold grays, editorial type improves long responses, and the conversation stays usable from a narrow phone window to a wide desktop. DeepSeek branding and every native DSH capability remain in place.
Quick start
dsh plugin --profile web add dsh-ivory
dsh web
Hard-refresh the page with Cmd/Ctrl + Shift + R, then open
Settings → Ivory Theme. The main theme is enabled by default; the optional
focus mode stays off until you choose it.
Install the exact GitHub release without using npm.
dsh plugin --profile web add github:ZJUZhiyuCai/dsh-ivory#v0.2.1
Remove Ivory and return to the native DSH interface.
dsh plugin --profile web remove dsh-ivory
Made for everyday DSH
| Area | What Ivory changes |
|---|---|
| Appearance | A complete warm-neutral palette for light and dark mode, with restrained shadows, corners, and editorial typography. |
| Responsive layout | Fluid conversation geometry tested at 375, 768, 1,440, and 1,920 pixels. |
| Reading and copying | Independent controls for prose, user bubbles, and code blocks, plus a small end-of-response marker. |
| Markdown documents | A bounded, DOM-built preview for .md output with source view always available and HTTP(S)-only links. |
| Accessibility | Keyboard focus, reduced-motion behavior, forced-colors fallbacks, and WCAG AA muted text contrast. |
| Compatibility | Structural styling degrades to stable theme tokens when the verified DSH selector contract changes. |
A closer look
Quiet by design
Ivory is a browser-only visual plugin. Its host entry point is intentionally inert.
| Boundary | Ivory behavior |
|---|---|
| Bundled runtime dependencies | None. DSH client modules and React are peers. |
| Filesystem and process access | None. |
| Network requests and telemetry | None. |
| Persistent data | Two local preference flags in localStorage. |
| User content | Presented in the browser; copied only after an explicit click. |
| Third-party branding | No Anthropic fonts, logos, icons, or application code. |
The npm package contains eight allowlisted files and is checked on every CI run. Read the full security policy, architecture boundary, and third-party notices.
[!NOTE] DeepSeek Harness is in developer preview and may make breaking UI changes. Ivory 0.2.x is verified against DSH 0.1.0-rc.6. When Ivory cannot prove the current structural contract, it keeps token-level theming and releases the host layout back to DSH.
npm ci
npm test # 14 static, build, publint, and package checks
npm run qa:r2 # 69 browser regressions; DSH must run at 127.0.0.1:3080
The browser suite covers responsive layout, composer focus, dark mode, Markdown injection attempts, streaming state, lifecycle cleanup, block-copy payloads, plugin coexistence, long tables, reduced motion, and forced colors.
Releases use npm Trusted Publisher with GitHub OIDC. The repository stores no long-lived npm publish token, and future CI releases receive npm provenance automatically.
npm ci
npm run build
dsh plugin --profile web add link:$PWD
dsh web
Edit src/skin.css or src/client.template.js, then run npm run build.
The generated lib/client.js is committed so GitHub installs need no build
permission.
src/skin.css theme and compatibility styles
src/client.template.js client lifecycle and optional enhancements
lib/client.js deterministic generated browser bundle
lib/index.js inert host entry point
cordis.patch.yml DSH bundle registration
scripts/ build and verification gates
See CONTRIBUTING.md before opening a pull request.
Independent community project
Ivory is unofficial and is not affiliated with, endorsed by, or sponsored by Anthropic or DeepSeek. Claude is a trademark of Anthropic PBC. DeepSeek and DeepSeek Harness may be trademarks of their respective owners.
Released under the MIT License.
Links
More in this category
Small-tailqwq/dsh-deep-whale#maid-atelier★ 1224
Whale-girl skin series for the DSH Web UI (maid-atelier).
GGBond2424648901/deep-whale-day-night-theme★ 80
Day/night whale-girl skin: a crystal workshop by day and a moon-tide observatory by night, with paired scenes, chibi companions, ornaments, and lightweight bubble and star ambience.
kingOfSoySauce/dsh-liang-skin★ 78
Adaptive reasoning slider skin that maps each model's available reasoning efforts onto a 0–30 visual intensity scale, with synchronized portraits, background, and interface colors.
RevolutionLA/dsh-dream-skin★ 45
One-command skin plugin: 8 original themes, translucent wallpaper with opacity/blur, per-user accent, and shareable theme-pack import/export, favorites and surprise-me — purely native on DSH's token system.
KinGao294/dsh-skin★ 18
Codex-style skin switcher plus a custom wallpaper layer with opacity and blur controls.
Tommy00748/dsh-theme-cyberpunk2077★ 12
Cyberpunk 2077 / Night City theme: NC yellow and neon cyan identity, CRT scanlines, Kiroshi hover lock-on, combat-state HUD, synthesized typewriter and message SFX, and hidden easter eggs (relic / johnny).