Hermes微信接入飞书消息平台TTSOpenClawAI Agent

消息平台接入实战——让Hermes出现在你的每个屏幕


本文是 AI Agent 系列科普的第五篇。在前面的文章里,我们已经把 Hermes(爱马仕)/ OpenClaw(小龙虾)这一类”会成长的 AI”装进了电脑,让它在终端里帮你干活。但说实话,终端黑框框对大多数人来说门槛太高了——你想让家里老人、公司同事、或者躺在床上的自己,都能随手用上这个 AI 助手。怎么办?答案很简单:让它出现在你已经习惯使用的每一个聊天软件里。


开篇:为什么要多平台接入?

想象一个画面:早上起床,你在微信里跟 AI 说”帮我总结一下昨晚群里讨论的方案要点”;通勤路上,用飞书让 AI”把这份周报润色一下并发到部门群”;午休时,用企业微信让 AI”查一下这个客户的历史沟通记录”;开车时,AI 用语音把今天的待办念给你听。

这就是多平台接入的意义——AI 不再是被锁在命令行里的”程序员玩具”,而是真正融入你日常沟通习惯的数字伙伴。消息平台是用户已经每天打开十几次的地方,把 AI 放到这里,使用门槛瞬间归零。

对团队来说更是如此:一个群里接一只 AI,全家人、全公司都能共用一只”虾”,各自有各自的记忆上下文,又互不干扰。本篇就把微信、飞书、企业微信、钉钉、语音这几条主流接入路径,一次性讲透。所有命令均可直接复制,每个步骤都像截图一样描述清楚。


第一节:微信接入——官方插件法(从安装到扫码全流程)

微信是国内用户量最大的平台,自然也是接入需求最强烈的。好消息是,官方已经推出了接入插件,整套流程”有手就行”。

前置条件:你得先有一只”虾”

微信插件本身只是个”连接器”,它的作用是把微信和你的 AI 桥接起来。所以第一步,你得先在电脑或服务器上把 Hermes / OpenClaw 装好并跑起来。

⚠️ 版本红线(最容易踩的坑):千万别安装过新的版本!官方插件对版本有严格兼容性要求,安装了不兼容的版本会导致插件加载失败。一定要按教程锁定指定版本,不要随便 upgrade 到最新。如果不确定,就严格按照安装命令里写明的版本号来。

一键安装插件(推荐)

在已经装好 AI 的那台电脑上,打开终端:

  • Windows:按 Win + R,输入 cmd 回车;或者搜索 PowerShell 以管理员身份运行。
  • Mac:直接在”启动台”搜索”终端”打开。

然后执行这行命令安装微信接入插件:

npx -y @tencent-weixin/openclaw-weixin-cli@latest install

正常情况下,终端会显示一个连接码 / 二维码。掏出手机,打开微信,依次点击 我 → 设置 → 插件,你会看到微信里出现的”ClawBot”插件入口(你也可以在插件详情页看到官方给的接入指引)。用手机扫码,同意连接,终端显示”与微信连接成功”,就搞定了。

整个过程通常一分钟以内。完成后,你就可以在微信里直接和 AI 对话、发图片让它分析、甚至让它给你回传图片。

手动安装(一键命令跑不通时备用)

如果一键命令因为网络限流等原因失败(官方插件仓库太火爆,安装时可能被限流,重试几次或换个时间段就好),也可以手动分四步走:

# 1. 安装插件
openclaw plugins install "@tencent-weixin/openclaw-weixin"

# 2. 启用插件
openclaw config set plugins.entries.openclaw-weixin.enabled true

# 3. 扫码登录(终端会弹出二维码,用手机扫码并确认授权,凭证自动保存到本地)
openclaw channels login --channel openclaw-weixin

# 4. 重启网关,让插件生效
openclaw gateway restart

多人共用一只虾

想让家里好几个微信号、或者公司多个同事都能跟这只 AI 聊天?很简单——每多一个人,就再执行一次扫码登录命令

openclaw channels login --channel openclaw-weixin

