核心用法
webhook-robot 是一款通用型 webhook 消息推送技能,目前主要支持企业微信(WeCom)群机器人。用户可通过命令行直接发送文本消息到指定群组,无需编写复杂代码。
典型调用方式:
scripts/send_wecom.py --key <YOUR_KEY> --content "告警信息"
也可使用完整 webhook URL 进行调用,灵活适配不同部署场景。
显著优点
- 开箱即用:单条命令即可完成消息推送,无需搭建中间服务
- 轻量化:基于 Python3 脚本实现,依赖简单,易于集成到 CI/CD 或监控脚本
- 标准化对接:直接调用企业微信官方 webhook API,消息格式规范
潜在缺点与局限性
- 功能单一:当前仅支持纯文本消息,不支持 Markdown、图片、卡片等富媒体格式
- 平台局限:暂不支持钉钉、飞书等其他主流 IM 平台的 webhook
- 配置管理待完善:
config.json持久化配置标记为 "to be implemented",目前需每次手动传入密钥 - 无加密存储:密钥通过命令行参数传递,存在 shell 历史泄露风险
适合人群
- 运维工程师/ SRE:用于服务器告警、监控通知推送
- 开发团队:CI/CD 流水线结果通知(构建成功/失败提醒)
- 小型团队:轻量级自动化消息场景,无需复杂 IM 集成方案
常规风险
| 风险类型 | 说明 |
|---------|------|
| 密钥泄露 | Webhook key 作为 URL 参数传递,可能被记录在日志、shell history 或进程列表中 |
| 消息伪造 | 若 key 泄露,攻击者可向群内发送虚假消息 |
| 频率限制 | 企业微信对 webhook 调用有频次限制,高频场景需注意限流 |
| 网络暴露 | 依赖外部 API,内网环境需确保出站连通性 |
建议生产环境配合密钥管理服务(如环境变量注入)使用,并定期轮换 webhook key。