实操手册-OpenClaw长任务超时无响应的解决

一、 适用场景

OpenClaw 开发任务(代码生成、文件操作、长推理)时频繁遇到 Request timed out 错误,无论是通过飞书(Lark)还是 openclaw tui 调用。


二、 问题描述

在日常的工作中,当我们的任务有一定复杂度时,就会频繁出现以下提示:

bash 复制代码
LLM request failed.
Request timed out before a response was generated. Please try again, or increase agents.defaults.timeoutSeconds in your config.

如图:

按照提示修改agents.defaults.timeoutSeconds后,问题依旧。这是因为 OpenClaw 的超时体系是分层级的,只改一个地方往往不够。


三、 根因分析

OpenClaw 的超时控制并非单一配置,而是由三个层级共同决定:

层级 配置位置 控制范围 默认值 是否常被忽略
Provider 级 models.providers.<id>.timeoutSeconds 单个 LLM 的 HTTP 请求(连接 + 首字节 + 流传输) ~60s 最常见原因
Agent 级 agents.defaults.timeoutSeconds 整个 Agent 回合(含工具调用、上下文组装) 48h 提示中提到的
CLI/命令级 openclaw agent --timeout CLI 命令等待网关响应 600s TUI/CLI 场景

为什么只改 agents.defaults.timeoutSeconds 不够?

大多数超时发生在 Provider 级 HTTP 请求阶段:模型推理或首 token 生成超过约 60 秒时,OpenClaw 的 HTTP 客户端会主动断开连接。此时 Agent 级的 48 小时超时根本来不及触发。

对于本地模型(Ollama / LM Studio / llama.cpp),冷启动时的首 token 延迟(Time to First Token) 可能长达 30~60 秒甚至更久,极易触发 Provider 级超时。


四、解决方案

Step 1:设置 Provider 级超时(最关键)

bash 复制代码
# 修改前,可以先查看一下当前的配置
openclaw config get models.providers.<provider-id>.timeoutSeconds
# 将 <provider-id> 替换为你的实际 provider 名称
openclaw config set models.providers.<provider-id>.timeoutSeconds 300

如何确认 provider ID?

bash 复制代码
openclaw models list

输出参考:

bash 复制代码
Model                                      Input      Ctx         Local Auth  Tags
qwen/deepseek-v4-flash                     text       200k        no    yes   default,configured
qwen/qwen3.7-plus-2026-05-26               text       200k        no    yes   fallback#1,configured
qwen/kimi-k2.7-code                        text       200k        no    yes   fallback#2,configured
qwen/glm-5.2                               text       200k        no    yes   fallback#3,configured
qwen/qwen3.8-max                           text       200k        no    yes   fallback#4,configured
qwen/qwen3.5-plus                          text+image 1000k       no    yes   
qwen/qwen3.6-plus                          text+image 1000k        no    yes   

第一列 Model 字段格式为 ProviderID/ModelID,取 / 之前的字符串作为 Provider‑ID,如上例中的qwen

Step 2:设置 Agent 级超时

bash 复制代码
openclaw config set agents.defaults.timeoutSeconds 1800

查看配置方法参考上一个命令,不再此重复。

Step 3:重启并验证

bash 复制代码
# 重启网关使配置生效
openclaw gateway restart

⚠️ 飞书渠道特别注意:旧会话会缓存旧的超时配置,必须新建飞书对话才能生效。或执行:

bash 复制代码
openclaw sessions prune --days 0

TUI 渠道:完全退出后重新执行 openclaw tui 即可。


五、不同场景的推荐配置

场景 A:本地模型(Ollama / LM Studio)

本地模型冷启动慢,建议将 Provider 超时设长:

bash 复制代码
# 保持模型常驻内存(Ollama 示例)
export OLLAMA_KEEP_ALIVE=-1

# 配置超时
openclaw config set models.providers.ollama.timeoutSeconds 600
openclaw config set agents.defaults.timeoutSeconds 1800

# 重启
openclaw gateway restart

场景 B:云端模型(Kimi / OpenAI / Claude)

云端模型响应快,但复杂开发任务(多文件操作、长代码生成)仍可能超时:

bash 复制代码
openclaw config set models.providers.kimi.timeoutSeconds 300
openclaw config set agents.defaults.timeoutSeconds 1800
openclaw gateway restart

场景 C:飞书渠道

飞书会话配置持久化,修改后务必新建对话:

bash 复制代码
openclaw config set models.providers.<id>.timeoutSeconds 300
openclaw config set agents.defaults.timeoutSeconds 1800
openclaw gateway restart
# 然后在飞书中开启新对话

