Release log

Every vibestats ship, in one place.

CLI fixes, web changes, model support, and migration notes. Written for people who want the diff without reading the diff.

Latestv1.4.7

Codex reset credits

Entries49

Public releases tracked from package history.

SinceDec 31

Launch-era notes stay visible for debugging old installs.

Current year2026

4 recent releases sit at the top.

2026
v1.4.7

Codex reset credits

Added a local-only Codex reset-credit diagnostics command that reads the locally authenticated Codex Desktop session and prints sanitized status details.

  • Added vibestats codex-resets and vibestats codex resets for checking available reset credits, grant times, expiry times, status, and title.
  • The command redacts auth tokens, account IDs, and authorization headers, with optional credit IDs only behind --debug.
v1.4.6

CLI version metadata

Fixed the CLI version metadata so published vibestats builds report the package version through --version.

  • vibestats --version now reports 1.4.6 from the command metadata instead of the stale 1.4.2 string.
  • Added a regression test that keeps the CLI command metadata version aligned with packages/cli/package.json.
v1.4.5

Claude Fable support

Added first-class Claude Fable handling so usage reports label the new model correctly, keep it above Opus in daily rows, and price it with Anthropic's premium public rates.

  • Raw claude-fable-5 usage now displays as Claude Fable with the fable share token instead of leaking the provider identifier.
  • Cost estimates use Anthropic's public Claude Fable rates of 10.00 input, 50.00 output, 12.50 cache write, and 1.00 cache read per 1M tokens.
  • Daily model ordering now puts Claude Fable above Opus, Sonnet, and Haiku so the top model is shown first.
  • Usage cache storage moved to v2 so existing cached labels and costs are recalculated with the new model mapping.
v1.4.4

Opus 4.8 per-day ordering

Fixed the daily usage table listing Sonnet above Opus 4.8 because Opus 4.8 was missing from the model tier ranking and fell back to the lowest priority.

  • Opus 4.8 now ranks at the top of the Claude tier order, so the strongest model always appears first within each day.
  • Added regression tests covering the Opus > Sonnet > Haiku ordering and Opus generation ranking (4.8 > 4.7 > 4.6 > 4.5 > 4.1).
v1.4.3

Opus 4.8 pricing

Added first-class Claude Opus 4.8 support so usage reports label it correctly and price it at the real Opus 4.x rates instead of mislabeling it as Opus 4.7 and overcharging at Opus 4.1 rates.

  • Opus 4.8 now shows as its own row with the o48 share token instead of being merged into the Opus 4.7 bucket.
  • Cost estimates use the correct Opus 4.x rates of 5.00 input and 25.00 output per 1M tokens, fixing a ~3x overcharge that priced 4.8 usage at the legacy Opus 4.1 tier (15.00/75.00).
  • The claude-opus-4-8[1m] long-context variant resolves to the same label and pricing.
v1.4.2

GPT-5.5 Codex pricing

Added first-class GPT-5.5 Codex model support so usage reports sort it as the current top model and calculate costs with the official API pricing.

  • GPT-5.5 now uses the g55 share token, displays ahead of GPT-5.4 in daily reports, and avoids the old fallback pricing path.
  • Codex cost estimates now use GPT-5.5 rates of 5.00 input, 0.50 cached input, and 30.00 output per 1M tokens.
v1.4.1

Dashboard port-conflict fix

Fixed --dashboard silently claiming a port already taken by another local Node server on macOS.

  • findFreePort now connect-probes each candidate before binding, catching the macOS IPv6-dual-stack quirk where a second loopback bind succeeds but connections land on the first listener.
  • Dashboard skips cleanly to the next free port (e.g. 8081) when 8080 is already occupied by another dev server.
v1.4.0

Local web dashboard

Added a local web dashboard for exploring usage stats, activity heatmaps, and wrapped summaries all in one place.

  • Launched with --dashboard flag which spins up a local server, opens the browser, and exits cleanly on Ctrl+C.
  • Dashboard integrates usage stats, activity heatmaps, and wrapped summaries in an interactive web interface — fully offline against local JSONL data.
  • Supports all existing CLI filters (date ranges, models, sources) from the web interface.
v1.3.14

Persistent usage cache

Added a local persistent cache so repeated CLI stats commands reuse unchanged usage sources while keeping refresh and bypass controls available.

  • Repeated usage, activity, wrapped, Codex, and combined stats runs now reuse cached file-level parses when source fingerprints are unchanged.
  • Added --no-cache and --refresh-cache for one-off bypasses or forced cache rebuilds.
  • Cache invalidation tracks Claude JSONL, Codex sessions, Factory pairs, and OpenCode database WAL files while using atomic best-effort writes.
v1.3.13

Usage command aliases

