DAILY LESSON / 2026-06-18

飞书里 Hermes 发消息全是乱码?一条指令搞定

Hermes 接入飞书后,发的表格、代码块全是原始 Markdown 源码,看得人一脸懵。这不是 Hermes 的问题,是飞书的旧消息格式搞不定。一条指令发给 Hermes,一分钟解决。

AIAI智能体软件工具办公自动化超级个体

作者:C 哥·C哥介绍 →

你有遇到过这种情况吗?

你把 Hermes(爱马仕)接入飞书之后,让它帮你整理一份数据,结果发出来是满屏的竖线、##、**等 Markdown 符号。也就是说,飞书没有把 Markdown 正确渲染出来。

这不是 Hermes 的问题。问题出在飞书那边。飞书的旧版消息格式只认识纯文字加简单粗体,遇到表格、代码块、列表、删除线这些是不支持的。

所以,我花时间研究了 Hermes 的源代码,并找到了给它打补丁的方案。今天你直接按照我说的方法就可以改好。

只需要在飞书里打开跟 Hermes 的对话框,把下面这段话复制粘贴,原封不动发过去:

「帮我升级 Hermes 飞书消息格式到 Card 2.0。

需要修改的文件在 /usr/local/lib/hermes-agent/gateway/platforms/feishu.py(或其他 hermes 安装路径下的相同位置),先备份原文件。

改两处:

第一处:_build_outbound_payload 方法。把整个函数体替换为返回 Card 2.0 interactive 格式。schema 设为 2.0,config 里 wide_screen_mode 设为 True,body 里 direction 设为 vertical,elements 里只放一个 markdown tag,返回 msg_type 设为 interactive。

第二处:_send_raw_message 方法。在 reply_in_thread 那一行之后、if effective_reply_to 之前,插入一段逻辑:如果 msg_type 是 interactive 且 effective_reply_to 不为空,则把 effective_reply_to 设为 None。原因是飞书的 message.reply API 渲染不了 Card 2.0 的 markdown 元素,必须强制走 message.create。