A project can contain multiple repositories, and tasks can have their own branches and worktrees. For example, you can work on a feature across a frontend and backend repo, keeping both under the same task.
It supports Claude, Codex, Gemini and OpenCode, with project and task notes, file editing and Git diffs available in the workspace. The app is built with Rust and React.
Source code: https://github.com/andygeek/blackholes
I'd appreciate feedback from people working with coding agents across multiple repositories, especially on what would make this fit into your existing workflow.