Made live limit commands easier to discover by routing bare usage scopes to the same local limit view and adding help for unknown commands.

  • Bare usage scopes such as usage all and usage codex now open the local live limit view unless stats flags are provided.
  • Usage stats flags such as total, daily, and since still keep the token usage table behavior for combined or Codex-only stats.
  • Unknown positional commands now exit with a concise help message instead of silently scanning usage data.
v1.3.12

Local usage limits

Added local CLI limit views for Claude and Codex with provider-colored progress bars and weekly pace signals.

  • Added limits commands for Claude, Codex, and combined local rate-limit snapshots without provider API keys.
  • Claude usage now reads the interactive usage view through a temporary tmux session and cleans it up after capture.
  • Codex limits use the local app-server path and render alongside Claude with blue and green progress bars plus reserve or deficit pace output.
v1.3.11

Opus 4.7 model labels

Updated model handling for the latest Opus release and added a Claude-only family filter.

  • Generic Opus usage now displays as Opus 4.7 while existing Opus 4.6 usage remains versioned separately.
  • Added the o47 share token so CLI-generated links and hosted pages preserve the new Opus label.
  • Added a Claude family filter alongside the existing Kimi and MiniMax filters.
v1.3.10

Kimi and MiniMax usage filters

Added first-class family filters for Kimi and MiniMax across usage, wrapped, activity, and share output.

  • Added `--kimi` and `--minimax` filters that narrow local usage stats to just those model families across Claude-compatible, OpenCode, Factory, and Codex-backed sources.
  • Normalized Kimi-code and MiniMax-code aliases so local model labels and shared pages stay consistent.
  • Extended the web share and legacy views so filtered stats render with family-specific titles instead of generic Claude/Codex labels.
v1.3.9

MiniMax and Kimi multi-source stats

Expanded Claude-compatible ingestion beyond raw Claude JSONL so MiniMax and Kimi usage now lands correctly in usage tables, wrapped stats, and hosted shares.

  • Added local ingestion from Claude projects, OpenCode, and Droid/Factory sessions instead of relying on just one Claude-compatible store.
  • Fixed the Claude-compatible dedup logic that was dropping later usage-bearing assistant events and undercounting MiniMax and Kimi tokens.
  • Applied official routed pricing for Fireworks Kimi K2.5 Turbo and Fireworks MiniMax M2 family rates so the new models contribute real cost instead of $0.
v1.3.8

Subagent-aware stats and Claude diagnostics

Fixed the biggest stats correctness issue in the CLI by separating canonical main sessions from subagents while keeping token and cost totals intact.

  • Claude and Codex session counts now distinguish main sessions from subagents instead of inflating headline session totals.
  • Added `--claude-system` and `--claude-limits` commands for inspecting `~/.claude.json`, `~/.claude/usage-data`, cache freshness, and local rate-limit signals.
  • Refined the web share surfaces again with restored legacy usage/wrapped balance, tighter activity hover layout, and cleaner host-aware share behavior.
v1.3.7

Web-hosted share URLs

Shifted the CLI to emit share links that stay on the vibestats web host instead of exposing backend endpoints.

  • CLI share output now prefers user-facing web URLs.
  • Prepared the ground for the later share-page visual cleanups and host redirect fixes.
v1.3.6

Share publishing stabilisation

Cleaned up release metadata and fixed the publishing path for vibestats shares.

  • Resolved share publishing failures that could break generated share pages.
  • Tightened release metadata so the CLI and hosted share flow stayed in sync.
v1.3.5

Activity heatmap and hosted sharing

Introduced the bigger second wave of web functionality: activity graphs, richer share artifacts, and deployment support.

  • Added the GitHub-style activity heatmap view.
  • Introduced the share artifact system and hosted share pages.
  • Added Docker deployment support for the web app.
v1.3.4

Model naming cleanup

Polished model naming and filtering so the Claude and Codex views read like product names instead of raw internals.

  • Fixed Sonnet 4.6 to show the proper display name instead of a generic `Sonnet` label.
  • Filtered GPT-family models out of the Claude-only presentation and tightened footer copy.
v1.3.3

Codex names in share UI

Made the hosted share pages understand and render Codex model names correctly.

  • Web share UI now shows Codex model display names instead of awkward raw identifiers.
  • Synced the CLI package metadata for the 1.3.3 line.
v1.3.2

Release metadata sync

Small release to align package metadata and published versioning.

  • Synced package metadata to the intended release state.
v1.3.1

Full GPT-5.x Codex variant support

Expanded Codex model detection so the CLI recognizes the broader GPT-5.3, 5.2, and 5.1 Codex variant set cleanly.

  • Added support for GPT-5.3, GPT-5.2, and GPT-5.1 Codex naming variants.
  • Reduced raw-model fallbacks for Codex users.
v1.3.0

Rolling windows for usage views

