OpenClaw Cost Optimizer
专为 OpenClaw 用户设计的成本分析和优化工具。通过分析 session logs,识别高消耗场景,给出可执行的优化建议。
核心功能
1. 成本分析
- - 读取 session logs,统计 token 使用和成本
- 按模型、会话、时间维度分析
- 识别高成本会话和异常消耗
2. 场景识别
- - 长对话检测: 超过 50k tokens 的会话
- 频繁 Cron: 每天超过 10 次的定时任务
- 大 Context: 平均输入超过 30k tokens
- 昂贵模型: 使用高成本模型处理简单任务
3. 优化建议
- - 模型降级策略(Opus → Sonnet → DeepSeek)
- Context 压缩方案
- Cron 频率调整
- 本地模型使用建议
- 预计节省金额
快速开始
生成完整分析报告(推荐)
CODEBLOCK0
默认分析最近 7 天,生成详细报告保存到 INLINECODE0
指定天数:
CODEBLOCK1
快速查看今日成本
CODEBLOCK2
输出示例:
CODEBLOCK3
报告示例
CODEBLOCK4
优化策略详解
策略 1: 模型分级使用
根据任务复杂度选择模型:
| 任务类型 | 推荐模型 | 成本 |
|---|
| 简单查询、文件读取 | local/qwen2.5:7b | 免费 |
| 日常对话、代码编写 |
claude-sonnet-4 | $3/M |
| 复杂推理、架构设计 | claude-opus-4-6 | $45/M |
| 备用/降级 | deepseek-chat | $0.02/M |
操作:
CODEBLOCK5
策略 2: Context 优化
问题: 默认加载所有 context 文件(SOUL.md, AGENTS.md, TOOLS.md, MEMORY.md, docs//*.md),可能 50k+ tokens
解决方案:
- 1. 精简 AGENTS.md
- 移除冗余说明
- 合并重复规则
- 使用简洁语言
- 2. Lazy Loading
- 简单任务只加载 SOUL.md + IDENTITY.md
- 复杂任务按需加载相关文档
- 参考
openclaw-token-optimizer 的 context_optimizer
- 3. 定期清理
CODEBLOCK6
策略 3: Cron 优化
识别高频 Cron:
CODEBLOCK7
优化方案:
- - 非关键任务降低频率(每小时 → 每 4 小时)
- 使用更便宜的模型执行 cron
- 合并多个小任务为一个批处理
示例:
CODEBLOCK8
策略 4: 会话管理
长对话问题: Context 累积导致每次请求都携带完整历史
解决方案:
- - 超过 50k tokens 时主动开启新会话
- 使用
/new 命令清空 context - 重要信息保存到 MEMORY.md,不依赖会话历史
策略 5: 启用本地模型
适用场景:
设置:
CODEBLOCK9
成本基准
基于实际使用数据的成本参考:
| 使用模式 | 每日会话数 | 平均 tokens/会话 | 每日成本 | 每月成本 |
|---|
| 轻度使用 | 5-10 | 20k | $0.50-1.00 | $15-30 |
| 中度使用 |
20-30 | 30k | $2.00-4.00 | $60-120 |
| 重度使用 | 50+ | 40k | $8.00-15.00 | $240-450 |
| 优化后 | 50+ | 15k | $3.00-6.00 | $90-180 |
优化目标: 重度使用场景下节省 50-60% 成本
集成到工作流
每日成本检查(推荐)
添加 cron 任务,每天生成报告:
CODEBLOCK10
每周深度分析
CODEBLOCK11
成本告警
在 AGENTS.md 中添加规则:
CODEBLOCK12
与其他 Skills 配合
openclaw-token-optimizer
- - 本 skill 专注成本分析和报告
- token-optimizer 提供底层优化工具(contextoptimizer, modelrouter)
- 配合使用效果最佳
openclaw-doctor
- - doctor 检查系统健康
- cost-optimizer 检查成本健康
- 一起使用确保系统稳定且经济
技术细节
数据来源
- - Session logs: INLINECODE3
- 分析最近 N 天的日志(默认 7 天)
- 提取 inputTokens, outputTokens, model, sessionId
成本计算
基于各模型官方定价:
CODEBLOCK13
阈值配置
CODEBLOCK14
可在脚本中修改以适应个人需求。
安全性
✅ 纯本地运行
- - 无网络请求
- 无外部依赖
- 不执行子进程
- 数据不离开本机
✅ 只读分析
- - 只读取 session logs
- 不修改任何配置
- 不执行任何操作
- 建议需手动执行
故障排查
问题: 未找到 session logs
原因: logs 目录不存在或路径错误
解决:
CODEBLOCK15
如果目录不存在,说明还没有会话记录。
问题: 成本计算不准确
原因: 模型定价可能更新
解决: 编辑 scripts/cost_analyzer.js,更新 modelCosts 对象。
问题: 报告为空
原因: 指定天数内没有日志
解决: 增加分析天数
CODEBLOCK16
更新日志
v1.0.0 (2026-02-26)
- - 初始版本
- 支持 session logs 分析
- 识别 5 大高消耗场景
- 生成优化建议和成本报告
- 纯 Node.js 实现,无外部依赖
贡献
欢迎提交 Issue 和 PR:
- - 新的优化策略
- 更准确的成本计算
- 更多模型支持
- 报告格式改进
许可
MIT License
让 OpenClaw 更经济,让 AI 更可持续! 💰✨
OpenClaw Cost Optimizer
专为 OpenClaw 用户设计的成本分析和优化工具。通过分析 session logs,识别高消耗场景,给出可执行的优化建议。
核心功能
1. 成本分析
- - 读取 session logs,统计 token 使用和成本
- 按模型、会话、时间维度分析
- 识别高成本会话和异常消耗
2. 场景识别
- - 长对话检测: 超过 50k tokens 的会话
- 频繁 Cron: 每天超过 10 次的定时任务
- 大 Context: 平均输入超过 30k tokens
- 昂贵模型: 使用高成本模型处理简单任务
3. 优化建议
- - 模型降级策略(Opus → Sonnet → DeepSeek)
- Context 压缩方案
- Cron 频率调整
- 本地模型使用建议
- 预计节省金额
快速开始
生成完整分析报告(推荐)
bash
node scripts/cost_analyzer.js analyze
默认分析最近 7 天,生成详细报告保存到 ~/.openclaw/workspace/memory/cost-analysis-report.md
指定天数:
bash
node scripts/cost_analyzer.js analyze 30 # 分析最近 30 天
快速查看今日成本
bash
node scripts/cost_analyzer.js quick
输出示例:
📊 今日成本快览:
总成本: $2.45
会话数: 12
平均: $0.204/会话
报告示例
markdown
OpenClaw 成本分析报告
生成时间: 2026-02-26 15:30:00
📊 总览
- - 总会话数: 45
- 总输入 tokens: 1,234,567
- 总输出 tokens: 456,789
- 总成本: $15.67
- 平均每会话: $0.348
🤖 模型使用统计
claude-opus-4-6
- - 会话数: 30
- 输入: 890,123 tokens
- 输出: 345,678 tokens
- 成本: $12.34
claude-sonnet-4-20250514
- - 会话数: 15
- 输入: 344,444 tokens
- 输出: 111,111 tokens
- 成本: $3.33
💰 高成本会话 (Top 5)
- 模型: claude-opus-4-6
- Tokens: 125,000
- 成本: $3.45
- 消息数: 25
💡 优化建议
1. 🔴 模型降级:yunyi-claude/claude-opus-4-6
问题: 该模型成本较高 ($45/M tokens),已使用 30 次会话
建议: 对于简单任务使用 Sonnet 或 DeepSeek,复杂任务才用 Opus
预计节省: $9.87
操作: openclaw models set yunyi-claude/claude-sonnet-4-20250514
2. 🟡 长对话检测
问题: 发现 3 个长对话,最长 125,000 tokens
建议: 超过 50k tokens 时开启新会话,避免 context 累积
预计节省: $1.04
操作: 手动开启新会话或设置 context 限制
3. 🔴 Context 过大
问题: 平均每次会话输入 27,435 tokens,可能加载了过多文件
建议: 优化 AGENTS.md、SOUL.md,移除不必要的内容;使用 lazy loading
预计节省: $6.27
操作: 参考 openclaw-token-optimizer skill 的 context_optimizer
总预计节省: $17.18
优化策略详解
策略 1: 模型分级使用
根据任务复杂度选择模型:
| 任务类型 | 推荐模型 | 成本 |
|---|
| 简单查询、文件读取 | local/qwen2.5:7b | 免费 |
| 日常对话、代码编写 |
claude-sonnet-4 | $3/M |
| 复杂推理、架构设计 | claude-opus-4-6 | $45/M |
| 备用/降级 | deepseek-chat | $0.02/M |
操作:
bash
临时切换
openclaw models set yunyi-claude/claude-sonnet-4-20250514
设置 fallback
openclaw models fallbacks add deepseek/deepseek-chat
策略 2: Context 优化
问题: 默认加载所有 context 文件(SOUL.md, AGENTS.md, TOOLS.md, MEMORY.md, docs//*.md),可能 50k+ tokens
解决方案:
- 1. 精简 AGENTS.md
- 移除冗余说明
- 合并重复规则
- 使用简洁语言
- 2. Lazy Loading
- 简单任务只加载 SOUL.md + IDENTITY.md
- 复杂任务按需加载相关文档
- 参考 openclaw-token-optimizer 的 context_optimizer
- 3. 定期清理
bash
# 清理旧 memory logs
find ~/.openclaw/workspace/memory -name 2026-*.md -mtime +30 -delete
策略 3: Cron 优化
识别高频 Cron:
bash
openclaw cron list
优化方案:
- - 非关键任务降低频率(每小时 → 每 4 小时)
- 使用更便宜的模型执行 cron
- 合并多个小任务为一个批处理
示例:
bash
修改 cron 频率
openclaw cron edit
为 cron 指定模型
openclaw cron add --model local/qwen2.5:7b 0 /4 检查系统状态
策略 4: 会话管理
长对话问题: Context 累积导致每次请求都携带完整历史
解决方案:
- - 超过 50k tokens 时主动开启新会话
- 使用 /new 命令清空 context
- 重要信息保存到 MEMORY.md,不依赖会话历史
策略 5: 启用本地模型
适用场景:
设置:
bash
确保 Ollama 运行
ollama serve
拉取模型
ollama pull qwen2.5:7b
切换到本地模型
openclaw models set local/qwen2.5:7b
成本基准
基于实际使用数据的成本参考:
| 使用模式 | 每日会话数 | 平均 tokens/会话 | 每日成本 | 每月成本 |
|---|
| 轻度使用 | 5-10 | 20k | $0.50-1.00 | $15-30 |
| 中度使用 |
20-30 | 30k | $2.00-4.00 | $60-120 |
| 重度使用 | 50+ | 40k | $8.00-15.00 | $240-450 |
| 优化后 | 50+ | 15k | $3.00-6.00 | $90-180 |
优化目标: 重度使用场景下节省 50-60% 成本
集成到工作流
每日成本检查(推荐)
添加 cron 任务,每天生成报告:
bash
openclaw cron add 0 9 * node ~/.openclaw/workspace/skills/openclaw-cost-optimizer/scripts/cost_analyzer.js quick
每周深度分析
bash
openclaw cron add 0 10 1 node ~/.openclaw/workspace/skills/openclaw-cost-optimizer/scripts/cost_analyzer.js analyze 7
成本告警
在 AGENTS.md 中添加规则:
markdown
成本监控
- - 每日成本超过 $5 → 立即告警
- 单次会话超过 $1 → 记录并分析
- 每周生成成本报告
与其他 Skills 配合
openclaw-token-optimizer
- - 本 skill 专注成本分析和报告
- token-optimizer 提供底层优化工具(contextoptimizer, modelrouter)
- 配合使用效果最佳
openclaw-doctor
- - doctor 检查系统健康
- cost-optimizer 检查成本健康
- 一起使用确保系统稳定且经济