每次扫码都会创建一个新的账号,支持多个微信号同时在线。配合”多账号上下文隔离”功能,可以让每个微信号的对话记忆互不干扰:A 问的问题,B 看不到上下文。这就是”全家共养一只虾”的正确姿势。


第二节:微信接入——Termux 手机方案

如果你的主力设备是一部 Android 手机,没有电脑常开,也能用 Termux 把 AI 直接跑在手机上。这个方案适合学生党、极客玩家,或者想让闲置旧手机”变废为宝”的人。

注意:手机硬件性能有限,建议用 Pixel 6/7/8、OnePlus 9/10/11 这类较强设备,体验才流畅。

一键安装器

Hermes 官方提供了对 Termux 友好的安装路径,在 Termux 里执行:

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash

安装器会自动完成:用 pkg 装系统包、用 python -m venv 建虚拟环境、装好经验证的 Termux 套件、把 hermes 命令链接进 PATH,并跳过未经测试的浏览器/WhatsApp 启动流程。

手动安装(排查问题时用)

如果一键脚本卡住,可以手动来。先更新系统并安装依赖:

pkg update
pkg install -y git python clang rust make pkg-config libffi openssl nodejs ripgrep ffmpeg

为什么需要这些?python 是运行时,git 用来克隆代码,clang/rust/make/pkg-config/libffi/openssl 是在 Android 上编译部分 Python 依赖必备的构建工具链,nodejs 用于一些实验性功能,ripgrep 负责快速文件搜索,ffmpeg 用于媒体和 TTS 转换。

接着克隆项目、建虚拟环境、安装经验证套件:

git clone --recurse-submodules https://github.com/NousResearch/hermes-agent.git
cd hermes-agent

python -m venv venv
source venv/bin/activate
# ⚠️ 这一行很关键,Rust/maturin 类包(如 jiter)需要它
export ANDROID_API_LEVEL="$(getprop ro.build.version.sdk)"
python -m pip install --upgrade pip setuptools wheel

# 安装经验证的 Termux 套件
python -m pip install -e '.[termux]' -c constraints-termux.txt

# 把 hermes 命令加入 PATH
ln -sf "$PWD/venv/bin/hermes" "$PREFIX/bin/hermes"

验证并启动:

hermes version
hermes doctor   # 体检,会提示是否缺 ripgrep/node
hermes          # 启动进入交互

手机端的已知限制

老实说,Termux 方案有边界:Docker 后端不可用(所以基于容器的终端隔离跑不了);本地语音转录(依赖 faster-whisper → ctranslate2,而 ctranslate2 没发 Android wheel)在验证路径里不可用;浏览器自动化被安装器有意跳过。也就是说,手机上能稳定跑的是核心 CLI、cron 定时、PTY 后台、MCP 和 Honcho 记忆,但 .[all] 全量套件不支持 Android。这不影响它作为手机端智能助手中枢正常工作,只是推荐范围比桌面/服务器版更窄。

开机自启

想让手机重启后 AI 自动上线?编辑启动脚本:

nano ~/.termux/boot/start_hermes.sh

填入:

#!/data/data/com.termux/files/usr/bin/sh
cd /data/data/com.termux/files/home/hermes-agent
source venv/bin/activate
nohup python main.py > /data/data/com.termux/files/home/hermes.log 2>&1 &

赋予执行权限 chmod +x ~/.termux/boot/start_hermes.sh 即可(需配合 Termux:Boot 应用)。


第三节:飞书接入——长连接免公网方案(从创建应用到收发消息)

飞书是企业协作的高频阵地,而且飞书接入有一个对个人开发者极其友好的特性:长连接模式,不需要公网服务器、不需要域名、不需要内网穿透。这是它比微信/企业微信门槛低得多的地方。

目前飞书接入有三种插件可选:(a) 飞书官方插件——以你的身份操作文档/日历/任务;(b) OpenClaw 内置飞书插件(@openclaw/feishu,OpenClaw ≥ 2026.2 已内置);(c) 早期社区插件(已停更,建议迁移)。新手直接用内置插件方案即可,预计 15–20 分钟。

第一步:创建飞书应用(机器人)

