macOS 14+Freev0.4.0No network

A cat that watches your Claude Code agents so you don't have to.

CodeCat sits in your menu bar, keeps the Mac awake while agents work, and waves a paw the moment one is waiting for you. Native Swift. No accounts, no network, a 2 MB download.

Signed and notarized. Requires Claude Code (CLI or desktop).

The CodeCat island on a MacBook notch: a pixel cat on a black plate, with a session counter showing two running agents.
The ten-second loop: sleeping, then working with a session count, then waiting for you, then done. Captured at 1:1.

What it does

  • Knows when an agent needs you Subscribes to Claude Code hooks, so it knows exactly when an agent is waiting for permission, without guessing from CPU load. The cat waves and the badge turns orange; a crashed session turns it red, on the island and the floating cat alike.
  • Keeps the Mac awake — only while agents work Holds a power assertion while any session is working and releases it two minutes after the last one finishes. Never below 15% battery.
  • Closed-lid mode Optional. Lets agents run with the lid shut, behind a sudoers rule scoped to exactly two commands, with a watchdog that restores normal sleep if CodeCat ever dies.
  • Jump to the session Click a session and land in the exact Terminal or iTerm2 tab that spawned it. For the desktop Claude app it opens that exact chat, not just the app.
  • While you were away Everything that happened between lock and unlock, in one list.
  • Island or floating Sits on the MacBook notch as an island, or floats above everything on every Space. Eight cat skins, plus any pet in the Codex pet format.

Two minutes to set up

  1. Download, drag, open. Signed and notarized — no Gatekeeper dance.
  2. Set up Claude Code from the menu. CodeCat shows the five hook entries it will merge into ~/.claude/settings.json, waits for your yes, and leaves everything else untouched.
  3. Start an agent. The cat wakes up.

Questions

Does it phone home?
No. Zero network calls, zero analytics, zero dependencies. The download is 2 MB.
What does it write to my machine?
Five hook entries in ~/.claude/settings.json — shown before they are written, merged rather than overwritten, removable from the menu — plus a socket and a log under ~/Library/Application Support/CodeCat. Closed-lid mode additionally installs one sudoers rule for two exact pmset commands and one LaunchDaemon; the dialog spells both out before it asks for your administrator password.
Which terminals?
Terminal.app, iTerm2, and the Claude desktop app, where a click opens the exact chat. Others show their sessions but can’t be jumped to yet.
Cursor / Codex / other agents?
Sessions: Claude Code only, CLI and desktop. Pets are another matter — any pet in the Codex pet format, a folder in ~/.codex/pets, shows up in the skin picker and the cat wears it. If you want another agent tracked, open an issue.
Is it signed?
Yes — Developer ID signed and notarized. Open it like any other app.
Price?
Free. If it saved you an idle afternoon, there’s a Ko-fi link in the About menu.

I built it in five days with Claude Code agents — read how. Cat sprites by luizmelo (CC0) and Maze.Bit.Boutique (CC BY 4.0).