核心用法
Gotify 技能为 Clawdbot 提供自托管推送通知能力,核心场景是长任务完成后主动告警。用户配置个人 Gotify 服务器 URL 与应用 Token 后,可通过 send.sh 脚本发送通知,支持标题自定义、0-10 优先级分级、Markdown 富文本格式。
典型调用模式:
- 管道式:
./long-task.sh && bash scripts/send.sh "完成" - 条件告警:
if ! task; then send.sh -p 10 -t "失败"; fi - 富文本报告:
--markdown参数渲染结构化状态摘要
显著优点
1. 完全自主可控:数据流经用户自托管服务器,规避 Pushover/PushBullet 等商业服务的隐私泄露风险
2. 优先级智能分级:8-10 级高优先级可触发设备强提醒(声音/振动),适合关键错误告警
3. 零外部依赖:仅需 curl + jq,不依赖 Python/Node 运行时
4. Markdown 原生支持:现代 Gotify 客户端可渲染标题、列表、表情符号,提升可读性
潜在局限
- 基础设施成本:需自行部署并维护 Gotify 服务端,对无服务器运维经验的用户有门槛
- 网络可达性要求:发送端必须能直连 Gotify 服务器,内网/防火墙场景需额外配置反向代理
- 无原生重试机制:脚本单次请求失败即退出,关键任务需用户自行包装重试逻辑
- Token 管理负担:应用令牌明文存储于
~/.clawdbot/credentials/,权限粒度较粗(仅有"创建消息"开关)
适合人群
- 已拥有 Homelab / NAS / VPS 的进阶用户
- 对通知数据主权敏感(医疗、金融、研发场景)
- 需将 CLI 工作流(编译、部署、爬虫)与移动端联动的开发者
常规风险
| 风险点 | 说明 | 缓解建议 |
|--------|------|----------|
| Token 泄露 | 配置文件权限不当导致他人冒发通知 | `chmod 600` 配置文件,避免版本控制提交 |
| 服务器伪造 | 攻击者劫持 DNS/网络层重定向至恶意端点 | 启用 HTTPS 证书固定,内网使用 VPN/WireGuard |
| 消息泛滥 | 高频脚本错误导致通知轰炸 | 设置优先级阈值过滤,或引入速率限制逻辑 |
| 依赖缺失 | 目标环境缺少 `curl`/`jq` | 部署前置检查脚本,或改用纯 Bash HTTP 客户端 |
综合评估
该技能是隐私优先型通知方案的代表,将云端 SaaS 的功能等价迁移至用户可控基础设施。适合技术能力足以自运维 Gotify 服务端、且对数据出境有严格顾虑的用户群体。对于追求开箱即用的普通用户,商业推送服务在便捷性上仍具优势。