翻译自 docs.openclaw.ai
OpenClaw 跟踪的是 Token,而不是字符。Token 是模型特定的,但大多数 OpenAI 风格的模型对英文文本平均约 4 个字符为一个 Token。
OpenClaw 在每次运行时组装自己的系统提示。它包括:
read 按需加载)AGENTS.md、SOUL.md、TOOLS.md、IDENTITY.md、USER.md、HEARTBEAT.md,新工作区还包含 BOOTSTRAP.md)。大文件被 agents.defaults.bootstrapMaxChars(默认 20000)截断。完整分解请参阅 系统提示。
模型接收到的所有内容都计入上下文限制:
要查看每个注入文件、工具、技能和系统提示大小的实际分解,请使用 /context list 或 /context detail。参见 上下文。
在聊天中使用这些命令:
/status → 带表情符号的状态卡片,显示会话模型、上下文使用量、最后一次响应的输入/输出 Token,以及估算成本(仅 API 密钥)。/usage off|tokens|full → 在每个回复后附加使用量脚注。按会话持久化(存储为 responseUsage)。/usage cost → 显示来自 OpenClaw 会话日志的本地成本摘要。其他界面:
/status + /usage。openclaw status --usage 和 openclaw channels list 显示提供商配额窗口(不是每次响应的成本)。成本根据你的模型定价配置来估算:
models.providers.<provider>.models[].cost
这些是每 100 万个 Token 的 USD 价格,用于 input、output、cacheRead 和 cacheWrite。如果缺少定价信息,OpenClaw 仅显示 Token 数。OAuth Token 永远不显示美元成本。
提供商的提示缓存仅在缓存 TTL 窗口内适用。OpenClaw 可以选择性地运行 cache-ttl 修剪:它在缓存 TTL 过期后修剪会话,然后重置缓存窗口,这样后续请求可以重用刚刚缓存的上下文,而不是重新缓存完整的历史记录。这使得会话在 TTL 过后的空闲期间,缓存写入成本更低。
在 Gateway 配置中进行配置,并参阅 会话修剪了解行为细节。
心跳可以在空闲间隙中保持缓存温暖。如果你的模型缓存 TTL 是 1 小时,将心跳间隔设置为略低于此值(例如 55 分钟)可以避免重新缓存完整提示,从而降低缓存写入成本。
agents:
defaults:
model:
primary: "anthropic/claude-opus-4-5"
models:
"anthropic/claude-opus-4-5":
params:
cacheControlTtl: "1h"
heartbeat:
every: "55m"
/compact 来总结长会话。参见 技能了解精确的技能列表开销公式。