跳到主要内容
极客日志极客日志面向AI+效率的开发者社区
首页博客GitHub 精选镜像工具UI配色美学隐私政策关于联系
搜索内容 / 工具 / 仓库 / 镜像...⌘K搜索
注册
博客列表
编程语言Node.jsWeChatAI

OpenClaw 接入微信实现 AI 自动回复实战指南

本文介绍如何通过 OpenClaw 插件将微信私聊和群聊接入 AI 智能体运行时。涵盖插件安装、Token 获取、内网穿透配置及 Webhook 设置。支持媒体处理、富消息转发、自定义触发策略及 Agent 绑定。通过 ngrok 或 FRP 实现公网可达,完成从消息接收到 Agent 调度的闭环。

机器人发布于 2026/4/11更新于 2026/5/2412 浏览
OpenClaw 接入微信实现 AI 自动回复实战指南

SyNodeAi OpenClaw Plugin

SyNodeAi OpenClaw Plugin 用于将微信私聊和群聊接入 OpenClaw,使每一条消息都能进入 Agent Runtime,触发 Tool、Skill 或 Workflow 调度。

为什么做这个插件

在 OpenClaw 体系里,微信不仅是聊天工具,更是:

  • 高活跃入口:天然承载真实用户会话
  • 事件源:每条消息都可以转换为 Agent Event
  • 执行环境:每个会话都可以成为独立上下文 Runtime
  • 能力承载层:可以继续挂载 Tool、Skill、Workflow、ACP 持久会话

可以理解为:

WeChat = Event Source OpenClaw = Runtime Agent = Execution Unit Tool / Skill = Capability Layer

架构概览

WeChat ↓ Channel (SyNodeAi) ↓ OpenClaw Runtime ↓ Agent ↓ Tool / Skill / Workflow → Response → WeChat

功能特性

通道能力
  • 支持微信私聊/群聊接入
  • 支持 SyNodeAi API + Webhook 回调
  • 支持消息转 Event
  • 支持接入 OpenClaw Channel 体系
Agent 执行能力
  • 每个会话独立上下文
  • 支持 bindings 路由到指定 Agent
  • 支持 ACP 持久会话
  • 支持群聊/私聊细粒度触发策略
微信特性支持
  • 支持 @ 触发/引用触发
  • 支持引用回复/普通回复/@发送者
  • 支持撤回消息
  • 支持转发已有富消息
  • 支持表情/名片/小程序/appmsg/链接等富消息
  • 支持群成员目录读取与已知对象缓存
媒体与语音能力
  • 支持媒体上传
  • 支持 mediaPublicUrl 本地反代
  • 支持 S3 兼容上传
  • 支持语音自动转 silk
  • 支持自动下载 rust-silk
  • 支持 ffmpeg/ffprobe 处理媒体

快速开始

只需要几分钟,你就可以让微信跑起一个 AI Agent。

1. 安装插件

推荐使用 npm 安装:

openclaw plugins install synodeai

其他安装方式包括本地目录安装、软链接(开发调试)或归档安装。安装或启用插件后需要重启 Gateway。

2. 登录并获取 Token

打开地址登录微信并完成绑定,获取 token:

http://synodeai.webotchat.com/quickstart
3. 配置 JSON 文件

将配置文件复制到 ~/.openclaw/openclaw.json:

{
  "channels": {
    "synodeai": {
      "enabled": true,
      "token": "<synodeai-token>",
      "webhookHost": "0.0.0.0",
      "webhookPort": 4399,
      "webhookPath": "/webhook",
      "autoQuoteReply": false,
      "allowFrom": [],
      "dmPolicy": "open",
      "groupPolicy": "open",
      "groups": {
        "*": {
          "trigger": { "mode": "at" },
          "reply": { "mode": "quote_source" }
        }
      }
    }
  }
}
4. 配置 Webhook(内网穿透)

Webhook 是 SyNodeAi 将微信消息推送到你本地 OpenClaw 的入口地址,必须公网可访问。如在本地环境使用,推荐用 ngrok 做内网穿透。

4.1 安装 ngrok
brew install ngrok
4.2 配置 token

注册 ngrok 后获取 token,然后执行:

ngrok config add-authtoken YOUR_TOKEN
4.3 启动穿透
ngrok http 4399

你会看到类似输出:

https://xxxx.ngrok-free.app -> http://localhost:4399

这个 https://xxxx.ngrok-free.app 就是你的公网地址。

5. 填写 webhook

把上一步的公网地址按下面格式填写到 SyNodeAi:

https://xxxx.ngrok-free.app/webhook
6. 启动 OpenClaw
openclaw start
7. 验证

