Hostrig

AI agent native deploy.

Your agents already know how to ship. Hostrig is the PaaS they can actually drive — bare project to live product on your k3s cluster, under a minute.

Prompt → Postgres → public URL. Under a minute.

The moat

Built for agents. Hosted by you.

Coolify wins the feature list. Hosted PaaS wins convenience. Hostrig wins the loop agents and humans actually use — on metal you control.

01

AI agent native

MCP in Cursor. One prompt creates the project, provisions Postgres, binds DATABASE_URL, and returns a public URL. Built for agents — not a REST API with a chat coat of paint.

02

Bare project → live product

Empty project in. Typed services out. Web, worker, Postgres, Redis — bind them, deploy, open the URL. Under a minute when the cluster is ready. No Compose. No catalog.

03

Railway-shaped. Self-hosted.

Opinionated PaaS on your k3s cluster. Traefik Ingress, platform wildcard URLs, git push-to-deploy. You own the metal. We own the loop.

04

Bindings, not tribal knowledge

Apps get DATABASE_URL and REDIS_URL only through explicit bindings. Credentials encrypted at rest. Destroy tears the whole stack down.

MCP

Talk to your PaaS like an agent should.

Streamable HTTP MCP. Operator tokens. deploy_from_git — create, analyze, bind, deploy, poll until the URL is live.

YOU

AI

On it — project, Postgres, binding, deploy.

  • Create project
  • Provision Postgres
  • Bind DATABASE_URL
  • Ship under k3s
  • https://showcase.waitforit.cc

The loop

Four moves. No detours.

Same path whether an agent or a human drives it.

  1. 01

    Prompt or click

    Agent via MCP — or the UI. Same lifecycle.

  2. 02

    Services + binds

    Web + Postgres. Wire DATABASE_URL once.

  3. 03

    Build & ship

    Railpack, Dockerfile, or a prebuilt image → k3s.

  4. 04

    Public URL

    {slug}.{baseDomain} through your edge → Traefik.

HostrigMAMarketingownerGO TOHomeTeamSettingsSYSTEMIntegrationsDomainsNodesMAMarketingmarketing@…acme-shop4 services · apps.localhostSearch…⌘K+ Add serviceOverviewDeploymentsLogsSettingsServicesEach service has its own page, lifecycle, and configuration.webPrimary web · :5678onlinehttps://web.acme-shop.apps.localhostDeployLogsworkerWorker processonlineNo public URL · gVisor sandboxDeployLogspostgresPostgreSQLreadybound → web.DATABASE_URLDedicated container · nightly backupsredisRedisreadybound → web.REDIS_URLDedicated container · persistence onData servicesPostgres and Redis are first-class. Bind them explicitly to apps.postgres → webDATABASE_URLokredis → webREDIS_URLokgVisor onlinerunsc · local node
Service-first project — apps, data, bindings. Healthy means healthy.

Positioning

Railway-shaped. Not Coolify-shaped.

If you need Compose + templates + every database, use the panels that chase that. If you want sandboxed opinionated shipping with agents, use us.

Coolify / DokployHostrig
Compose + 300 templatesOne service-first loop
Breadth for every stackWeb, worker, Postgres, Redis
Panel-first opsAgent-first + UI
Feature matrix raceStupidly simple path

Optional

Observe when you need signal

OTEL traces, logs, issues, Trends — same control plane, ClickHouse-backed. Not required to ship. Not the lead story.

Read the docs →

Out of scope on purpose

Narrow tool, thick pen.Full list →

  • Docker Compose as a deploy path
  • MySQL, Mongo, or one-click app marketplaces
  • Enterprise SSO / fine-grained RBAC (v1)
  • Custom domains kitchen sink (v2)
  • A second SaaS for “just ship the damn app”

Questions

What is the actual moat?

Agents can deploy end-to-end over MCP, on a Railway-shaped loop you host on k3s — service-first, bindings, wildcard URL — without becoming Coolify. The product is the loop, not the catalog.

How is this different from Coolify or Dokploy?

They win breadth: Compose, templates, fleets. We win an opinionated path: typed services, explicit bindings, agent deploy, git push, platform URL. If you need the kitchen sink, use them.

Do I need Kubernetes expertise?

You connect or create a k3s cluster once. Day-to-day is project → services → bind → deploy. Workers scale capacity; you do not hand-write Deployments for apps.

What about Observe?

Optional addon. Deploy works alone. Enable Observe when you want OTEL traces, logs, issues, and Trends on the same control plane — not a GTM requirement.

Where does HTTPS come from?

TLS terminates at your edge (Cloudflare, Netbird, Tailscale). Traefik in the cluster stays HTTP-only. Platform wildcard: {slug}.{baseDomain}.

Hostrig

Ship with an agent.
Own the cluster.

Self-hosted PaaS. MCP. Service-first. Under a minute to live.