Introduction

In DSH Web, status text turnStatus is displayed while the model or agent is working. DSH supports plugin extensions, and dsh-turn-status-phrases is used to replace this status text with continuously changing custom turn status phrases.

Plugin Positioning

  • Plugin Name: dsh-turn-status-phrases
  • Maintainer: 57ggfk
  • Type: DSH Web plugin / Cordis bundle
  • License: MIT
  • Purpose: To make the turnStatus status text in DSH Web display continuously changing turn status phrases.

Core Features

While the model or agent is working, the status text rotates among phrases:

  • Rotation duration is calculated based on the UTF-8 byte count of the phrases, 100 milliseconds per byte.
  • Shortest 1.8 seconds, longest 8 seconds.
  • No two consecutive phrases are displayed.

Built-in libraries include:

  • “Chinese Mythology”: Includes Chang’e Flying to the Moon, Jingwei Fills the Sea, Kuafu Chases the Sun, Hou Yi Shoots the Suns, Nüwa Repairs the Sky, etc.
  • “Claude Code”: Includes 187 spinner status phrases from the Claude Code CLI, such as Pondering, Noodling, Musing, etc.

Settings page supports:

  • Switching libraries.
  • Pausing dynamic phrases.
  • Viewing and copying library content.

Custom library editing functionality is under development.

Installation and Enablement

Execute in the plugin directory:

dsh plugin --profile web add .

After restarting DSH Web, enable “Turn Status Phrases” in Settings. The default library is “Chinese Mythology”.

Typical Usage

  1. Select a library in the settings page, for example “Chinese Mythology” or “Claude Code”.

  2. Observe the turnStatus status text cycling through phrases while the model or agent is working.

  3. To temporarily disable the dynamic effect, pause dynamic phrases in the settings page.

  4. To use a specific phrase, view the library content in the settings page and copy it.

Adding Built-in Libraries

Each built-in library has a dedicated module file in lib/builtin-libraries/. When adding a new library, first create the library module, then register it to the list, and finally build and test the client data.

  1. Create lib/builtin-libraries/<library-id>.js, with a default export of id, name, and phrases:
export default {
  id: "example-library",
  name: "Example Library",
  phrases: ["First phrase", "Second phrase"]
};
  1. Import the module in lib/builtin-libraries/index.js and add it to BUILTIN_LIBRARY_LIST. The display order of libraries in the settings page matches the order of this array; the default library is determined by the first item in the list.

  2. Run npm run build to update the built-in library data for DSH Web loading in lib/client.js from the registry. Do not manually edit this generated block.

npm run build
  1. Run npm test; it will rebuild the client data and validate the library registry and phrase logic.
npm test

After updating a built-in library, reinstall or update the plugin, and refresh the DSH Web page for the changes to take effect.

Usage Notes

  • Configuration is only saved locally in the current browser and is not uploaded to the network.
  • The plugin’s peerDependencies require @deepseek-ai/dsh-client-runtime, @deepseek-ai/dsh-client-ui-slots, @deepseek-ai/dsh-client-locale, and react ^18.2.0.
  • The plugin runs with the permissions of the current dsh process; it is recommended to check the source code and license before installing.

Links

  • Directory Page (from plugin clue): https://www.skillhub.cn/plugins/57ggfk/dsh-turn-status-phrases
  • GitHub: https://github.com/57ggfk/dsh-turn-status-phrases
  • The directory page is a community plugin page and does not equal the official app store.