向机器人发一条微信消息测试:

  • 私聊直接发消息
  • 群聊中 @机器人
  • 群聊中引用机器人上一条消息继续追问

正确顺序是:登录微信(SyNodeAi)→ 安装 OpenClaw plugin(synodeai)→ 复制 json 配置文件 → 配置 ngrok 拿到公网地址 → 在 SyNodeAi 填写 webhook → 最后启动 openclaw start。

配置项说明

核心配置位于 ~/.openclaw/openclaw.json 的 channels.synodeai 段落中:

  • webhookHost/webhookPort/webhookPath:SyNodeAi 回调入口(需公网可达,常配合 FRP)。
  • mediaPath:本地媒体服务的路由前缀(默认 /synodeai-media)。
  • mediaPublicUrl:本地反代回退时的公网地址前缀(可选)。
  • s3Enabled:是否启用 S3 兼容上传。
  • voiceAutoConvert:自动将音频转为 silk(默认开启)。
  • silkAutoDownload:自动下载 rust-silk(默认开启)。
  • autoQuoteReply:是否开启 replyToId + 纯文本 自动引用回复(默认开启)。
  • allowFrom:允许私聊触发的微信 ID。

群聊/私聊触发与回复规则

groups 和 dms 都支持 * 默认项 + 精确项覆写。

群聊触发

groups[*].trigger.mode 支持:

  • at:只有被 @ 时触发
  • quote:只有引用机器人消息时触发
  • at_or_quote:@ 或引用机器人消息都触发
  • any_message:任何消息都触发

群聊默认值是 at。

群聊回复

groups[*].reply.mode 支持:

  • plain:普通回复
  • quote_source:首条回复自动引用当前入站消息
  • at_sender:首条文本回复自动 @ 发送者
  • quote_and_at:首条文本回复同时引用并 @

群聊默认值会跟随 autoQuoteReply:未配置或为 true 时默认 quote_source;显式设为 false 时默认 plain。

私聊触发与回复
  • 触发模式:any_message 或 quote
  • 回复模式:plain 或 quote_source

私聊默认触发是 any_message。私聊默认回复也会跟随 autoQuoteReply 回退到 quote_source 或 plain。

绑定到 Agent / ACP

除了 channels.synodeai 这一段插件配置,SyNodeAi 还支持配合 OpenClaw 顶层 bindings[] 使用。

绑定到普通 Agent

示例表示:ops-room@chatroom 这个群固定交给 ops agent 处理。

{
  "bindings": [
    {
      "type": "route",
      "agentId": "ops",
      "match": {
        "channel": "synodeai",
        "accountId": "work",
        "peer": { "kind": "group", "id": "ops-room@chatroom" }
      }
    }
  ],
  "channels": {
    "synodeai": {
      "accounts": {
        "work": {
          "groups": {
            "ops-room@chatroom": {
              "trigger": { "mode": "at_or_quote" },
              "reply": { "mode": "quote_and_at" }
            }
          }
        }
      }
    }
  }
}
绑定到 ACP 持久会话

示例表示:这个群固定进入 codex agent 的一个 ACP 持久会话。

{
  "bindings": [
    {
      "type": "acp",
      "agentId": "codex",
      "match": {
        "channel": "synodeai",
        "accountId": "work",
        "peer": { "kind": "group", "id": "repo-room@chatroom" }
      },
      "acp": {
        "label": "repo-room",
        "mode": "persistent",
        "cwd": "/workspace/repo-a",
        "backend": "acpx"
      }
    }
  ]
}

发送媒体与富消息

URL 策略
  • 本地文件:优先上传 S3,失败回退 mediaPublicUrl 本地反代
  • 公网 URL:先尝试原 URL 发送,失败后再尝试上传 S3,仍失败回退本地反代
富消息与消息复用

可以通过共享 message 工具走标准动作:send、reply、unsend,并在参数里附带一个 synodeai 对象来表达微信专属语义。

示例:在当前群里回复并做部分引用

{
  "action": "reply",
  "message": "收到,我接着处理",
  "synodeai": {
    "quote": { "partialText": "需要继续跟进的那一段" }
  }
}

示例:撤回一条已经发出的消息

{
  "action": "unsend",
  "to": "ops-room@chatroom",
  "messageId": "10001",
  "newMessageId": "10002",
  "createTime": "1710000002"
}

插件支持通过 channelData["synodeai"] 传入 SyNodeAi 专有消息语义,结构如下:

  • appMsg:直接发送 <appmsg> XML
  • quoteReply:发送引用回复
  • emoji:发送表情
  • nameCard:发送名片
  • miniApp:发送小程序
  • revoke:撤回指定消息
  • forward:复用已存在消息 XML 进行二次转发

