Workspace examples

Acquire from Git

A workspace that acquires child repos from git before bootstrap, so one command can fetch the repos, then prepare them.

copynew usersadvancedstable2026-05-30

Typical signals

  • workspace declares a git base
  • repos are acquired before bootstrap
  • member dependencies stay explicit
  • one workspace can fetch several repos consistently

Why it matters

  • it turns a repo pattern into something humans, CI, and agents can read the same way
  • it makes the next command obvious instead of implied by README drift
  • it keeps readiness, setup, and execution explainable in receipts and diagnostics

Example contract

Use this when a workspace needs to bring missing repos onto disk before any bootstrap, setup, or task execution can happen.

ota turns acquisition into part of the contract: the workspace says where each repo comes from, then ota workspace up fetches it, checks it out, and moves on. ota workspace refresh can re-sync repos that already exist with preview and control flags when you need stricter syncs. ota workspace diff, ota workspace status, and ota workspace receipt show the local state before you mutate anything or archive it.

ota.workspace.yamlyaml
version: 1workspace:  name: ota-acquire-workspace  description: Example workspace that acquires repos from git before bootstrap  git_base: https://github.com/otarepos:  web:    path: repos/web    required: true    source:      repo: web  api:    path: repos/api    required: true    depends_on:      - web    source:      git: https://github.com/ota/api.git      ref: main

Task notes

Why this matters: it removes the manual clone step from onboarding, so a workspace can become runnable from one contract instead of a pile of README instructions.

When to use it: use source.repo when many repos share the same host and git_base; use source.git when the clone URL should be explicit.

What ota does: it acquires missing repos, checks out the requested ref, then continues with the repo-level bootstrap flow.

Why teams like it: dependencies stay explicit, acquisition becomes reproducible, and new contributors do not need to guess which repos to clone first.

Why it is safer than ad hoc scripts: the acquisition source is part of the workspace contract, so diagnosis, receipts, and workspace doctor can explain exactly what happened.