为 OpenClaw 加入 Matrix Channel - 选择孤独真实
不可否认,OpenClaw 在一定程度上被过度炒作了。不过,从 AI Agent 开发的角度来看,它确实引入了一种有意思的思路:将 即时通讯平台(如 WhatsApp、Telegram、Matrix 等)作为与 AI Agent 交互的主要入口。 这种设计显著降低了部署和远程使用的复杂度。用户只需要一个 IM 客户端即可与 AI 交互,而无需处理端口映射、反向代理或复杂的网络配置。 许多技术用户之所以对 OpenClaw 感兴趣,正是因为它强调 可自托管。尽管由于硬件成本的限制,完全在本地自托管大模型对大多数人来说仍不现实,但自托管 OpenClaw 的 Matrix Channel却是一个非常可行的方案。 通过这种方式,用户既能利用 OpenClaw 的能力,又能在一个私有的 Matrix Channel 中进行通信。自托管 Matrix Server 意味着你可以完全掌控自己的数据,在不依赖第三方平台的前提下,以安全、私密的方式与 AI Agent 交互。 我选择了 tuwunel 作为自托管的 Matrix Server。它是 conduwuit 的官方继任项目。 完成 Server部署后,我创建了一个名为 在继续之前需要说明:OpenClaw 以及 OpenClaw 的 Matrix 插件目前仍处于早期开发阶段。在配置过程中你可能会遇到一些问题。以下步骤基于我自己的实践环境整理,希望能帮助你顺利完成 Matrix Channel的搭建。 在安装插件之前,建议先观察 OpenClaw 的日志输出: 然后安装 Matrix 插件: 安装完成后,你可能会看到类似下面的错误: 这通常是因为插件同时存在于以下两个目录中: 如果是这种情况,删除其中一个重复目录即可,例如: 如果日志中出现如下错误: 说明缺少相关依赖。可以通过全局安装依赖来解决: 编辑 配置完成后,你应该可以通过 Matrix 客户端与 OpenClaw 进行交互:
搭建 Matrix 聊天 Server
openclaw 的 Matrix 用户,并通过以下请求获取访问令牌(access token):curl -XPOST \
-H "Content-Type: application/json" \
-d '{"type":"m.login.password", "user":"@openclaw:your_matrix_home_domain", "password":"$your_matrix_password"}' \
"https://$your_matrix_home_domain/_matrix/client/r0/login"
{"user_id":"@openclaw:your_matrix_home_domain","access_token":"$your_matrix_access_token","home_server":"$your_matrix_home_domain","device_id":"xyz"}配置 OpenClaw Channel
参考 https://docs.openclaw.ai/channels/matrix
安装 Matrix Channel插件
tail -f /tmp/openclaw/openclaw-2026-xx-xx.logopenclaw plugins install @openclaw/matrix插件安装问题一:重复的插件 ID
Config warnings:
- plugins.entries.matrix: plugin matrix: duplicate plugin id detected; later plugin may be overridden
(/home/mark/.nvm/versions/node/v24.13.0/lib/node_modules/openclaw/extensions/matrix/index.ts)~/.nvm/versions/node/v24.13.0/lib/node_modules/openclaw/extensions/matrix~/.openclaw/extensions/matrixsudo rm -rf ~/.nvm/versions/node/v$some_version/lib/node_modules/openclaw/extensions/matrix插件安装问题二:缺少依赖
[plugins] matrix failed to load from /home/mark/.openclaw/extensions/matrix/index.ts:
Error: Cannot find module '@vector-im/matrix-bot-sdk'npm install -g vector-im/matrix-bot-sdk
npm install -g markdown-it
npm install -g music-metadata
npm install -g zod配置 OpenClaw
~/.openclaw/openclaw.json,加入以下配置:"channels": {
"matrix": {
"accessToken": "$your_matrix_access_token",
"dm": {
"enabled": true,
"policy": "open"
},
"autoJoin": "always",
"groupPolicy": "open",
"homeserver": "https://$your_matrix_home_domain",
"deviceName": "OpenClaw",
"enabled": true,
"encryption": true
}
}注意:这里的
open 策略意味着你的 Matrix homeserver 上的任何用户都可以向 OpenClaw 机器人发送消息。该配置仅适用于测试环境。
在生产环境中,建议限制访问策略,并考虑关闭 Matrix 的 federation 功能。测试 Matrix 聊天 Channel
