Introduction

In DeepSeek Harness, a single Agent turn often takes several minutes. If the user switches to another window during this time, the only indicator that the task has stopped is the running light in the sidebar going out. However, this light cannot distinguish whether the task has “completed,” “stopped due to an error,” or is “waiting for your response (approval/question/plan).”

The dsh-task-reminder plugin turns this moment into a real reminder: when a task stops, it sends a Windows system popup (native notification) and a notification sound. Clicking the notification jumps back to the conversation and scrolls to the question.

Core Features

This plugin is maintained by hawkongz, follows the MIT license, and has zero runtime dependencies. It mainly solves the following problems:

  1. Three notification types

    • Task completed: The task has ended.
    • Waiting for reply: The Agent is stuck and waiting for user action. Different titles are shown based on the specific waiting type (e.g., “Approval Request,” “Question,” “Plan Pending Confirmation”).
    • Stopped due to error: A gateway error or other error caused the task to stop.
  2. Notification interaction

    • Click to jump: Clicking the notification card opens the corresponding conversation and scrolls to the user’s question.
    • Bring desktop window to the foreground: In DSH Desktop, clicking the notification brings a minimized or hidden window back to the foreground.
  3. Notification sound

    • Provides 4 synthesized sounds (two-tone classic / three-tone rising / rising arpeggio / rounded triangle wave).
    • Supports uploading local audio files (such as mp3, wav, ogg, m4a) as a custom sound.
  4. Settings page

    • Includes the popup toggle, popup timing (any case / only non-foreground windows), notification language, sub-agent reminder toggle, notification sound control, custom sound file upload, and one-click default settings restoration.

Installation

The installation command uses pnpm to install the package into the specified profile.

# Web 端
dsh plugin --profile web add @hawkongz/dsh-task-reminder

# 桌面端
dsh plugin --profile desktop add @awkongz/dsh-task-reminder

After installation, you must restart the host and hard-refresh the browser (Ctrl + F5) for the changes to take effect.

Usage and Debugging

Enable Notifications

After the initial installation, you need to allow browser notification permissions on the “Settings → Task Reminder” page. If permissions were denied, you can request them again via the “Request Notification Permission” button on the settings page.

Console Commands

You can use the following commands in the browser console for debugging:

  • View status or permissions: __dshTaskReminder.state()
  • Test notifications (without waiting for the task to finish):
    • __dshTaskReminder.test(): Test “Task completed”
    • __dshTaskReminder.test('question'): Test “Question” notification
    • __dshTaskReminder.test('plan'): Test “Plan pending confirmation” notification
    • __dshTaskReminder.test('approval'): Test “Approval” notification with buttons
    • __dshTaskReminder.test('error'): Test “Stopped due to error” notification

Custom Sound

On the settings page, click “Custom Sound” to select a local audio file. The audio is saved only in the local browser, is not uploaded, and remains valid after the browser is restarted.

Notes

  1. Browser notification permissions: You must allow browser notification permissions to see system popups.
  2. Plugin mutual exclusivity: Only one notification plugin of the same type (using the same mechanism) should be installed; otherwise, they will replace each other.
  3. Service Worker limitations: “Approval” notifications with buttons require browser Service Worker support. Under the dsh-app:// protocol (desktop) and LAN http, buttons are not supported and will fall back to the standard style.
  4. Desktop exception: DSH Desktop supports bringing the window back to the foreground via notifications; ordinary browsers do not support this feature.
  5. Fullscreen interference: On Windows, if “Do Not Disturb” is enabled or the app is running in fullscreen, the notification banner may be hidden, but the Notification Center will still receive it.
  6. Update mechanism: The “Check for Updates” feature on the settings page depends on the DSH plugin management service.