dsh-live2d-pets: Add a Live2D Desktop Pet to DeepSeek Harness
cyanfish-x/dsh-live2d-pets
Live2D desktop pet for DeepSeek Harness: mirrors agent state, interactive companion with customizable personas.
Give your DeepSeek Harness agent a visual companion that mirrors state in real time, supports interaction, and offers customizable personas.
dsh plugin --profile web add github:cyanfish-x/dsh-live2d-pets- Category
- Entertainment
- Platform
- DSH-Plugin
- Author
- cyanfish-x
- Distribution
- Plugin
dsh-live2d-pets Key Features
dsh-live2d-pets Repository

dsh-live2d-pets Repo Summary
dsh-live2d-pets is a Live2D desktop pet plugin (DSH plugin) for DeepSeek Harness, maintained by cyanfish-x under the MIT license, last updated in 2026-08. It gives your Agent a companion with personality—the pet's state mirrors the conversation in real time, personas are switchable, and models can be self-hosted. Core capabilities include: 5 curated models (Hiyori / Haru / Mao / Mark / Natori) plus custom entries via any .model3.json URL or local path; state mirroring (thinking / idle / error / done / awaiting approval) with animations and speech bubbles pushed over SSE; six built-in personas (tsundere, genki, airhead, emotionless, gentle healing, yandere) customizable in a plugin-specific JSONC with hot-swap; interactive companionship (touch reactions per body part, mouse-follow, drag-and-dock, task celebration); and a non-intrusive design (default bottom-right, small size, hideable, frame-rate limiting, static avatar fallback for low-end devices).
What core features does the dsh-live2d-pets DSH plugin support?
- Model loading: Built-in curated models plus custom entries, using any
.model3.jsonhttps/http URL or local address. - State mirroring: The pet reflects agent states (thinking / idle / error / done / awaiting approval) with animations and bubbles via SSE.
- Persona lines: Six built-in personas, customizable in a plugin-specific JSONC with hot-swap.
- Interactive companionship: Touch reactions per body part, mouse-follow (head, eyes, body), drag-and-dock, task celebration; falls back to bounding-box five-rectangle spatial partitioning when HitArea is insufficient.
- Pet configuration panel: DSH Settings → "Pet Config", toggles / size / render FPS / persona / model list / developer options, written to
~/.dsh/settings.yaml, effective immediately. - Non-intrusive: Default bottom-right, small size, draggable, hideable, pauses rendering when tab hidden, frame-rate limiting, static avatar fallback for low-end devices.
How do I install dsh-live2d-pets?
Run in the terminal (the web profile auto-initializes on first use):
dsh plugin --profile web add github:cyanfish-x/dsh-live2d-pets
The plugin is enabled by default after installation. Start DSH:
dsh web
After opening the browser, a default pet (160px) appears in the bottom-right corner. The default model is Hiyori (Live2D official sample), requiring internet on first load.
How do I configure and use dsh-live2d-pets?
Open DSH Settings → "Pet Config"; changes take effect immediately without restart. You can configure: visibility toggle, size (40–400px, default 160), render FPS (30 / 60 / unlimited, default 30), persona lines (switch built-in or custom, edit $DSH_HOME/live2d-pet-personas.json and click "↻ Reload"), models (choose built-in or add name + .model3.json URL, optional spatial partition override), and developer options (debug panel, show click partition color blocks).
What interactions does dsh-live2d-pets support?
- Mouse follow: Enabled by default; the pet's head, eyes, and body smoothly look toward the mouse; resets when the mouse leaves the page. No follow while dragging; auto-pauses when hidden or page unfocused.
- Touch interaction: Touching head / legs / hands / body triggers unique lines and actions; falls back to bounding-box spatial partitioning when HitArea is insufficient.
- Drag: Hold and drag the pet to any position; it docks and persists on release.
What DeepSeek Harness versions and platforms are compatible with dsh-live2d-pets?
The plugin is built on pixi-live2d-display 0.4.0 + PixiJS 6.5.10 + Cubism Core 4, rendered client-side in the DSH Web GUI's shell.overlay floating layer, with settings registered in settings.section. State push uses Host subscribing to agent/* events → same-origin SSE /api/live2d-pet/events; settings persistence goes through ctx.settings (~/.dsh/settings.yaml). It requires a Node.js environment and a modern browser with WebGL support.
What are the license and model list for dsh-live2d-pets?
The plugin code is MIT-licensed. Models are always loaded via URL, not bundled; the list requires "license-annotatable"—each entry records license type and link, with NC (non-commercial) models marked "non-commercial only".