Repository navigation
Crow 0.2.0-beta.1
Pre-release
Pre-release
·
226 commits
to main
since this release
Pre-release of Crow 0.2.0: from one real server to a watched fleet. The 0.2.0 milestone still has open work (more config plugins, onboarding flows, firewalld editing).
Binaries: Linux x86_64 and macOS (Apple Silicon), with SLSA Level 3 provenance (*.intoto.jsonl). Verify with slsa-verifier.
New
- Config history that survives restarts. Every version of a file Crow wrote or found on a server, encrypted with the vault's key (config files can hold credentials). Changes made outside Crow are noticed and recorded. Preview what restoring a version changes before you do it.
- Baselines and drift. Pin a known-good file for a server group or the whole fleet. Drift is by meaning where Crow has a plugin (a reworded comment isn't drift, a changed value is). The fleet shows how many files drifted, on how many servers.
- Fleet runner. Fleet-wide actions run one server at a time, stop at the first failure, and can be stopped after the current host. They start only after you type a keyword.
- Push baseline to all: re-reads each file live, checks it with the host's validator, writes it atomically, records it.
- Rolling reboot: via the provider, the lab engine, or SSH; waits for each server to come back from a fresh boot before the next.
- Metrics history and alerts. Every server sampled once a minute while Crow is open, kept for a week. Alerts for unreachable servers, full disks (90% / 95%) and failed services; they resolve on their own and can be acknowledged. A History view charts CPU, memory, disk and load over 24 hours or 7 days, with gaps where Crow wasn't running.
- Audit log. Every change on every server, filterable by server and kind.
- firewalld, read-only. Zones, services (with their ports), ports and rich rules on RHEL, Fedora and Rocky hosts; warns when the running config differs from the saved one.
- Real host key age, read from each server's key files.
Fixed
- Fleet health comes from the live connection: unreachable servers no longer show a green OK with made-up zero readings, and vCPUs aren't counted twice.
- Disk use matches
df(used ÷ used + available); a full ext4 disk used to read ~95%. Read-only roots (Fedora Atomic, Bazzite, CoreOS) are measured at/var. - Fleet screens no longer claim things Crow doesn't do (fake "queued" fleet actions, made-up drift and key ages).
- Socket ↔ firewall matching: firewalld hosts aren't reported as "firewall off"; ufw multiport rules match.
- Restoring a config version no longer leaves it showing as an unsaved edit; revisions carry your
user@host, not a fixed name.
Heads-up
- On first launch Crow creates its encryption key in the OS keyring (to encrypt config history) without asking for a security stance; storing provider tokens and AI keys still asks. See
docs/security.md.