Added a cleaner way to inspect recent usage windows directly from the CLI.

  • Added `--last N` date-window support for usage queries.
  • Started the 1.3 release line with a more flexible usage-report workflow.
v1.2.0

New model support

Expanded model awareness for the newer Claude and Codex-era releases.

  • Added Opus 4.6 and GPT-5.3 model support.
v1.1.0

Project and session drill-downs

Made the CLI much more useful for day-to-day debugging by adding finer filters and a stronger landing-page presentation.

  • Added `--project` and `--sessions` flags for per-project and per-chat breakdowns.
  • Added interactive visual effects to the landing pages.
v1.0.23

Local timezone grouping

Corrected date bucketing so activity follows the user's local day instead of UTC rollover edges.

  • Switched usage grouping from UTC date boundaries to local timezone-aware grouping.
v1.0.22

Async loading and tier sorting

Improved the CLI feel for larger histories by making loading more responsive and model ordering more intuitive.

  • Added async file loading with an animated spinner.
  • Sorted Claude models by tier priority, keeping Opus above Sonnet and Haiku.
v1.0.21

Launch-day packaging refresh

Small republish in the middle of the loading and spinner rollout.

  • Stability release during the spinner/loading iteration cycle.
v1.0.20

Launch-day packaging refresh

Another small republish while the CLI loading experience was being tuned.

  • Intermediate release to keep the rollout moving during rapid CLI UX iteration.
2025
v1.0.19

TTY-safe spinner behaviour

Hardened the spinner logic so it still animates in more terminal environments.

  • Forced spinner animation regardless of TTY detection quirks.
v1.0.18

Single-line spinner compatibility

Reduced spinner complexity to improve terminal compatibility.

  • Simplified the spinner to a single-line presentation for better compatibility.
v1.0.17

Spinner hold-time fix

Kept the spinner visible long enough to feel intentional during quick operations.

  • Forced a full minimum spinner display interval.
v1.0.16

Spinner dwell polish

Smoothed the loading motion so it no longer flashes by too quickly.

  • Added a minimum display time for the animated spinner.
v1.0.15

Immediate spinner render

Removed the awkward initial pause before the loading indicator appeared.

  • Rendered the first spinner frame immediately.
v1.0.14

Wave spinner

Introduced the first branded CLI loading animation.

  • Added the VIBESTATS wave animation spinner.
v1.0.13

Wrapped URL polish

Cleaned up the wrapped share route and made the generated URL feel less brittle.

  • Fixed wrapped shares to use the `/wrapped/` path correctly.
  • Improved full share URL UX.
v1.0.12

Orange share-link styling

Small presentation release focused on matching the vibestats visual language.

  • Added orange styling to the usage share link.
v1.0.11

Raw model normalization

Reduced duplicate model rows caused by inconsistent raw IDs.

  • Normalized raw model IDs to prevent duplicate entries.
v1.0.10

Parity fixes for usage decoding

Closed some of the biggest mismatches between vibestats, ccusage, and the web decoder.

  • Deduplicated messages to better match ccusage totals.
  • Added missing model-name mappings to the web decoder.
v1.0.9

Historical stats-cache support

Added support for the Claude `stats-cache.json` path so older activity can be reconstructed more reliably.

  • Loaded historical usage from `stats-cache.json`.
v1.0.8

Automatic long-range monthly view

Made longer windows easier to scan without requiring manual aggregation switches.

  • Automatically switched to monthly aggregation for long date ranges.
v1.0.7

Codex session parsing fix

Brought Codex usage parsing in line with the real on-disk session format.

  • Fixed Codex usage parsing to match actual session files.
v1.0.6

Share URL correctness fixes

Resolved two of the most obvious share-flow routing issues.

  • Fixed the shared usage window to show the last 31 days instead of the first 31.
  • Redirected usage shortlinks to `/` instead of `/wrapped`.
v1.0.5

Usage sharing foundations

Started the first real sharing workflow for usage reports and tightened the web chrome around it.

  • Added the `--share` flag for usage stats.
  • Added footer links on the web pages and refreshed vibestats branding docs.
v1.0.4

Domain and filtering cleanup

Early polish release after the rename to vibestats.

  • Updated URLs to `vibestats.wolfai.dev`.
  • Filtered synthetic models out of user-facing output.
v1.0.3

Sparkle logo and CLI typing animation

Added some of the first branded UI details to the web experience.

  • Introduced the sparkle logo treatment and command typing animation on the landing page.
v1.0.2

Token counting accuracy

Corrected the early CLI math so totals lined up with the reference tooling.

  • Matched token counting more closely to ccusage.
v1.0.1

Launch UI refresh

Quick visual polish pass right after the initial release.

  • Refined the web UI with a sleeker launch look.
v1.0.0

Initial release

The first public vibestats package, launched as Claude Code Wrapped.

  • Shipped the initial Claude Code Wrapped CLI and web experience.