SuperAPI AI 工具集

gotify

办公与效率

查看项目

更新于 10-16 07:11

技能介绍

用途

Gotify 通知技能用于让 Clawdbot 通过 Gotify 发送推送通知,适用于以下场景:

  • 长时间运行的任务完成时发出提醒
  • 发送后台操作的状态更新
  • 通知重要事件或错误
  • 与任务完成钩子集成

主要能力

  • 发送基础推送通知
  • 支持自定义通知标题
  • 支持设置优先级(0-10)
  • 支持 Markdown 格式的消息内容
  • 可在任务完成后直接调用,或通过钩子集成(钩子集成为未来功能)

使用方式

配置

创建凭据文件:~/.clawdbot/credentials/gotify/config.json

{
  "url": "https://gotify.example.com",
  "token": "YOUR_APP_TOKEN"
}
  • url:你的 Gotify 服务器 URL(末尾不要带斜杠)
  • token:来自 Gotify 的应用令牌(设置 → 应用 → 创建应用)

基本通知

bash scripts/send.sh "Task completed successfully"

带标题

bash scripts/send.sh --title "Build Complete" --message "skill-sync tests passed"

带优先级(0-10)

bash scripts/send.sh -t "Critical Alert" -m "Service down" -p 10

Markdown 支持

bash scripts/send.sh --title "Deploy Summary" --markdown --message "
## Deployment Complete

- **Status**: ✅ Success
- **Duration**: 2m 34s
- **Commits**: 5 new
"

与任务完成集成

方式一:任务后直接调用

# Run long task
./deploy.sh && bash ~/clawd/skills/gotify/scripts/send.sh "Deploy finished"

方式二:钩子集成(未来功能)

当 Clawdbot 支持任务完成钩子时,此技能可自动触发:

{
  "on": "task_complete",
  "run": "bash ~/clawd/skills/gotify/scripts/send.sh 'Task: {{task_name}} completed in {{duration}}'"
}

参数

  • -m, --message <text>:通知消息(必填)
  • -t, --title <text>:通知标题(可选)
  • -p, --priority <0-10>:优先级(默认:5)
    • 0-3:低优先级
    • 4-7:普通优先级
    • 8-10:高优先级(可能触发声音/振动)
  • --markdown:在消息中启用 Markdown 格式

示例

子代理完成时通知:

# After spawning subagent
sessions_spawn --task "Research topic" --label my-research
# ... wait for completion ...
bash scripts/send.sh -t "Research Complete" -m "Check session: my-research"

错误时以高优先级通知:

if ! ./critical-task.sh; then
  bash scripts/send.sh -t "⚠️ Critical Failure" -m "Task failed, check logs" -p 10
fi

富 Markdown 通知:

bash scripts/send.sh --markdown -t "Daily Summary" -m "
# System Status

## ✅ Healthy
- UniFi: 34 clients
- Sonarr: 1,175 shows
- Radarr: 2,551 movies

## 📊 Stats
- Uptime: 621h
- Network: All OK
"

工作流

当用户说:

  • “Notify me when this finishes” → 在其命令后添加 && bash scripts/send.sh "Task complete"
  • “Send a Gotify alert” → 使用其消息运行 bash scripts/send.sh
  • “Push notification for task completion” → 以合适的标题/优先级集成到其工作流中

始终确认通知已成功发送(检查是否返回包含消息 ID 的 JSON 响应)。

适用场景

  • 长时间运行任务(如部署、构建、测试)完成后的提醒
  • 后台操作的状态更新
  • 重要事件或错误的即时通知
  • 需要与任务完成钩子集成的自动化流程

限制

  • 需要能够访问你的 Gotify 服务器的网络
  • 应用令牌必须具有“创建消息”权限
  • 优先级级别会影响客户端设备上的通知行为
  • Markdown 支持取决于 Gotify 客户端版本(大多数现代客户端支持)

参考

  • Gotify API 文档:https://gotify.net/docs/
  • Gotify Android/iOS 应用用于接收通知