这轮更新的重点是调整
openclaw_qq的默认值和默认输出策略,让 QQ 群聊体验更稳、更接近实际使用习惯。原则上不改 OpenClaw core 的既有设计;如果你更喜欢旧体验,仍可通过配置项手动恢复。
interruptOnNewMessage 默认保持 false。true 时,插件才会因为同会话新消息到达而中断上一轮回复。这样做的原因是:QQ 群聊里很多时候希望一轮任务完整走完,避免“刚说到一半就被下一条消息顶掉”。
blockStreaming=trueblockStreamingBreak=message_end这意味着:
forwardLongReplyThreshold=300当前默认策略是:
final_answer:超过 300 字时自动改为 QQ 合并转发。这样可以保留过程句,又避免长正文在群里刷成多段。
forwardNodeCharLimit=0这里的 0 不是关闭转发,而是表示:
这更符合 QQ 使用场景,因为既然已经转发了,就没必要再人为拆成多个节点。
allowBareGroupCommands=false默认情况下,群聊里单独发送 /model、/models、/newsession 这类 slash 指令不会直接触发。
当前更推荐的默认用法是:
椰子 /model椰子 /models椰子 /newsession这样可以避免群里普通讨论里夹带 /xxx 时误触发本地命令,也更符合“先唤醒,再执行管理指令”的使用习惯。
/model 的动态全量模型探测enableDynamicModelCatalog=false这项配置关闭时,本地 /model 列表不会主动去探测各 provider 的 /models 接口拉取全量目录,而是优先按本地配置展示。
这样做的目的是让默认行为更保守,也更接近 OpenClaw 原本“按现有配置/allowlist 工作”的思路;如果你确实需要插件层动态聚合所有模型目录,再手动开启即可。
这轮还补强了 QQ 消息里的上下文解析:
这部分属于 QQ 插件层的上下文提取与输出适配,不是去改 OpenClaw core 的主逻辑。
/临时 系列命令统一收口为 /会话为了让 QQ 群聊里的交互语义更直接,这轮把对外主命令统一收口成了 /会话 体系:
/会话/会话列表/会话状态/会话重命名/退出会话/会话结束同时保留旧别名兼容:
/临时、/临时列表、/临时状态、/临时重命名、/退出临时、/临时结束tmp、tmplist、tmpstatus、tmprename、exittemp、tmpend这次不是去重写 OpenClaw 的会话底层,而是在 QQ 插件层补了更贴合群聊实际使用的命令视图和切换方式。
过去的行为里,列表里只会显示命名会话槽,不包含“当前这条主线会话”。
现在进入一个全新的群聊后,直接执行:
/会话列表
默认就会看到:
1. 默认会话
如果之后再进入一个命名会话,例如:
/会话 任务二
那么再次执行 /会话列表,就会看到类似:
1. 默认会话
2. 任务二
这样就不会再出现“命名会话能看到,但最开始那条主线会话反而切不回去”的问题。
/会话 <序号> 现在支持按数字直接切换这轮还补上了数字切换能力:
/会话 1 直接切回默认会话/会话 2 切到列表里的第 2 个会话/会话 3 切到列表里的第 3 个会话也就是说:
/会话列表 先看编号/会话 <序号> 直接切换不需要每次都重新输入完整会话名,尤其在群里同时挂多个任务时会方便很多。
这轮关于“会话”的调整,仍然遵守同一个原则:
tmp slot 的持久化结构所以如果你之前已经有在用旧的 /临时 命令,老数据和旧别名都还能继续工作;只是默认展示和推荐用法变成了 /会话。
| 配置项 | 现在默认值 | 说明 |
|---|---|---|
interruptOnNewMessage |
false |
默认不因新消息打断当前任务 |
blockStreaming |
true |
保留按 assistant message 的分块发送 |
blockStreamingBreak |
message_end |
每条 assistant message 完整后再发 |
forwardLongReplyThreshold |
300 |
长 final_answer 超过 300 字自动走合并转发 |
forwardNodeCharLimit |
0 |
转发时不按长度拆节点,尽量合并成一个转发 |
allowBareGroupCommands |
false |
群聊裸 /model 默认不触发,需配合唤醒词 |
enableDynamicModelCatalog |
false |
/model 默认不主动探测 provider /models 全量目录 |
可以把默认输出策略理解成下面这条规则:
如果你更喜欢以前那种更激进的切换/拆分方式,可以手动改回去。例如:
{
"channels": {
"qq": {
"interruptOnNewMessage": true,
"allowBareGroupCommands": true,
"enableDynamicModelCatalog": true,
"blockStreamingBreak": "text_end",
"forwardLongReplyThreshold": 800,
"forwardNodeCharLimit": 1000
}
}
}
这会更接近旧体验:
/model 这类命令又可以直接触发。/model 会重新主动探测 provider /models 全量目录。这组默认值主要面向以下 QQ 场景:
这轮更新的核心不是“改 OpenClaw 的工作方式”,而是把 openclaw_qq 的默认行为调得更保守、更贴近 QQ 的实际交互习惯。
如果你需要之前的行为,配置项仍然保留,随时可以手动调回。