打开飞书开放平台,用飞书账号登录 → 点击创建企业自建应用 → 填写应用名称(如”我的 AI 助手”)和描述 → 选个图标(之后可改)。

第二步:启用机器人能力

进入刚创建的应用 → 左侧菜单找到应用能力 → 机器人 → 开启机器人能力 → 给机器人起个名字。

第三步:配置权限(一键批量导入)

左侧菜单进入权限管理 → 批量导入,粘贴下面这段 JSON,一次导入所有需要的权限:

{
  "scopes": {
    "tenant": [
      "im:chat", "im:message", "im:message:send_as_bot",
      "im:message.group_at_msg:readonly", "im:message.group_msg",
      "im:message.p2p_msg:readonly", "im:message:readonly",
      "im:resource", "im:chat.members:bot_access",
      "im:chat.access_event.bot_p2p_chat:read",
      "docs:document.content:read", "sheets:spreadsheet",
      "wiki:wiki:readonly", "cardkit:card:write",
      "contact:user.employee_id:readonly"
    ],
    "user": [
      "im:chat.access_event.bot_p2p_chat:read"
    ]
  }
}

第四步:配置事件订阅(关键!)

⚠️ 这一步的顺序非常重要:必须在 AI 网关启动之后再做,否则保存会失败。所以先跳到第五、六、七步把网关跑起来,再回来补这一步

  • 左侧菜单进入事件与回调 → 事件配置
  • 请求方式选择:使用长连接接收事件(这就是免公网的关键!)。
  • 添加事件:搜索 im.message.receive_v1(接收消息),勾选添加。

第五步:记下凭证

