vibecockpit
Health Uyari
- License — License: MIT
- Description — Repository has a description
- Active repo — Last push 0 days ago
- Low visibility — Only 5 GitHub stars
Code Basarisiz
- rm -rf — Recursive force deletion command in build.sh
- network request — Outbound network request in frontend/src/lib/api.js
Permissions Gecti
- Permissions — No dangerous permissions requested
This open-source skill acts as a unified dashboard that automatically scans your local and remote filesystems to organize, search, and resume AI coding sessions across multiple different tools (like Claude Code, Codex, and Cursor).
Security Assessment
Overall risk: Medium. The tool inherently accesses highly sensitive data by scanning local directories (such as `~/.claude` and `~/.codex`) which likely contain your complete AI conversation histories and code snippets. A failed scan flagged a recursive force deletion command (`rm -rf`) inside a build script. While standard for cleanup routines, this always warrants a manual code review to ensure it cannot accidentally target unintended directories. Additionally, the tool makes outbound network requests from its frontend API library. The installation method relies on piping a remote curl script directly into bash, which is a common but inherently risky practice that automatically executes whatever code is hosted at that URL.
Quality Assessment
The project is licensed under the permissive MIT license and appears to be actively maintained, with new pushes occurring as recently as today. However, community trust and visibility are currently very low. With only 5 stars on GitHub, the tool has not yet been broadly tested or vetted by the open-source community. It is essentially a new, unproven project.
Verdict
Use with caution — the tool requires read access to highly sensitive conversation directories, and its low community visibility means the code should be manually reviewed before installation.
The cockpit for your copilots — browse, search, and resume AI coding sessions across all your tools
VibeCockpit
The cockpit for your copilots.
Browse, search, and resume AI coding sessions across all your tools — from one dashboard.
Why?
You vibe-code across multiple AI tools. Claude Code, Claude Desktop, Codex, Copilot, Gemini, OpenCode, Cursor, Antigravity — each stores sessions in its own format and directory. Switching between them means losing track of where you left off.
VibeCockpit scans all of them automatically and gives you one place to search, filter, and resume any session — locally or on remote machines via SSH.
Quick Start
# Install (Linux / macOS)
curl -fsSL https://raw.githubusercontent.com/NJannasch/vibecockpit/main/install.sh | bash
# Launch the web dashboard
vibecockpit --web
# Or use the terminal TUI
vibecockpit
That's it. VibeCockpit auto-detects which tools you have installed and shows all your sessions.
Supported Tools
| Tool | Auto-detect | Resume | Remote SSH |
|---|---|---|---|
| Claude Code | ✅ | ✅ | ✅ |
| Claude Desktop (Claude Code in the desktop app) | ✅ (macOS) | ✅ | — |
| Codex CLI | ✅ | ✅ | ✅ |
| GitHub Copilot CLI | ✅ | ✅ | ✅ |
| OpenCode | ✅ | — | ✅ |
| Gemini CLI | ✅ | — | ✅ |
| Cursor Agent (CLI + IDE) | ✅ | ✅ | — |
| Antigravity (Google) | ✅ | ✅ | — |
| Custom agents (Hermes, etc.) | via SSH | — | ✅ |
Zero config required. If the tool's data directory exists (
~/.claude,~/.codex, etc.), VibeCockpit finds it.
Features
- Dashboard — overview of all tools with session counts, active indicators, and recent activity
- Cost tracking — see what your AI coding tools cost you across all providers. Heatmap, trend charts, per-project breakdown, and plan recommendations that tell you which subscription tier actually fits your usage
- Fuzzy search — type
hermesormodel:opus branch:main activeto find anything - Filter chips — click to filter by tool, model, or active status
- Group by tool, project, or date — collapsible sections
- File tree view — see all projects as a filesystem tree, tool-agnostic
- Model picker — resume with a different model (including 1M context variants)
- Remote SSH scanning — scan sessions on remote machines, resume via SSH terminal
- Dark / light theme — persisted to config
- Plugin architecture — extensible for custom tools and agents
- Terminal TUI — keyboard-driven alternative with the same search and filtering
Install
One-line install (Linux / macOS)
curl -fsSL https://raw.githubusercontent.com/NJannasch/vibecockpit/main/install.sh | bash
To update, run the same command — the installer detects your existing version and upgrades in place.
More install optionsmacOS note: If you download a binary manually (not via the install script), macOS may show a Gatekeeper warning. Fix with:
xattr -d com.apple.quarantine ~/.local/bin/vibecockpit
The install script handles this automatically.
# With wget
wget -qO- https://raw.githubusercontent.com/NJannasch/vibecockpit/main/install.sh | bash
# Specific version
VERSION=v0.1.0 curl -fsSL https://raw.githubusercontent.com/NJannasch/vibecockpit/main/install.sh | bash
# Custom directory
PREFIX=/opt curl -fsSL https://raw.githubusercontent.com/NJannasch/vibecockpit/main/install.sh | bash
# From source (Docker — recommended; produces a host-platform binary)
git clone https://github.com/NJannasch/vibecockpit && cd vibecockpit
./build.sh # Docker handles Node + Go inside the container
# Or build with your own toolchain (Node 22+ and Go 1.24+ required)
./build.sh local
# Download binary directly
# → https://github.com/NJannasch/vibecockpit/releases
Start on login (optional)
vibecockpit --autostart # systemd (Linux) or launchd (macOS)
vibecockpit --remove-autostart
Configuration
Config is at ~/.config/vibecockpit/config.yaml. Most settings can also be changed from the web UI settings page.
terminal: default # auto-detected, or: kitty, alacritty, wezterm, ghostty, ...
theme: light # light | dark
sort_by: modified # modified | created | name | messages
group_by: none # none | provider | project | date
# Override binary paths (e.g. tools installed via nvm)
provider_paths:
gemini: ~/.nvm/versions/node/v22.21.1/bin/gemini
opencode: ~/.nvm/versions/node/v22.21.1/bin/opencode
# Scan remote machines via SSH
remote_sources:
- name: my-server
host: dev.example.com
user: deploy
method: ssh # or http (for remote VibeCockpit instances)
Tip: When a tool can't be found in PATH, VibeCockpit shows the exact config to add — including an "Open Settings" button in the web UI.
TUI Keyboard Shortcuts
| Key | Action |
|---|---|
↑ ↓ j k |
Navigate |
Enter |
Resume session |
m |
Pick model, then resume |
/ |
Fuzzy search + filters |
s |
Cycle sort |
Tab |
Cycle grouping |
n |
New project |
d |
Delete session |
q |
Quit |
How It Works
VibeCockpit reads session data directly from each tool's local storage. It never modifies your session files (except when you explicitly delete a session).
| Tool | Data Location |
|---|---|
| Claude Code | ~/.claude/projects/*/sessions-index.json + *.jsonl |
| Claude Desktop | ~/Library/Application Support/Claude/claude-code-sessions/*/*/local_*.json (macOS) |
| Codex CLI | ~/.codex/state_5.sqlite + history.jsonl |
| Copilot CLI | ~/.copilot/session-state/*/workspace.yaml + events.jsonl |
| OpenCode | ~/.local/share/opencode/opencode.db |
| Gemini CLI | ~/.gemini/tmp/*/chats/*.json |
| Cursor Agent (CLI) | ~/.cursor/chats/<hash>/<uuid>/store.db |
| Cursor Agent (IDE) | ~/.config/Cursor/User/globalStorage/state.vscdb |
| Antigravity | ~/.gemini/antigravity/brain/*/task.md.metadata.json |
Resuming a Claude Desktop session uses the
claude://resume?session=…deep link, opening the conversation back in the Claude Desktop app. Sessions deduped across the standalone CLI and the desktop wrapper so each appears once.
For remote machines, it runs scan commands over SSH — no agent installation required on the remote.
Cost Tracking
VibeCockpit extracts token usage from your session files and estimates costs using current API pricing. No API keys or billing access needed — it's all computed locally from the data already on your machine.
What you get:
- Per-session cost estimates on every session card (
$12.40or~$3.50for estimates) - GitHub-style activity heatmap — switch between cost, tokens, messages, or session count
- Stacked trend chart — daily, weekly, or monthly, grouped by tool or project
- Plan recommendations — compares your actual usage against Claude Max 5x/20x, ChatGPT Pro, Gemini Ultra, and tells you which tier fits. Includes estimated API-equivalent value per plan so you can right-size.
- Model mix analysis — flags if you're spending 90% on Opus when Sonnet would work for routine tasks
- Week-over-week trends, top projects by cost, unused tool alerts
Supported token sources:
| Provider | Token data | Cost accuracy |
|---|---|---|
| Claude Code | Input, output, cache read/write per message | Exact |
| OpenCode | Input, output, reasoning, cache per message | Exact |
| Gemini CLI | Input, output, cached, thoughts per message | Exact |
| Codex CLI | Total tokens per session | Estimated (70/30 split) |
| Copilot CLI | No token data (flat subscription) | N/A |
| Cursor Agent (CLI) | Estimated from message blob sizes | Estimated |
| Cursor Agent (IDE) | Estimated from message count | Estimated |
| Antigravity | Conversations encrypted, no token data | N/A |
| Remote (SSH) | Not yet supported | — |
Contributing
VibeCockpit is built with Go (backend + TUI) and Svelte 5 (web UI).
git clone https://github.com/NJannasch/vibecockpit
cd vibecockpit
# Development: start Go API and Svelte dev server separately
vibecockpit --web --port 3456 & # API backend
cd frontend && npm run dev # Svelte with hot-reload (proxies API)
# Full build (Docker — recommended)
./build.sh # cross-builds inside Docker
./build.sh local # if you'd rather use the host toolchain
# Run tests
go test ./...
Adding a new provider
- Create
internal/provider/yourprovider/yourprovider.go - Implement the
provider.Providerinterface - Add an
Available() boolcheck - Register in
main.go→buildRegistry()
Architecture
frontend/ Svelte 5 + Vite (web UI)
internal/
plugin/ Plugin system + registry
remote/ SSH + HTTP remote scanning
provider/ Session scanning per tool
claude/ Claude Code (JSONL)
claudedesktop/ Claude Desktop's bundled Claude Code (macOS, deep link)
codex/ Codex CLI (SQLite)
copilot/ Copilot CLI (YAML + events)
opencode/ OpenCode (SQLite)
gemini/ Gemini CLI (JSON)
search/ Fuzzy matching + filter parsing
tui/ Terminal UI (bubbletea)
web/ HTTP server, embeds Svelte build
config/ YAML config management
launcher/ Terminal-aware process launching
install/ Binary install, desktop entry, autostart
CLI Reference
vibecockpit [flags]
--web Start the web UI (opens in browser)
--port int Port for the web UI (default: 3456)
--list List all sessions (table format)
--list --json List all sessions (JSON format)
--version Print version
--install Install to ~/.local/bin (+ Linux .desktop or macOS .app)
--uninstall Remove the installed binary, app launcher, and autostart
--autostart Start on login (systemd/launchd)
--remove-autostart Remove autostart service
--yes Skip confirmation prompts
License
MIT — Nils Jannasch
Yorumlar (0)
Yorum birakmak icin giris yap.
Yorum birakSonuc bulunamadi