- Organizations — a personal one on sign-up, more on demand, each with members, roles, and invite links.
- Roles and scopes — owners and admins manage; members deploy or configure only with the matching scope; everyone else views.
- Connected repositories — any git host over HTTPS with an optional read token, or a GitHub App with a repository picker.
- Push-triggered deploys — targets flagged auto-deploy on push run when their branch receives a push, if their variables are complete.
- Runs on the server — fresh clone per run, Docker on the host, live logs over SSE, persisted history, secret masking, per-target concurrency.
- Email notifications — your SMTP server, recipients subscribed to the events they care about: runs starting, succeeding, or failing (with the last log lines), repository, target, and member changes.
- AI insights — a plain-language explanation of any failed run from the OpenAI-compatible model you configure.
How it fits together
Repositories belong to organizations. Connecting one clones its branch, readskeel.yaml, and lists the deployments it declares. Targets and values
are created against those deployments, exactly as in Keel Dev.
Getting a Keel Cloud
Self-host
Docker Compose in a minute for evaluation; a binary or container image behind a TLS proxy for production.
Let Keel deploy it
Keel’s own repository ships a deployment that stands up a production Keel Cloud on a single Google Cloud VM for about $35 a month.
Then
Organizations and permissions
Who can do what, and how to invite people.
Connect repositories
Git URLs, tokens, branches, syncing, and repository status.
GitHub App
The repository picker and push-triggered deploys.
Runs and security
How runs execute on the host and what the trust boundary is.