Foreword¶
During the use of DeepSeek Harness (DSH), developers can typically see commands, logs, and session results, but may not be able to intuitively determine which stage the current session is in—whether it is “thinking, working, awaiting confirmation, erroring, or completed.” dsh-live2d-companion is a Live2D monitoring panel plugin designed for DSH: after integrating with Cubism 4/5 models, it subscribes to the DSH session event stream and reflects the AI’s working status in real-time.
This plugin offers two forms: a web widget and an Electron transparent topmost desktop pet. Both share the same frontend kernel, making them suitable as a visual supplement for DSH session states.
What Is This¶
dsh-live2d-companion is maintained by Tisitan and is positioned as a Live2D monitoring panel and desktop pet (kannedjo) for DeepSeek Harness. It integrates Live2D characters with DSH session states to make “what the current session is doing” visible through interface feedback.
The information indicates that the license is marked as MIT, but the full content of the LICENSE file is not completely shown in the verified materials. Before use, you should still check the source code and license.
Core Features¶
Session State Visualization¶
- Subscribes to the DSH session event stream to reflect the AI’s working status in real-time.
- Provides an 8-state state machine and status lights, covering states such as idle, thinking, working, awaiting confirmation, error, completed, sleeping, and offline.
- In multi-task parallel processing, each session can display an independent task light and supports aggregation with the main light.
Web Widget and Desktop Pet¶
- Supports the web widget form, enabled by default.
- Supports the Electron transparent topmost desktop pet form, disabled by default.
- Both forms share the same frontend kernel.
Character Interaction¶
Supports Live2D character interaction, including:
- Clicking
- Head patting
- Dragging
- Scaling
- Waking up
- Global gaze following
Bubble Dialogue and Dialogue Presets¶
- Supports bubble dialogue.
- Supports editing dialogue presets.
- The official default dialogue library is read-only.
- User-defined dialogues can be saved separately and switched to avoid conflicts with upstream updates.
Multi-Model Support¶
- Supports Cubism 4/5 models.
- Models can be placed in the
model/directory. - Models can be scanned, switched, imported, and previewed via the model panel.
Game Center¶
The built-in game center includes:
- Gomoku (Five-in-a-Row)
- Chess
Supports:
- Local engine adjudication
- Local AI playing
- Online LLM commentary
- AlphaGo mode
Integration with DSH Itself¶
- Zero modifications to the DSH core.
- Mounted via the
cordispatch layer. - Immune to DSH upgrades.
Standalone Entry¶
The plugin provides a standalone entry for independent operation. Even without starting DSH, you can still use partial pet rendering, the model panel, the game center, and state linkage.
Please note that the standalone version still does not include models, Cubism Core, Electron binaries, or third-party character prompts.
Installation and Activation¶
Prerequisites¶
- DSH must be installed, and
dsh webmust be available. - Node.js version must be ≥ 18.
Installing the Plugin¶
In an environment where DSH is already installed, execute:
dsh plugin --profile web add github:Tisitan/dsh-live2d-companion
Adjusting the Web Widget and Pet Toggle¶
By default, the web widget is enabled, and the desktop pet is disabled.
To adjust, add an override line with the same ID in the following path:
$env:USERPROFILE\.dsh\profiles\web\cordis.patch.yml
For example:
- insert:
- id: live2d-companion
name: 'dsh-live2d-companion'
config:
widget: false
pet: true
You can adjust the following configuration items via the config of live2d-companion in cordis.patch.yml:
widgetpetpetDirmodel
Adding Live2D Models¶
Place the entire Cubism 4/5 model directory into:
public/model/<model_name>/
Then configure the model path in the patch config.
This repository does not distribute any model files. Users need to prepare their own Cubism 4/5 models and comply with their original licenses.
Downloading Cubism Core¶
Cubism Core is required by the license and is not included in the repository. You need to download live2dcubismcore.min.js from the official Live2D website and place it into:
public/vendor/live2dcubismcore.min.js
Enabling Electron Pet¶
To enable the desktop pet, enter the pet directory and install dependencies:
cd pet
npm.cmd install
Then restart DSH Web.
Typical Usage¶
-
After installing the plugin, first use the default web widget to observe the DSH session status.
-
Prepare a Cubism 4/5 model, place its entire directory into
public/model/<model_name>/, and specify the model path inconfig.modelwithincordis.patch.yml. -
Place the
live2dcubismcore.min.jsdownloaded from the official Live2D website intopublic/vendor/live2dcubismcore.min.js. -
If you need the desktop pet, execute the following in the
petdirectory:
npm.cmd install
Then restart DSH Web.
-
Use the model panel to scan, switch, import, and preview models.
-
Use the bubble dialogue and dialogue preset editing features to save or switch user-defined dialogue presets. The official default dialogue library remains read-only.
-
Enter the game center to use the built-in Gomoku and Chess. You can enable local engine adjudication, local AI playing, or online LLM commentary and AlphaGo mode.
Applicable Scenarios and Notes¶
Who Is It For¶
- Those who want to extract the DSH session status from logs and terminals and display it visually.
- Those who need to use Live2D characters in a web widget or a desktop transparent topmost window.
- Those who want to integrate their own Cubism 4/5 models while retaining character interaction, dialogue presets, and the model panel.
- Those who want more intuitive feedback during waiting, thinking, working, erroring, and other stages.
Usage Limitations¶
- The plugin is not tied to specific characters, but users need to prepare their own Cubism 4/5 models and comply with the models’ original licenses.
- Cubism Core is required by the license and is not included in the repository. It must be downloaded from the official Live2D website.
- The
standaloneentry does not include models, Cubism Core, Electron binaries, or third-party character prompts. - The official default dialogue library
public/quips.jsonis read-only. User-defined dialogues are written to local ignore files to avoid conflicts with upstream updates.
Security and Compliance¶
The plugin runs with the current dsh process permissions and will be loaded in the DSH Web environment. Before installation, you should check the source code, dependencies, and licenses.
The information indicates that package.json marks the license as MIT, but the full content of the LICENSE file is not completely shown. It is recommended to refer to the actual license text in the repository.
Links¶
GitHub Repository: https://github.com/Tisitan/dsh-live2d-companion