场景 D:TUI 渠道

TUI 每次启动都是新会话,重启即可:

bash 复制代码
openclaw config set models.providers.<id>.timeoutSeconds 300
openclaw config set agents.defaults.timeoutSeconds 1800
# 按 Ctrl+C 退出 TUI,重新执行 openclaw tui

六、验证配置是否生效

bash 复制代码
# 查看 Agent 默认配置
openclaw config get agents.defaults

# 示例输出
{
  "timeoutSeconds": 1800,   # ← 关键字段:Agent 级超时(整个回合)
  "maxIterations": 20,
  "model": "kimi"
}

# 查看 Provider 配置
openclaw config get models.providers

# 示例输出
{
  "ollama": {
    "baseUrl": "http://127.0.0.1:11434",
    "timeoutSeconds": 600    # ← 关键字段:Provider 级超时(HTTP 请求)
  },
  "kimi": {
    "baseUrl": "https://api.moonshot.cn/v1",
    "timeoutSeconds": 300    # ← 关键字段:Provider 级超时(HTTP 请求)
  }
}

# 查看完整配置
openclaw config get

确认输出中包含你设置的 timeoutSeconds 值。


七、一键配置模板

bash 复制代码
#!/bin/bash
# OpenClaw 超时修复脚本
# 使用前请将 PROVIDER_ID 替换为你的实际 provider 名称

PROVIDER_ID="ollama"  # <-- 修改这里

# 1. Provider 级超时(HTTP 请求)
openclaw config set models.providers.${PROVIDER_ID}.timeoutSeconds 300

# 2. Agent 级超时(整个回合)
openclaw config set agents.defaults.timeoutSeconds 1800

# 3. 重启网关
openclaw gateway restart

echo "✅ 配置完成,请新建飞书对话或重启 TUI"

八、已知问题

如果使用的是 OpenClaw 2026.4.1 ~ 2026.4.8 版本,存在一个已知问题:

agents.defaults.timeoutSeconds 和 Provider 级超时在某些情况下会被忽略,存在硬编码的约 60 秒 HTTP fetch timeout。

建议:

升级到 2026.5.x 及以上版本或临时将两个超时都设为相同较大值(如 1800 秒)作为 workaround


九、总结

问题 根因 解决
LLM request timed out Provider 级 HTTP 超时(~60s) 修改 models.providers.<id>.timeoutSeconds
提示改 agents.defaults.timeoutSeconds 无效 只改了 Agent 级,没改 Provider 级 两者都要改
飞书改了仍超时 旧会话缓存旧配置 新建飞书对话或清理 sessions
TUI 改了仍超时 未完全退出重启 Ctrl+C 后重新 openclaw tui
本地模型频繁超时 冷启动首 token 延迟高 Provider 超时设为 600s + OLLAMA_KEEP_ALIVE=-1

核心原则:

Provider超时管请求,Agent超时管回合。两者都改才靠谱,重启会话要记牢。


如果你也遇到了这个问题,欢迎收藏本文并分享给同样在使用 OpenClaw 的开发者。

相关推荐
一隅论数智18 小时前
给AI一张“业务概念地图“:本体如何从哲学走向企业智能
大数据·人工智能·经验分享·笔记·学习·学习方法·政务
上海广测检测科技有限公司18 小时前
智能平板出口巴西合规详解:Anatel射频、Inmetro电源/电池与LGPD数据合规叠加
经验分享
FLJwu19 小时前
存储与固件量产实战01:运动相机TF卡量产翻车实录!V30≠4K可用,90%OEM踩中的隐形售后坑
经验分享·数码相机·相机
xiaomu0012320 小时前
床垫选型的技术评估模型:结构、材料、卫生与检测四层口径
经验分享
汉风设计装饰20 小时前
智慧办公弱电系统设计:门禁、监控与 IoT 传感器的集成方案
经验分享
m0_7196408721 小时前
支持开源二次开发的VR遥操机器人2026年选型推荐
经验分享
陈卫军老师21 小时前
陈卫军:把口味写在一张纸上,店才稳得住
经验分享·笔记·流量运营
从零开始的嵌入式之旅1 天前
day47
arm开发·经验分享·笔记·嵌入式硬件
恒锐丰科技林技术员1 天前
EG1164 高压大电流升压同步整流芯片解析
经验分享·嵌入式硬件·硬件工程
欣悦财务1 天前
怎么判断代理记账收费值不值,把费用折成服务密度再比
经验分享