claude fleet.
why build this?
with ai coding being so much faster than doing everything manually, you can either take more breaks or run more agents in parallel. i went with parallel.
the tricky part is context switching between multiple ai coding sessions, but you can build tools to make that easier. that's what led me to claude fleet - a dashboard for keeping track of ai agents.
i took inspiration from discord's overlay - a semi-transparent, always-on-top window that shows what every claude session is doing across my machine in real-time.
the overlay sits on top of everything and shows compact session pills that update as things happen.
how does it work?
the app hooks into claude code's hooks system to track session lifecycle, tool usage, and permission requests. one tricky thing i ran into: when you cancel an agent by pressing escape, no hook fires. so i added file watching on claude's transcript files to catch those cases by parsing the jsonl for interruption patterns.
what's it built with?
- rust + tauri 2.0 — native desktop
- next.js 15 + react + typescript — frontend
- tokio async runtime + axum — hook server
- notify crate — cross-platform file watching
- websocket broadcast — sub-50ms ui updates
it runs three local servers: http hooks on port 14322, websocket broadcast on 14324, and an mcp server on 14325 for direct claude integration.
what does it track?
- session status (coding, waiting, needs help, done)
- editor detection (vscode, cursor, neovim, windsurf, continue, claude cli)
- git branch and repo info
- files changed and current task
- process and terminal tracking
what's next?
- support for models outside of claude code
- one-click navigation to repos when sessions finish, so you can jump straight into the project instead of hunting through folders