问题描述
OpenClaw UI 的 WebSocket 连接频繁触发 reconnect,导致正在进行的 AI 会话被 terminated。
环境
- OpenClaw 版本: 2026.3.2 (85377a2)
- 运行环境: WSL2 on Windows 11
- Node.js: v22.22.1
- 访问方式: OpenClaw UI (webchat) via localhost
复现步骤
- 在 OpenClaw UI 中与 AI 进行对话
- 等待一段时间(无需任何操作)
- WebSocket 自动触发 reconnect
- 如果此时正好有 AI 会话在处理,会话会被 terminated
日志证据
2026-03-06T15:52:06.677Z info [info]: [ '[ws]', 'reconnect' ]
2026-03-06T15:52:07.558Z warn agent/embedded {"subsystem":"agent/embedded"} embedded run agent end: runId=2380608c-968a-4b38-8a6f-a411fed0835d isError=true error=terminated
2026-03-06T15:52:16.414Z info gateway/ws {"subsystem":"gateway/ws"} webchat disconnected code=1001 reason=n/a conn=d3515f23-1b60-4098-8423-34d0116606aa
2026-03-06T15:52:16.749Z info gateway/ws {"subsystem":"gateway/ws"} webchat connected conn=3f984190-cbbc-4ae9-8c34-374fea7f865c remote=127.0.0.1 client=openclaw-control-ui webchat vdev
观察到的 reconnect 频率(约 2 小时内):
14:12:53 - reconnect
14:21:06 - reconnect (8分钟后)
14:45:13 - reconnect (24分钟后)
14:57:15 - reconnect (12分钟后)
14:59:40 - reconnect (2分钟后)
15:22:21 - reconnect (22分钟后)
15:40:33 - reconnect (18分钟后)
15:44:21 - reconnect (4分钟后)
15:49:08 - reconnect (5分钟后)
15:52:06 - reconnect (3分钟后)
预期行为
WebSocket 连接应该稳定,不应该频繁触发 reconnect。即使发生 reconnect,也应该保留正在进行的会话状态。
可能的原因
- WebSocket 心跳/保活机制有问题
- WSL2 网络层面的间歇性中断
- UI 前端的 WebSocket 超时设置过于激进
临时解决方案
目前没有有效的临时解决方案。用户只能重新开始新的对话。
问题描述
OpenClaw UI 的 WebSocket 连接频繁触发
reconnect,导致正在进行的 AI 会话被terminated。环境
复现步骤
日志证据
观察到的 reconnect 频率(约 2 小时内):
预期行为
WebSocket 连接应该稳定,不应该频繁触发 reconnect。即使发生 reconnect,也应该保留正在进行的会话状态。
可能的原因
临时解决方案
目前没有有效的临时解决方案。用户只能重新开始新的对话。