教程

OpenClaw Prompt Caching 调优指南:cacheRetention、cache-ttl 修剪与心跳保温三件套

详解 OpenClaw 提示缓存调优三大配置项:cacheRetention 缓存保留策略、contextPruning cache-ttl 上下文修剪、heartbeat 心跳保温,附配置合并优先级和不同场景的调优建议。

2026/8/123分钟 阅读ClaudeEagle

对于长时间运行的 OpenClaw Agent 会话,Prompt Caching(提示缓存)是控制 Token 成本最直接的杠杆之一——本文基于官方文档,详解 cacheRetention、contextPruning 和心跳保温三个核心配置项如何配合使用。

提示缓存解决什么问题

提示缓存让模型提供商能复用未变化的提示前缀 (通常是系统/开发者指令和其他稳定的上下文), 而不是每一轮都重新处理一遍 首次匹配的请求会写入缓存 token(cacheWrite) 后续匹配的请求可以读取缓存(cacheRead)

价值很直接——更低的 token 成本、更快的响应速度,以及长时间运行会话中更可预期的性能表现。没有缓存的话,即便大部分输入内容没变,每一轮对话都要为完整提示付费。

核心配置一:cacheRetention

yaml
# 全局默认值,适用于所有模型
agents:
  defaults:
    params:
      cacheRetention: "long" # none | short | long
yaml
# 针对特定模型覆盖
agents:
  defaults:
    models:
      "anthropic/claude-opus-4-6":
        params:
          cacheRetention: "short" # none | short | long
yaml
# 针对特定 agent 覆盖
agents:
  list:
    - id: "alerts"
      params:
        cacheRetention: "none"

配置合并优先级(从低到高):

1. agents.defaults.params (全局默认,适用所有模型) 2. agents.defaults.models[provider/model].params (按模型覆盖) 3. agents.list[].params (匹配到具体agent id时覆盖)

旧版配置兼容——如果你的配置里还在用 cacheControlTtl,系统依然接受并自动映射:5m 映射为 short,1h 映射为 long。不过新配置建议直接用 cacheRetention。

核心配置二:contextPruning cache-ttl 模式

yaml
agents:
  defaults:
    contextPruning:
      mode: "cache-ttl"
      ttl: "1h"

这个配置的作用是——在缓存 TTL 窗口过期后,修剪掉旧的工具调用结果上下文,避免会话空闲一段时间后重新触发的请求要为过大的历史记录重新写入缓存。这一点和 Session Pruning 机制紧密相关(详见下文)。

核心配置三:心跳保温(Heartbeat keep-warm)

yaml
agents:
  defaults:
    heartbeat:
      every: "55m"

心跳可以让缓存窗口保持"温热"状态,减少空闲间隔后的重复缓存写入开销。也支持在 agents.list[].heartbeat 层级做 per-agent 的心跳配置。

这三个配置项配合起来的逻辑很清晰——cacheRetention 决定缓存本身保留多久,contextPruning 在缓存过期时顺手把过大的旧上下文修剪掉,heartbeat 则通过定期"探活"防止缓存因为空闲太久而失效重来一遍。

实战建议

1. 高频交互、上下文相对稳定的 Agent(如客服类): 优先用 cacheRetention: "long" + heartbeat 保温组合, 最大化缓存命中率 2. 低频、偶发触发的 Agent(如告警响应类): 可以考虑 cacheRetention: "none", 避免为极少复用的缓存支付写入开销 3. 会大量调用工具、产生长输出的场景: 务必搭配 contextPruning: cache-ttl, 否则每次缓存重写都要为累积的工具输出买单 4. 多模型/多agent混用场景: 善用配置合并优先级,只在真正需要差异化的层级 (模型级或agent级)做覆盖,减少配置维护复杂度

总结

Prompt Caching 调优本质上是在"缓存命中率"和"缓存写入开销"之间找平衡——cacheRetention 管保留策略,contextPruning 管上下文体积,heartbeat 管缓存保温,三者组合使用才能真正把长会话的 Token 成本压下来。


来源:Prompt Caching — OpenClaw 官方文档

相关文章推荐

教程Claude Code 工作流成本优化实战:如何让并行 Agent 扇出复用提示前缀缓存详解 Claude Code v2.1.229 工作流扇出错峰执行优化:如何让共享相同提示前缀的并行子 Agent 复用提示缓存而非重复处理,附配置方法、适用场景和与 Prompt Caching 配置的联动调优建议。2026/8/13教程OpenClaw Session Pruning 与 Compaction 的区别:谁在悄悄给你的会话上下文瘦身详解 OpenClaw Session Pruning 会话修剪机制:如何在每次 LLM 调用前修剪旧的工具调用结果以降低成本,与 Compaction 压缩机制的区别与配合方式,附智能默认值和手动配置方法。2026/8/12教程Claude Cache Diagnostics 教程:定位 Prompt Cache Miss 的真正原因Claude Cache Diagnostics 解决 prompt cache miss 难排查问题。通过传入上一次 response id,API 会比较请求 fingerprint,告诉你 model/system/tools/messages 哪个部分破坏了缓存 prefix。2026/6/6教程Claude Prompt Caching 完整指南:降低长上下文成本与延迟的 API 实战Claude Prompt Caching 官方能力中文整理:适合缓存的内容、cache_control 使用方法、缓存断点策略、长文档和工具定义复用、成本/延迟收益、常见坑和生产环境落地建议。2026/5/21教程WorkBuddy 直连微信:发条消息就能远程指挥电脑干活,兼容 OpenClaw 技能体系腾讯 WorkBuddy 微信直连功能详解:配置微信客服号即可远程指挥电脑执行任务,支持企微断网自动重连与定时任务自动化,技能包完全兼容OpenClaw体系可无缝迁移,附向内隔离向外防御安全设计解读。2026/8/15教程OpenClaw Sessions 磁盘维护完全指南:sessions.json 自动清理与 openclaw sessions cleanup 命令详解 OpenClaw session.maintenance 磁盘维护配置:warn/enforce 双模式、清理执行顺序、maxDiskBytes/highWaterBytes 磁盘预算控制,以及 openclaw sessions cleanup 命令的 dry-run 安全用法。2026/8/13