Summary
Signal group messages are silently dropped because requireMention defaults to true, but Signal does not support native @mentions. The channels.signal.groups config property (which would allow setting requireMention: false per-group) is missing from the Signal channel schema, even though:
- The runtime code reads and respects it (
resolveChannelGroupRequireMention in dock-BoYjClAF.js)
- Telegram and WhatsApp channels both expose
groups in their schemas
- There is no other schema-valid way to set
requireMention: false specifically for Signal groups
Steps to Reproduce
- Configure Signal channel with group bindings
- Set
groupPolicy: "open" and valid groupAllowFrom
- Send a message in a bound Signal group
- Expected: Agent receives and responds
- Actual: Message silently dropped. No error in main logs. Only visible at
trace level as logInboundDrop with reason: "no mention"
Root Cause
In the signal message handler (subagent-registry-*.js):
const requireMention = isGroup && resolveChannelGroupRequireMention({...});
const canDetectMention = mentionRegexes.length > 0;
if (isGroup && requireMention && canDetectMention && mentionGate.shouldSkip) {
logInboundDrop({ reason: "no mention" });
return;
}
resolveChannelGroupRequireMention returns true by default (line 87 in dock-BoYjClAF.js). Since Signal has no native @mention support, every group message fails the mention gate.
Attempting config.patch with channels.signal.groups.*.requireMention: false is rejected by schema validation (Unrecognized key: "groups").
Workaround
Set empty mentionPatterns globally to make canDetectMention = false:
{
"messages": {
"groupChat": {
"mentionPatterns": []
}
}
}
This bypasses the mention gate but affects all channels/groups globally, not just Signal.
Proposed Fix
Either:
- Add
groups to the Signal channel schema (matching Telegram/WhatsApp):
groups?: Record<string, {
requireMention?: boolean;
tools?: GroupToolPolicyConfig;
toolsBySender?: GroupToolPolicyBySenderConfig;
}>;
- Or change
requireMention default to false for Signal specifically, since Signal lacks native mention support.
Environment
- OpenClaw: 2026.2.17
- signal-cli: 0.13.24
- macOS (Apple Silicon)
Summary
Signal group messages are silently dropped because
requireMentiondefaults totrue, but Signal does not support native @mentions. Thechannels.signal.groupsconfig property (which would allow settingrequireMention: falseper-group) is missing from the Signal channel schema, even though:resolveChannelGroupRequireMentionindock-BoYjClAF.js)groupsin their schemasrequireMention: falsespecifically for Signal groupsSteps to Reproduce
groupPolicy: "open"and validgroupAllowFromtracelevel aslogInboundDropwithreason: "no mention"Root Cause
In the signal message handler (
subagent-registry-*.js):resolveChannelGroupRequireMentionreturnstrueby default (line 87 indock-BoYjClAF.js). Since Signal has no native @mention support, every group message fails the mention gate.Attempting
config.patchwithchannels.signal.groups.*.requireMention: falseis rejected by schema validation (Unrecognized key: "groups").Workaround
Set empty
mentionPatternsglobally to makecanDetectMention = false:{ "messages": { "groupChat": { "mentionPatterns": [] } } }This bypasses the mention gate but affects all channels/groups globally, not just Signal.
Proposed Fix
Either:
groupsto the Signal channel schema (matching Telegram/WhatsApp):requireMentiondefault tofalsefor Signal specifically, since Signal lacks native mention support.Environment