DeepSeek Harness Conversation Notification Center Plugin

Introduction

When developing agents with DeepSeek Harness (DSH), events that require human intervention—such as approval requests, question confirmations, and blocked goals—are often easy to miss. The dsh-session-notify plugin connects these events to browser system notifications and in-app prompts, allowing you to click and navigate directly to the corresponding session to avoid missing them.

Plugin Overview

This plugin is a DSH dynamic Cordis plugin maintained by Lwc-LiuWenCheng and licensed under the MIT License.

Core Features

  • Dual-side architecture: Host and Client are separated, so it can be loaded without modifying the DSH deployment source code.
  • Comprehensive coverage: Covers all human-intervention events, with 7 categories and 11 event sources in total.
  • Dual-channel reminders: Provides both browser Notification API system notifications and a toast stack in the upper-right corner.
  • Interactive navigation: Clicking a notification focuses the window and navigates directly to the corresponding session.
  • Fine-grained configuration: Supports configuring a notification level for each category on the settings page (Off / In-app prompt / System notification).
  • Low-overhead design: Uses Client→Host long polling (empty-queue suspension for 15s) and Host-side source filtering to avoid polling storms; disabled categories incur zero load.

Installation and Enablement

There are two ways to enable this plugin:

  1. Option A: Load as a dynamic plugin
    - Run the build command to generate the files:
     npm run build:dynamic
  • In a DSH session, use the generated dynamic/host.body.js content as code.host and the dynamic/client.body.js content as code.client to call cordis_define, then execute cordis_run to activate it.
  • On first use, request notification permission from the DSH settings page.
  1. Option B: Install as a static plugin
    - Run the build and pack commands:
     npm run build:static
     npm pack
  • Run the local installation script:
     powershell -ExecutionPolicy Bypass -File scripts\install-local.ps1
  • Restart the DSH process for the changes to take effect.

Notes

  • Session-level scope: A dynamic plugin only receives events within the current session scope and cannot receive cross-session events.
  • Browser notification dependency: System notifications depend on the Notification API and user authorization; if unsupported, they automatically fall back to in-app prompts.
  • Title fallback handling: The session title in notification bodies is taken from sessionQuery.readTitle; if it cannot be retrieved, a generic message is used.
  • Lifecycle: A dynamic plugin is session-level and in-process; stopping or updating it removes all side effects.
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye