Preface¶
When running an agent in dsh Web, a line of running status appears at the bottom of the chat view—defaulting to “Deep diving…”. For those who stare at the interface for long periods, this line doesn’t affect the reasoning but constantly reminds you “still waiting”. There are already quite a few “fun customization” plugins in the community, modifying visual or interaction details; ui-status-label only changes this single line of status text, replacing the hardcoded English with text you specify. The modification is small and easy to get started with.
This article introduces the plugin’s positioning, capabilities, and installation usage. Facts come from the SkillHub directory page and the GitHub repository README.
What This Is¶
ui-status-label (npm package name dsh-ui-status-label, v0.1.0) is published by maintainer alingalingling and categorized as a “fun customization” on SkillHub. It targets the dsh Web chat view: adding a text input in the General settings section, replacing the status bar text during the agent’s turn running (waiting for the first token, tool execution, streaming output) with the content you input.
The plugin registers a persistent ui-status-label settings namespace, with default text set to 小难梁在0721; it writes to $DSH_HOME/settings.yaml, taking effect across web ports under the same user home. This package does not modify model requests, only affects the browser display.
Core Features¶
Configurable Running Status Text¶
After installation, in dsh Web settings → General, a “Running Status Text” input field will appear. After entering new text, the status line displayed in the chat view during turn running updates accordingly; changes take effect immediately without needing to save separately. Clearing the input field reverts to the default 小难梁在0721. The text is per-user rather than per-session, with a limit of 40 characters.
Two Mechanisms for Taking Effect¶
The plugin provides two mechanisms, both available in the official release (including 0.1.0-rc.6):
- DOM Injection (Default Fallback): Monitors the element in the chat view with
role="status", hardcoded as “Deep diving…”, and replaces its text with the configured text. It does not rely on the official new mechanism and works immediately after installation. conversationStatusOptional Service: When ui-conversation includes extension points (integrated with upstreamUPSTREAM-EXTENSION.patch), the chat view directly renders the configured text, and DOM injection automatically yields; the two do not conflict.
Prerequisites and Boundaries¶
- Requires dsh Web (
dsh --profile webor a custom web profile). Installing this plugin is meaningless for headless / TUI profiles. - Peer dependencies (
@deepseek-ai/cordis,dsh-client-*, etc.) are provided by dsh installation; direct dependencies (@deepseek-ai/dsh-settings,schemastery) are installed from npm. - If using a custom dsh build with this plugin built-in (e.g., local builds of deepseek-harness), do not install it again, otherwise the
ui-status-labelsettings namespace will be registered twice. The official release does not include it built-in, so normal installation is fine.
Installation and Activation¶
This package declares dsh.bundle, and dsh plugin add will automatically activate cordis.patch.yml, inserting dsh-ui-status-label into the web roster.
Direct Installation from Git Repository (as shown in SkillHub / README):
dsh plugin --profile web add github:alingalingling/ui-status-label
Alternatively, install from a local tarball (requires running pnpm pack in the repository root directory first to generate dsh-ui-status-label-0.1.0.tgz):
dsh plugin --profile web add ./dsh-ui-status-label-0.1.0.tgz
It is not yet published on npm; once published, you can use:
dsh plugin --profile web add dsh-ui-status-label
Git Installation Note: pnpm ≥10 blocks running prepare scripts for git dependencies by default. If the first add reports “Ignored build scripts”, add the printed package key to the allowBuilds in pnpm-workspace.yaml under the profile directory and then add again:
allowBuilds:
dsh-ui-status-label: true
The repository has committed pre-built lib/ (including type declarations), so you can use it directly by skipping prepare; allowBuilds is only needed if you want to rebuild from source.
Uninstallation:
dsh plugin --profile web remove dsh-ui-status-label
After installation, you need to restart the dsh web process (the running GUI does not hot-load new plugin bundles); after restarting, refresh the page to see the entry in the settings.
Typical Usage¶
- Open the dsh Web page (default
http://127.0.0.1:3080) - Click the gear icon in the bottom left corner of the page to open the settings panel
- Select General on the left side
- Enter the desired text in the “Running Status Text” input field, for example
努力干活中 - Initiate a conversation with an agent; during waiting for the first token or tool execution, the status line should display the text you set instead of “Deep diving…”
Use Cases and Notes¶
Who It’s For: Users who long-term debug or observe agent runs in dsh Web and want the status line to better match personal habits or team terminology. The modification is limited to UI text, suitable as a lightweight “fun customization” plugin to try.
Permissions and Security: The plugin runs with the permissions of the current dsh process; before installation, you should read the GitHub source code and the MIT license, confirming acceptance before installing.
Ecosystem Note: The philosophy of DeepSeek Harness is “everything is a plugin”; SkillHub (skillhub.cn) is a community directory for Chinese users, with no official affiliation to DeepSeek / High-Flyer, and is not an official app store.
Links¶
- SkillHub directory: https://www.skillhub.cn/plugins/alingalingling/ui-status-label
- GitHub repository: https://github.com/alingalingling/ui-status-label (approximately 40 stars, 3 forks)