ZYar-er/dsh-notify-bell1

dsh-notify-bell

DeepSeek Harness 语义化通知声音插件:支持通过 BEL 或 WAV 播放完成/审批/提问/受阻/错误等状态声音,带 Web 铃铛开关

AI 分析

核心用途是通过不同音效对 Agent 的运行状态进行声音提醒。适合在后台运行 Agent 任务、需要即时听觉反馈(如等待审批或报错)的用户。

包名
dsh-notify-bell
版本
0.12.0
许可证
MIT
最近更新
2026年8月16日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:ZYar-er/dsh-notify-bell

Configuration

The plugin follows the official DSH Cordis configuration model and exports a Schemastery Config schema: the config block of the plugin row in your profile's cordis.patch.yml is validated and default-filled at load time, and invalid values fail loudly.

Example (profile patch):

- id: notify-bell
  config:
    minDuration: 10
    playback: backend

The legacy runtime-state file is:

~/.config/dsh/notify-bell.json

Its path can be overridden with:

DSH_NOTIFY_BELL_CONFIG

The Web UI persists enabled and playback there. Example file:

{
  "enabled": true,
  "minDuration": 10,
  "objective": {
    "maxLength": 120
  },
  "events": {
    "complete": {
      "enabled": true,
      "sound": "done"
    },
    "block": {
      "enabled": true,
      "sound": "block"
    },
    "approval": {
      "enabled": true,
      "sound": "permission"
    },
    "question": {
      "enabled": true,
      "sound": "question"
    },
    "error": {
      "enabled": true,
      "sound": "error"
    }
  },
  "soundPack": "wav",
  "playback": "browser",
  "wav": {
    "directory": "~/.config/dsh/notify-bell/sounds",
    "fallback": "bell"
  },
  "bell": {
    "gapMs": 150,
    "permissionGapMs": 300
  }
}

Completion threshold

Tasks shorter than minDuration do not play the completion sound.

Approval and question notifications are immediate because they indicate that the agent is waiting for the user.

Runtime mute

enabled controls all notification playback.

When disabled:

  • no browser sound is sent
  • no backend sound is played
  • DSH continues running normally
  • other configuration is preserved
  • no restart is required

Configuration sources

The plugin follows the official DSH Cordis configuration model.

Explicit plugin configuration takes precedence over the legacy runtime-state file:

cordis config  >  notify-bell.json  >  schema defaults

For normal users, the Web UI is the easiest way to change notification state and playback mode.

Configuration sources

The plugin follows the official DSH Cordis configuration model.

Explicit plugin configuration takes precedence over the legacy runtime-state file:

cordis config  >  notify-bell.json  >  schema defaults

For normal users, the Web UI is the easiest way to change notification state and playback mode.