Introduction to MoonPet (Moon Companion), a DeepSeek Harness Status Pet Plugin

When developing agents using DeepSeek Harness, developers often need to monitor conversation state transitions and latency in real time. This plugin provides visual feedback through a locally running “state pet” and includes a Pomodoro timer to help manage development pacing.

Plugin Positioning and Core Value

MoonPet is a local plugin running in the DeepSeek Harness environment and maintained by user Femad-6. It does not make model calls, does not handle tool approvals, and only observes Harness conversation events to display the current status through character sprites and status labels.

The plugin uses the MIT license, supports local execution, does not upload chat records, and all data processing is completed locally.

Core Features

The plugin provides the following features:

  1. State Pet Linkage: switches character sprites and animations based on events such as turn start, thinking, tool execution, and awaiting approval (e.g., idle, thinking, waving reminder).
  2. Pomodoro Timer: works for 25 minutes by default and breaks for 5 minutes. It supports start, pause, and stop, shows a reminder popup when time expires and rings an alert sound (on Windows, played by hidden PowerShell).
  3. Multilingual Subtitles and Speech: provides Chinese and English motivational speech and subtitles, with independent selection of voice language.
  4. Resource Monitoring: displays balance, Token usage, and estimated cost. DeepSeek credentials must be configured in Harness.
  5. Custom Characters: supports user import of custom character packs to override built-in characters.

Installation and Enablement

Before installing, ensure DeepSeek Harness Desktop or Web is installed and the environment meets the Node.js requirement (^22.19.0 || >=24.0.0).

Method 1: Install via Command Line

Run the following command in the Harness CLI:

dsh plugin --profile desktop add dsh-moonpet@0.1.2

Web users should use --profile web.

Method 2: Install via Plugin Marketplace

Search for dsh-moonpet in a marketplace that supports npm plugin discovery, confirm the version is 0.1.2 or later, then install and enable it. After a successful installation, fully quit the application and reopen it to load the plugin.

Method 3: Local Install Package

Download dsh-moonpet-0.1.2.tgz or download it from GitHub Releases, then enter the absolute path in the plugin add field.

Configuration and Customization

Custom Character Pack

Users can place a custom character pack in the following directory:

~/.dsh/dsh-moonpet/packs/my-character/
├── sprites/         # Portrait images
├── voices/          # Audio files
├── pack.json        # Pack name and default portrait
└── pet.json         # Mapping between state and filename

After enabling this character pack in Settings, a pack with the same name overrides the built-in character.

Adding Multilingual Voices

The plugin supports optional Chinese/English motivational voices. Download moonpet-multilingual-voices.zip, extract it, copy the english-boost and chinese-boost directories to ~/.dsh/dsh-moonpet/packs/, refresh the page, and select the option under Subtitles & Resources → Voice Pack.

Usage Notes

  1. Compatibility: It is recommended to disable the legacy dsh-gal plugin when enabling MoonPet to avoid both widgets appearing at the same time.
  2. Privacy and Boundaries: The state pet only observes chat events already loaded in Harness. It does not upload chat content, does not add model calls, and does not modify approval results.
  3. Balance Feature: The balance feature uses DeepSeek credentials in Harness. Cost is estimated based on built-in historical rates and can be overridden manually. It does not replace provider billing.
  4. Pomodoro Timer Limitations: The Pomodoro reminder sound on Windows is played by a hidden window. Exiting the application normally pauses the timer; an abnormal exit may lose the last 30 seconds of data not persisted to disk.
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye