
OpenClaw 默认配置跑一段时间会遇到两个问题:额度消耗太快、长会话超时崩溃。这篇文章记录我实际调优的 8 个参数,以及背后的原因。
先说清楚架构
我用的组合:
- GitHub Copilot Pro+:月付 $19,提供 1500 次/月的 premium request 额度
- Claude Opus 4.6:通过 Copilot 的模型路由访问,模型 ID
github-copilot/claude-opus-4.6 - OpenClaw:负责 Telegram 交互、Skill 调用、定时任务
额度计算逻辑:每次 AI 助手回复 = 1 次 premium request(包括 tool call 后的回复)。1500 次听起来很多,但没优化的话很快就不够用。
8 项标准优化
1. 模型只保留 Copilot,清空 fallbacks
问题:默认配置有多个 model provider 做 fallback,一旦主模型超时,会依次尝试所有 fallback,每次尝试都消耗额度。
优化:
{
"agents": {
"defaults": {
"model": {
"primary": "github-copilot/claude-opus-4.6",
"fallbacks": []
}
}
}
}
fallbacks 清空后,失败直接报错,不会触发 2-3 次无效重试。每月节省约 50 次。
2. 超时从 600s 降到 300s
问题:默认 600 秒超时意味着一次卡住的请求要等 10 分钟才报错,这段时间后续消息全部积压。
优化:
{
"agents": {
"defaults": {
"timeoutSeconds": 300
}
}
}
300 秒对于正常任务绰绰有余,能更快发现异常,减少因超时引发的重试链。
3. Session Compaction:safeguard 模式
问题:长时间运维会话(比如调试一个服务器问题来回 SSH 几十次),上下文会膨胀到 API 拒绝接受,然后触发重试。
优化:
{
"compaction": {
"mode": "safeguard",
"reserveTokensFloor": 120000
}
}
safeguard 模式:当上下文接近模型 context 上限时,自动压缩历史,保留关键内容,防止因 context 过长导致的 API 报错。reserveTokensFloor 是保留的输出 token 缓冲。
4. Context Pruning:30 分钟 TTL
这是效果最显著的优化。
问题:tool call 的输出(SSH 命令结果、文件内容、API 响应)通常很长,但 30 分钟后基本没有参考价值,却还占着 context 的大量空间。
优化:
{
"contextPruning": {
"mode": "cache-ttl",
"ttl": "30m",
"keepLastAssistants": 5,
"minPrunableToolChars": 30000,
"softTrim": {
"maxChars": 3000,
"headChars": 1000,
"tailChars": 1000
},
"hardClear": {
"enabled": true,
"placeholder": "[旧工具输出已清理]"
}
}
}
关键参数说明:
ttl: "30m":30 分钟前的 tool 输出自动进入裁剪候选keepLastAssistants: 5:保留最近 5 条 AI 回复(保持对话连贯性)minPrunableToolChars: 30000:只有超过 3 万字符的 tool 输出才裁剪(避免误裁)softTrim:保留头尾各 1000 字符,中间折叠为占位符hardClear:超限时完全清空替换为占位文字
实际效果:context 大小减少 50%+,长会话稳定性大幅提升。
5. 关闭 Discord
问题:Discord WebSocket 连接不稳定,频繁断连会触发 gateway 异常,进而导致一连串错误重试,消耗额度。
{
"channels": {
"discord": {
"enabled": false
}
}
}
我的使用场景只用 Telegram,Discord 直接关掉。每月节省约 100 次。
6. 关闭 Heartbeat
问题:Heartbeat 是 OpenClaw 的存活检测机制,默认每 30 分钟发一次 ping,每次 ping = 1 次 API 调用。
{
"agents": {
"defaults": {
"heartbeat": {
"every": ""
}
}
}
}
关掉后每天节省 48 次调用,每月 节省约 1440 次。这是最大的单项节省。
7. 清理无用 Model Providers
问题:配置了多个 model provider(openrouter、各种 API 代理),gateway 启动时会对所有 provider 做后台健康检查,每次检查消耗额度。
{
"models": {
"providers": {}
}
}
只保留 github-copilot,其他全删。每月节省 20-50 次。
8. 关闭 Exec 审批(新版 4.5+)
问题:新版 OpenClaw 默认开启 elevated 权限审批,AI 执行 shell 命令时需要用户确认,会卡住自动化工作流。
在 openclaw.json 的 exec 配置里:
{
"exec": {
"requireApproval": false
}
}
适合信任你的运维场景,不适合多人共享或不确定任务的场景。
一键应用脚本
以上 8 项可以用这段 Python 脚本批量写入:
import json, os
path = os.path.expanduser("~/.openclaw/openclaw.json")
with open(path) as f:
c = json.load(f)
d = c.setdefault("agents", {}).setdefault("defaults", {})
# 1. 模型 + 清空 fallbacks
d["model"] = {"primary": "github-copilot/claude-opus-4.6", "fallbacks": []}
# 2. 超时 300s
d["timeoutSeconds"] = 300
# 3. Session Compaction
d["compaction"] = {
"mode": "safeguard",
"reserveTokensFloor": 120000
}
# 4. Context Pruning
d["contextPruning"] = {
"mode": "cache-ttl",
"ttl": "30m",
"keepLastAssistants": 5,
"minPrunableToolChars": 30000,
"softTrim": {"maxChars": 3000, "headChars": 1000, "tailChars": 1000},
"hardClear": {"enabled": True, "placeholder": "[旧工具输出已清理]"}
}
# 6. 关闭 Heartbeat
d["heartbeat"] = {"every": ""}
# 5. 关闭 Discord
c.setdefault("channels", {}).setdefault("discord", {})["enabled"] = False
# 7. 清理 providers
c.setdefault("models", {})["providers"] = {}
with open(path, "w") as f:
json.dump(c, f, indent=2, ensure_ascii=False)
print("配置已更新,重启 openclaw gateway 生效")
运行后重启 gateway:
openclaw gateway restart
版本兼容性注意
部分参数只在新版(4.5+)支持,旧版写入会导致 gateway 启动失败:
| 参数 | 旧版 ≤3.28 | 新版 4.5+ |
|---|---|---|
compaction.notifyUser | ❌ 不支持 | ✅ |
compaction.memoryFlush | ❌ 不支持 | ✅ |
auth.cooldowns | ❌ 不支持 | ✅ |
| discord 配置键名 | allow | enabled |
如果 gateway 重启失败,先用 openclaw gateway logs 看具体报错,通常是某个不支持的字段导致的。
优化后的月度用量
优化前:Heartbeat + Discord + fallbacks + context 膨胀,单日可能消耗 150+ 次。
优化后(1500 次/月分配):
| 用途 | 日均 | 月估算 |
|---|---|---|
| 日常运维对话 | 30-50 次 | 600-800 次 |
| 量化策略巡检 | 0(直接 cron,不走 AI) | 0 |
| 定时天气/报告 | 2 次 | 60 次 |
| 合计 | ~660-860 次 |
1500 次的额度留有充足余量,即便某天密集运维消耗 200 次,月末也不会超限。
有 OpenClaw 配置问题或者额度不够用的情况,欢迎来 Telegram 聊。
延伸阅读:
- OpenClaw 是什么 — 整体架构介绍
- OpenClaw 故障排查 — 常见问题处理
- Claude API 省钱指南 — API 直连的成本控制
📷 封面图 · Flux Schnell AI 生成 · panshi.io 品牌风格