dsh-plugin-agent-alerts:Agent 结束、提问或待审批时的桌面通知与提示音

前言

在 DeepSeek Harness(DSH)里跑 agent,一轮 turn 常常要几分钟。更合理的用法是离开窗口去做别的事,但 DSH 本身不会在「该你回来」时给出明确信号。你只能反复切回应用看状态,或者一直盯着会话列表。

社区插件 dsh-plugin-agent-alerts(维护者 kjx-talesofai,分类:客户端)补上这一环:在 agent 完成一轮、向你提问、工具等待你批准(以及计划待审阅)时,播放提示音并弹出桌面通知;也可替换为自定义音效文件。下面介绍它的能力边界、安装方式与配置项。事实以 GitHub 仓库 README 为准;插件未发布到 npm,安装走 DSH 自带的「添加插件」流程。

这是什么

一句话:给 DSH 桌面端加上「声音 + macOS 桌面通知」,让你在不必盯窗口的情况下,知道该回到哪条会话。

插件依赖 DSH ≥ 0.2.0-rc.1(README 徽章与 package.json 中 engines.dsh 一致);当前资料中的发行版本为 v0.3.4,许可证 MIT。浏览器侧与 Host 侧逻辑都跑在 Harness 进程内,不是独立后台服务。

会在哪些时刻提醒

README 用表格归纳了三种(及计划待审)场景下的默认音效与通知内容:

时刻 默认音效 通知内容
一轮 turn 结束 duo_finish.mp3 会话标题
Agent 提问 duo_question.mp3 问题正文
工具需审批 duo_question.mp3 待审批的工具
计划待审阅 duo_question.mp3 计划相关提示

声音和横幅是两条通道,因为失效方式不同:窗口被盖住时主要靠声音;横幅标明哪条会话,在默认模式下点击可前置窗口并打开该会话。设置页会说明点击是否已接通,避免「点了没反应」却无从察觉。

通知方式可在设置里选择:

方式 说明
应用横幅(默认) 以 Harness 名称与图标展示,点击可跳转会话
系统兜底 由 macOS 代为通知,署名为「脚本编辑器」,不可点击;横幅长期不出现时可作备选

自带 assets/duo_finish.mp3 与 assets/duo_question.mp3(README 中文说明称哆啦 A 梦风格音效)。自定义音效需在设置中填写绝对路径;页面会显示是否成功读到文件。插件不提供音效包或文件选择器,路径需手填。

故意不做的三件事

理解边界有助于避免误期待:

  1. 子 agent 的 turn 结束不提醒。 一次 workflow 可能在短时间内结束大量子运行,逐个响会削弱注意力;但子 agent 提问或要审批仍会响,因为那仍需要你决策。
  2. 页面加载时不补报历史。 会话列表加载时会把历史空闲会话标为未读;若当作新事件会在每次打开应用时连续触发大量提醒。
  3. 刚结束又立刻继续的 turn 不提醒。 Goal 一轮结束后可能马上进入下一轮;插件会等待约 1.5 秒再确认,若会话仍在运行或结束原因其实是「在等你」,则不再报「做完了」。

安装与启用

在 DSH 「添加插件」对话框中填写下列规格(无需 npm 账号;不要对未发布包使用 npm install 作为安装路径):

github:kjx-talesofai/dsh-plugin-agent-alerts#v0.3.4

也可使用本地目录的绝对路径指向克隆或解压后的插件目录(README 示例:/path/to/dsh-plugin-agent-alerts)。

装完后重启桌面端:Host 半边仅在启动时加载;浏览器半边随页面重载。若添加插件时出现 connection to github.com timed out after 5000ms,README 说明那是管理器约 5 秒的 git 预检超时,可重试,或在 profile 目录用 pnpm add 安装同一 spec。

卸载:在 DSH「插件」列表卸载后重启;设置只留在该插件的 config 块,无其他残留。

设置与典型用法

路径:Settings → Plugins → Agent Alerts → 该行配置。开关修改后立即生效,无需再重启。

设置项 默认 说明
A turn finished 开 一轮结束
The agent asked a question 开 含计划待审阅
A tool needs approval 开 工具审批
Play a sound 开
How to notify App banner Off / App banner / System fallback
Skip the banner while the window is focused 关 声音仍会播放
Volume 80%
Sound for a finished turn 空 绝对路径;空则用内置
Sound for a question or approval 空 绝对路径;空则用内置

通知方式旁有 Send a test,可立刻试一条,便于在本机确认横幅或兜底哪条通路可用。

设置同时写入 profile 的 cordis.patch.yml,也可直接编辑,例如:

- id: agent-alerts
  name: dsh-plugin-agent-alerts
  config:
    turnEndSound: /Users/you/Sounds/done.mp3
    quietWhenFocused: false

典型工作流:安装并重启 → 在 Agent Alerts 里用测试按钮确认通知与声音 → 按需关闭「窗口聚焦时跳过横幅」或替换音效路径 → 发起长任务后离开窗口,在 turn 结束、提问或审批节点听响/看横幅后点回对应会话。

适用场景与注意事项

适合谁: 经常在 DSH 里跑较长 agent turn、希望「离开窗口、有事再回来」的 macOS 用户。README 写明仅在 macOS 上端到端验证;Windows / Linux 未测。系统兜底在非 macOS 上会返回 501,而不是静默失败。

运行与权限: 插件以当前 DSH 进程权限运行,安装前宜浏览 源码与 LICENSE,自行判断是否纳入工作流。

使用前提:

  • 应用必须保持打开。 退出 Harness 后不会有任何提醒。
  • macOS 需允许通知。 横幅不出现时,检查 系统设置 → 通知 → DeepSeek Harness 的总开关与提醒样式(不能为「无」)。
  • 专注模式可能压掉横幅,但压不掉插件自播的声音。

全局策略: 无按会话或按工作区的规则;开关为全局。无 per-session 静音表。

平台与 DSH 版本: package.json 要求 Node ≥ 22;与 DSH 0.2.1-rc.2 在 macOS(Apple Silicon)上 README 记载过契约复检;端到端手测记录基于 0.2.0-rc.2。升级 DSH 大版本前请对照仓库 engines.dsh 范围(<0.3.0-0)。

结尾

dsh-plugin-agent-alerts 用声音和(可选)桌面通知,在 agent 完成一轮、提问、待审批或计划待审时把你叫回对应会话,并刻意过滤子 agent 批量结束、历史加载和瞬时连 turn 等噪声场景。它是 DSH「一切皆插件」生态中的客户端插件;社区目录由独立站点维护,与 DeepSeek / 幻方无官方从属关系。

羽毛球分组比赛记分
小程序二维码

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

小夜