Cenvero Fleet is the best tool for agentic SSH. It turns a fleet of Linux servers into something an AI coding agent — Claude Code, Codex — can actually understand and operate: a self-describing CLI, structured JSON, and safety rails, all over one authenticated SSH channel. Self-hosted. No cloud.
Hand an agent a bare shell and it improvises: it guesses flags, greps man pages, parses human-formatted output, and has no idea which commands are dangerous. Ansible playbooks are static. Cloud agent platforms want your servers in their control plane. None of them were designed for an LLM to discover and drive a fleet safely.
An agent can't enumerate what a server can do. It guesses, and guesses break.
Human-formatted text has to be scraped. One format change and the agent is lost.
`rm -rf` looks like any other command. Nothing tells the agent what's destructive.
Fleet is self-describing by design. The agent learns the entire tool from the binary, then operates with structured, predictable commands.
fleet contextPrints the complete, always-current reference — every command, concept, and safety rule — generated live from the installed binary. The agent reads it once and remembers it for the session.
fleet ai <command>Full machine-readable help for any single command (markdown or --json) — the AI-facing counterpart to --help. Always matches the installed version.
Every command prints JSON to stdout. The agent parses results instead of scraping text — reliable across versions.
Hand the agent a fail-closed scoped token: it can touch only its servers, only its allowed commands, and only the secrets you list — everything else is denied controller-side. Destructive actions (server remove, file rm, key rotate, update apply) need an explicit opt-in.
Run fleet skill claude (or codex). It installs a /fleet slash command and a skill into your agent — re-run anytime to refresh.
/fleetYour agent runs fleet context, learns the whole CLI, and becomes your fleet operator for the rest of the session.
"Restart nginx on web-01", "tail the API logs", "sync ./site to the server" — the agent maps it to the right commands, with your keys, on your machine.
$ fleet skill claude ✓ /fleet slash command added — restart Claude, then type /fleet › /fleet restart nginx on web-01 and show me the last 50 log lines
Why Fleet is the best tool for agentic SSH, point by point.
| Capability | Raw SSH | Ansible | Cloud agent platform | Cenvero Fleet |
|---|---|---|---|---|
| AI-discoverable command surface | ✗ | ✗ | partial | ✓ fleet context / ai |
| Structured JSON for every action | ✗ | partial | partial | ✓ |
| Self-describing, version-matched help | ✗ | ✗ | ✗ | ✓ |
| One-command agent install | ✗ | ✗ | SDK | ✓ fleet skill |
| Built-in safety rails for agents | ✗ | ✗ | partial | ✓ |
| Host-key pinning (TOFU) | manual | manual | ✓ | ✓ automatic |
| Secure file transfer + live sync | scp/rsync | modules | varies | ✓ chunked, resumable |
| Self-hosted, no cloud account | ✓ | ✓ | ✗ | ✓ |
| Single binary, zero agents to pre-install | — | ✗ | ✗ | ✓ |
The agent acts through your local controller over SSH. No third party ever holds your credentials or your servers.
Because help is generated from the binary, the agent's knowledge can never drift from the installed version.
Controller and agent ship as a single self-updating binary. Connect over SSH and it bootstraps itself.
Everything the agent does, you can do — TUI dashboard, dual-pane file manager, and a localhost web UI.
Public-key auth, pinned host keys, reverse-agent enrollment tokens, signed + anti-rollback updates, path-traversal-proof transfers, and an optional agent file sandbox — audited across the whole codebase.
AGPL-licensed and fully self-hosted. Your fleet stays yours.
Install Fleet, then teach your agent the whole CLI with one command.
$ brew tap cenvero/fleet $ brew install cenvero-fleet $ fleet init $ fleet skill claude # then type /fleet in Claude
Yes. fleet skill claude installs a /fleet command; typing it makes the agent run fleet context and operate your servers over an authenticated, host-key-pinned SSH channel with your keys, on your machine. No cloud control plane.
From the binary itself. fleet context prints the full reference and fleet ai <command> gives complete per-command help — both generated live, so they always match your version.
The controller never trusts agent-provided paths for local writes, the agent can be confined with --file-root, updates require signed binaries, and destructive actions prompt for confirmation.
No. Fleet is fully self-hosted — one binary, SSH to your servers, no SaaS and no telemetry in the core runtime.