← 返回
数据分析 中文

Token Watch

Track and analyze token usage and costs across AI providers with budget alerts, model cost comparison, optimization tips, and local data storage.
跨AI供应商追踪与分析Token用量及成本,支持预算预警、模型成本对比、优化建议及本地数据存储。
vedantsingh60
数据分析 clawhub v1.2.3 1 版本 100000 Key: 无需
★ 0
Stars
📥 976
下载
💾 12
安装
1
版本
#latest

概述

TokenWatch

Track, analyze, and optimize token usage and costs across AI providers. Set budgets, get alerts, compare models, and reduce your spend.

Free and open-source (MIT License) • Zero dependencies • Works locally • No API keys required


Why This Skill?

After OpenAI's acquisition of OpenClaw, token costs are the #1 concern for power users. This skill gives you full visibility into what you're spending, where it's going, and exactly how to reduce it.

Problems it solves:

  • You don't know how much you're spending until the bill arrives
  • No way to compare costs across providers before choosing a model
  • No alerts when you're approaching your budget
  • No actionable suggestions for reducing spend

Features

1. Record Usage & Auto-Calculate Costs

from tokenwatch import TokenWatch

monitor = TokenWatch()

monitor.record_usage(
    model="claude-haiku-4-5-20251001",
    input_tokens=1200,
    output_tokens=400,
    task_label="summarize article"
)
# ✅ Recorded: $0.00192

2. Auto-Record from API Responses

from tokenwatch import record_from_anthropic_response, record_from_openai_response

# Anthropic
response = client.messages.create(model="claude-haiku-4-5-20251001", ...)
record_from_anthropic_response(monitor, response, task_label="my task")

# OpenAI
response = client.chat.completions.create(model="gpt-4o-mini", ...)
record_from_openai_response(monitor, response, task_label="my task")

3. Set Budgets with Alerts

monitor.set_budget(
    daily_usd=1.00,
    weekly_usd=5.00,
    monthly_usd=15.00,
    per_call_usd=0.10,
    alert_at_percent=80.0   # Alert at 80% of budget
)
# ✅ Budget set: daily=$1.0, weekly=$5.0, monthly=$15.0
# 🚨 BUDGET ALERT fires automatically when threshold is crossed

4. Dashboard

print(monitor.format_dashboard())
💰 SPENDING SUMMARY
  Today:   $0.0042  (4 calls, 13,600 tokens)
  Week:    $0.0231  (18 calls, 67,200 tokens)
  Month:   $0.1847  (92 calls, 438,000 tokens)

📋 BUDGET STATUS
  Daily:   [████░░░░░░░░░░░░░░░░] 42% $0.0042 / $1.00 ✅
  Monthly: [███████░░░░░░░░░░░░░] 37% $0.1847 / $0.50 ⚠️

💡 OPTIMIZATION TIPS
  🔴 Swap Opus → Sonnet for non-reasoning tasks (save ~$8.20/mo)
  🟡 High avg cost/call on gpt-4o — reduce prompt length

5. Compare Models Before Calling

# For 2000 input + 500 output tokens:
for m in monitor.compare_models(2000, 500)[:6]:
    print(f"{m['model']:<42} ${m['cost_usd']:.6f}")
gemini-2.5-flash                           $0.000300
gpt-4o-mini                                $0.000600
mistral-small-2501                         $0.000350
claude-haiku-4-5-20251001                  $0.003600
mistral-large-2501                         $0.007000
gemini-2.5-pro                             $0.007500

6. Estimate Before You Call

estimate = monitor.estimate_cost("claude-sonnet-4-5-20250929", input_tokens=5000, output_tokens=1000)
print(f"Estimated cost: ${estimate['estimated_cost_usd']:.6f}")

7. Optimization Suggestions

suggestions = monitor.get_optimization_suggestions()
for s in suggestions:
    savings = s.get("estimated_monthly_savings_usd", 0)
    print(f"[{s['priority'].upper()}] {s['message']}")
    if savings:
        print(f"  → Save ~${savings:.2f}/month")

8. Export Reports

monitor.export_report("monthly_report.json", period="month")

Supported Models (Feb 2026)

41 models across 10 providers — updated Feb 16, 2026.

