Preface

When using DeepSeek Harness (DSH) for long conversations, the interface often centers on the chat area, leaving the wallpaper or background layer relatively static. If you are simultaneously listening to music on NetEase Cloud Music (Netease Cloud Music) on Windows, the desktop lyrics window already displays scrolling text line by line, but these words do not automatically appear in DSH. Copying lyrics into the sidebar or manually pasting them into the conversation interrupts the flow and clutters the interface.

Below is an introduction to the community plugin dsh-netease-lyrics (maintainer Hikari16665): By injecting a reading module into the NetEase Cloud client, it captures the text already rendered in the desktop lyrics window and redraws a dynamic lyrics layer between the DSH wallpaper layer and the chat layer (displayed at layer -1). Page interactions remain unaffected; ten random visual effects, four display strategies for original and translated text, transition rhythms, and the effect pool can all be adjusted in the panel. The project has approximately 3 stars on GitHub and is categorized as “Fun Cosmetics” (Fun Dress-up). The plugin itself is licensed under MIT (see the repository LICENSE).

What is this

dsh-netease-lyrics is a client plugin for DSH web profiles (dsh.client.platform is set to web in package.json). It does not use online lyrics search APIs; instead, it hooks into the characters already drawn in the NetEase Cloud desktop lyrics window and maps them to the DSH background layer. Therefore, the prerequisites are: NetEase Cloud Music is running locally, and Desktop Lyrics are enabled. When the plugin starts, it attempts to inject a small module; once injection is successful, lyrics will be displayed behind the chat following the playback progress.

The author states that this project was completed with AI assistance; implementation details and external interfaces can be found in the repository’s DEVELOPING.md.

Core Features

Ten Display Effects and Transition Rhythms

There are ten display effects in total; an overview image is available in the repository at docs/effects.png. The default transition rhythm changes the appearance every 30 seconds. It can also be changed to one fixed effect per song or switch once per lyric line. If the interval between two lines of lyrics is less than half a second (e.g., connected words, fast songs), the default behavior is not to move the position or change the style, but simply to replace the text in place to avoid constant screen jumping. This threshold can be adjusted in the panel; setting it to 0 means no interception.

Original and Translated Text (Four Modes)

In NetEase Cloud lyrics data, translations often follow the original text; the plugin distinguishes them via inference. The first group of options in the panel includes:

  1. Translation follows the original text in smaller font (Default)
  2. Original text only
  3. Translation only
  4. Original and translation appear alternately as two consecutive lines

Effect Pool, Position, and Appearance

  • Effect Pool: The ten effects form a random pool. You can disable disliked items to prevent them from being selected.
  • Position: Lyrics can be anchored to top/middle/bottom, left/center/right areas, etc., with easing applied when changing positions.
  • Appearance: Font size, opacity, idle duration when no lyrics are playing, whether to display the song title, glassmorphism strength, etc.; lively effects can be turned off or their speed adjusted.
  • Theme: Colors follow the DSH light/dark theme. If system animations are turned off on Windows, the plugin avoids overly harsh effects, but this behavior can be overridden in the panel.

The lyrics layer is below the chat panel. If the panel is opaque, lyrics may be blocked; you can increase the “Glassmorphism” setting in the panel to allow transparency.

Status and Troubleshooting Tips

The current status is displayed in the bottom right corner of the lyrics layer (e.g., desktop lyrics disabled, manual injection required, re-injection required after NetEase Cloud restart, etc.). A “Re-inject” button is provided when necessary. You can also click “Re-inject” in the gear icon within the panel.

Installation and Activation

The plugin runs with the permissions of the current DSH process; it is recommended to read the repository source code and the description of third-party components distributed with the package in THIRD-PARTY.md before installation.

The installation methods provided in the official README are as follows (choose one of the npm package name or local link methods):

# Install from this directory (link: method, no need to reinstall if source code changes)
dsh plugin --profile web add <absolute path to this directory>

# Or install from npm (wait until released)
dsh plugin --profile web add dsh-netease-lyrics

Newly installed client modules require a page refresh (F5) to load.

Uninstall or disable:

dsh plugin --profile web remove dsh-netease-lyrics

You can also disable the plugin in DSH settings.

Typical Usage

  1. Install the plugin as described in the previous section and refresh the DSH page.
  2. Enable Desktop Lyrics in NetEase Cloud Music (it can be set to not stay on top to avoid blocking other windows).
  3. Wait for the plugin to auto-inject; if lyrics do not appear for a long time, click the gear icon in the bottom right corner of the lyrics layer and click “Re-inject” in the panel. The plugin will attempt to re-inject after NetEase Cloud restarts.
  4. Configure the original/translation mode, transition rhythm, effect pool, position, glassmorphism, etc., as needed in the gear panel.
  5. Chat normally; the currently playing line will be displayed on the background layer.

If you cannot see the lyrics: First, ensure Desktop Lyrics are enabled; confirm the plugin is not disabled and the page has been refreshed; follow the status text in the bottom right corner to troubleshoot. The community catalog and DeepSeek / High-Flyer have no official affiliation; this is an independent entry in the DSH “Everything is a Plugin” ecosystem.

Scenarios and Precautions

Suitable for: Users on Windows using the DSH web client who listen to music while chatting, desire background lyrics animations synced with playback, and are willing to enable NetEase Cloud Desktop Lyrics and accept the injection of a reading module into the client.

Precautions:

  • Relies on NetEase Cloud Desktop Lyrics and successful injection; lyrics cannot be retrieved without Desktop Lyrics.
  • The injector only reads text already present in the desktop lyrics window and draws it to the DSH layer; the injection logic is designed to run only once where possible to minimize friction with the third-party client.
  • The current version in package.json is 1.0.0; the npm installation instructions note “wait until released.” If dsh plugin --profile web add dsh-netease-lyrics is currently unavailable, please use the local directory method add <absolute path>.

Links