Most infrastructure tooling makes you choose one or the other. Ordo is built for the space between them.
Solves hard problems, but assumes cloud-native workloads and a centralised control plane hosted somewhere else. That's significant investment just to run the tooling itself.
Gets things done, but offers no guardrails, no audit trail, and no reliable way to know whether the fleet is actually in the state you think it is.
Desired state and the full audit record live on one machine that never needs to be internet-accessible.
Each agent holds its own cryptographic key and must be explicitly approved before any work flows in either direction.
No certificates, no CAs, no expiry. Identities are pinned on first connection. If an agent's key changes it re-enters approval, and a changed orchestrator key is refused outright.
State, auth, audit, and metrics all run locally. The default path works on a single machine with no internet access.
Preview any change with a plan before it touches a machine. Nothing is applied until you say so.
Who requested it, what was applied, what happened. Recorded for every action, with no extra configuration.
Sensible, secure defaults out of the box, with a documented path for the common cases, so the safe way is also the easy way.
Describe what you want: files, services, config, packages. Ordo plans how to reach and maintain that state.
Agents continuously check actual against declared. Drift is surfaced and alerted, never silently “fixed” behind your back.
An accurate diff of what would change, before you touch a machine. Nothing is applied during a plan.
Reload or restart a service, or re-run a script, automatically when a resource it depends on changes — and see it predicted in the plan first.
Encrypted at rest, resolved server-side, redacted in every log and plan. Restrict by tag or node ID.
Every applied state and state change, per agent, retained on a schedule you control and queryable via the API, the CLI, and the web UI.
A package, its config, and a systemd service, each a first-class resource with its own drift detection and a predicted plan.
Small teams who need guardrails and an audit trail, without standing up a cloud control plane to get them.
Running real workloads on hardware you control, with the rigour to rebuild a failed box from declared state, not memory.
Teams whose whole reason for self-hosting is avoiding a hosted dependency, the exact assumption Ordo refuses to make.