| Approval bound to the content that runs: inventory, image, commit, plan | a digest recomputed before execution | No native approval step; ServiceNow steps can check a change request's state |
| Hard ceiling on AI agents: cannot approve its own run or touch identity or secrets | agents are principals capped below admin | Ceiling set by the operator in an ACL policy on a dedicated user's token; docs recommend starting read-only with no job execution |
| Evidence a third party verifies offline, without trusting the server | signed hash chain, Apache-2.0 verifier | |
| Runs without a JVM | | |
| Production datastore built in | SQLite, Postgres optional | H2, not for production |
| Live per-host view | Host-by-task matrix | Per-node, per-step monitor |
| Tools | Ansible, Terraform, OpenTofu, Bash, PowerShell, Python, Go | Ansible and scripts, no Terraform step |
| Tamper-evident, signed audit | | |
| Enforced approval policies | | No native step; ServiceNow change-state check |
| Visual workflow editor in the free tier | | Engine free, visualization commercial |
| Fine-grained access control | Per-object grants | ACL policy files; GUI editor commercial |
| Fleet memory: flaky hosts, trends | | |
| Drift detection from a dry run | | |
| Duration-balanced job splitting | | |
| Minimum published footprint | One binary, one database | 8 GB RAM, 2 CPU |