DeepSeek Harness (DSH) uses a pluggable architecture. When observing Agent execution in the Web interface, the default output is relatively static. The dsh-livechat plugin overlays Bilibili-style danmaku on the chat area, adding visual feedback to the Agent’s working process.

Plugin Positioning

This is a fun decorative plugin maintained by huashenglian. It uses multi-track rendering and anti-occlusion fade-out techniques to generate preset or intelligent danmaku that drift horizontally across the screen when the Agent sends a message, completes a reply, calls a tool, or finishes a task. Its core value is to transform a boring log stream into a dynamic, live-stream-like viewing experience.

Installation and Enablement

The plugin is a bundle: it ships with cordis.patch.yml and self-activates—one command, no manual patch modification required.

dsh plugin --profile web add github:huashenglian/dsh-livechat

After installation, restart dsh web and open http://127.0.0.1:3080. The danmaku overlay and floating control ball will appear above the chat area.

Core Features

Rendering and Anti-Occlusion

  • Multi-track collision avoidance and fade-out: supports multi-track collision avoidance and anti-occlusion fading.
  • Chromium-first optimization: prioritizes Chromium optimizations (such as translate3d, pausing when the page is hidden, and an on-screen cap).
  • Anti-occlusion: the overlay dims during reading and brightens when activity is high.

Content Generation

  • Three preset packs: built-in general / programming / chit-chat preset packs.
  • LLM intelligent generation: optional LLM generation with throttling for danmaku; supports smart, interval-based, and tool-call wake-up modes. On generation failure, it silently falls back to presets.
  • Style templates: supports style template configuration.

Interaction Controls

  • Drag ball and hover: provides drag-ball control and hover-to-pause.
  • Locking mechanism: danmaku locked by hover or detail view remains on screen until scrolling resumes and it leaves the range.

Per-Session Danmaku Library

  • Pool management: supports per-session .jsonl danmaku pool management.
  • History replay: includes history replay functionality (decay + like weighting).
  • Archive and restore: supports archiving and restoration.

Other Features

  • Gift effects: provides an asset repository and effect position configuration.
  • Configuration persistence: configuration is written to a local mirror ($DSH_HOME/danmaku-config.json) and a concise danmaku: section in settings.yaml; at startup, resolution follows “mirror → settings → defaults”; configuration is not lost after restart.

Typical Usage

  • Health check:
    curl http://127.0.0.1:3080/api/danmaku/health
Example response: `{"ok":true,"name":"dsh-danmaku","version":"0.6.2"}`.
  • Unit test:
    node --test tests/presets.test.js
  • Uninstall:
    dsh plugin --profile web remove dsh-livechat

Notes

  1. Self-activation: The bundle ships with cordis.patch.yml for self-activation (insert id: livechat). Do not duplicate the insert in the profile patch, otherwise startup will report duplicate loader entry id: livechat.
  2. Cache cleanup: If you uninstall while the service is still running, it will also clean the danmaku pool cache (~/.dsh/danmaku-pools/).
  3. Permissions and provenance: The plugin runs with the current dsh process permissions. Before installing, review the source code and license (MIT).

Summary

dsh-livechat is a lightweight, playful plugin suitable for users who want to increase the sense of Agent interaction during development, debugging, or demonstrations. It visualizes the Agent’s execution flow while providing flexible configuration and interaction controls.

GitHub Repository