Files

1.3 KiB

飞书 Markdown 格式说明

背景

Hermes 的飞书网关(gateway/platforms/feishu.py)通过 _build_outbound_payload 发送消息。该方法会检查内容中的 Markdown 特征,并据此决定消息类型:

  • 内容匹配 _MARKDOWN_HINT_RE(加粗、列表、代码、链接等)时,使用包含 md 元素的飞书 post 类型发送,可以正常渲染。
  • 内容匹配 _MARKDOWN_TABLE_RE(Markdown 表头和分隔行)时,整条消息会被强制转换为 text 类型,即纯文本,不再渲染 Markdown。

原因是 _build_markdown_post_payload 会把内容包装为 {"tag": "md", "text": "..."} 元素,而飞书的 md 元素不支持表格,也没有把 Markdown 表格转换为飞书原生表格的逻辑。

飞书输出规则

  • 通过飞书发送的消息不得使用 Markdown 表格;消息中只要出现一个表格,整条消息就会退化为纯文本。
  • 需要表达结构化信息时,优先使用分点列表、带标题的分节或行内格式。
  • 加粗(**加粗**)、行内代码(`代码`)、无序列表(- 项目)、有序列表(1. 项目)和链接均可正常使用。
  • 围栏式代码块可以使用,但代码块后的尾随内容可能存在渲染边界问题。