C
Early alpha · already in production

Self-hosted Ruby on Rails ops · agent-native

The control plane for
self-hosted Ruby on Rails

Conductor runs, monitors, and maintains your Rails apps across servers you own — deploys, routing, Postgres, backups, and security. One control plane instead of five dashboards and a pile of SSH, drivable by you or an AI agent.

Source-available · runs on your own infrastructure · no vendor lock-in

3
Deploy runtimes
Kamal · Docker · native
4
Preflight gates
migrations · seeds · audit · threads
100%
Yours to run
self-hosted · no lock-in
Kamal · Docker · Puma · Caddy · Postgres · S3/R2 · SES · GitHub
# reconnect — one read to see exactly where things stand conductor_read · action: situation ← in_flight: deploy #128 · acme.com · deploying (2/4 preflight) ← needs_attention: shop · seed run failed · runbook attached ← recent: blog #127 ✓ · docs #126 ✓

Switch tabs to watch an agent resume after a disconnect, ship through the preflight gate, and operate the fleet — all over MCP, all idempotent, so retries never double-fire.

Connect an agent

Sign in, don't paste a token

Conductor is an OAuth 2.1 server for its own MCP endpoint, so a client discovers it, registers itself, and sends you to the browser to approve. You pick the organization; the agent never sees a secret you had to copy.

# point Codex at your Conductor…
codex mcp add conductor --url https://your-conductor/mcp \
  --oauth-resource https://your-conductor/mcp
# …then approve it in the browser
codex mcp login conductor

Claude, Cursor, and any MCP client connect the same way. Tokens are scoped to one organization, expire, refresh, and are revocable per client.

Not another dashboard

Built for how Rails is run now

Agent-native & resumable

The whole surface is over MCP — connect an agent by signing in, no pasted tokens — and it survives disconnects: an agent reads the fleet situation, picks up in-flight work, and follows each app's own runbook. Idempotent by design.

codex mcp login · conductor_read · situation

Secretless deploys

Config in your repo carries every non-secret coordinate; real secrets stay in your vault behind a pointer. Clone the repo and bin/kamal just works.

config/deploy.production.yml · .kamal/secrets

Yours to run

Source-available and self-hosted on servers you already own. A production-grade control plane with no per-app pricing and no lock-in.

your servers · your cloud · bare metal

Everything the fleet needs

One place, end to end

Fleet control

Every server and app in one view — health, last deploy, and what's running where, live.

Deploy your way

Kamal, Docker, or native Puma under one control plane — with a preflight gate that blocks a risky ship before it happens.

Routing & edge

Caddy routes custom domains to your apps with automatic TLS (Let's Encrypt).

Soon Wildcard / dynamic subdomains

Databases

Managed Postgres — a database and role per app, provisioned from the UI.

Backups & data

Scheduled database backups to S3-compatible object storage, kept off the box.

Per-app runbooks

Every app carries its own deploy runbook + checklist — because each one ships differently. Readable by you and the agent.

Maintenance & power

Server audits, security auto-updates, drift checks, and reboots — with a passwordless-sudo readiness check so ops just work.

Plugs into what you already use

Connect your accounts once — Conductor wires the rest of the fleet to them.

Cloudflare Cloudflare R2 GitHub Postgres Caddy

Coming soon

Amazon SESsoon Amazon SNSsoon Hetznersoon DigitalOceansoon

Take the fleet back.

Point Conductor at your servers over SSH and get deploys, routing, databases, backups, and security in one control plane — yours to run and yours to script.

Source-available · self-hosted · agent-native