OpenClaw 接入微信教程及常见错误解决
📌 背景
今天有个好消息:微信官方支持 OpenClaw 了!
早上看到新闻就兴冲冲地开始安装,按照官方教程操作,安装倒是成功了,但遇到了几个坑 。下午花时间看了下代码,折腾了大半天,终于搞定,把过程记录下来分享给大家。先是按照微信的提示让openclaw自己安装 不出意外失败了.

📥 官方安装步骤
前置要求
微信需要升级到最新版 8.0.69,Play 市场的版本还是 .67,需要从其他渠道更新。
安装插件 如果是其他环境 替换openclaw-cli 成openclaw就行
docker compose run -T --rm openclaw-cli plugins install @tencent-weixin/openclaw-weixin-cli@latest
登录微信
docker compose run -T --rm openclaw-cli channels login --channel openclaw-weixin
然后问题来了...
❌ 遇到的错误
错误 1:resolvePreferredOpenClawTmpDir is not a function
[plugins] openclaw-weixin failed to load from /home/node/.openclaw/extensions/openclaw-weixin/index.ts: TypeError: (0 , _pluginSdk.resolvePreferredOpenClawTmpDir) is not a function
错误 2:normalizeAccountId is not a function
Channel login failed: TypeError: (0 , _pluginSdk.normalizeAccountId) is not a function
✅ 解决方案
修复 1:messaging/process-message.ts
先用 grep 找到相关代码:
grep -r "resolvePreferredOpenClawTmpDir"
修改导入路径,从特定子模块导入相关函数。
修复 2:auth/accounts.ts 和 channel.ts
// 修改前
import { normalizeAccountId } from "openclaw/plugin-sdk";
// 修改后
import { normalizeAccountId } from "openclaw/plugin-sdk/account-id";
修复 3:messaging/send.ts
// 修改前
import { stripMarkdown } from "openclaw/plugin-sdk";
// 修改后
import { stripMarkdown } from "openclaw/plugin-sdk/bluebubbles";
🔄 完整流程
修改完成后,需要重新构建 Docker 镜像:
# 拉取最新代码 git pull # 重新构建镜像 docker build -t openclaw:local . --build-arg OPENCLAW_DOCKER_APT_PACKAGES="python3-pip wget" # 重启服务 docker compose up -d # 登录微信 docker compose run -T --rm openclaw-cli channels login --channel openclaw-weixin
这次终于成功了!绑定微信账号就可以继续了.

📊 总结
| 错误 | 解决方案 |
|---|---|
resolvePreferredOpenClawTmpDir is not a function |
从 plugin-sdk/channel-runtime 导入 |
normalizeAccountId is not a function |
从 plugin-sdk/account-id 导入 |
stripMarkdown 导入错误 |
从 plugin-sdk/bluebubbles 导入 |
💡 教训
- 插件 SDK 版本不匹配时,优先检查导入路径
- 翻源码比盲目尝试更高效
- 修复问题要一步步来,每修复一个错误可能暴露下一个
- 微信自家产品比较多 qqbot就比较不错,微信这边可能要和qclaw兼容所以支持最新版的OpenClaw就有些困难了,和腾讯万年不升级的X5引擎类似
希望这篇教程能帮到同样遇到问题的朋友!
夜雨聆风