- From the sidebar’s repos section, click the Manage repositories → link at the bottom.
- From the run sidebar’s “No run script configured” state, click Open Repository Manager.
What the dialog shows
Each row is one repo with a status badge. Status is one of:- Cloned — the repo exists on disk inside the workspace.
- Pending — registered but not yet cloned.
- Cloning — clone in progress.
- Error — the last clone or pull attempt failed.
Adding a repo
Click Add to open the Add Repositories dialog. It has three tabs:- Browse — picks from the repos already on your linked GitHub or GitLab account. Multi-select; Add clones each one.
- Add by URL — paste an HTTPS URL and pick a default branch via the branch selector. Supported hosts are GitHub, GitLab, and Bitbucket. If the host isn’t recognized, a dropdown asks which provider hosts it (GitHub or GitLab).
- Create New — creates a brand-new repository on GitHub or GitLab (toggle at the top of the tab), with a Private or Public visibility choice, and then adds it to the workspace.
repos/{repo-name}.
Default branch
Every repo has a default branch. p0 uses it when creating new sessions — sessions branch off from this branch. You can change it from the repo row’s branch picker (titled Change Default Branch); p0 lists the remote branches with a search box and marks the current default. If the remote can’t be reached, p0 falls back to the locally available branches and shows an amber warning. The default branch is also asked for when you add a repo by URL — the field is pre-filled withmain.
Multiple repos in one workspace
A workspace can host as many repos as you want. They appear together in the sidebar’s repos section and in the run sidebar’s tab bar (one tab per repo, plus extra tabs for monorepo sub-paths that have their own run script). Batch actions in the manager apply across them all:- Refresh — re-syncs the repo list from the Purple API.
- Clone All — clones every pending repo.
- Pull All — runs
git pullon every cloned repo.