Wire a repository before the coding agent runs

Hosted ticket-to-PR delivery needs two layers in Git and in Staff. A checklist before you open the first delivery.

Orkestia3 min read

Orkestia is the backbone that connects software, AI, and the real world. Staff can run coding workers that edit your repositories without ever holding GitHub credentials. The agent plans in a worktree. A trusted broker publishes only the exact objects you already acknowledged.

That story is easy to read and hard to run the first time if the repository was never prepared. A session can stop before a single edit, often because the runner prepared a branch that had no lockfile, or because Staff had no active delivery policy for that repo. The fix is not "paste a PAT into the agent." The fix is two layers, done in the right order.

The full checklist is now in the docs: Wire a repository for coding agents.

Two layers, not one checkbox

Orkestia platform. The repository is registered in your org, bound to GitHub through your GitHub App connection, and covered by an active delivery policy and execution profile. Your org administrator does this in Staff, not in the coding prompt.

Repository manifest. On the branch the runner will prepare, usually your default branch, you commit what your stack expects. For Python projects on python-uv, that means a uv.lock and orkestia.runner.json at the repo root. CI job names must match what the delivery policy lists as required checks.

You can be platform-complete and still fail prep if the manifest lives only on a feature branch while the runner syncs main. The docs call out that class of mistake on purpose.

Two modes: laptop vs hosted

Coding agents on DevKit are enough for attended work at your keyboard: register the repo, map repository_uuid to a local path, ltinteg-devkit runner serve.

Hosted ticket-to-PR delivery is the unattended loop: ticket, git work, coding session, trusted publish, pull request, approval gate, merge. That path needs both layers above and Run a ticket end to end. DevKit alone does not substitute for platform setup when you want the controller to merge without you at the keyboard.

Who does what

Role First move
Engineer Bootstrap pull request: lockfile, runner manifest, tests that match CI
Org administrator Staff registration, GitHub connection, policy, profile, agent runner group
Operator Coding preflight green, then open the delivery on a ticket written as a spec

Do not assign the coding agent to create the first lockfile on a greenfield repo. Humans merge bootstrap first. Agents implement specs on repos that are already reproducible.

Plain-language blockers

What you see What it usually means
Session ends before edits Manifest missing on the prepared branch
Preflight mentions commands Policy requires a command not in orkestia.runner.json
Gate never approves Required check names in policy do not match GitHub
Lane busy Prior delivery still holds the target branch

Provider-blind rules still apply. The child never gets git credentials. Publication stays in the trusted parent.

hello@orkestia.dev

  • staff
  • coding-agents
  • tickets