插件目录 / UI & Skins / deepseek-harness-avatar
deepseek-harness-avatar
已验证 · 实测可装 zoyluoblue
功能简介
Wallpaper theming plugin for DeepSeek Harness (dsh): upload images in Settings and use one as the web UI background, with readability veil, blur, and fill controls
可用 — 实测通过,早期项目
Wallpaper theming plugin for DeepSeek Harness (dsh): upload images in Settings and use one as the web UI background, with readability veil, blur, and fill controls 实测能干净安装、正常启动。早期项目,但功能可用。
「已验证」表示我们的自动化 CI 在干净 profile 里实际执行了 dsh plugin add 并启动成功——仅此而已。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。
README
@zoytown/dsh-avatar
English | 中文
Wallpaper theming plugin for DeepSeek Harness (dsh):
upload images from the Settings page, pick one, and the whole dsh web UI renders over it —
with an adjustable readability veil, background blur, and fill mode.
![]()
- Upload in the UI — click or drag & drop (png / jpg / webp / gif, 20 MB per image by default);
files land in~/.dsh/avatar/v1/under content-addressed names - Gallery — thumbnails of everything you uploaded; click to apply, hover to delete,
pick None to go back to the plain theme - Readability controls — a veil slider (the UI surfaces stay translucent over the image),
a blur slider, and fill / fit / tile modes; changes preview live and persist automatically - Scheme-aware — the veil re-tints itself from the active light/dark palette; one image serves both
Screenshots
![]()
![]()
Install
dsh plugin --profile web add @zoytown/dsh-avatar
Then open Settings → Background in the dsh web UI. Remove withdsh plugin --profile web remove @zoytown/dsh-avatar — the UI reverts fully; uploaded images stay
in ~/.dsh/avatar/ until you delete that directory.
Configuration
Row config (override by id dsh-avatar in your cordis.patch.yml; restate every field):
| Field | Default | Meaning |
|---|---|---|
maxImageBytes |
20971520 |
Per-image upload cap in bytes |
trustedHosts |
[] |
Non-loopback authorities allowed to fetch image bytes (host or host:port). Uploads and preferences stay loopback-only regardless, because the harness pins its settings API to loopback. |
dshHome |
(unset) | Override the dsh home the wallpaper directory lives under |
User preferences (active wallpaper, veil opacity, blur, fill) live in the avatar section of~/.dsh/settings.yaml.
Scope and limitations
- dsh web only. The Electron form has no HTTP server, so the image route this plugin relies on
does not exist there. - Remote (non-loopback) browsers are read-only. The harness rejects settings reads/writes from
non-loopback origins, so the Background page disables itself with a note, and the wallpaper is
not applied there. - No data leaves your machine. This plugin makes no external requests and reports nothing.
- Sticky headers and small chips become slightly translucent while a wallpaper is active — that is
the veil working; raise the veil slider if anything is hard to read.
Every behavioral claim in this README was verified on 2026-08-18 against dsh@deepseek-ai/dsh-*@0.1.0-rc.6 with this plugin at 0.1.0.
FAQ
How do I set a custom background / wallpaper in DeepSeek Harness (dsh)?
Install this plugin, open Settings → Background, upload an image, and click its thumbnail —
the wallpaper applies immediately and persists. Installation is one command:dsh plugin --profile web add @zoytown/dsh-avatar.
Which image formats and sizes are supported?
png, jpg, webp, and gif, up to 20 MB per image by default. The cap is the maxImageBytes row
config; the format is detected from the file bytes, so a renamed non-image is rejected regardless
of its extension.
I uploaded an image but the background did not change — why?
Most often the plugin is not actually active in your profile — rundsh --profile web --dump-config and look for the # == @zoytown/dsh-avatar layer; if it is
missing, re-run the install command. Two by-design cases: a remote (non-loopback) browser is
read-only and never shows the wallpaper, and the Electron desktop app is not supported at all.
Where are my images stored? Do they leave my machine?
They stay on your machine and nothing is uploaded anywhere: image bytes live in~/.dsh/avatar/v1/ under content-addressed names (<sha256>.<ext>), and preferences live in theavatar section of ~/.dsh/settings.yaml. The plugin makes no external requests.
How do I go back to the default look?
Pick None in the gallery — it restores the plain theme background and keeps your uploads.
Removing the plugin (dsh plugin --profile web remove @zoytown/dsh-avatar) also reverts the UI
completely.
The text is hard to read over my image — what should I do?
Raise the Veil slider (higher = more readable), or add some Blur. Busy photographs usually
read well from veil ≈ 80% upward, or with blur ≥ 8 px.
Does it work in the Electron desktop app or over remote access?
No for Electron: that form has no HTTP server, so the image route this plugin relies on does not
exist there. Remote (non-loopback) browsers get a read-only Background page and no wallpaper,
because the harness pins its settings API to loopback.
Development
pnpm install # use pnpm — npm currently crashes on this dependency graph
pnpm run typecheck && pnpm run build
License
MIT
安装
装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:
dsh plugin add dshbase-catalog 然后对 agent 说「帮我装 deepseek-harness-avatar」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包。
该插件是 GitHub 源码(未发 npm)——直接从仓库装:
Web profile:
dsh plugin --profile web add github:zoyluoblue/deepseek-harness-avatar Headless(CLI)profile:
dsh plugin --profile headless add github:zoyluoblue/deepseek-harness-avatar 实测报告
验证通过:从 GitHub 源码完成 L1 安装 + L2 加载 + L3 运行(dsh 0.1.0-rc.6)。