dsh-voice-notify: DSH Plugin: Chinese Voice Notification at the End of Each Conversation Turn

Introduction

DeepSeek Harness (DSH) provides a plugin-based architecture. During long-running tasks or debugging, developers often need to clearly know whether the current Agent conversation turn has ended. dsh-voice-notify is a host-side plugin that hooks into DSH’s native “turn finishing” extension point and triggers a Chinese voice announcement when the conversation truly ends.

Core Features

  • Turn Finishing Announcement: Listens to the agent/turn-stopping event and plays a Chinese voice announcement when the conversation truly ends.
  • Built-in Voice Library: Includes 20 “Xiaoxiao · Warm” style reduplicated-phrase voice clips (WAV format).
  • Visual Configuration: Provides a settings page with support for a master switch, sub-agent turn filtering, minimum interval, fixed voice selection, and more.
  • Custom Extension: Supports specifying custom voice directories and scripts.
  • Turn Filtering and Interval: Supports sub-agent turn filtering and uses minIntervalMs to prevent frequent announcements.

Installation and Enablement

This plugin only supports the Windows platform.

Installation Command

Run the following command in the extracted directory:

powershell -NoProfile -ExecutionPolicy Bypass -File .\install.ps1

If you need the change to take effect immediately in a running DSH instance without restarting, you can use daemon hot mount mode:

powershell -ExecutionPolicy Bypass -File .\install.ps1 -Hot

Working Principle

  • Hook Point: agent/turn-stopping (host serial extension point, dispatched when a turn truly finishes).
  • Playback: Randomly plays one built-in WAV; optionally appends your own voice directory.
  • Non-blocking: After spawn, calls unref() and returns immediately; it never waits for playback to complete.
  • Fault Tolerance: Any exceptions are swallowed and only logged; they never affect the finalization of the task.

Configuration

Configuration items are located under the mount entry’s config:

- id: voice-notify
  name: dsh-voice-notify
  config:
    enabled: true            # 总开关
    includeSubagents: false  # 子代理轮次是否也响
    minIntervalMs: 4000      # 两条提醒的最小间隔
    clip: ''                 # 固定一条,如 'done-3';留空则随机
    clipDir: ''              # 额外语音目录,*.wav 一起进随机池
    voiceScript: ''          # 覆盖放音脚本(默认包内 lib/play.ps1)

Notes

  • Platform Limitation: Only supports the Windows platform.
  • Sub-agent Default Behavior: Sub-agent turns do not trigger announcements by default; set includeSubagents: true to include them.
  • Minimum Interval: Defaults to 4000ms to prevent frequent announcements.
  • React Dependency: React is an optional dependency.
  • Log Location: The log file is located at $DSH_HOME/voice-notify.log.
羽毛球分组比赛记分
小程序二维码

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

Xiaoye