{"_id":"@azatakmyradov/opencode-usage","name":"@azatakmyradov/opencode-usage","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@azatakmyradov/opencode-usage","version":"1.0.0","description":"CLI tool to view LLM usage statistics and costs for OpenCode sessions","main":"dist/index.js","type":"module","bin":{"opencode-usage":"dist/cli.js"},"scripts":{"build":"bun build src/cli.ts --outdir dist --target node","dev":"bun run src/cli.ts","prepublishOnly":"bun run build"},"keywords":["opencode","llm","usage-tracking","cost-tracking","token-counting","ai-tools","cli"],"author":{"name":"Azat Akmyradov"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/azatakmyradov/opencode-usage.git"},"dependencies":{"@opencode-ai/sdk":"latest","better-result":"^1.0.0"},"devDependencies":{"@types/node":"^22.0.0","typescript":"^5.7.0"},"engines":{"node":">=18.0.0"},"gitHead":"191de964a2212aca9fd369fbaec8d5412bc41e59","_id":"@azatakmyradov/opencode-usage@1.0.0","bugs":{"url":"https://github.com/azatakmyradov/opencode-usage/issues"},"homepage":"https://github.com/azatakmyradov/opencode-usage#readme","_nodeVersion":"25.2.1","_npmVersion":"11.6.2","dist":{"integrity":"sha512-JFtbF5AP4ZDrSFzCzyEJuKRqx1LsJzq22gYKSllMmzM7scmetxIklrrBvB2hrLiLwlU1VaCj5Yx9Odu1FU50BQ==","shasum":"76865e0ec8f882d08888093c3b2d6ec6eb37319d","tarball":"https://registry.npmjs.org/@azatakmyradov/opencode-usage/-/opencode-usage-1.0.0.tgz","fileCount":4,"unpackedSize":99491,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIH7jtUUYdZhpADD01dgKSOjmQkk9SHDs/Fze+2s3cEonAiA6tuhmGG71GnCtGM9eIkXEC8VA/0dHjO9+BQwv9suSDQ=="}]},"_npmUser":{"name":"azatakmyradov","email":"azat@akmyradov.me"},"directories":{},"maintainers":[{"name":"azatakmyradov","email":"azat@akmyradov.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/opencode-usage_1.0.0_1768162193686_0.8165914881576268"},"_hasShrinkwrap":false}},"time":{"created":"2026-01-11T20:09:53.590Z","1.0.0":"2026-01-11T20:09:53.820Z","modified":"2026-01-11T20:09:54.164Z"},"maintainers":[{"name":"azatakmyradov","email":"azat@akmyradov.me"}],"description":"CLI tool to view LLM usage statistics and costs for OpenCode sessions","homepage":"https://github.com/azatakmyradov/opencode-usage#readme","keywords":["opencode","llm","usage-tracking","cost-tracking","token-counting","ai-tools","cli"],"repository":{"type":"git","url":"git+https://github.com/azatakmyradov/opencode-usage.git"},"author":{"name":"Azat Akmyradov"},"bugs":{"url":"https://github.com/azatakmyradov/opencode-usage/issues"},"license":"MIT","readme":"# opencode-usage\n\nCLI tool to view LLM usage statistics and costs for OpenCode sessions.\n\n## Requirements\n\n- Node.js >= 18\n- OpenCode reachable:\n  - set `OPENCODE_URL` to an existing OpenCode server, or\n  - let `opencode-usage` attempt to start a temporary local server automatically\n\n## Installation\n\n### From npm (if published)\n\n```bash\nnpm install -g opencode-usage\n```\n\n### From source (this repo)\n\n```bash\nbun install\nbun run build\nnpm install -g .\n```\n\n## Quick start\n\n```bash\nopencode-usage --help\nopencode-usage --all\nopencode-usage --today --byModel\n```\n\n## Usage\n\n### View usage (default command)\n\n```bash\n# All-time aggregate (default when no filter flags are passed)\nopencode-usage\n\n# Aggregate across all tracked sessions\nopencode-usage --all\n\n# View a single session\nopencode-usage --session <session-id>\n\n# Date filters\nopencode-usage --today\nopencode-usage --week\nopencode-usage --month\nopencode-usage --from 2025-01-01\nopencode-usage --from 2025-01-01 --to 2025-01-10\n\n# Group aggregate by model\nopencode-usage --all --byModel\n```\n\n### Live updates\n\nRefreshes the aggregate view periodically.\n\n```bash\nopencode-usage --all --live\nopencode-usage --today --live\nopencode-usage --today --live --interval 5\n```\n\n### Sync historical data\n\n`opencode-usage` automatically syncs before showing results.\n\nIf you want to run sync explicitly:\n\n```bash\nopencode-usage sync\nopencode-usage sync --force\n```\n\nNotes:\n- Without `--force`, already-tracked sessions are generally skipped (except very recent sessions).\n- With `--force`, all sessions are re-analyzed and overwritten in local storage.\n\n### Clear data\n\n```bash\n# Prune sessions before a date\nopencode-usage clear --before 2025-01-01\n\n# Delete ALL usage data (requires explicit confirmation)\nopencode-usage clear --confirm\n```\n\n## CLI reference\n\n```text\nopencode-usage [options]\nopencode-usage sync [options]\nopencode-usage clear [options]\n```\n\n### Global options\n\n- `--help`, `-h`: Show help\n\n### Options (view usage)\n\n- `--session <id>`: View a specific session\n- `--all`: Aggregate across all sessions\n- `--today`: Filter to today\n- `--week`: Filter to this week\n- `--month`: Filter to this month\n- `--from <YYYY-MM-DD>`: Start date\n- `--to <YYYY-MM-DD>`: End date\n- `--byModel`: Group results by model\n- `--live`: Live refresh mode\n- `--interval <sec>`: Refresh interval in seconds (default: `2`)\n\n### Options (sync)\n\n- `--force`: Re-sync all sessions, overwriting existing local data\n\n### Options (clear)\n\n- `--before <YYYY-MM-DD>`: Only clear data before this date\n- `--confirm`: Confirm full deletion (required when clearing everything)\n\n## Configuration\n\n### Environment variables\n\n- `OPENCODE_URL`: OpenCode server URL. If set, the CLI will use it.\n- `NO_COLOR`: Disable ANSI colors in output.\n\n## Data storage\n\n- Usage data:\n  - `~/.local/share/opencode-usage/usage-data.json`\n  - Auto-backup: `~/.local/share/opencode-usage/usage-data.backup.json`\n\n- Pricing cache (used for model cost calculations):\n  - `~/.cache/opencode-usage/pricing-cache.json` (fetched from `https://models.dev/api.json`, cached for ~7 days)\n\n## Troubleshooting\n\n### “Could not connect to OpenCode server” / “fetch failed”\n\n- If you run OpenCode yourself, make sure it’s running and reachable.\n- If you have a non-default server URL, set it:\n\n```bash\nexport OPENCODE_URL=\"http://localhost:4096\"\n```\n\n- If you rely on the auto-started server, ensure your OpenCode environment is installed correctly (or set `OPENCODE_URL` explicitly).\n\n## Development\n\n```bash\nbun install\n\n# Run CLI directly\nbun run dev -- --help\nbun run dev -- --all\n\n# Build (bundles to dist/)\nbun run build\nnode dist/cli.js --help\n\n# Typecheck\nbunx tsc --noEmit\n```\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-91e5f5279e32c3d8a1e1206f1c90d154"}