返回顶部
c

cost-optimizer成本优化器

|

作者: admin | 来源: ClawHub
源自
ClawHub
版本
V 1.0.1
安全检测
已通过
164
下载量
免费
免费
0
收藏
概述
安装方式
版本历史

cost-optimizer

Cost Optimizer — OpenClaw/Claude Code 成本优化终极工具包

核心问题:OpenClaw 默认配置下 token 消耗极高(日均 $15+,heartbeat 月均 $50-100)。
本 skill 通过智能路由、上下文压缩、heartbeat 优化三管齐下,将成本降低 60-80%。

参数解析

解析用户输入的第一个参数,路由到对应子命令:

参数子命令说明
route/cost-route智能模型路由
compress
/cost-compress | 上下文压缩 |
| heartbeat | /cost-heartbeat | Heartbeat 优化 |
| report | /cost-report | 消耗报告 |
| config | /cost-config | 配置生成 |
| (无参数) | /cost-report | 默认显示消耗报告 |


1. /cost-route — 智能模型路由

任务分类引擎

对用户的 prompt 进行多维度分析,确定最佳模型:

Step 0: 加载定价与规则数据

Read references/model-pricing.md — 获取最新模型定价,用于成本计算和节省估算
Read references/routing-rules.md — 获取路由规则详情和自定义方法

如果 references 文件缺失或损坏,使用 index.ts 中硬编码的 MODEL_PRICING 常量作为 fallback。

Step 1: 提取分类特征

从当前 prompt 中提取以下特征:

特征维度:

  • - keywords: 关键词匹配(见下方路由规则表)
  • contextlength: 当前对话上下文 token 数(用 index.ts#estimateTokens 估算)
  • complexityscore: 复杂度评分(0-10)

- 0-2: 简单查询、状态检查
- 3-5: 单文件操作、格式化、补全
- 6-8: 多文件代码生成、调试、推理
- 9-10: 架构设计、多步骤复杂任务
  • - toolcalls: 预期工具调用数量
  • coderatio: prompt 中代码占比

Step 2: 路由决策

根据特征匹配路由规则(优先级从高到低):

优先级条件目标模型预估成本/1M tokens
P0heartbeat / cron / 状态检查 / pingdeepseek/v3 或 gemini-2.0-flash$0.07-0.10
P1
简单查询(complexity 0-2)、文件列表、搜索 | gemini-2.0-flash | $0.10 |
| P2 | 文件读取、代码补全、格式化、lint 修复 | claude-haiku-4-5 | $0.80 |
| P3 | 代码生成、单文件调试、测试编写 | claude-sonnet-4-6 | $3.00 |
| P4 | 多文件重构、架构设计、复杂推理 | claude-opus-4-6 | $15.00 |

关键词匹配表:

P0 (最便宜):
- heartbeat, ping, status, health, alive, cron, schedule
- 是否在线, 检查状态, 心跳

P1 (低成本):
- list, find, search, grep, count, ls, pwd, which, where
- 找到, 搜索, 列出, 有几个

P2 (中低成本):
- read, cat, format, lint, fix typo, rename, move
- complete, autocomplete, suggest, snippet
- 读取, 格式化, 补全, 重命名

P3 (中等成本):
- write, create, implement, generate, test, debug, explain
- refactor (单文件), fix bug, add feature
- 写, 创建, 实现, 生成, 测试, 调试

P4 (高成本 - 仅在必要时):
- architect, design, plan, review (全局), migrate
- refactor (多文件), 从零开始, 重新设计
- complexity_score >= 9
- context_length > 100k tokens

Step 3: 降级策略

降级链: opus → sonnet → haiku → gemini-flash → deepseek/v3
触发条件:
- 目标模型 API 返回 429/503 → 降一级
- 响应时间 > 30s → 降一级
- 用户设置了成本上限且当前会话已超 80% → 强制降一级
- 降级后在日志中记录: [COST-ROUTE] 降级: {原模型} → {新模型}, 原因: {reason}

Step 4: 输出路由建议

markdown

🔀 模型路由建议


维度
任务分类{category}
复杂度评分
{score}/10 |
| 上下文长度 | {tokens} tokens |
| 推荐模型 | {model} |
| 预估成本 | ${cost}/次 |
| 对比默认 | 节省 {savings}% |

路由依据: {匹配的关键词/规则}

用户自定义覆盖:

用户可在 openclaw.json 中添加自定义路由规则:

json
{
cost-optimizer: {
routing: {
overrides: [
{
pattern: deploy|发布,
model: claude-sonnet-4-6,
reason: 部署操作需要中等智能但不需要最强模型
}
]
}
}
}



2. /cost-compress — 上下文压缩

触发条件

  • - 自动触发:当对话上下文估算超过 50k tokens 时,输出压缩建议
  • 手动触发:用户执行 /cost-optimizer compress

压缩策略

Step 1: 分析当前上下文

扫描对话历史,按以下类别统计 token 占比:

类别 | 描述 | 压缩率
-------------- | ---------------------- | ------
recent_turns | 最近 5 轮对话 | 0%(完整保留)
old_turns | 更早的对话轮次 | 80-90%
tool_results | 工具调用返回结果 | 70-85%
file_contents | 文件完整内容 | 90-95%
code_blocks | 代码块 | 50-70%
system_context | 系统 prompt / 角色定义 | 0%(不压缩)

Step 2: 执行压缩

对每种类别应用不同的压缩策略:

  1. 1. 历史对话压缩
- 保留最近 5 轮完整内容 - 第 6-10 轮:提取关键决策点和结论 - 第 10 轮以前:仅保留一句话摘要 - 格式:[轮次 N 摘要] 用户请求 X,助手执行了 Y,结果是 Z
  1. 2. 工具调用结果压缩
- 成功的文件读取 → 替换为 [已读取 {path}, {lines} 行, 关键内容: {summary}] - 成功的搜索结果 → 替换为 [搜索 {query}: 找到 {n} 个匹配, 主要在 {files}] - 失败的工具调用 → 保留错误信息,移除重试的中间结果 - Bash 输出 → 保留退出码和关键输出行(首尾各 5 行)
  1. 3. 文件内容压缩
- 替换为路径+行号摘要:[文件 {path}: {lines} 行, 函数: {func_list}, 关键逻辑在 L{start}-L{end}] - 如果文件在后续被修改,只保留最终版本的摘要
  1. 4. 代码块压缩
- 保留函数签名和关键逻辑 - 移除注释和空行 - 对未被后续引用的代码块,替换为 [代码块: {language}, {lines} 行, 功能: {summary}]

Step 3: 生成压缩快照

将压缩后的上下文摘要写入 .context-snapshot.md:

markdown

Context Snapshot


生成时间: {timestamp}

原始 tokens: {original} → 压缩后: {compressed} (节省 {ratio}%)

关键决策

  • - {decision1}
  • {decision2}

活跃文件

  • - {file1}: {summary}
  • {file2}: {summary}

待处理事项

  • - {todo1}
  • {todo2}

最近对话(完整)

{last5turns}

Step 4: 输出压缩报告

markdown

📦 上下文压缩报告

| 指标 | 值 |
|------|

标签

skill ai

通过对话安装

该技能支持在以下平台通过对话安装:

OpenClaw WorkBuddy QClaw Kimi Claude

方式一:安装 SkillHub 和技能

帮我安装 SkillHub 和 cost-optimizer-1776113019 技能

方式二:设置 SkillHub 为优先技能安装源

设置 SkillHub 为我的优先技能安装源,然后帮我安装 cost-optimizer-1776113019 技能

通过命令行安装

skillhub install cost-optimizer-1776113019

下载

⬇ 下载 cost-optimizer v1.0.1(免费)

文件大小: 30.93 KB | 发布时间: 2026-4-14 12:04

v1.0.1 最新 2026-4-14 12:04
Bilingual description (EN primary, CN secondary)

Archiver·手机版·闲社网·闲社论坛·羊毛社区· 多链控股集团有限公司 · 苏ICP备2025199260号-1

Powered by Discuz! X5.0   © 2024-2025 闲社网·线报更新论坛·羊毛分享社区·http://xianshe.com

p2p_official_large
返回顶部