Run Switchyard, then use it like a Git host.
Switchyard combines a Go control plane, Trestle coordination state and Cloudflare Artifacts as the authoritative remote Git host.
Prerequisites
- A Cloudflare account with Artifacts available and credentials carrying
artifacts.read+artifacts.write. - A token helper capable of supplying a fresh Cloudflare account token to the control plane.
- A Trestle instance for durable Switchyard coordination state.
- The repository's declared Go toolchain,
git, and any configured runner/worker dependencies.
Build & run
go build -o switchyard ./cmd/switchyard
# configure the environment (see Configuration)
set -a; source switchyard.env; set +a
./switchyard
On startup the control plane provisions the required Trestle collections, connects to the configured Artifacts namespace, starts reconciliation/workflow/integration workers, and serves the product UI.
Your first repository
Once a repository is registered in Switchyard, open it in the browser and click Code. The HTTPS remote displayed there is the Cloudflare Artifacts repository itself.
# Copy this URL from Switchyard's Code menu
git clone <artifacts-https-remote>
cd <repository>
git switch -c docs/update-readme
# edit normally
git add README.md
git commit -m "Update README"
git push -u origin docs/update-readme
Those are ordinary Git operations. Git performs the clone and push; Cloudflare Artifacts stores the resulting objects and refs; Switchyard observes and coordinates the work around them.
What Switchyard adds
- Work records an intent or task.
- Attempts give concurrent humans/agents isolated Git state.
- Pull Requests, checks and findings evaluate candidate work.
- Integration Queue is the controlled path that moves canonical.
- Trestle durably records the coordination state without replacing Git.
Normal Git remains available
You do not need the browser editor to work on a Switchyard repository. Clone it, create branches, commit, fetch and push with your normal Git tooling. Switchyard's browser surfaces and agent workflows operate on the same underlying repository.