Skip to content

ivasuy/VibeDeck

Repository files navigation

VibeDeck

macOS release npm version Homebrew tap license

VibeDeck shows you what every AI coding tool on your machine is burning, in real time, all in one place.

Local-first. Multi-provider. Mac-native as the premier surface, with CLI and dashboard access for everyone. Branch-aware when local evidence supports it.

Why VibeDeck

AI coding spend is scattered across local logs, provider folders, app state, and session files. VibeDeck turns that into one local view of what is active now, what it has burned, and where that usage belongs.

The product is built around three promises:

  • See live spend across the AI coding tools you actually use.
  • Keep the data local on your machine instead of sending prompts or transcripts to a hosted analytics service.
  • Drill into projects and branches when attribution is available, without hiding existing non-git local work.

VibeDeck is not a hosted team telemetry product. If you want to share a snapshot, use exports, screenshots, or README banners.

Built For Local AI Power Users

VibeDeck is for developers who run AI coding tools locally and want one surface for current sessions, local usage history, provider status, and project context. The Mac app is the premier surface, with the CLI and browser dashboard still available when you want terminal workflows or a local web view.

For team sharing, VibeDeck stays intentionally local-first. Share exports, screenshots, or README banners instead of uploading developer telemetry to a hosted service.

Install

macOS app

Homebrew

brew install ivasuy/tap/vibedeck

npm

npm install -g vibedeck-cli

Run without installing globally:

npx vibedeck-cli serve

Product Showcase

macOS app Dashboard Widgets
macOS app demo Dashboard demo Widgets demo
Native macOS shell around the local VibeDeck backend, with release packaging and desktop-first onboarding. Local dashboard for live sessions, branch rollups, provider status, diagnostics, and project views. Compact desktop surfaces for glanceable live usage, spend estimates, and session state throughout the day.

Supported Providers

Icon Provider Supported Input
Codex CLI Yes JSONL rollout logs and session usage
Claude Code Yes JSONL transcripts and hook-aware local state
Cursor Yes Local SQLite runtime data
Gemini CLI Yes Local JSON session files
OpenCode Yes Local SQLite channel and message tables
OpenClaw Yes JSONL agent logs
Kiro / Kiro CLI Yes Local chat files and runtime traces
Kimi Code Yes Local provider session data
GitHub Copilot CLI Yes Legacy CLI state and VS Code transcripts
Hermes Agent Yes Local agent runtime files
Antigravity Yes Local provider runtime state

Additional local adapters are present for Every Code, Goose, Crush, OMP, Pi, Droid, Qwen, Cursor Agent, IBM Bob, Roo Code, KiloCode, CodeBuddy, and Craft where local files or databases are available. Some providers are hook-based. Others are passive readers over local JSONL, SQLite, CSV, or native app state. Attribution depth depends on the local records each provider exposes, so VibeDeck is designed for mixed-runtime environments rather than single-provider lock-in.

What VibeDeck Tracks Today

  • Live sessions and active workstreams
  • Provider and model usage where local data is available
  • Project and branch rollups for attributed local sessions
  • Existing non-git local folders as visible projects
  • Exact billable-token views where provider payloads expose billable token fields
  • Per-day cost heatmaps for active-day and best-day widgets
  • Historical local usage preserved in SQLite
  • Local integration health, sync status, and doctor diagnostics

Feature Highlights

Live local view

VibeDeck shows what is running now, not just what ran earlier. Live pages combine real-time session state with preserved historical local usage, so active projects do not lose their prior context when a session goes stale and comes back later.

Branch and worktree attribution

When local records include enough context, usage can roll up under the engineering structure people work in: project, repo, worktree, branch, and session. Existing local folders without git metadata still remain visible instead of being discarded.

Native macOS app and widgets

The packaged macOS app and desktop widgets let VibeDeck live outside the browser and act more like a daily operating surface than a hidden developer tool. The dashboard and CLI continue to cover local web and terminal workflows.

Canonical local ledger

Default local state lives under ~/.vibedeck/, with canonical usage stored in SQLite and compatibility queue exports preserved alongside it. This keeps VibeDeck local-first while still giving you stable historical rollups and reconciliation surfaces.

Fast rebuild and startup path

Rebuilds use staged SQLite promotion, projection freshness, recent-first processing, dirty branch-fact materialization, and grouped-flush caches so new users can start from local provider files without blocking the UI on the full historical repair path.

Power User Surfaces

VibeDeck also includes supporting surfaces for developers who want deeper local context after the core live-spend view is working.

Skill and integration management

VibeDeck keeps track of local integrations, skill-related runtime state, provider hooks, README sync, native install bootstrap, and local health surfaces through status, doctor, and setup flows. These are power-user operations for maintaining an AI-heavy local setup.

README Banner Showcase

Dual-banner README surfaces provide optional profile-level visibility and project-level context.

GitHub Profile README Banner

VibeDeck GitHub profile usage banner

Profile-ready usage surface with cross-provider model mix, token scale, estimated cost rollups, and trend context.

Project README Banner

Project Usage

VibeDeck Project Usage

Repository-local usage surface focused on the active project path, with model split, token mix, estimated cost, and snapshot context.

Quick Start

Initialize local integrations:

vibedeck init

Sync local usage into the canonical database:

vibedeck sync

Start the local dashboard:

vibedeck serve

Then open:

http://127.0.0.1:7690

Common Commands

vibedeck serve
vibedeck sync
vibedeck status
vibedeck doctor
vibedeck diagnostics
vibedeck optimize --scan
vibedeck auth show
vibedeck auth rotate
vibedeck readme-sync status
vibedeck project-readme-sync

More examples live in docs/COMMANDS.md.

Local-First Architecture

Default local state:

~/.vibedeck/
  auth.token
  cache/pricing.json
  tracker/
    vibedeck.sqlite3
    cursors.json
    queue.jsonl
    project.queue.jsonl
    diagnostics/

vibedeck.sqlite3 is the canonical local store for sessions, branches, projects, usage buckets, billable token rollups, projection freshness, and historical audit state.

Public dashboard routes today include /dashboard, /live, /branches, /settings, /skills, /widgets, /compare, /models, /yield, /export, /optimize, and /plan.

FAQ

Does VibeDeck upload prompts and responses?

No. VibeDeck is local-first. It reads local usage signals, computes rollups locally, and stores state under ~/.vibedeck/.

Is VibeDeck only for one provider?

No. VibeDeck is designed for mixed-runtime AI coding workflows and can ingest usage from multiple local providers into one product.

Is it only a dashboard?

No. VibeDeck includes a Mac app, dashboard, CLI, widgets, local integrations, health/debug tooling, and optional power-user surfaces described above.

What makes it different from provider billing dashboards?

Provider billing pages usually stop at account-level usage. VibeDeck uses local provider records to connect usage to project, branch, worktree, folder, and session context when that attribution is available.

Resources

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors