Appearance
Signal 群组 @mention 不工作:requireMention 无效,龙虾回复所有消息
来源:GitHub #29214
问题
在 Signal 群组中,明明配了 requireMention: true,OpenClaw 还是会回复群里的每一条消息,完全无视 @mention 规则。更麻烦的是,如果你在配置里加了 channels.signal.groups,启动时直接报错:
Invalid config: channels.signal: Unrecognized key: "groups"原因:Signal 没有原生的 @mention 信号,OpenClaw 无法像 Telegram/Discord 那样从协议层拿到"有没有被提到"的信息,所以 channels.signal.groups.*.requireMention 这条路根本走不通。
解决方案
不要用 channels.signal.groups,改用 agents.list[].groupChat.mentionPatterns 来实现群组过滤。让群友发消息时在开头加一个固定关键词(比如 @openclaw),龙虾只响应包含这个词的消息。
配置方法(推荐,按 agent 粒度控制):
json5
{
agents: {
list: [
{
id: "main",
groupChat: {
// 只响应包含 "@openclaw" 的群消息
mentionPatterns: ["@openclaw"]
}
}
]
}
}修改后重启 OpenClaw:
bash
openclaw gateway restart全局配置(适用于所有 agent):
json5
{
messages: {
groupChat: {
mentionPatterns: ["@openclaw"]
}
}
}Signal 群组控制相关字段(这些才是 Signal 支持的):
channels.signal.groupPolicy— 群消息总开关channels.signal.groupAllowFrom— 允许哪些群 ID 发消息agents.list[].groupChat.mentionPatterns— 消息过滤关键词
注意:
channels.signal.groups这个字段在 Signal 渠道中不存在,加了就报配置错误。