Playbook execution & fleet orchestration

The Ansible platform,
on steroids.

One Go binary. No Kubernetes, no Postgres, no Redis. Run Ansible, Terraform, Bash, and Python. Read every run as a live host-by-task matrix, split big jobs across balanced shards, and prove exactly what ran and who approved it.

Open source · BSL 1.1 · migrate from AWX or Semaphore in one command

yardmaster · fleet
Yardmaster fleet view: a live host-by-task status matrix
1binary to deploy
0Kubernetes required
4tools, one engine
tamper-evident audit

Everything AWX bolts on, built in.

Runs you read like a dashboard. Jobs that balance themselves. A fleet that remembers. A control plane that proves it. One binary.

Live host-by-task matrix

Read a run like a dashboard, not a scrollback. Every host and task, painted live over Server-Sent Events, with per-task drill-down.

Multi-tool engine

Ansible, Terraform, Bash, and Python — each with a dry run. One engine, one UI, one audit trail. Not four tools bolted together.

Balanced splits

Shard a big job across hosts, balanced by each host's measured duration. Retry only the shards that failed, not the whole run.

Fleet memory

Flaky hosts flagged, durations trended, every host's history kept across runs. AWX and Semaphore forget the moment a run ends.

Provable audit

Every change is linked into a tamper-evident SHA-256 hash chain. Export a signed copy and verify it offline, without trusting the server.

Secrets that can't escape

Sealed at rest, sourced live from Vault or Google Secret Manager, and masked out of run logs. A tool that prints a secret shows ***.

Enforced approvals

Hold risky runs for sign-off by policy — by tool, command, or target. Operators request, admins release. No skipping the gate.

One-command migration

Import your AWX or Semaphore projects, inventories, templates, surveys, and schedules with a single command. Leave anytime, too.

The moat

Governance neither AWX
nor Semaphore has

Multi-tool execution is table stakes now. What sets Yardmaster apart sits above execution — the control plane that makes automation provable and governed.

  • Tamper-evident, signed audit. Alter one entry and the chain breaks. Prove the trail is intact — offline.
  • Change control by policy. A prod terraform destroy holds for an admin's sign-off, automatically.
  • Secrets masked, sourced, sealed. They never land in a log and never live in Yardmaster if you don't want them to.

The honest side-by-side

Where Yardmaster pulls ahead. The full head-to-head, including where it's behind, is in the comparison doc.

CapabilityYardmasterAWXSemaphore
Deploy without Kubernetes
Live host-by-task matrix
Ansible · Terraform · Bash · PythonAnsible onlyTerraform + shell
Duration-balanced job splittinground-robin
Fleet memory: flaky hosts, trends
Tamper-evident, signed audit
Secrets masked in run logs
Enforced approval policiesbasic
One-command migration in

Running in seconds

One binary, one SQLite file. No control plane to stand up first.

# install (or grab a release binary)
go install github.com/dcadolph/yardmaster@latest

# serve — SQLite by default, PostgreSQL optional
yardmaster serve --addr :8080 --db yard.db

# open the UI
open http://localhost:8080/ui/

Put AWX and Semaphore to bed.

Structured runs, balanced splits, a fleet that remembers, and a control plane that proves itself — from one binary.