dsh-pet-indesktop: A Draggable Whale Desktop Pet for the DeepSeek Harness Web GUI

gjs9178u/dsh-pet-indesktop

EntertainmentVerified
Listed on 2026-10-16
Page last updated 2026-10-30

A desktop pet plugin for the DSH web GUI: an inline-SVG whale that breathes, blinks and sways, can be dragged and remembers its spot, and says a bilingual line when clicked.

dsh-pet-indesktop is a DSH plugin that adds a small whale to the DeepSeek Harness web GUI, giving an otherwise cold control panel a sense of companionship. Drawn entirely with inline SVG and CSS, the whale breathes slowly, blinks now and then and sways its tail; you can hold and drag it anywhere, the position is remembered on release, and a click makes it say one bilingual line. A toggle at the bottom of the sidebar hides or recalls it, and that visibility state is persisted too, ideal for developers who want a bit more personality in their local AI workspace.

How to Install

install
dsh plugin --profile web add github:gjs9178u/dsh-pet-indesktop
Category
Entertainment
Platform
DSH Plugin
Author
gjs9178u
Distribution
Plugin

dsh-pet-indesktop Key Features

Inline-SVG whale desktop petDraggable with saved positionClick for a bilingual lineSidebar toggle to hide itReduced-motion static frame
Listed on dsh-plugin.org

dsh-pet-indesktop Repo Summary

What Does It Do?

It is a DSH plugin for DeepSeek Harness that places a desktop pet whale in the bottom-right corner of the DSH web GUI. It solves the lack of personality and companionship in the interface by rendering one inline-SVG whale that breathes, blinks and sways, can be dragged anywhere, and remembers where it was left. The plugin is maintained by Gjs9178U, written in JavaScript, created on 2026-10-16, and is still early-stage.

Core Features

  • Desktop pet: overlays a small whale on the web interface, cycling through a 3.2-second breathing animation and a 5.2-second tail sway whose periods are not multiples of each other, with occasional blinks so it reads as alive rather than as a loop.
  • Drag and position memory: mouse and touch share one Pointer Events path, and after release the position is written back to the host with a 600ms debounce, stored as viewport percentages (integers from 2 to 98) so it survives monitor changes and window resizing.
  • Click to speak: a click shows one bilingual line (Chinese and English) that disappears after 2600ms; movement beyond 4px counts as a drag and does not trigger speech.
  • Toggle button: a "pet on / off" action at the bottom of the sidebar hides or recalls the whale, and the visibility state is persisted too.
  • No external assets: everything is drawn with inline SVG and CSS, with no images, fonts, video or network requests, and no localStorage — state lives only on the host side.
  • Accessibility: when prefers-reduced-motion: reduce is detected, it switches to a still frame instead of slowing the animation down.

How to Use This Plugin?

Once enabled under the DSH web profile, the pet appears in the bottom-right corner of the web GUI; hold and drag it anywhere and the position is remembered on release. Click it to show a bilingual line that fades on its own, or use the "pet on / off" button at the bottom of the sidebar to hide and recall it. After enabling, restart the DSH service and force-refresh the browser, otherwise you will still see an interface without the pet — the most common cause of "installed but nothing happened". The pet state is stored in pet-indesktop/state.json under the DSH home directory, recording visibility, percentage coordinates and the pet's name, written atomically with strict validation.

How to Troubleshoot This Plugin?

If the pet does not appear after enabling, the host-side routes were likely not loaded by the running process, or the browser is still using a cached startup script; restart the service and force-refresh as described in the official instructions. If it still does not show, check the host-side liveness probe to confirm the plugin loaded, then inspect the issues field returned by the state endpoint to locate the problem. When the state file is corrupted the plugin repairs it itself and sets a healed flag, so no manual intervention is needed.

This page is an independent rewrite of the plugin's official README — for authoritative documentation and the latest changes, refer to the source: gjs9178u/dsh-pet-indesktop. The plugin is third-party code that runs on your machine once installed; inclusion does not imply endorsement — please review the source before installing.

Install, update, and uninstall this plugin in the Plugin Market of DeepSeek Harness's DSH Plugin Hub

DSH Plugin FAQ