DeepSeek Harness Plugin

Lkrain821/dsh-pixelwhale

Stars ★ 1 Category UI Enhancements Added 2026-09-18

Turns the "deep diving" thinking status into a pixel font, with an animated pixel blue whale spouting and wagging its tail beside it.

Install

# from GitHub (first run asks for allowBuilds approval — follow the hint, retry)

dsh plugin --profile web add github:Lkrain821/dsh-pixelwhale

Any plugin you install runs third-party code with your own permissions — it can read your files, use your credentials, and reach the network, and tool approvals don’t sandbox it. GitHub-sourced plugins also run build scripts at install time — pnpm blocks those until you allow them, so an install can stop with ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED or ERR_PNPM_IGNORED_BUILDS; dsh prints the exact key to add under allowBuilds in your profile’s pnpm-workspace.yaml, and the install works on the next run. Allowing a build is a trust decision: only install sources you trust, and pin a commit (github:owner/repo#sha).

README

PixelWhale

深度求索时,派一只像素蓝鲸为你喷水摆尾。

A DSH (DeepSeek Harness) web UI plugin: while the model is thinking, the native 「深度求索中…」/ "Deep diving…" status row becomes a pixel-art DeepSeek blue whale spouting and wagging its tail, next to the same status text rendered in a pixel font with a glyph-level shimmer.

Features

  • 🐋 Animated pixel whale — the hand-drawn DeepSeek blue-whale art (40×25 grid, 6-tone palette), expanded into an 84-frame spout + tail-wag loop, downsampled to 27×18 and painted as a CSS sprite sheet (steps() animation).
  • 🔤 Real pixel font — Fusion Pixel 12px, subsetted to exactly the characters the status row uses (ASCII + the Chinese glyphs + a narrowed middle dot), embedded as WOFF2 so it works offline.
  • ✨ Glyph-level shimmer — the moving highlight is clipped to the text glyphs (background-clip: text), so it travels across the strokes instead of the row.
  • 📐 Sits on the text baseline — align-items: baseline on the status row puts the bottom of the whale on the same line as the bottom of the glyphs, hugging the text on its left.
  • 🎯 Non-invasive — the native text node, language, timer and update logic are untouched; only CSS is applied to the thinking row.
  • 🪶 Zero runtime overhead — no MutationObserver, no polling, no timers, no DOM writes after setup. The client half injects a single <style> element and nothing else runs, so there is no per-frame work and no memory growth while streaming.

Install

From the DSH plugin market, or:

dsh plugin --profile desktop add https://github.com/Lkrain821/dsh-pixelwhale

Then restart DSH.

How it works

  • The host half (lib/index.js) is a client-only cosmetics entry — it just mounts the bundle and exposes the browser half via exports["./client"].
  • The client half (lib/client.js) injects one <style> element containing:
    • @font-face rules for the subsetted pixel font, scoped with unicode-range;
    • a sprite-sheet background-image + @keyframes on the native whale icon ([data-chat-running="true"] [class*="runningIcon"]), which replaces the shipped whale drawing without inserting any node;
    • background-clip: text shimmer and the pixel font on the status text;
    • align-items: baseline on runningContent so the whale bottom lines up with the text baseline;
    • a prefers-reduced-motion: reduce fallback that pins the first frame and drops the shimmer.

Everything is keyed on the [data-chat-running="true"] attribute DSH puts on the thinking row, so the whole effect appears and disappears with that row.

Verified against DSH 2.0.20-next. Selectors are attribute/substring based (data-chat-running, runningIcon, runningContent, runningText) rather than hashed CSS-module names, so they tolerate ordinary client rebuilds.

Font license

The embedded pixel font is Fusion Pixel Font, licensed under SIL Open Font License 1.1 (OFL-1.1). See FONT-LICENSE-OFL.txt. Font copyright belongs to TakWolf (https://takwolf.com) and upstream font authors.

The whale frames are derived from the DeepSeek blue-whale art used by dsh-TUI / dsh-ui-whale, courtesy of @lhh010.

License

MIT (see package.json). The bundled font carries its own OFL-1.1 license.

Content from the project README on GitHub ↗

Links

More in this category

View the whole category →

Community comments

Comments are public GitHub Discussions. Loading them connects to GitHub and Giscus; a GitHub account is required to post.