~/sursakit

// docs

Self-hosting

Preview — design partner program

Sursakit is built on standard, self-hostable components. We're rolling out a self-hosted distribution to design partners first; this page documents what's involved and how to apply.

What you'll run

A self-hosted Sursakit deployment is composed of:

  • Backend API — Bun + Hono, statelessly horizontally scalable behind a load balancer.
  • PostgreSQL 17+ — primary data store. Drizzle migrations are baked into the deployable image.
  • Redis — cache, stream state, and queue coordination.
  • Docker daemon — runs the containerized services and the Codex runner. A single host or a clustered orchestrator (k8s, Nomad) both work.
  • Traefik — reverse proxy for service discovery and per-service URLs.
  • Object storage — S3-compatible (Cloudflare R2, MinIO, AWS S3) for file uploads and chat attachments.
  • Inngest (optional) — background job platform. A self-hosted Inngest dev server is sufficient for small deployments.
  • Frontend — the React + Vite SPA, served as static assets behind a CDN or the same reverse proxy.

What you'll connect

  • OAuth providers — Google, GitHub, GitLab, Bitbucket (any subset).
  • An email sender — Resend, AWS SES, SMTP. Used for verification and invitations.
  • AI model providers — Anthropic, OpenAI, Google, XAI. Configure one or more; Sursakit will route Codex through them.
  • Sentry (optional) — error and performance monitoring.

Hardware sizing (rough)

The numbers below are starting points; tune to your workload.

  • Small team (1–10 users) — single host, 8 vCPU / 16 GB RAM / 200 GB SSD. Postgres + Redis colocated.
  • Medium team (10–50 users) — 2–3 hosts, dedicated Postgres, dedicated Redis, separate Docker hosts for runtimes.
  • Large — k8s or Nomad cluster, managed Postgres (e.g. RDS), managed Redis, autoscaled runtime pool.

Each running service runtime is a container with configurable CPU and memory limits; sizing scales linearly with concurrent active sessions.

Security model

  • Sensitive DB fields are encrypted at rest with a server-side key (rotation supported).
  • Codex runs in an isolated runner image with capability-scoped MCP tokens.
  • OAuth + Better-Auth-managed sessions; admin impersonation is logged on every action.
  • Per-organization API keys for programmatic access; tokens are revocable.

Roadmap

  • Now — design partner self-hosting via direct collaboration with the team.
  • Next — published Docker Compose stack for single-host deployments.
  • Later — Helm chart for Kubernetes, terraform modules for AWS/GCP, an officially supported on-prem build.

Apply

If you want to run Sursakit inside your own infrastructure, get in touch — we'd like to learn about your environment before we hand you a tarball.