Preface

The philosophy of DSH is “everything is a plugin.” For Web GUI scenarios, plugins don’t necessarily have to extend the chat pipeline—they can also extend the corners of the interface. For example, adding a lightweight 3D object next to the sidebar for chat companionship, message celebrations, casual dragging, and interactive feedback.

Below is an introduction to dsh-ventus-whale, a DSH plugin maintained by mmzm0808. It is an interactive 3D desktop pet built from the DeepSeek killer whale logo silhouette, which can float in the corner of the Web GUI and supports simple interactions such as dragging, rotating, hearts, bouncing, and spinning.

What Is This

dsh-ventus-whale is a DSH web plugin, currently at version v0.1.0, licensed under MIT.

It solves a simple problem: providing a lightweight 3D desktop pet floating window within DSH’s Web GUI. This pet is constructed from the DeepSeek killer whale logo silhouette, appears by default in the corner of the interface, and allows users to drag it away, rotate it, rename it, and trigger celebratory actions when sending messages.

Repository address:

https://github.com/mmzm0808/dsh-ventus-whale

Core Features

Below are the main verified capabilities.

  • An interactive 3D desktop pet constructed from the DeepSeek killer whale logo silhouette.
  • Floats in the corner of the Web GUI.
  • Left-click drag to rotate, using arcball with inertia.
  • Right-click or “drag” mode for free positioning.
  • Single-click triggers hearts.
  • Double-click triggers bouncing.
  • Automatically performs a 360° front flip when sending messages; can be disabled.
  • Hover toolbar: rename, reset, drag, heart toggle, spin.
  • Adjustable size, sensitivity, and display text.
  • three.js is inlined into the client bundle, approximately 124KB gzipped.
  • Reduced frame rendering when idle, zero rendering when hidden.
  • Configuration persisted in ~/.dsh/dsh-ventus-whale/config.json.
  • Provides local APIs: /api/ventus-whale/state, /api/ventus-whale/update, /api/ventus-whale/reset, loopback-only access.

The model geometry comes from a swept reconstruction of the DeepSeek killer whale logo silhouette, with the shader implementing the logo’s eye patch pattern.

Installation and Enablement

Install the plugin first, then restart DSH so the new bundle layer is loaded.

dsh plugin --profile web add github:mmzm0808/dsh-ventus-whale#v0.1.0

The repository includes the complete lib/ build artifacts, so installation does not require running build scripts; the allowBuilds gate for pnpm ≥10 does not affect this plugin.

package.json declares the following runtime and packaging information:

{
  "platform": "web",
  "packageManager": "pnpm@11.7.0",
  "engines": {
    "node": "^22.19.0 || >=24.0.0"
  }
}

For local development installation, you can use the repository’s local absolute path:

dsh plugin --profile web add "<absolute local path to this repository>"

Typical Usage

  1. Summon the desktop pet

Click the whale button at the bottom of the sidebar—next to Settings—to summon the pet; click it again to hide it. By default, the pet docks on the right-middle side of the viewport but can also be freely dragged away.

  1. Basic interactions
  • Left-click drag to rotate.
  • Right-click or the “drag” button to move.
  • Single-click for hearts.
  • Double-click to bounce.
  • Hover toolbar for rename, reset, drag, heart toggle, and spin.
  1. Adjust settings

Navigate to:

Settings → Ventus Plugins → Big Fatty Whale Desktop Pet

You can adjust size, sensitivity, and display text, then click “Save” to apply.

  1. Local APIs

The following endpoints are accessible locally:

/api/ventus-whale/state
/api/ventus-whale/update
/api/ventus-whale/reset

These endpoints are loopback-only, restricted to local access.

Configuration and Data

Configuration persistence location:

~/.dsh/dsh-ventus-whale/config.json

Writes are performed atomically with fsync.

Regarding third-party dependencies, three.js is MIT-licensed and has been inlined into the client bundle.

Suitable Scenarios and Notes

This plugin is suitable for developers who want to add a lightweight 3D desktop pet to the DSH Web GUI. Its value lies not in extending chat capabilities, but in providing a corner floating window that can be dragged, rotated, interacted with, and reacts to messages.

Before using it, note: the plugin runs under the current DSH process permissions. You should review the source code, license, and dependency boundaries before installation. This plugin is MIT-licensed, and three.js is MIT-licensed and inlined into the client bundle.

Conclusion

dsh-ventus-whale turns the DeepSeek killer whale logo into an interactive 3D desktop pet for the Web GUI: a clear installation command, simple interaction paths, configuration written locally, and APIs restricted to local access.

Repository address:

https://github.com/mmzm0808/dsh-ventus-whale