Skip to main content

CLI tool to track and display OpenCode token usage statistics

Project description

opencode-usage

CLI tool to track and display OpenCode token usage statistics. Reads directly from OpenCode's local SQLite database — no API keys or external services needed.

Features

  • Daily breakdown — token usage and cost per day
  • Group by dimension — model, agent, provider, or session
  • Agent × Model view — see which model each agent uses
  • Time filtering — last N days, relative durations (7d, 2w), or ISO dates
  • JSON output — pipe to jq or other tools
  • Cross-platform — macOS, Linux, Windows

Installation

# From PyPI
pip install opencode-usage

# Or with uv
uv tool install opencode-usage

From source

git clone https://github.com/rchardx/opencode-usage.git
cd opencode-usage
uv sync
uv tool install -e .

After installation, opencode-usage is available globally.

Usage

# Default: last 7 days, daily breakdown
opencode-usage

# Quick shortcuts
opencode-usage today
opencode-usage yesterday

# Time filtering
opencode-usage --days 30
opencode-usage --since 7d
opencode-usage --since 2025-01-01

# Group by dimension
opencode-usage --by model
opencode-usage --by agent          # shows model per agent
opencode-usage --by provider
opencode-usage --by session --limit 10

# JSON output
opencode-usage --json
opencode-usage --by model --json | jq '.rows[].label'

Example output

╭──────────────── OpenCode Usage — Last 7 days ────────────────╮
│   Calls: 1,280  │  Tokens: 52.3M  │  Cost: $0.00             │
╰──────────────────────────────────────────────────────────────╯

               Usage by Agent (Last 7 days)
┏━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┳━━━━━━━┳━━━━━━━━━┳━━━━━━━━━┓
┃ Agent                  ┃ Model        ┃ Calls ┃   Total ┃    Cost ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━╇━━━━━━━╇━━━━━━━━━╇━━━━━━━━━┩
│ build                  │ deepseek-r1  │   420 │   18.2M │       - │
│                        │ qwen-3-coder │   105 │    4.7M │       - │
├────────────────────────┼──────────────┼───────┼─────────┼─────────┤
│ explore                │ gemma-3      │   310 │   12.5M │       - │
│                        │ minimax-m2.5 │   198 │    8.1M │       - │
├────────────────────────┼──────────────┼───────┼─────────┼─────────┤
│ librarian              │ llama-4      │   156 │    5.8M │       - │
├────────────────────────┼──────────────┼───────┼─────────┼─────────┤
│ oracle                 │ qwen-3-coder │    91 │    3.0M │       - │
└────────────────────────┴──────────────┴───────┴─────────┴─────────┘

Configuration

Environment Variable Description
OPENCODE_DB Override database path (default: auto-detected per platform)

Default database locations:

  • All platforms (macOS, Linux, Windows): ~/.local/share/opencode/opencode.db

Development

git clone https://github.com/rchardx/opencode-usage.git
cd opencode-usage
uv sync

# Lint & format
uvx ruff check .
uvx ruff format .

# Install pre-commit hooks
uvx pre-commit install

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

opencode_usage-0.2.1.tar.gz (32.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

opencode_usage-0.2.1-py3-none-any.whl (39.9 kB view details)

Uploaded Python 3

File details

Details for the file opencode_usage-0.2.1.tar.gz.

File metadata

  • Download URL: opencode_usage-0.2.1.tar.gz
  • Upload date:
  • Size: 32.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for opencode_usage-0.2.1.tar.gz
Algorithm Hash digest
SHA256 c1a3614a48fd063d1cf6fc4368ffa7b55fd5217ea1e65ba0975c4f1fa5c6a18e
MD5 620ae0a944ad5088fc08ceac80abed23
BLAKE2b-256 5d2036a855c100e6bad581269e43c3eb46142317505bc365e2c4cf88f4d0a9f3

See more details on using hashes here.

File details

Details for the file opencode_usage-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: opencode_usage-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 39.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.7 {"installer":{"name":"uv","version":"0.10.7","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for opencode_usage-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3a89e2c36f9ad83790e0bd6e19ab6e09b9f1ad462da1ef4a577c18aa81daeb93
MD5 325908946cea5e6168db345ed81dac63
BLAKE2b-256 92a832fd01f79a1b6b3c0e4ddce5ce74e78b2663586f66ac56d2b0a2af1c5885

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page