核心功能
clawdbot-release-check 是一款面向开发者设计的轻量级更新监控工具,专门追踪 GitHub 仓库 clawdbot/clawdbot 的新版本发布。其核心价值在于智能去重机制——每个新版本仅通知一次,彻底解决传统更新检查器的"消息轰炸"问题。
主要特性
- 静默检查: 运行
check.sh时,若版本已最新或已通知过,无任何输出 - 状态持久化: 通过 JSON 文件记录最后通知版本和时间戳,支持
--reset重置 - 多级缓存策略: 24 小时 API 缓存 + 单次 highlights 提取,降低 GitHub API 和 token 消耗
- 灵活通知渠道: 内置 Telegram 集成脚本,支持自定义 cron 时间(默认 9:00)
- 批量追更:
--all-highlights可一次性查看所有遗漏版本的更新摘要
技术实现
依赖 curl 和 jq 两个标准工具,通过对比本地 package.json 版本与 GitHub Releases 最新 tag 实现检测。状态文件存储于用户目录 ~/.clawdbot/,符合 XDG 规范精神。自动探测 clawdbot 安装路径支持本地开发目录和 npm 全局安装两种场景。
局限性与注意事项
- 单一仓库锁定: 仅支持监控
clawdbot/clawdbot,无法通用化配置其他仓库 - macOS 生态绑定:
launchctl重启指令和clawdhub安装方式暗示较强 Apple 生态依赖 - Telegram 配置门槛: 需提前获取
YOUR_TELEGRAM_ID,对非技术用户不够友好 - 无自动更新: 仅通知不执行,更新仍需手动
git pull && pnpm install && pnpm build - GitHub API 限制: 未使用认证 token,频繁
--clear-cache可能触发 rate limit
适用人群
- 活跃使用 clawdbot 的开发者/高级用户
- 希望"设置后遗忘"、厌恶重复通知的极简主义者
- 需要维护多个 clawdbot 实例的运维人员
- 习惯 cron 定时任务管理日常工作的 macOS/Linux 用户
潜在风险
作为未执行安全扫描的占位报告,需注意:脚本具备文件系统写入权限(状态/缓存文件)、网络请求能力(GitHub API)以及可选的 Telegram 通知通道。建议审查 setup.sh 和 check.sh 源码,确认无恶意重定向或敏感信息泄露。--force 参数可绕过去重状态,配合社交工程可能造成虚假更新恐慌。