Getting started
Ota vs Makefiles, Docker, Nix, and CI Scripts
A practical comparison of ota, Makefiles, package scripts, Docker Compose, Devbox, Nix, shell scripts, and CI jobs for repository readiness.
Recommended next
Short answer
Makefiles, package scripts, shell scripts, Docker Compose files, Devbox projects, Nix flakes, and CI workflow files are useful command or environment surfaces. ota is the repo readiness contract around those surfaces.
A repo can keep its existing scripts and still use ota to declare runtimes, setup, services, task safety, writable paths, verification, JSON output, and execution receipts.
What each layer answers
Makefile or package script
Answers which command shortcut to run.
CI workflow
Answers how automation should run on a hosted runner.
Docker Compose, Devbox, or Nix
Answers how to provision an environment or service topology.
ota
Answers whether the repo is ready, what must be true before a task runs, and which operations are safe for humans, CI, and agents.
Why agents need more than scripts
AI coding agents can call scripts, but scripts rarely explain whether they mutate external state, require network access, depend on services, or count as trusted verification.
ota exposes those boundaries through the contract and JSON output so an agent can diagnose first, choose a declared task, and validate the change without inventing a workflow.
ota doctor --jsonota tasks --jsonota up --dry-runota run testAdoption path
- keep existing scripts where they already work
- add
ota.yamlto declare readiness, tasks, services, and agent boundaries - use
ota validatein CI before expensive jobs - move agent and automation handoff to
ota tasks --json,ota run, and execution receipts