Introduction

When running the DeepSeek Harness (dsh) web service on Windows, common operations include starting the service, opening the Web UI, viewing logs, restarting the service, and exiting the service. If these operations all need to be returned to the command line window to complete, using paths can be fragmented.

@7dgroup/dsh-7d-tray-win is a Windows-oriented DSH system tray plugin. When dsh web is running, it displays a DeepSeek Whale system tray icon; after the service stops, the tray icon automatically disappears within 3 seconds. At the same time, it also automatically maintains the DSH.lnk silent launcher on the desktop, used to start dsh web and open a browser without a window.

What is it

@7dgroup/dsh-7d-tray-win is a Windows-exclusive tray plugin for dsh web, suitable for scenarios where the DSH web service needs to be managed in the system tray.

It provides the following basic capabilities:

  • Displays the DeepSeek Whale tray icon when dsh web is running.
  • The tray icon automatically disappears after the service stops.
  • Double-clicking the tray icon opens the Web UI; the port is read from the running webserver/cordis runtime and is not hardcoded.
  • Right-clicking the tray icon supports opening the Web UI, opening the log directory, restarting the service, and exiting the service.
  • Automatically maintains the desktop silent launcher DSH.lnk.
  • Automatically skipped on non-win32 platforms, without creating a tray or shortcuts.

The plugin is provided as a pure Cordis composition bundle and only modifies the profile via cordis.patch.yml, without overwriting official DSH package files.

Repository address:

https://github.com/7dgroup-ai/dsh-7d-tray-win

License:

MIT

peerDependencies requirements:

@deepseek-ai/cordis ^4.0.1

Core Features

Tray Icon Lifecycle

During the operation of dsh web, the plugin displays the DeepSeek Whale icon in the system tray. Regardless of whether dsh web is started via the command line, a script, or a desktop shortcut, as long as the service is running, the tray icon will appear.

When the service stops, the tray icon automatically disappears within 3 seconds.

Opening the Web UI

Double-clicking the tray icon opens the Web UI. The plugin reads the port from the running webserver/cordis runtime, so it does not rely on hardcoded ports and adapts to custom port configurations.

Open DSH Web in the right-click menu also performs the same action: opens the Web UI with automatic port detection.

Logs and Service Management

Right-clicking the tray icon allows the following operations:

  • Open DSH Web: Opens the Web UI.
  • Open log folder: Opens the log directory.
  • Restart service: Restarts the service.
  • Exit: Exits the service and closes the tray.

After selecting Restart service, the plugin first prompts for confirmation, then terminates the server process tree and restarts dsh web via npx.

Desktop Silent Launcher

The plugin automatically maintains the DSH.lnk on the desktop. Double-clicking DSH.lnk starts dsh web without a window and automatically opens the browser.

It should be noted that DSH.lnk itself does not display the tray; the tray icon is provided by the plugin when dsh web is running.

Windows-only Behavior

This plugin is Windows-only. It automatically skips on non-win32 platforms, without creating a tray icon or desktop shortcuts.

Installation and Usage

Before installation, the environment must meet the following requirements:

Windows 10/11
Node ^22.19.0 || >=24.0.0
pnpm 10+
PowerShell

The first run also requires .NET Framework 4 to compile the silent launcher. If csc.exe is missing in the system, the desktop shortcut feature is unavailable, but the tray feature is still usable.

If the target run command is dsh web, the plugin is usually installed to the web profile. The following command installs the plugin to the web profile:

dsh plugin --profile web add @7dgroup/dsh-7d-tray-win

If the plugin is a local directory, for example for development or testing, it can also be installed from a local path:

dsh plugin --profile web add C:\path\to\dsh-7d-tray-win

After installation is complete, start dsh web:

dsh web

After the steps above, the tray icon and desktop DSH.lnk will automatically take effect.

Typical Usage

Starting dsh web and Viewing the Tray

After installing the plugin, start dsh web directly:

dsh web

After starting, the DeepSeek Whale icon will appear in the system tray. At this time, the desktop DSH.lnk will be automatically maintained.

Double-clicking Desktop DSH.lnk

After double-clicking the DSH.lnk on the desktop:

  1. The command line window does not appear.
  2. dsh web starts in the background.
  3. The browser automatically opens to the Web UI.
  4. The DeepSeek Whale icon appears in the system tray.

Double-clicking the Tray Icon

Double-clicking the DeepSeek Whale icon in the system tray opens the Web UI for the currently running dsh web. The plugin reads the port from the running webserver/cordis runtime and does not use a hardcoded port.

Using the Right-click Menu

Right-clicking the tray icon reveals the following menu items:

Open DSH Web
Open log folder
Restart service
Exit

Where:

  • Open DSH Web opens the Web UI.
  • Open log folder opens the log directory.
  • Restart service confirms and terminates the current service process tree, then restarts dsh web via npx.
  • Exit stops dsh web and closes the tray.

Use Cases and Notes

This plugin is suitable for the following users:

  • Running dsh web on Windows 10/11.
  • Wanting to put service status in the system tray.
  • Wanting a windowless desktop launcher entry.
  • Wanting to open the Web UI, log directory, restart service, or exit service directly from the tray.

Before use, please note the following points:

  1. The plugin runs with the current dsh process permissions; check the source code and license before installing.
  2. This plugin is Windows-only and automatically skips on non-win32 platforms.
  3. DSH.lnk only handles silently starting dsh web; it does not display the tray itself.
  4. Every time dsh web starts, the plugin refreshes the asset files in %LOCALAPPDATA%\dsh-7d-tray-win with its latest assets, so do not store custom persistent files in that directory.
  5. The first run requires .NET Framework 4 to compile the silent launcher; if csc.exe is missing, the desktop shortcut is unavailable, but the tray is still usable.
  6. The plugin only modifies the profile via cordis.patch.yml and does not overwrite official DSH package files.

Links

GitHub repository:

https://github.com/7dgroup-ai/dsh-7d-tray-win