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.1.2.tar.gz (9.3 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.1.2-py3-none-any.whl (11.2 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: opencode_usage-0.1.2.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","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.1.2.tar.gz
Algorithm Hash digest
SHA256 db264269a9a2daf76bad9000705fcd11bf87487294f65425ed6dae586ed6044b
MD5 223b69346bc44595a44531c92e1adb6d
BLAKE2b-256 28e5cd792db96255ee884d6ecdc9b9fc9bb9384dcdb6f25ba71dd5210860d96f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: opencode_usage-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 11.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.6 {"installer":{"name":"uv","version":"0.10.6","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.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 5332a305b12ec00aee83af0f36beafd451fb9e6ef905b705d600c1fa46a68284
MD5 d350fde55967aa537e6b5fd15b3af603
BLAKE2b-256 5855834d98883cf399640faa3ece397a35ec77028a53fef41c12f7a283cc330f

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