Add repos to a workspace
This guide shows you how to add repositories and link them to workspaces.
Register a repository
Section titled “Register a repository”Repos are registered globally — they exist independently of workspaces.
- Navigate to Settings → Repositories
- Click Add repository
- Enter the local path to your Git repository (e.g.
~/dev/my-project) - Control Center inspects the repo:
- Reads
.git/configfor the remote origin URL - Extracts owner and repo name for GitHub integration
- Detects the current branch
- Reads
- Click Add to register
The repo appears in the global repository list with its name, path, and GitHub remote info.
Link a repo to a workspace
Section titled “Link a repo to a workspace”Linking makes the repo available for worktree isolation within a workspace.
- Navigate to your workspace
- Click Link repo
- Select from the list of registered repos
- The repo is linked via the
WorkspaceRepojoin table
A single repo can be linked to multiple workspaces. Each workspace gets its own worktrees.
How worktree isolation works
Section titled “How worktree isolation works”When an agent in a workspace needs to work on a linked repo:
- The
RepoWorkspaceProvisionercreates a copy-on-write clone using theriftFFI (orgit worktreefallback) - The clone is on its own branch, in a per-conversation working root
- The source checkout is never mounted into the sandbox
- When the conversation ends, the worktree is cleaned up
This means multiple agents can work on the same repo simultaneously, each on their own branch, without conflicts.
Remove a repo
Section titled “Remove a repo”- Navigate to Settings → Repositories
- Click the context menu on the repo
- Select Remove
Removing a repo removes it globally. Active worktrees are cleaned up first.
To unlink a repo from a workspace (without removing it globally):
- Navigate to the workspace
- Click Unlink on the repo
GitHub remote detection
Section titled “GitHub remote detection”Control Center automatically detects GitHub remotes from the repo’s .git/config. If your repo has a GitHub remote:
- PRs can be opened and managed directly
- The PR polling service checks for external PRs
- CI checks are shown in the PR detail view
If your repo doesn’t have a GitHub remote, agents can still work on it locally — they just won’t be able to open PRs to GitHub.