run multiple AI coding agents in parallel
Canopy runs Claude Code, Gemini CLI, Codex, and OpenCode sessions at the same time. Each worktree gets its own agent session, and the Inspector tracks all of them from one window.

one agent per worktree
Each worktree runs its own Claude Code (or Gemini CLI, Codex, OpenCode) session in isolation. Files, terminal state, and browser context stay separate, so agents do not interfere with each other.
- Isolated file system per worktree prevents agent conflicts
- Claude Code, Gemini CLI, Codex, and OpenCode supported
- Pick the agent tool when you start each session
side-by-side session monitoring
The sidebar shows the status of every running session: idle, thinking, calling a tool, or waiting for permission. The Inspector gives per-session cost, duration, context usage, and tool call count. On macOS, the notch overlay shows all active sessions.
- Sidebar badges: idle, working, waiting for permission, error
- Inspector with cost, duration, lines changed, and context usage
- macOS notch overlay peeks when a session needs input
task context per session
When a worktree is linked to a Jira, YouTrack, or GitHub issue, Canopy sends the task title, description, and comments to the agent at session start. Each agent begins with the ticket context instead of a blank prompt.
- Task description and comments injected at session start
- Switch between sessions from the sidebar without losing state
- Per-session cost and duration tracked independently
questions about multi-agent workflows
- How many Claude Code sessions can run at once?
- There is no limit in Canopy. Practical limits come from your machine's CPU and RAM and from Claude Code's own concurrency constraints.
- Does Canopy support Gemini CLI and Codex alongside Claude Code?
- Yes. You can run different agents in different worktrees. Pick the tool when you start each session.
- How much memory does each session use?
- Each Claude Code session runs as a separate process. Memory depends on the model and context size. Canopy itself adds minimal overhead per session.