Skip to content

Webhooks

概述

Webhooks 让外部系统能够向 OpenClaw 发送事件通知,触发 Agent 执行相应操作。当外部事件发生时(如 GitHub 有新 PR、监控系统检测到异常),Webhook 会向 OpenClaw Gateway 发送 HTTP 请求,Agent 收到后自动处理。

工作原理

text
外部系统(GitHub/监控等)
    ↓ HTTP POST
OpenClaw Gateway(接收 Webhook)
    ↓ 解析事件
Agent(理解事件 → 选择工具 → 执行操作)
    ↓ 推送结果
消息渠道(Telegram/飞书/QQ)

配置 Webhook 端点

openclaw.json 中启用 Webhook 接收:

json
{
  "webhooks": {
    "enabled": true,
    "port": 18790,
    "secret": "your-webhook-secret",
    "endpoints": [
      {
        "path": "/github",
        "prompt": "处理 GitHub 事件:如果是 PR 就进行代码审查,如果是 Issue 就分类和回复"
      },
      {
        "path": "/monitor",
        "prompt": "处理监控告警:分析告警内容,判断严重程度,必要时自动修复"
      }
    ]
  }
}

使用场景

GitHub 集成

当仓库有新 PR 时自动进行代码审查:

text
Webhook URL: http://localhost:18790/github
Event: pull_request

Agent 收到事件后会:

  1. 读取 PR 的 diff
  2. 检查代码规范和潜在 bug
  3. 生成审查意见
  4. 自动评论到 PR

监控告警

将服务器监控告警转发给 Agent 处理:

text
Webhook URL: http://localhost:18790/monitor
Event: alert

Agent 收到告警后会:

  1. 分析告警内容和严重程度
  2. 检查服务器状态
  3. 尝试自动修复(如重启服务)
  4. 将处理结果推送到你的消息渠道

表单提交

处理来自网站表单的客户咨询:

  • 自动分类和优先级标注
  • 搜索知识库匹配解决方案
  • 生成回复草稿
  • 复杂问题升级到人工

CI/CD 通知

接收构建和部署结果通知:

  • 构建失败时自动分析日志
  • 部署完成后执行冒烟测试
  • 将结果推送到团队群

安全建议

  • 配置 secret 验证请求来源
  • 不要将 Webhook 端口暴露到公网,建议通过 Tailscale 或反向代理访问
  • 限制 Webhook 能触发的操作范围

下一步

基于 MIT 协议发布