在应用的凭证与基础信息页面,复制两个东西:

  • App ID(格式如 cli_xxxxxxxxx
  • App Secret

❗ App Secret 很重要,妥善保管,不要分享。

第六步:发布应用

左侧菜单版本管理与发布 → 创建版本 → 填写版本说明 → 提交。企业内部应用通常自动通过审批,几秒到几分钟搞定。

第七步:在 AI 中配置飞书

OpenClaw ≥ 2026.2 已内置飞书插件,不需要额外安装,直接配置:

# 1. 添加飞书渠道(交互式,跟着提示走)
openclaw channels add
# 选择 Feishu → 粘贴 App ID → 粘贴 App Secret

# 2. 重启网关
openclaw gateway restart

# 3. 查看日志,确认连接成功
openclaw logs --follow

第八步:发消息测试

在飞书里搜索你的机器人名字,打开对话,发一条”你好”。如果机器人回复了配对码,在终端运行:

openclaw pairing approve feishu <配对>

授权后再发一条消息,收到正常回复 = 配置完成 🎉

记得回来补第四步:如果你先跳过了事件订阅,现在网关已启动,回到飞书开放平台把第四步做完,保存后重启网关 openclaw gateway restart

第九步(可选):开机自启

openclaw gateway install

这样电脑重启后机器人也会自动上线。


第四节:企业微信与钉钉接入要点

企业微信和钉钉的接入比微信、飞书要重一些,因为它们要求公网回调,需要你有固定公网 IP 或做内网穿透。

企业微信接入要点

企业微信接入的核心是拿到三组凭证 + 配置可信 IP + 放行端口。流程如下:

  1. 创建自建应用:用管理员账号登录企业微信管理后台 →「应用与小程序」→「自建」→「创建应用」。填好应用名称、可见范围(测试阶段建议只开放给管理员)。

  2. 获取三组核心凭证(切勿泄露):AgentId(应用详情页直接显示)、Secret(点”获取”复制,仅管理员可见)、CorpId(「我的企业」→「企业信息」最底部)。

  3. 配置企业可信 IP(绝大多数人对接失败就栽在这里):在应用详情页「开发者接口」→「企业可信 IP」,把你的服务器公网 IP 加进去。否则请求会被企业微信直接拦截。

  4. 预留消息接收配置:在「功能」→「接收消息」→「设置 API 接收」,记下页面上的 TokenEncodingAESKey(Token 自定义 3–32 位随机字母数字,EncodingAESKey 点”随机获取”),先别填 URL。

  5. 在 AI 配置文件里添加企业微信通道(以 OpenClaw 为例,编辑 ~/.openclaw/config.json):

{
  "channels": {
    "wechat_work": {
      "enabled": true,
      "corp_id": "你的企业ID(CorpId)",
      "agent_id": "你的自建应用AgentId",
      "secret": "你的自建应用Secret",
      "token": "你自定义的Token,与企业微信后台完全一致",
      "encoding_aes_key": "你随机生成的EncodingAESKey,与企业微信后台完全一致",
      "webhook_url": "http://你的服务器公网IP:18789/wechat_work/webhook"
    }
  }
}
  1. 重启网关并放行端口
openclaw gateway restart
openclaw gateway status

⚠️ 必须在云服务器安全组/防火墙里放行 TCP 18789 端口,授权对象设为 0.0.0.0/0,用 telnet 测试公网连通性。

  1. 回到企业微信后台填 URL 完成回调校验:URL 填 http://你的服务器公网IP:18789/wechat_work/webhook,填好 Token 和 EncodingAESKey,点”保存”。提示”保存成功”即对接完成。

对接成功后,单聊、群聊(@机器人)、文档处理、定时推送、智能客服等能力都能用。

钉钉接入要点

钉钉的接入思路与企业微信类似(创建应用、配置回调、可信域名/IP),钉钉生态里的国产方案(如阿里 CoPaw)深度集成了钉钉和阿里云服务,对钉钉重度用户来说开箱即用程度更高。关键点同样是:公网回调地址、Token/签名校验、应用可见范围这三件事必须对齐。


第五节:语音能力——让 AI 开口说话(TTS 配置与音色选择)

当 AI 有了声音,心理上你会突然感觉”它活了”。尤其是开车、做家务、带娃等不方便看屏幕的场景,AI 能用声音把待办、新闻、提醒念给你听,这种交互才真正智能。

一句话安装语音 Skill

得益于 Skill 生态,装语音能力非常简单。如果你的 AI 能读取网页,直接把下面这句话发给它:

帮我装这个 Skill:https://github.com/NoizAI/skills

或手动安装:

# 查看仓库可安装的技能
npx skills add NoizAI/skills --list --full-depth
# 安装 TTS 技能
npx skills add NoizAI/skills --full-depth --skill tts -y

两种模式:本地 Kokoro vs 云端 Noiz

  • 本地 Kokoro:纯本地运行,需要下载一个模型,优点是数据不出本地、隐私好,缺点是没法克隆音色
  • 云端 Noiz:注册一个 Noiz API Key(有大额免费额度),配置好后即可使用。优点是支持高质量语音克隆和情感化 TTS

音色怎么选?

两条路:① 去 Noiz 官方音色库里挑一个你喜欢的预置音色;② 克隆任意音色——丢给它一段参考音频(比如一段你喜欢的人声、甚至名人语音),它会自动克隆。克隆成功后,对它说一句”记住,你刚刚克隆的这个音色就是你的音色了,以后发语音就用它”,它就会固定下来。

多 Agent 场景下,这个能力特别香:让做运营、做客服、写代码的几只 AI 各用不同声线回复,听声音就知道是谁在说话。还有进阶玩法——用目标人物的声音对话(自动在线搜其语音、提取干净样本、生成回复)、视频翻译配音(把视频语音翻译成另一种语言并替换音轨)等。

飞书发语音的正确姿势(踩坑提醒)

⚠️ 如果你的 AI 接了飞书却发不出语音条,多半是格式没对。飞书语音条的正确发送方式是:

  • 上传文件:file_type=opus不是 mp3!),需要 receive_id_type=chat_idreceive_id
  • 发送消息:msg_type=audioreceive_id_type=chat_idcontent 里包含 file_keyduration

把这段说明直接发给你的 AI 让它”学习”,再试一次通常就好了。


第六节:多平台同时在线的注意事项

