适用于已在飞牛NAS上通过Docker运行OpenClaw的玩家,帮助你在现有环境中快速安装微信插件,实现与微信的通信。
📦 前提条件
- 飞牛NAS系统正常运行,Docker服务已启动。
- OpenClaw容器已运行(容器名/ID请通过** **
docker ps 确认)。
- 具备SSH登录飞牛NAS的权限,或能够通过飞牛NAS终端直接执行命令。
- 网络要求:OpenClaw容器需能访问互联网(通常Docker默认可上网)。不需要为OpenClaw设置公网端口映射或域名,微信插件工作仅需容器能够出网。
✅ 提示:微信消息通过微信服务器中转,插件会主动拉取消息,无需从外网直接访问OpenClaw。若后续需要Web管理界面,只需在局域网内访问** **http://<NAS IP>:18789 即可,同样不必暴露到公网。
🚀 安装步骤
1. 进入OpenClaw容器
bash
docker exec -it openclaw /bin/bash
如果容器名不是** openclaw,请先通过 docker ps 查找容器ID或名称,替换命令中的 **openclaw。
2. 安装Python3(容器可能缺失)
bash
apt update && apt install -y python3 python3-pip
3. 安装微信插件
方式一(推荐):使用一键安装命令
bash
npx -y @tencent-weixin/openclaw-weixin-cli@latest install
方式二:手动安装
bash
openclaw plugins install "@tencent-weixin/openclaw-weixin"
openclaw config set plugins.entries.openclaw-weixin.enabled true
4. 扫码登录微信
bash
openclaw channels login --channel openclaw-weixin
终端会显示二维码(ASCII字符画或URL链接)。
- 若显示URL,请在浏览器中打开该链接,会显示二维码图片。
- 使用微信“扫一扫”功能扫描二维码,并在手机上确认登录。
5. 重启网关(使插件生效)
bash
openclaw gateway restart
等待几秒,网关重启后微信插件即处于连接状态。
6. 退出容器
bash
exit
🧪 测试通信
在微信中向** 文件传输助手 或 与ClawBot关联的会话 发送任意消息(如 **help),观察是否收到回复。若收到回复,说明安装成功。
📖 微信插件官方README(核心内容摘要)
以下为插件官方文档核心内容,供参考。
WeChat
OpenClaw的微信频道插件,支持通过二维码扫描授权登录。
前置条件
需要已安装** **OpenClaw(openclaw CLI 必须可用)。
快速安装
bash
npx -y @tencent-weixin/openclaw-weixin-cli install
手动安装
如果快速安装无效,请按以下步骤手动操作:
1. 安装插件
bash
openclaw plugins install "@tencent-weixin/openclaw-weixin"
2. 启用插件
bash
openclaw config set plugins.entries.openclaw-weixin.enabled true
3. 二维码登录
bash
openclaw channels login --channel openclaw-weixin
终端会显示二维码。用手机扫描并确认授权。登录凭证会自动保存在本地。
4. 重启网关
bash
openclaw gateway restart
添加更多微信账号
bash
openclaw channels login --channel openclaw-weixin
每次二维码登录会创建一个新账号条目,支持多个微信账号同时在线。
多账号上下文隔离
默认所有频道共享同一AI对话上下文。要为每个微信账号隔离对话上下文:
bash
openclaw config set agents.mode per-channel-per-peer
这样每个“微信账号+消息发送者”组合都有自己的独立AI记忆,防止上下文混淆。
后端API协议(供开发者参考)
本插件通过HTTP JSON API与后端网关通信。如需集成自己的后端,需实现以下接口。
所有端点使用** **POST 请求,JSON请求/响应体。公共请求头:
| 头部 |
描述 |
Content-Type |
application/json |
AuthorizationType |
固定值 ilink_bot_token |
Authorization |
Bearer <token>(登录后获得) |
X-WECHAT-UIN |
Base64编码的随机uint32 |
详细数据结构见插件源码中的** src/api/types.ts 和 **src/api/api.ts。
❗ 常见问题与解决
问题1:执行** npx 命令时提示 **openclaw: command not found
原因:容器内未正确安装OpenClaw或PATH未设置。
解决:确保使用官方镜像,或重新进入容器后执行** **export PATH="$PATH:/usr/local/bin",然后重试。
问题2:安装插件时提示** **spawn python3 ENOENT
原因:容器缺少Python3。
解决:执行** **apt update && apt install -y python3 python3-pip 安装即可。
问题3:扫码登录时终端不显示二维码
原因:终端可能不支持ASCII二维码渲染。
解决:命令可能会输出一个URL(如** **https://openclaw.ai/qr/xxx),将该URL复制到浏览器打开,即可看到二维码图片。
问题4:扫码后提示“该账号已登录”或无法连接
原因:微信账号在其他设备已登录,或凭证过期。
解决:先退出原设备登录,或重新执行** **openclaw channels login --channel openclaw-weixin 重新扫码。
问题5:重启网关后插件未自动连接
原因:插件未正确启用或网关启动失败。
解决:检查插件状态** openclaw plugins list,确保 openclaw-weixin 状态为 **enabled。若未启用,手动启用并重启网关。
问题6:容器内无法执行** openclaw 命令(如 **openclaw: command not found)
原因:未进入正确的容器,或容器内没有该命令。
解决:确认容器运行的是OpenClaw镜像(如** **openclaw-zh)。如果是其他镜像,需先安装OpenClaw。
问题7:SSH隧道方式访问Web控制台时出现** **channel 3: open failed: connect failed: Connection refused
原因:OpenClaw网关未在容器内监听18789端口,或容器未运行。
解决:确保容器已启动(docker ps 查看),并执行** docker logs 容器名 查看是否有启动错误。通常删除配置中错误的 **channels 块可恢复正常。
问题8:微信插件安装后无法连接,是否需要设置外网访问?
解答:不需要。请确保OpenClaw容器可以访问互联网(例如在容器内执行** **ping www.baidu.com 测试)。如果容器无法联网,请检查NAS的防火墙或Docker网络设置。微信插件本身不要求外部网络访问OpenClaw的端口。