Baton is a desktop app for developing with AI coding agents. Run multiple agents in parallel, each in their own git-isolated workspace. Works with Claude Code, Codex, OpenCode, and any terminal-based agent. Smart notification badges show you which agents need attention. Review diffs, browse files, search your codebase, and let agents spawn new agents through the built-in MCP server.
I built this because running multiple Claude Code agents across multiple IDE and terminal windows was getting messy, it was all changing quite fast, and nothing out there handled it the way I wanted. I needed one place to see all my agents, review their changes, and spin up new ones without constantly switching between windows. I've been building Baton from within Baton for a while now, which has been a pretty fun loop. Would love to hear what you think!
git isolated workspace is good and rollback per file is helpful as agents can get most things right but then do something odd in one of the files.
This looks really close to what I've been wanting in an agent-driven development tool. Does it (or could it in the future) support orchestrating agent sessions on remote devices? Similar to using VSCode on Windows to connect to remote Linux environments via SSH.
the git-isolated workspace per agent is the detail that makes parallel agents actually practical. without it you're just tab-managing concurrent terminals that will eventually collide on the same files, and the mental overhead of tracking what each agent touched defeats the point. the isolation isn't an implementation detail, it's the whole model.
Awesome man! What’s the long term vision for Baton like do you see it becoming an “OS for AI developers” or more like a power tool within existing workflows?
Hi,
I built this because running multiple Claude Code agents across multiple IDE and terminal windows was getting messy, it was all changing quite fast, and nothing out there handled it the way I wanted. I needed one place to see all my agents, review their changes, and spin up new ones without constantly switching between windows.
I've been building Baton from within Baton for a while now, which has been a pretty fun loop. Would love to hear what you think!