Pushover 通知技能通过 Pushover API 向手机和桌面发送即时推送通知,适合用于需要立即触达用户的关键消息场景。
用途
该技能主要用于以下情况:需要立即关注的作业完成通知;紧急告警,如错误、失败、时效性事件;高优先级状态更新;用户需要立刻收到通知(而非通过邮件)的场景;以及为关键消息补充邮件通知。不适合用于:长篇报告或详细文档(应改用邮件)、可以等待的非紧急更新、批量通知(Pushover 存在速率限制)。
配置
Pushover 需要两个凭据,以 GitHub Secrets 形式设置,前缀为 AGENT_LLM_:
- AGENT_LLM_PUSHOVER_TOKEN:应用 API Token,从 https://pushover.net/apps/build 获取
- AGENT_LLM_PUSHOVER_USER_KEY:用户 Key,从 https://pushover.net 获取
设置步骤
- 在 https://pushover.net 创建 Pushover 账号
- 在手机上安装 Pushover 应用(iOS/Android)
- 在 https://pushover.net/apps/build 注册新应用
- 复制 API Token 和 User Key
- 使用以下命令设置为 GitHub Secrets: npx thepopebot set-agent-llm-secret PUSHOVER_TOKEN "your-token" npx thepopebot set-agent-llm-secret PUSHOVER_USER_KEY "your-user-key"
使用方式
通过 context.tools.send_pushover 调用,示例: await context.tools.send_pushover({ to: "user-key-or-device", // 可选,默认使用 PUSHOVER_USER_KEY message: "Job complete: Analysis finished", title: "PopeBot Alert", // 可选 priority: 0, // -2 到 2 url: "https://...", // 可选链接 urlTitle: "View Details" // 可选 URL 标签 });
主要能力(参数)
- to:用户 Key 或设备标识符(可选,默认为已配置用户)
- message:通知正文(必填,最长 1024 字符)
- title:应用标题/标签(可选,最长 250 字符)
- priority:优先级 -2 到 2(默认 0)
- url:附加的补充 URL(可选)
- urlTitle:URL 按钮的自定义文本(可选)
- sound:自定义声音名称(可选,参见 Pushover 文档)
- device:指定目标设备(可选)
优先级
- -2:无通知,始终静默
- -1:安静通知(无声音/振动)
- 0:普通优先级(默认)
- 1:高优先级(绕过免打扰时段)
- 2:紧急(每 60 秒重复,直到被确认)
示例
简单通知: await context.tools.send_pushover({ message: "Daily backup completed successfully" });
高优先级告警: await context.tools.send_pushover({ title: "⚠️ Error Alert", message: "Pipeline failed at step: build", priority: 2, url: "https://github.com/.../actions/runs/123", urlTitle: "View Logs" });
带链接的作业完成通知: await context.tools.send_pushover({ title: "Research Complete", message: "Analysis of 50 documents finished. 3 key findings.", priority: 1, url: "https://.../pr/42", urlTitle: "Review PR" });
使用建议
- 消息保持简洁(为获得最佳可见性,建议 200 字符以内)
- 谨慎使用优先级 2(仅限紧急告警)
- 附带 URL 以便快速访问相关资源
- 在标题中使用 emoji 便于视觉识别(🔔 ⚠️ ✅ ❌)
- 非工作时间的信息性更新可使用优先级 -1
限制
- 速率限制:每用户每小时 750 条消息
- 免费版每月 10,000 条消息
- 紧急优先级(2)有额外限制
- 批量通知建议合并发送或改用邮件技能