如果希望让模型主动发'部分引用',SyNodeAi 通道会识别回复末尾的一行隐藏指令:

[[GEWE_QUOTE_PARTIAL:要引用的原文片段]]

插件会在发送前剥离这行指令,并自动转成 quoteReply.partialText。

依赖

npm 依赖
  • zod
peer 依赖
  • openclaw (>= 2026.1.29)
系统级工具
  • ffmpeg / ffprobe(用于视频缩略图与时长)
  • rust-silk(出站语音转 silk + 入站语音解码;支持自动下载)
网络 / 服务依赖
  • SyNodeAi API 服务
  • Webhook 回调需要公网可达(可配合 FRP)
  • 媒体对外地址(mediaPublicUrl)

配置变更后需重启 Gateway。

目录

  1. SyNodeAi OpenClaw Plugin
  2. 为什么做这个插件
  3. 架构概览
  4. 功能特性
  5. 通道能力
  6. Agent 执行能力
  7. 微信特性支持
  8. 媒体与语音能力
  9. 快速开始
  10. 1. 安装插件
  11. 2. 登录并获取 Token
  12. 3. 配置 JSON 文件
  13. 4. 配置 Webhook(内网穿透)
  14. 4.1 安装 ngrok
  15. 4.2 配置 token
  16. 4.3 启动穿透
  17. 5. 填写 webhook
  18. 6. 启动 OpenClaw
  19. 7. 验证
  20. 配置项说明
  21. 群聊/私聊触发与回复规则
  22. 群聊触发
  23. 群聊回复
  24. 私聊触发与回复
  25. 绑定到 Agent / ACP
  26. 绑定到普通 Agent
  27. 绑定到 ACP 持久会话
  28. 发送媒体与富消息
  29. URL 策略
  30. 富消息与消息复用
  31. 依赖
  32. npm 依赖
  33. peer 依赖
  34. 系统级工具
  35. 网络 / 服务依赖
  • 💰 8折买阿里云服务器限时8折了解详情
  • Magick API 一键接入全球大模型注册送1000万token查看
  • 🤖 一键搭建Deepseek满血版了解详情
  • 一键打造专属AI 智能体了解详情
极客日志微信公众号二维码

微信扫一扫,关注极客日志

微信公众号「极客日志V2」,在微信中扫描左侧二维码关注。展示文案:极客日志V2 zeeklog

更多推荐文章

查看全部
  • C++ 多态深度解析:从虚函数表到底层机制
  • PX4 无人机结合 MID360 与 FAST-LIO 实现室内自主定位与定点
  • Java 中 Double 类型精度丢失原理与示例
  • 大模型(LLM)学习全攻略:从基础数学到工程化落地
  • 基于 AI 辅助开发的在线图书借阅平台设计与实现
  • 利用大疆 SRT 数据实现高精度 AR 视频投射
  • VS Code 配置 Python 交互式环境详解
  • C++ 仅比 C 语言多两个加号,为何学习难度显著增加?
  • 双向最大匹配算法在古诗词与现代文分词中的应用效果
  • OpenClaw 全平台安装详解:Windows/macOS/Linux 及一键脚本
  • AI 辅助开发:智能生成安装程序的实践与优化
  • 近五年体内微/纳米机器人在肿瘤精准治疗中的应用:聚焦胶质母细胞瘤
  • 基于 LangChain 集成本地部署的 Llama3.1 大模型
  • OpenClaw 对接飞书机器人配置踩坑:消息无响应与 Gateway 断开排查
  • 协作机器人轴孔装配的轨迹优化与智能搜索技术
  • MCP Server 实现 Excel 表格一键生成可视化图表 HTML 报告
  • AI 办公实战指南:7 套书籍助你精准提效与职场进阶
  • 植物大战僵尸融合版:多平台安装配置与性能优化指南
  • C++ 哈希表原理与底层实现详解
  • 大模型时代:重构技术开发的生产与组织方式

相关免费在线工具

  • RSA密钥对生成器

    生成新的随机RSA私钥和公钥pem证书。 在线工具,RSA密钥对生成器在线工具,online

  • Mermaid 预览与可视化编辑

    基于 Mermaid.js 实时预览流程图、时序图等图表,支持源码编辑与即时渲染。 在线工具,Mermaid 预览与可视化编辑在线工具,online

  • 随机西班牙地址生成器

    随机生成西班牙地址(支持马德里、加泰罗尼亚、安达卢西亚、瓦伦西亚筛选),支持数量快捷选择、显示全部与下载。 在线工具,随机西班牙地址生成器在线工具,online

  • Base64 字符串编码/解码

    将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online

  • Base64 文件转换器

    将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online

  • Markdown转HTML

    将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online