ysyyhhh/dsh-pet
dsh-pet
DSH desktop pet compatible with Codex pet packages, with built-in Petdex import.
Install
npx @deepseek-ai/dsh plugin --profile <name> add /path/to/dsh-petRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/ysyyhhh-dsh-pet)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from ysyyhhh/dsh-pet, cleaned of badges and images.
dsh-pet
English | 中文
An optional desktop companion for DeepSeek Harness. It is compatible with Codex desktop-pet packages (pet.json plus an 8×9 or 8×11 sprite sheet) and can import pets directly from Petdex without installing the Petdex CLI.
The pet acts as an ambient agent-status indicator: it relaxes when DSH is idle, thinks while the model reasons, works while tools run, waits when input is needed, and celebrates or frowns when a turn finishes.
It is an ambient status indicator with a complete Web pet console, so normal use does not require commands or YAML edits.
- Plugin-first: a normal deepseek-harness plugin — no separately launched daemon, browser, or desktop app.
- Configure in the UI: preview, select, show/hide, resize, idle-hide, and drag-reorder pets from DSH Settings.
- Real multi-pet overlays: each pet has its own window, position, size, and visibility, so pets can be shown and overlapped together.
- Two import paths: enter a Petdex slug or upload a Codex / Pocket Pet ZIP. Imports become selected and visible immediately.
- Zero added LLM cost: event → state resolution is fully deterministic.
- Runtime-discovered pets: pets under
assets/pets/are discovered at startup, so adding a pet is dropping a folder in — no rebuild.
Installation
The plugin is a Cordis bundle that ships both a host half (the pet window)
and a client half (the settings card). dsh plugin add installs it and, because
the manifest declares dsh.bundle, adds it to the profile's bundle list
automatically.
From a local directory
Install the plugin directly from its source directory (the profile keeps it as
a link: dependency):
dsh plugin --profile <name> add /path/to/dsh-pet
On Windows, for example:
dsh plugin --profile web add D:/deepseek-pet
You can also run dsh plugin --profile <name> add . from inside the plugin
directory.
From a tarball
Pack the plugin, then install the tarball:
npm pack
dsh plugin --profile <name> add /path/to/ysyyhhh-dsh-pet-0.3.0.tgz
From a Git repository
dsh plugin --profile <name> add github:ysyyhhh/dsh-pet
If the repository does not commit build artifacts, configure a prepare
script so dsh plugin add builds the plugin during install.
Run
dsh --profile <name>
If you are running Harness from a source checkout, prefix the commands above with
pnpm— i.e. runpnpm dsh plugin ...andpnpm dsh ...from the Harness repository.
The settings card uses the plugin's same-origin
/dsh-pet/*API and does not depend on Harness's settings-namespace allowlist.
Enable / disable
Set enabled: false in the plugin's config, or remove the bundle from the
profile. The plugin then loads but shows nothing; removing it entirely leaves
Harness fully functional.
Codex pet compatibility and Petdex import
The plugin reads the same Codex pet package shape used by Petdex: a pet.json
manifest plus a WebP or PNG sprite sheet. In DSH Settings → Plugins → DSH Pet,
enter a Petdex slug or upload a Codex / Pocket Pet ZIP. Commands remain available
for development and recovery:
/pet import boba # download, validate, install, and select from petdex.dev
/pet list # list bundled and imported pets
/pet use boba # select an installed pet
…