ProviderModelInput/1MOutput/1M
--------------------------------------
Anthropicclaude-opus-4-6$5.00$25.00
Anthropicclaude-opus-4-5$5.00$25.00
Anthropicclaude-sonnet-4-5-20250929$3.00$15.00
Anthropicclaude-haiku-4-5-20251001$1.00$5.00
OpenAIgpt-5.2-pro$21.00$168.00
OpenAIgpt-5.2$1.75$14.00
OpenAIgpt-5$1.25$10.00
OpenAIgpt-4.1$2.00$8.00
OpenAIgpt-4.1-mini$0.40$1.60
OpenAIgpt-4.1-nano$0.10$0.40
OpenAIo3$10.00$40.00
OpenAIo4-mini$1.10$4.40
Googlegemini-3-pro$2.00$12.00
Googlegemini-3-flash$0.50$3.00
Googlegemini-2.5-pro$1.25$10.00
Googlegemini-2.5-flash$0.30$2.50
Googlegemini-2.5-flash-lite$0.10$0.40
Googlegemini-2.0-flash$0.10$0.40
Mistralmistral-large-2411$2.00$6.00
Mistralmistral-medium-3$0.40$2.00
Mistralmistral-small$0.10$0.30
Mistralmistral-nemo$0.02$0.10
Mistraldevstral-2$0.40$2.00
xAIgrok-4$3.00$15.00
xAIgrok-3$3.00$15.00
xAIgrok-4.1-fast$0.20$0.50
Kimikimi-k2.5$0.60$3.00
Kimikimi-k2$0.60$2.50
Kimikimi-k2-turbo$1.15$8.00
Qwenqwen3.5-plus$0.11$0.44
Qwenqwen3-max$0.40$1.60
Qwenqwen3-vl-32b$0.91$3.64
DeepSeekdeepseek-v3.2$0.14$0.28
DeepSeekdeepseek-r1$0.55$2.19
DeepSeekdeepseek-v3$0.27$1.10
Metallama-4-maverick$0.27$0.85
Metallama-4-scout$0.18$0.59
Metallama-3.3-70b$0.23$0.40
MiniMaxminimax-m2.5$0.30$1.20
MiniMaxminimax-m1$0.43$1.93
MiniMaxminimax-text-01$0.20$1.10

> To add a custom model: add it to PROVIDER_PRICING dict at the top of tokenwatch.py.


API Reference

TokenWatch(storage_path)

Initialize monitor. Data stored in .tokenwatch/ by default.

record_usage(model, input_tokens, output_tokens, task_label, session_id)

Record a single API call. Returns TokenUsageRecord with calculated cost.

set_budget(daily_usd, weekly_usd, monthly_usd, per_call_usd, alert_at_percent)

Configure spending limits. Alerts fire automatically when thresholds are crossed.

get_spend(period)

Get aggregated spend. Period: "today", "week", "month", "all", or "YYYY-MM-DD".

get_spend_by_model(period)

Spending breakdown by model, sorted by cost descending.

get_spend_by_provider(period)

Spending breakdown by provider.

compare_models(input_tokens, output_tokens)

Compare costs across all known models. Returns list sorted cheapest first.

estimate_cost(model, input_tokens, output_tokens)

Estimate cost before making a call.

get_optimization_suggestions()

Analyze usage and return ranked suggestions with estimated monthly savings.

format_dashboard()

Human-readable spending dashboard with budget bars and tips.

export_report(output_file, period)

Export full report to JSON.

record_from_anthropic_response(monitor, response, task_label)

Helper to auto-record from Anthropic SDK response object.

record_from_openai_response(monitor, response, task_label)

Helper to auto-record from OpenAI SDK response object.


Privacy & Security

  • Zero telemetry — No data sent anywhere
  • Local-only storage — Everything in .tokenwatch/ on your machine
  • No API keys required — The monitor itself needs no credentials
  • No authentication — No accounts or logins needed
  • Full transparency — MIT licensed, source code included

Changelog

[1.2.3] - 2026-02-16

  • 📋 Updated SKILL.md model table to match code: 41 models across 10 providers

[1.2.0] - 2026-02-16

  • ✨ Added DeepSeek, Meta Llama, MiniMax providers
  • ✨ Expanded to 41 models across 10 providers
  • ✨ Updated all Anthropic/OpenAI/Google/Mistral pricing to Feb 2026 rates

[1.1.0] - 2026-02-16

  • ✨ Added xAI Grok, Kimi (Moonshot), Qwen (Alibaba)
  • ✨ Expanded to 32 models across 7 providers

[1.0.0] - 2026-02-16

  • ✨ Initial release — TokenWatch
  • ✨ Pricing table for 11 models across 5 providers
  • ✨ Budget alerts: daily, weekly, monthly, per-call thresholds
  • ✨ Model cost comparison, cost estimation, optimization suggestions
  • ✨ Auto-hooks for Anthropic and OpenAI response objects
  • ✨ Dashboard, JSON export, local-only storage, MIT licensed

Last Updated: February 16, 2026

Current Version: 1.2.3

Status: Active & Community-Maintained

© 2026 UnisAI Community

版本历史

共 1 个版本

  • v1.2.3 当前
    2026-03-29 07:27 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

data-analysis

Data Analysis

ivangdavila
{"answer":"数据分析与可视化。查询数据库、生成报告、自动化电子表格,将原始数据转化为清晰可行的见解。适用于:(1) 您……"}
★ 198 📥 65,104
data-analysis

Excel / XLSX

ivangdavila
创建、检查和编辑 Microsoft Excel 工作簿及 XLSX 文件,支持可靠的公式、日期、类型、格式、重算及模板保留功能。
★ 368 📥 140,435
ai-intelligence

Self Improvement For All

vedantsingh60
在本地捕获、存储和检索错误、纠正与最佳实践,以持续改进AI智能体工作流和知识。
★ 0 📥 1,749