dsh-ivory
已验证 · 实测可装 ZJUZhiyuCai
功能简介
Calm, auditable Claude-inspired theme for DeepSeek Harness — light/dark/mobile, safe Markdown preview, zero telemetry, zero runtime dependencies.
可用 — 实测通过,早期项目
Calm, auditable Claude-inspired theme for DeepSeek Harness — light/dark/mobile, safe Markdown preview, zero telemetry, zero runtime dependencies. 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
Ivory for DSH
A calm, warm-neutral interface for DeepSeek Harness.
Light and dark. Desktop and mobile. English and Chinese. Zero telemetry.
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.
Pin a release or uninstall
Install the exact GitHub release without using npm.
dsh plugin --profile web add github:ZJUZhiyuCai/dsh-ivory#v0.2.7
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
![]() |
![]() |
| Focused desktop conversation | 390 px mobile layout |
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.2-alpha.1 and its current web client
modules. When Ivory cannot prove the current structural contract,
it keeps token-level theming and releases the host layout back to DSH.
Quality and release checks
npm ci
npm test # renderer unit tests, then 15 static, build, publint, and package checks
npm run qa:r2 # 73 browser regressions; DSH must run at 127.0.0.1:3080
npm run qa:adversarial # 29 stress checks: reconciliation safety, toggle/resize storms, degraded mode
npm run qa:activity # 24 checks for thinking/tool-call rows, icons, and terminal polish
npm run qa:micro # 28 Vision Toolkit/Ivory micro-component checks; set DVT_CLIENT_JS if the toolkit is not installed in the DSH web profile
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.
Development
npm ci
npm run build
dsh plugin --profile web add link:$PWD
dsh web
Edit src/skin.css, src/client.template.js, or src/markdown.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
src/markdown.js capped DOM-built Markdown preview renderer
scripts/test-markdown.mjs renderer unit tests (node --test)
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.
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 dsh-ivory」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:ZJUZhiyuCai/dsh-ivory Headless(CLI)profile:
dsh plugin --profile headless add github:ZJUZhiyuCai/dsh-ivory 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。

