DSH Plugin Store
Back to home

yoke233

dsh-pixel-whale

A lively pixel-whale running-state companion for DeepSeek Harness Web.

Stars
1
Language
TypeScript
Created
Aug 13, 2026
Updated
Aug 13, 2026
Other
GitHub repo

Introduction

dsh-pixel-whale — a living pixel companion for DeepSeek Harness Web

MIT License DSH Web plugin Node.js 22.19 or newer

dsh-pixel-whale adds a compact, animated point-cloud whale immediately before the Deep diving... status in DeepSeek Harness Web. It appears with a running turn, follows the status across UI remounts, and leaves when the turn ends.

See it in DSH Web

The pixel whale rendered by the production plugin beside the Deep diving status

This screenshot is rendered from the production browser bundle. In motion, the whale's large head stays weighty while the body bends, the tail and fin rebound, and small bubble scenes rotate between loops. Its pixels use a restrained blue palette with stable colors—movement comes from the body, not flashing points.

Install

dsh plugin --profile web add github:yoke233/dsh-pixel-whale

Restart DSH Web after the first installation. The whale appears automatically while a turn is running; there are no commands or settings to configure.

The installer may report peer-dependency warnings for DSH and React packages. Those packages are supplied by the DSH Web host; a completed install ending with Done is expected.

How it works

  1. The plugin mounts through DSH's session-scoped conversation.input.dock lifecycle.
  2. useSession provides the authoritative running state.
  3. A scoped MutationObserver follows the current conversation's status row.
  4. A React portal places the whale before Deep diving... and cleans it up when the turn stops or the plugin unloads.

DSH does not currently expose a public Slot inside its private turn-status component, so the small DOM adapter is intentionally isolated to one selector and one current-conversation observer. It does not replace the status text or write session data.

Design details

  • Compact: renders at 36 × 26px and stays on the status line.
  • State-aware: visible only while the current session is running.
  • Calm motion: stable pixel colors, restrained breathing, larger body and tail movement.
  • Accessible: respects prefers-reduced-motion.
  • Web-only: no prompt, tool, model-request, or host behavior changes.

Development

pnpm install
pnpm check

pnpm check runs TypeScript validation, motion and DOM-lifecycle tests, then builds the host and browser entries. Release packages are built entirely from published npm dependencies and include only the generated lib output, bundle patch, README, and license.

Compatibility

  • DeepSeek Harness packages: ^0.1.0-rc.6
  • Node.js: ^22.19.0 || >=24
  • Surface: DSH Web

The status-row selector follows the current DSH Web markup. If DSH later exposes a dedicated turn-status Slot, the adapter can move to that Slot without changing the animation engine.

License

MIT