deepseek-harness
deepseek-ai
DeepSeek Harness: Everything is a Plugin.
PROJECT TOPICS
PROJECT README
A lightweight skin manager for the DeepSeek Harness web GUI. It discovers
every installed skin (any package carrying a skin.json plus a prebuilt
client bundle), lists them in a dedicated Settings → Skins page, and lets
you switch the active skin with one click — mutually exclusive, hot-reloaded
without restarting dsh web.

node_modules for packages
with skin.json + prebuilt lib/client.js. Newly installed skins appear
automatically; no registry regeneration, no code changes.settings.section entry (id skins,
order 20) in the settings sidebar, next to General / Models.insert row, every other skin a disabled: true row).dsh plugin --profile web add github:xiaoyangcheng84-svg/dsh-skin-manager
Then restart dsh web (or rely on the market's hot install). Open
Settings → Skins after a page refresh.
Requires git for the
github:source install; alternatively install from a local checkout withdsh plugin --profile web add link:<path>.
Any package is recognized as a skin when:
node_modules (top-level or @scope/name),skin.json (id, name, package, accent, bodyAttr,
tagline, optional wiring.id — the same fields used by
dsh-deep-whale / dsh-web-ui skins), andexports["./client"] or lib/client.js).Switching rewrites the managed section of the profile's cordis.patch.yml
(between # --- dsh-skin-manager managed --- markers):
- insert: row;- id: <rowId> + disabled: true.Non-skin user patch rows (e.g. dsh-market) are preserved untouched.
The host half mounts three routes under /api/skin-manager:
| Route | Method | Purpose |
|---|---|---|
/api/skin-manager/list |
GET | List installed skins + current active id |
/api/skin-manager/apply |
POST | { id } or { id: "official" } to switch |
/api/skin-manager/bundle |
GET | ?id=<skinId> serve a skin's client bundle |
The client bundle is written directly in the __ModuleLoader__ bundle format
(the same shape tsdown emits for the shipped ui-* packages), so no build
step is required. lib/client.js may require only module-table entities
(platform seed words like react and registered client bundles).
MIT
CLASSIFICATION EVIDENCE
系统优先读取 GitHub Topics,再与站内分类词典和词根规则比对。当前命中: 无有效分类标签。