令牌使用和费用
OpenClaw 跟踪的是令牌(tokens),而非字符。令牌是针对模型定制的,但大多数 OpenAI 式模型处理英文文本时,平均每个令牌约包含 ~4 个字符。系统提示如何构建
OpenClaw 每次运行时都会组装自己的系统提示,内容包括:- 工具列表及简短描述
- 技能列表(仅元数据;具体说明通过
read按需加载) - 自我更新指令
- 工作区和引导文件(当文件为新版本时包括
AGENTS.md、SOUL.md、TOOLS.md、IDENTITY.md、USER.md、HEARTBEAT.md、BOOTSTRAP.md,以及存在时的MEMORY.md和/或memory.md)。大型文件会根据agents.defaults.bootstrapMaxChars(默认:20000)截断,总引导注入大小被限制为agents.defaults.bootstrapTotalMaxChars(默认:150000)。memory/*.md文件通过内存工具按需加载,不自动注入。 - 时间(UTC + 用户时区)
- 回复标签与心跳行为
- 运行时元数据(主机/操作系统/模型/思考状态)
上下文窗口计数内容
模型接收到的所有内容都计入上下文限制:- 系统提示(上述所有部分)
- 会话历史(用户与助理消息)
- 工具调用及工具返回结果
- 附件/转录(图片、音频、文件)
- 压缩摘要及修剪产物
- 服务提供者包装层或安全头(不可见,但计数)
agents.defaults.imageMaxDimensionPx(默认:1200)调整:
- 较低值通常减少视觉令牌使用和传输大小。
- 较高值保留更多视觉细节,适合 OCR 或界面密集截图。
/context list 或 /context detail。详见 上下文。
如何查看当前令牌使用
聊天中可使用:/status→ 显示带有会话模型、上下文使用量、最近的输入/输出令牌数及预测费用(仅 API Key 可见)的颜文字状态卡片。/usage off|tokens|full→ 在每条回复尾部附加每次响应的使用情况汇总。- 会话持续有效(存储为
responseUsage)。 - OAuth 认证下隐藏费用(只显示令牌数)。
- 会话持续有效(存储为
/usage cost→ 显示 OpenClaw 会话日志中的本地费用汇总。
- TUI/Web TUI: 支持
/status与/usage。 - CLI: 可用
openclaw status --usage和openclaw channels list查看服务商配额窗口(非每次响应费用)。
费用估算(显示时)
费用基于你的模型定价配置估算:input、output、cacheRead 和 cacheWrite。如果缺少定价信息,OpenClaw 只显示令牌数。OAuth 认证的令牌永远不显示美元费用。
缓存 TTL 和修剪影响
服务商的提示缓存仅在缓存 TTL 窗口内有效。OpenClaw 还可选择运行缓存 TTL 过期修剪:当缓存 TTL 到期后,修剪会话,然后重置缓存窗口,使后续请求可重复使用刚刚缓存的新上下文,避免全量重新缓存历史,从而降低缓存写入成本,尤其在会话闲置过长时。 可在 网关配置 中设置,行为细节见 会话修剪。 心跳机制可使缓存在空闲间隙保持“热”状态。若模型缓存 TTL 是1h,将心跳间隔设置略低于该值(如 55m)可避免重新缓存整个提示,节约缓存写入成本。
多智能体环境中,可共用一份模型配置,并通过 agents.list[].params.cacheRetention 针对单个智能体调整缓存策略。
详尽操作指南见 提示缓存。
Anthropic API 费用方面,缓存读成本远低于输入令牌,缓存写成本则按更高倍数计费。最新费率和 TTL 乘数见 Anthropic 官方文档:https://docs.anthropic.com/docs/build-with-claude/prompt-caching
示例:用心跳保持 1 小时缓存“热”状态
示例:混合流量下的每智能体缓存策略
agents.list[].params 会叠加于所选模型的 params,因此你只需覆盖 cacheRetention,其他模型默认参数保持不变。
示例:启用 Anthropic 1M 上下文测试版请求头
Anthropic 的 100 万上下文窗口目前处于测试版本。OpenClaw 可在启用支持 Opus 或 Sonnet 模型上的context1m 后注入所需的 anthropic-beta 值。
context-1m-2025-08-07 测试版请求头。
仅当模型条目设置 context1m: true 时生效。
要求:凭证必须具备长上下文使用资格(API Key 计费,或开启额外使用的订阅)。否则 Anthropic 会返回 HTTP 429: rate_limit_error: Extra usage is required for long context requests。
如果使用 OAuth/订阅令牌认证 Anthropic (sk-ant-oat-*),OpenClaw 会跳过 context-1m-* 测试版请求头,因为 Anthropic 当前拒绝这种组合并返回 HTTP 401。
减少令牌压力的建议
- 使用
/compact概括长会话。 - 在工作流中尽量裁剪大型工具输出。
- 针对截图密集会话,调低
agents.defaults.imageMaxDimensionPx。 - 保持技能描述简短(技能列表会注入提示中)。
- 在冗长、探索性工作时优先选择较小模型。