当你把微信、飞书、企业微信、钉钉全接上之后,有几个关键点要注意:

  1. 飞书插件互斥:飞书官方插件和内置插件只能启用一个。两个都装会出现 duplicate plugin id 报错导致飞书功能不可用。要切换必须先卸载/禁用另一个。

  2. 每个渠道独立的 DM 策略:每个聊天渠道(微信、飞书、Telegram 等)都要单独设置”谁能跟我的 AI 说话”的策略。建议默认用 pairing(陌生人发消息会收到配对码,你批准了才能对话),永远不要把策略设成 open,否则任何人都能指挥你的 AI 读取你的文件。

  3. 多账号上下文隔离:多个微信号/多个用户共用一只虾时,开启上下文隔离,让每个人的对话记忆互不影响,避免隐私串味。

  4. 群聊要设 requireMention:群里必须 @ AI 才回复,别让它”自来熟”对每条消息都插嘴;同时设群白名单,只允许它在指定群里活动。

  5. Token 成本与模型分配:多平台在线意味着调用量翻倍。建议给不同渠道配不同档位的模型(个人微信用便宜模型,重要任务用强模型),并通过 Web UI 的用量分析页面监控成本。

  6. 保持服务常驻:多平台在线的前提是网关 7×24 不挂。生产环境推荐云服务器 + openclaw gateway install 开机自启,而不是靠家用电脑常开。


避坑指南:版本、事件订阅、权限配置清单

把社区里反复出现的高频坑整理成三张清单,照着对一遍能省下大量调试时间。

🧱 版本兼容性清单

  • 微信插件:不要安装不兼容的版本!官方插件对 OpenClaw 版本有严格要求,装新了会插件加载失败,必须按教程锁版本。回滚指引见官方文档 clawfather.cn/install/updating
  • 飞书插件:OpenClaw ≥ 2026.2 才内置飞书插件,老版本需要 openclaw plugins install,别在新版上重复安装。
  • 安装工具 bug:OpenClaw 3.x 上官方安装工具 feishu-plugin-onboard 有版本检查 bug,会误报版本过低。绕过方法:直接 openclaw plugins install @larksuiteoapi/feishu-openclaw-plugin
  • Termux 装包.[all] 在 Android 上会报 No solution found,改用 .[termux] + constraints-termux.txt;装包前务必 export ANDROID_API_LEVEL

📡 事件订阅 / 回调踩坑清单

  • 飞书事件订阅顺序:必须先启动网关再配置事件订阅,否则保存失败。im.message.receive_v1 别忘勾选。
  • 企业微信回调校验失败 Top3:① 18789 端口未放行(公网访问不了);② webhook_url 的 IP/端口/路径填错;③ 企业可信 IP 没配(请求被拦截)。
  • 能收消息但不回复:大模型 API Key 错或额度用尽(跑 openclaw llm test 验证连通性)、配置 JSON 格式错误(用在线校验工具检查括号逗号)、应用可见范围没包含发消息的用户。
  • 重启后配置失效:配置文件没正确保存,或用了多 profile 配置却没加载默认 profile。重启后跑 openclaw config list 确认。

🔑 权限配置清单

  • 企业微信三凭证CorpId + AgentId + Secret,缺一不可,且 tokenencoding_aes_key 必须和后台逐字符一致
  • 飞书权限:消息收发类(im:message 系列)、文档/表格读写、卡片写入等,用 JSON 批量导入最省事。
  • 端口放行:企业微信需放行 18789;飞书长连接模式不需要放行任何端口(这是它最大的优势)。
  • 可信 IP/域名:企业微信必须在后台把服务器公网 IP 加进企业可信 IP 列表,否则一切白搭。
  • 每个渠道的 DM 策略:全部设 pairing,绝不设 open

写在最后

从只能开终端聊天,到现在微信、飞书、企业微信、钉钉、语音全平台覆盖,AI Agent 只用了几个月就完成了进化。把 AI 放到你每天已经打开十几次的聊天软件里,使用门槛才会真正归零,它也才会从”程序员玩具”变成全家人、全公司都爱用的数字伙伴。

接入只是第一步,但一旦接上,请立刻回头做安全加固——多平台在线意味着暴露面成倍增加。下一篇《安全防护与进阶玩法》我们就来聊聊:225 万台实例裸奔的危机、五大安全红线,以及怎么让你的 AI 既好用又不”裸奔”。

延伸阅读

💬 评论