Er1c0v0 / dsh-whale-pet

Listed

Cute whale-girl pet plugin for the DeepSeek Harness Web UI

mainTool View source

Installation

npx -y @deepseek-ai/dsh plugin --profile web add github:Er1c0v0/dsh-whale-pet

This installation command is an unverified starting point generated from the GitHub repository address.

README

Maintainer-authored documentation snapshot.

View on GitHub ↗
Commit bf8c902Synced Aug 17, 2026

dsh-whale-pet

简体中文

A whale-girl desktop pet plugin for the DeepSeek Harness Web UI.

IdleWorkingComplete
Idle animationWorking animationReady animation

Highlights

  • Mirrors five Harness states: idle, working, needs input, complete, and blocked.
  • Hugs a DeepSeek-whale-inspired pillow while idle, falls asleep after 40 seconds, and startles awake when hovered or focused.
  • Shows privacy-safe activity summaries from Harness presentation metadata.
  • Supports dragging, keyboard movement, position reset, collapse/restore, reduced motion, English, and Simplified Chinese.
  • Uses the official shell.overlay slot without patching Harness or scraping UI text.

Install

Requires Node.js 22.19+ or 24+ and DeepSeek Harness 0.1.0-rc.6.

dsh plugin --profile web add dsh-whale-pet@0.1.0
dsh --profile web --dump-config
dsh --profile web

The dump should contain exactly one dsh-whale-pet entry. The pet appears at the bottom-right of the Web UI.

To uninstall:

dsh plugin --profile web remove dsh-whale-pet
dsh --profile web --dump-config

State mapping

PrioritySession conditionPet state
1RemovedBlocked
2Approval, plan review, or question pendingNeeds input
3RunningWorking
4Explicit open, agent, or prompt errorBlocked
5A running session stops successfullyComplete for 1600 ms
6No session, cold/loading, or settledIdle

Development

pnpm install --frozen-lockfile
pnpm check
pnpm test:visual
npm pack
node scripts/smoke-harness.mjs --package ./dsh-whale-pet-*.tgz

Idle assets, frame order, and interaction timing have one source of truth in src/client/idle-animation.json. pnpm assets:check enforces the 700,000-byte runtime WebP budget; the current set uses 674,580 bytes, so review asset size before adding more artwork.

See CONTRIBUTING.md for artwork and verification rules.

Privacy and licenses

The plugin reads only current-session status and provider-declared presentation metadata. It does not read tool arguments, prompts, model reasoning, or conversation text, and it makes no analytics requests. Preferences stay in browser-local storage.

Code is licensed under MIT. Artwork is licensed under CC BY 4.0; provenance and hashes are recorded in ASSET_ATTRIBUTION.md.

Project files and signals

Shown items are public repository signals detected in the directory snapshot.

TestsDetected
Security policyDetected
Contributing guideDetected
DocumentationDetected

Repository information

Language
TypeScript
License
MIT
Latest release
v0.1.0
Last updated
Aug 17, 2026, 8:37 AM

Install deliberately

Review source code, permissions, lifecycle hooks, dependencies and network access. Test untrusted plugins in an isolated environment.