首页 教程 分类 Skills下载 关于
ZH EN JA KO
基础配置

OpenClaw群聊行为规则配置详解

· 13 分钟

前言

在私聊场景中,AI 助手对每条消息都进行回复是合理的。但在群聊中,如果对每条消息都做出响应,不仅会造成频道刷屏,还会产生大量不必要的 API 调用。OpenClaw 提供了精细的群聊行为规则配置,让你控制 AI 在什么条件下回复、如何回复、回复哪些人。

群聊规则概览

OpenClaw 的群聊规则配置位于 openclaw.jsongroupRules 段:

{
  "groupRules": {
    "triggerMode": "mention",
    "mentionName": ["小智", "AI", "bot"],
    "commandPrefix": "/",
    "replyToBot": true,
    "ignoreOtherBots": true,
    "cooldown": 0,
    "maxResponseLength": 500,
    "threadMode": "auto"
  }
}

触发模式详解

triggerMode 是群聊行为的核心配置,决定 AI 在什么条件下处理消息。

mention 模式(默认)

{
  "groupRules": {
    "triggerMode": "mention"
  }
}

仅当消息中 @提及了机器人时才会响应。这是最常用的模式,适合大多数群聊场景。各频道的 @提及机制:

频道 提及方式
Telegram @botusername
Discord @Bot名称<@botid>
Slack @Bot名称
WhatsApp @手机号
Matrix @bot:server

keyword 模式

{
  "groupRules": {
    "triggerMode": "keyword",
    "mentionName": ["小智", "AI助手", "openclaw"]
  }
}

当消息中包含 mentionName 列表中的任一关键词时触发回复。关键词匹配不区分大小写。这个模式适合在不方便使用 @提及的平台上使用。

command 模式

{
  "groupRules": {
    "triggerMode": "command",
    "commandPrefix": "/"
  }
}

仅处理以指定前缀开头的消息。例如用户发送 /ask 今天天气怎么样,OpenClaw 会提取前缀后的内容作为提问。

always 模式

{
  "groupRules": {
    "triggerMode": "always"
  }
}

对群聊中的每条消息都进行回复。通常仅在小型私密群组中使用。

mixed 模式

{
  "groupRules": {
    "triggerMode": "mixed",
    "mentionName": ["小智"],
    "commandPrefix": "/"
  }
}

同时支持 @提及、关键词和指令前缀三种触发方式,满足任一条件即响应。

指令前缀配置

除了用于触发 AI 回复,指令前缀还可以用来执行特定命令:

{
  "groupRules": {
    "commandPrefix": "/",
    "commands": {
      "help": "显示帮助信息",
      "model": "切换当前使用的模型",
      "clear": "清除当前会话历史",
      "status": "显示系统状态"
    }
  }
}

用户在群聊中发送 /help 时,OpenClaw 会返回帮助信息而非交给 AI 模型处理。发送 /ask 你的问题 或者不匹配任何已知命令的前缀消息,则交给 AI 处理。

回复行为配置

是否回复引用消息

{
  "groupRules": {
    "replyToBot": true,
    "replyChainDepth": 3
  }
}

replyToBottrue 时,用户通过"回复"功能回复 AI 之前的消息时,即使没有 @提及,AI 也会响应。replyChainDepth 控制回复链的最大追溯深度——如果用户回复的是另一个用户回复 AI 的消息,是否仍然触发。

忽略其他机器人

{
  "groupRules": {
    "ignoreOtherBots": true
  }
}

避免与群里的其他机器人产生"对话循环"。启用后,OpenClaw 会忽略来自其他机器人账号的消息。

冷却时间

{
  "groupRules": {
    "cooldown": 5
  }
}

两次回复之间的最小间隔(秒)。在高活跃群聊中,设置冷却时间可以避免 AI 回复过于密集。设为 0 则无冷却限制。

响应长度限制

{
  "groupRules": {
    "maxResponseLength": 500
  }
}

