See which session is waiting on you. Jump there with a keystroke.
cctop monitors your AI coding agents and jumps you back to the right editor or terminal window.
* Kitty targets the exact window when remote control is enabled in kitty.conf. Without it, falls back to app activation.
† Ghostty 1.3.0+ targets a terminal by working directory via AppleScript. Ambiguous if multiple Ghostty splits share the same cwd; falls back to app activation otherwise.
‡ Apple Terminal targets the tab by tty via AppleScript. Falls back to app activation inside a multiplexer (tmux, screen), where the captured tty is the multiplexer pane's pty rather than the Terminal tab's.
Hit a global hotkey to overlay numbered badges (1–9) on every session card, then press the number to jump instantly.
Drag the header to reposition the panel anywhere on screen — position persists across launches. Double-click the header to snap back to the default menubar anchor.
Lives in your macOS menubar in three states — healthy, needs attention, and a slim pill for laptops with a camera notch. See status without opening the panel.
A second tab keeps session history so you can reopen past projects easily.
Four color schemes inspired by beloved developer tools — each with dark and light variants. Switch in Settings > Appearance > Color.
Download the latest release, open the .dmg, and drag cctop.app into /Applications. The app auto-updates via Sparkle.
Signed and notarized by Apple. Runs on macOS 13+. Step 2: follow the app's instructions to connect your tools — it auto-detects what you have installed and offers one-click plugin install.
$ brew install --cask st0012/cctop/cctop
No. The plugin runs a tiny native binary on each event, which writes a small JSON file and returns immediately. There is no measurable impact on performance.
No — no network access, no analytics, no telemetry. All session data stays on your machine in ~/.cctop/sessions/ as plain JSON you can inspect anytime.
No. Once the plugin is installed, every session is automatically tracked. There's no per-project setup.
By default, by the project directory name. In Claude Code, /rename gives the session a custom label and cctop picks it up.
Plugins look for the cctop helper inside /Applications/cctop.app or ~/.cctop/bin/. Installing elsewhere breaks the integration.
cctop releases up to and including v0.15.2 shipped an appcast that confused Sparkle's update picker, so Intel Macs could receive the Apple Silicon build. The structural fix is in place going forward, but the Sparkle framework already bundled inside any installed copy of cctop ≤ 0.15.2 doesn't know about the new appcast hints. Manually download the Intel build once to get back on the upgrade path:
cctop.app into /Applications/, replacing the existing one.rm -rf /Applications/cctop.appclaude plugin remove cctop).rm -rf ~/.cctopInstalled via Homebrew? Use brew uninstall --cask cctop for step 1.