Skip to content
广告 · 本站推荐广告

Markdown 格式化

OpenClaw 的 Agent 默认使用 Markdown 生成回复。不同消息渠道对 Markdown 的支持程度各异,OpenClaw 会自动适配每个渠道的渲染能力。

渠道 Markdown 支持

渠道粗体斜体代码代码块链接列表表格
Web UI
Telegram
Discord
WhatsApp
iMessage

渠道特定渲染

OpenClaw 根据目标渠道自动转换 Markdown 语法:

markdown
**粗体文本***斜体文本*

`内联代码` 和代码块:

​```python
def hello():
    print("Hello!")
​```

[链接文本](https://example.com)

| 列 1 | 列 2 |
|------|------|
| A    | B    |
text
*粗体文本* 和 _斜体文本_

```内联代码``` 和代码块:

def hello(): print("Hello!")


链接文本: https://example.com

列 1: A
列 2: B
html
<b>粗体文本</b> 和 <i>斜体文本</i>

<code>内联代码</code> 和代码块:

<pre><code class="language-python">
def hello():
    print("Hello!")
</code></pre>

<a href="https://example.com">链接文本</a>

代码块处理

Agent 生成的代码块在不同渠道有特定处理:

Web UI

  • 完整语法高亮(Syntax Highlighting)
  • 支持代码复制按钮
  • 支持代码折叠

Telegram

  • 使用 <pre><code> 标签
  • 支持语言标识(language tag)
  • 等宽字体显示

WhatsApp

  • 使用三个反引号包裹
  • 无语法高亮
  • 等宽字体显示

不支持代码块的渠道

自动转换为缩进格式或纯文本:

// 原始
​```python
print("hello")
​```

// 转换后
    print("hello")

链接格式

markdown
# 原始 Markdown 链接
[OpenClaw 文档](https://docs.openclaw.ai)
渠道输出格式
Web UI可点击超链接
Telegram<a href="...">文本</a>
Discord[文本](URL) 原生支持
WhatsApp文本: URL(分离显示)
iMessage自动链接预览

图片嵌入

Agent 回复中包含图片时的处理方式:

markdown
# Agent 回复中的图片
![图片描述](https://example.com/image.png)

渠道处理:

  • Web UI — 内联显示,支持放大预览
  • Telegram — 作为图片消息单独发送
  • WhatsApp — 作为媒体消息发送
  • Discord — 嵌入显示或作为附件

图片优化

OpenClaw 会根据渠道限制自动调整图片大小。大图片在发送前会被压缩以符合平台限制。

长消息分割

当回复超出渠道的消息长度限制时,自动分割:

yaml
messageSplitting:
  telegram: 4096       # Telegram 限制
  discord: 2000        # Discord 限制
  whatsapp: 65536      # WhatsApp 限制

分割规则:

  1. 优先在段落边界分割\n\n
  2. 其次在换行处分割\n
  3. 最后在句号处分割.
  4. 强制分割 — 如无合适断点,在字符限制处硬分割

格式连续性

分割后的多条消息会尽量保持格式连续性。例如,代码块会在分割处正确关闭和重新打开。

特殊字符转义

某些渠道需要对特殊字符进行转义:

typescript
// Telegram HTML 模式下的转义
const escapeMap = {
  '&': '&amp;',
  '<': '&lt;',
  '>': '&gt;',
}

OpenClaw 自动处理转义,Agent 无需关心渠道特定的转义规则。

格式化配置

yaml
formatting:
  markdown: true               # 启用 Markdown 格式化
  codeHighlight: true          # 代码语法高亮(仅 Web UI)
  autoLinkDetection: true      # 自动检测 URL 并转为链接
  emojiSupport: true           # 支持 Emoji 表情

下一步

基于MIT协议开源 | 内容翻译自 官方文档,同步更新