群聊中 AI 回复的最大字符数。超出部分会被截断并附加"查看完整回复请私聊"的提示。这个限制仅对群聊生效,私聊不受影响。

话题模式

在支持话题/线程的平台(如 Slack、Discord、Telegram 超级群组)中,OpenClaw 可以利用话题功能组织对话:

{
  "groupRules": {
    "threadMode": "auto",
    "autoCreateThread": true,
    "threadTitle": "AI 对话"
  }
}
threadMode 行为
"auto" 如果用户在话题中@AI,则在话题内回复;否则在主频道回复
"always" 始终在话题中回复,自动创建话题
"never" 始终在主频道回复,不使用话题功能

话题模式的好处是将 AI 对话集中在独立话题中,避免干扰群组的正常讨论。

按频道覆盖规则

不同的群组可能需要不同的规则。OpenClaw 支持按频道类型或具体群组 ID 覆盖全局群聊规则:

{
  "groupRules": {
    "triggerMode": "mention",
    "channelOverrides": {
      "telegram": {
        "triggerMode": "mixed",
        "mentionName": ["小智"]
      },
      "discord": {
        "triggerMode": "command",
        "commandPrefix": "!"
      }
    },
    "groupOverrides": {
      "-100123456789": {
        "triggerMode": "always",
        "maxResponseLength": 1000
      }
    }
  }
}

优先级顺序:groupOverrides(具体群组)> channelOverrides(频道类型)> 全局 groupRules

群聊上下文处理

群聊中的上下文处理与私聊有所不同。OpenClaw 支持两种群聊上下文策略:

{
  "groupRules": {
    "contextMode": "mention-thread",
    "includeOtherUsers": false
  }
}
contextMode 行为
"full" 将群聊中所有消息(包括其他用户的)纳入上下文
"mention-thread" 仅将与 AI 相关的消息链纳入上下文
"isolated" 每次@提及都作为独立对话,不保留历史

includeOtherUsers 控制是否将其他用户(非提问者)的消息也纳入上下文。在"团队讨论"场景中开启此选项可以让 AI 理解完整的讨论背景。

实战配置示例

技术支持群

{
  "groupRules": {
    "triggerMode": "mixed",
    "mentionName": ["小智"],
    "commandPrefix": "/ask",
    "replyToBot": true,
    "cooldown": 2,
    "maxResponseLength": 800,
    "threadMode": "always",
    "contextMode": "mention-thread"
  }
}

朋友闲聊群

{
  "groupRules": {
    "triggerMode": "keyword",
    "mentionName": ["小智", "AI"],
    "cooldown": 10,
    "maxResponseLength": 300,
    "contextMode": "isolated"
  }
}

工作协作群

{
  "groupRules": {
    "triggerMode": "command",
    "commandPrefix": "/",
    "threadMode": "always",
    "contextMode": "full",
    "includeOtherUsers": true,
    "maxResponseLength": 1500
  }
}

调试群聊规则

如果群聊中 AI 没有按预期响应,可以启用调试日志:

openclaw gateway --log-level debug

在日志中搜索 group-rules 相关条目,可以看到每条消息的触发判断过程:

[DEBUG] group-rules: 消息来自 telegram 群组 -100123456789
[DEBUG] group-rules: 触发模式=mention, 检测到@提及=false, 是否回复链=false
[DEBUG] group-rules: 判定结果: 跳过

总结

群聊行为规则是 OpenClaw 多频道管理中最需要精细调优的部分。核心是选择合适的触发模式——大多数场景下 mention 模式是最佳起点,再根据实际群组的活跃度和用途逐步调整冷却时间、响应长度和上下文策略。记得利用 channelOverridesgroupOverrides 为不同群组定制规则,避免一刀切的配置影响用户体验。

OpenClaw 是开源免费的个人AI助手,支持 WhatsApp、Telegram、Discord 等多平台接入