跳到主内容

dsh-notifier 使用指南

DSH 统一通知与远程控制插件:一个 notify() API 对接 27 个推送渠道,同时把审批、提问、会话从手机送回桌面,长任务自动心跳并支持一键停止。

本文为派生内容(基于 wiki / faq / compatibility_json 自动组装),非 AI 即时创作。

本文由本站基于该插件已收录的字段自动派生(wiki / faq / compatibility_json / readme),非 AI 即时创作。每节末尾标源字段。

快速上手

dsh-notifier

— 源: plugin_wiki.wiki_content

安装与验证

dsh plugin --profile web add dsh-notifier

复制以上命令在 DSH Web Profile 内运行。安装完成后在「插件列表」启用即可。

— 源: plugins.install

关键要点

    • id: dsh-notifier
    • type: telegram
    • type: dingtalk
    • type: bark
    • id: dsh-notifier

— 源: plugin_wiki.readme_zh (fallback readme_raw)

常见问题

安装后需要先做什么才能收到通知?

在 profile 的 cordis.patch.yml 里给 dsh-notifier 行的 config 加 channels,至少配置一个渠道的凭证(webhook、bot token 等);未配任何渠道时插件只订阅事件不动作(不会报错)。

怎么把审批从手机送回桌面?

启用 inbound 部分并配置至少一个入站通道(telegram/feishu/qq/wxpusher/wechat/dingtalk)。配好后给 agent 一条白名单用户(首次 YAML 写 allowUsers 或运行时用 /pair 配对码);后续在通道私聊里点按钮或回复 1/2 即可裁决。

通知频率怎么控制?

三个维度:events 段控制宿主事件(turnStart 默认关、longRunning/stall 默认开);debounceMs 控制同一会话轮次尾沿合并(默认 10 秒);graceSeconds 控制空闲宽限窗(默认 0)。三者可叠加使用。

长任务跑着没动静怎么知道还活着?

默认开 longRunning(15 分钟首条心跳,每 15 分钟再来一条)和 stall(10 分钟无事件即疑似卡住)两条线,Telegram/飞书渠道的通知卡片上自带一个一键停止按钮,点下去就取消 turn。

其他插件可以借用这个通知系统吗?

可以。注入 notifier 服务(ctx.inject(['notifier'], …))调 push(),或订阅 dsh-notifier/sent 事件监听每次广播结果。默认按 source 限流 10 次/分钟,配额耗尽返回结构化 skipped 结果,不会抛错。

Web 管理台安全吗?

host 写死 127.0.0.1,永不绑公网(不可配)。token 首启自动生成并在 stdout 打印一次,重启后用 SHA-256 哈希校验;显式配置 admin.token 时以其为准。需要远程访问由用户自行反代。

卸载后状态数据会保留吗?

state.json 留在 $HOME/dsh-notifier/(stateDir 可改),记录白名单、配对码、账本等。卸载插件不会自动清盘,下次重装可继续使用;如需彻底清理请手动删除该目录。

渠道配额用完或者断网时会发生什么?

每渠道独立熔断(短时重试退避),未达熔断阈值时按分档重试;阈值耗尽则整渠道跳过,宿主继续运行。账本记录失败次数,不影响其他渠道推送。

— 源: plugin_wiki.faq_json

兼容性

  • DSH: 0.1.0-rc.6
  • Node: >=22

— 源: plugin_wiki.compatibility_json

踩坑提醒

安装前请审阅上游仓库;本指南基于已收录字段自动派生,可能滞后于最新版本。如发现与官方文档冲突,请以上游为准。

— 来源:通用规则