dsh-plugin-task-notify:DeepSeek Harness 长任务音频提醒

前言

在使用 DeepSeek Harness(DSH)运行长任务或复杂工作流时,Agent 执行过程往往需要较长时间。开发者可能需要离开屏幕去处理其他事务,导致错过子任务的完成节点,或无法及时响应整轮任务结束后的指令。

dsh-plugin-task-notify 旨在解决这一痛点。它通过浏览器端的音频提示,在子任务完成时发出短促的“嘟”声,在整轮任务超时结束时发出“叮”声,提醒开发者返回操作。

功能概览

该插件基于 Web Audio API 实现,无需加载外部音频资源,且与后端 AI 模型无关。

  • 子任务完成响“嘟”:监听子代理工具调用(如 subagent、subagent_fork 等)的结算状态。当子任务完成时播放短促提示音,支持合并窗口以避免快速连续完成的噪音。
  • 整轮任务响“叮”:在整轮任务开始时启动计时器。若任务持续时间超过配置的阈值(默认 5 分钟),当会话变为空闲状态时,播放上升的双音调“叮”声,并可选标题栏闪动或 TTS 播报。
  • 多会话全局监控:默认监控所有会话,也可配置为仅监控当前会话。
  • 声音自包含:完全基于浏览器原生 API 合成,不依赖外部文件。
  • 支持 TTS 播报:可选开启文本转语音功能,支持自定义播报模板。

安装与启用

通过官方插件市场安装是最快的方式:

dsh plugin add dsh-plugin-task-notify

安装完成后,重启 dsh web,该插件的设置卡片将出现在 Settings → Plugins 下。

配置项

插件支持以下配置项,均可在设置界面调整:

字段 含义 默认值
enabled 总开关 true
thresholdMinutes 整轮任务结束提醒的阈值(分钟) 5
subReminderEnabled 子任务完成提示音开关 true
mergeMs 连续子任务合并提示的窗口时间(毫秒) 500
masterVolume 整轮任务“叮”声音量(0.0 - 1.0) 0.6
subVolume 子任务“嘟”声音量(0.0 - 1.0) 0.5
ttsEnabled 开启文本转语音播报 false
ttsTemplate TTS 播报模板,使用 {time} 占位实际时长 任务完成,用时约 {time} 分钟
titleFlash 整轮任务结束时闪烁标题栏 true
globalSessions 监控所有会话 true
batchSingleBeep 所有子任务合并为整轮任务结束时响一声 false

典型用法

1. 设置整轮任务阈值
如果你希望任务超过 10 分钟才响铃,可在配置中调整:

thresholdMinutes: 10

2. 自定义 TTS 模板
使用 {time} 变量来自动播报实际耗时:

ttsTemplate: '任务已完成,总耗时为 {time} 分钟'

3. 调整音量
根据环境噪音调整两个提示音的音量:

masterVolume: 0.8
subVolume: 0.4

注意事项与兼容性

  • 用户手势依赖:浏览器安全策略要求音频播放前需要用户与页面交互。首次使用前请点击页面或发送一条消息,以激活音频上下文。
  • 浏览器限制:TTS 功能在后台标签页可能受到限制,建议保持标签页在前台或最小化状态以获得即时反馈。页面关闭时声音会停止。
  • 兼容性版本:插件兼容 DSH 0.1.0-rc.8 客户端契约。插件对 0.1.2-rc.1 版本中的快照形状变更做了适配修复,确保在旧版本上也能正常工作。

总结

dsh-plugin-task-notify 为 DSH 用户提供了非侵入式的任务状态反馈机制。通过简单的配置,即可将长时间运行的任务转化为可视与可听的提醒,有效降低遗漏关键节点的风险。

  • 项目地址:https://github.com/DearMrChai/dsh-plugin-task-notify
羽毛球分组比赛记分
小程序二维码

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

小夜