dsh-niao-message:DeepSeek Harness 的 macOS 系统通知插件

前言

在使用 DeepSeek Harness(DSH)进行智能体开发时,对话通常在浏览器或终端中运行。当任务在后台执行时,开发者容易错过关键状态变更,如任务异常终止或需要用户确认的环节。dsh-niao-message 插件将 DSH 的事件流直接映射到 macOS 通知中心,确保在「异常终止」、「需要你操作」、「正常完成」三个关键节点触发系统横幅,并提供点击直达应用的能力。

这是什么

这是一个由 dsh-niao 维护的 macOS 系统通知插件。它监听 DSH 的内部事件,在特定场景下调用 terminal-notifier 向系统发送通知。其核心价值在于将 DSH 的状态反馈从浏览器/终端延伸到系统桌面,并在用户切回 DSH 页面时自动清空通知,避免干扰。

核心功能

  1. 三大通知组独立配置:针对「异常终止」、「需要你操作」、「正常完成」三个场景分别设置开关、提示音和标题/消息模板。
  2. 点击横幅直达应用:点击通知横幅可执行 open -a 命令(或 Bundle ID)打开指定应用,支持自动扫描本机 DSH 桌面应用与浏览器。
  3. 零轮询、自动清空:利用浏览器页签的 visibilitychange 和 focus 事件监听。当切回 DSH 页面时,通知自动消失,无后台常驻开销。
  4. 通知节流与去重:内置 3 秒节流机制,并支持基于文件标记的去重逻辑(标记文件 + 过期时间),防止重复打扰。
  5. 零手动安装:插件内置 macOS 通知二进制(arm64 版本),Intel Mac 会自动回退使用 node-notifier 自带版本,无需手动安装系统工具。
  6. 可视化设置面板:在 DSH 设置弹窗中提供「通知管理」页面,支持即时编辑模板和测试通知。

安装与启用

安装时需要指定 DSH 的 profile(例如 web)。

dsh plugin --profile web add dsh-niao-message

安装完成后,需重启 dsh web 进程使插件生效。

典型用法

安装后,进入 DSH 设置弹窗(左下角 ⚙️),左侧会出现「通知管理」页面。

  1. 测试通知:在设置面板中点击「测试通知」,通知中心会出现测试横幅。
  2. 配置覆盖:插件的配置优先级为:插件默认值 < 补丁层 (cordis.patch.yml) < 设置面板保存的配置文件。如需手动修改,可编辑 ~/.dsh/dsh-niao-message.config.json。
  3. 自动清空:在 DSH 页面触发一条通知后,切换到其他应用或页签,再切回 DSH 页面,之前的通知会自动消失。

适用场景与注意

  • 平台限制:仅支持 macOS 平台。点击行为、通知发送、应用扫描均依赖 terminal-notifier、open 命令等 macOS 专属机制。
  • 依赖项:依赖 @deepseek-ai/schemastery 和 node-notifier。
  • 权限与安全:插件以当前 DSH 进程的权限运行。在使用前,建议检查插件源码与许可证(MIT)。
  • 配置优先级:修改设置面板的配置会持久化到 ~/.dsh/dsh-niao-message.config.json,覆盖插件默认值和补丁层配置。

结语

dsh-niao-message 通过将 DSH 的运行状态无缝集成到 macOS 通知中心,解决了后台任务状态感知的问题。其零轮询的设计和自动清空机制,保证了通知功能既及时又轻量。

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

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

小夜