Hostveil / Docs / Roadmap

Roadmap

Where detection coverage is headed, and what is deliberately staying out of scope. Not a schedule — a tool that will not publish a figure it has not measured is not going to publish a date it cannot keep.

How coverage has grown so far

A new detection domain is a bigger change than it looks from the outside: a new axis, funded by taking weight from every existing domain, so it does not ship often or quietly. Every one that has shipped is a named release, not a line in a patch note.

  1. 3.1.0 — self-hosted AI agent runtimes (OpenClaw, Hermes Agent): a reachable gateway, a disabled sandbox, credentials readable by more than their owner.
  2. 3.6.0 — kernel hardening: eight sysctl values read straight from /proc/sys.
  3. 3.8.0 — the Docker daemon itself: an unauthenticated TCP API is root for anyone who can reach the port, and nothing before this domain looked at the daemon underneath your containers.
  4. 3.9.0 — service hardening: the units you installed yourself, read as systemd’s own effective configuration rather than what a file says.
  5. 3.22.0 — a reverse-proxy domain: nginx read out of /etc/nginx, Traefik read out of the Compose files the container domain already discovers — the component in front of everything else Hostveil checks, and the one nothing had looked at.
  6. 3.28.0 — Caddy in the reverse-proxy domain, packaged or in a container: an admin API reachable off loopback, which has no authentication and can replace the whole configuration, and file_server browse.
  7. 3.29.0 — a third AI agent runtime, Goose: an approval mode that runs every tool call unasked (and is the default when nobody set one), a web interface listening off loopback, and API keys in a loosened plain-text fallback file.
  8. 3.30.0 — Proxmox VE host hardening, a new domain: a web interface on 8006 that accepts a login from any address, root@pam with no second factor, and an enterprise repository enabled without a subscription so that Proxmox’s own packages silently stop updating. The firewall domain learned to ask pve-firewall in the same release, so an enabled datacenter firewall is no longer read as no firewall at all.
  9. 3.31.0 — single-node Kubernetes, a new domain for one box running one k3s or k0s node: a cluster-admin kubeconfig or join token readable by every account, anonymous access switched on for the API server or kubelet, and Secrets stored unencrypted — with k3s’s settings resolved across all four of the places it reads them from, so the K3S_KUBECONFIG_MODE=644 most tutorials put on the install command is found where it actually lands.
  10. 3.32.0 — a fleet view across hosts you already reach over SSH: hostveil fleet web1 db1 runs hostveil scan --json on each host over your own SSH and lays the scores side by side, worst first, in the terminal, as JSON or in a read-only TUI screen. No account, no server, no database, and nothing installed beyond Hostveil on each host — fixes are still applied on the host they fix.

Everything between those releases — and there is a lot of it — is new findings, fixes and interface work inside the domains that already exist. That is the far more common kind of change, and it is what most releases in the changelog are.

Next up

Low cost, same shape as what is already there — an entry in an existing registry, not a new domain or a new axis weight.

Under exploration

Bigger changes, still being designed rather than committed to a release. Listed here so a duplicate feature request has somewhere to look first, not as a promise.

  1. Languages beyond English and Korean. The Korean site carries its own font subset and a test that checks every glyph on the page has one; a third language needs the same rigor, not just a translated string table.

Not planned, on purpose

Ruled out by what Hostveil is, not missing because nobody got to it yet — the same standard the product itself is held to.

  • A plugin or rule-file system for third-party checks. Every domain is one row the score depends on summing to 100; a rule format would put that behind a file nobody signs.
  • AI that applies a fix on its own. The preview-backup-apply loop is the reason this tool can be trusted with root; an agent that skips the preview breaks the one guarantee the whole design rests on. See AI explanations for where AI is actually used today.
  • A hosted dashboard, an account system, or a SaaS tier. One binary and no cloud account is not a starting point this project is working away from — it is why the project exists.
  • Automatically fixing findings classified Manual. Manual means Hostveil judged the change unsafe to apply unattended, not that the feature is unwritten. See how that classification is decided.