VibeDeck
Local-first observability for AI coding sessions across every provider, branch, and worktree.
summary
- Unifies AI coding sessions from Claude Code, Codex, Cursor, Gemini CLI, OpenCode, Kiro, and other local tools.
- Stores provider, model, repo, worktree, branch, tool, token, and cost events in a local SQLite ledger.
- Turns scattered terminal output and vendor dashboards into one readable operational view for engineering teams.
- Ships the same data through a macOS app, Next.js dashboard, desktop widgets, and typed Node CLI.
showcase
macOS app
dashboard
widgets
problem
- Agent work lands across vendor dashboards, editor history, and terminal scrollback with no shared audit trail.
- Reviewers need to know which model touched a branch, what is still running, and why spend shifted suddenly.
- Token cost stays detached from the repo, worktree, review, and agent session that actually created it.
approach
- Adapters translate stdout and RPC events into one Session record before anything reaches the local ledger.
- SQLite keeps writes local and append-only, while rollups group activity by repo, model, branch, and time.
- The macOS app, widgets, dashboard, and CLI read one schema so live state and cost history stay aligned.
outcome
- Teams get one local operating picture for live sessions, historical rollups, cost, and branch attribution.
- Cost reviews become explainable because token usage is tied to model, repo, worktree, branch, and provider.
- DMG, Homebrew, npm, and widgets make the observability layer usable in everyday desktop workflows.