O OSACP

Self-hosted · deterministic · agent-agnostic

A compute floor for AI coding agents.

Run Claude Code, Codex, DeepSeek or a plain shell on any number of hosts. A scheduler decides, a builder executes, and the Agent only explains.

Architecture diagrams

Interactive HTML · light and dark · English and Chinese

Four moving parts

Nothing else decides who runs what

PCSOwns hosts, deployment plans, profiles, secret references and audit. Writes desired state; never calls Docker directly.
host-runtimeRuns on every host. Verifies signed commands, creates containers and reports resources. Outbound only.
SchedulerThe state authority. Queues, admits, leases, fences, dispatches and records across a recursive tree.
BuilderThe only worker role. Claims tasks, runs an Agent adapter or a deterministic shell, streams progress and uploads artifacts.

Quick start

Single-machine Compose · Node 22+ · PostgreSQL 16 · Docker 24+

cd deploy
cp .env.example .env
mkdir -p keys tokens data/postgres data/artifacts

ssh-keygen -t ed25519 -N "" -f keys/scheduler
ssh-keygen -t ed25519 -N "" -f keys/builder
for os in 20 22 24 26; do cp keys/builder.pub "keys/builder$os.pub"; done

docker compose -f compose.yaml --env-file .env up -d --build

Then open the admin app.

Add a host, deploy a scheduler, add builders, and submit the first task. Sideload a device when it should call the host with curl.

Deployment guide · Sideload guide

Read more

Every design document has an English default and a Chinese counterpart