Skip to Content
v1.33.6 · shipped One-screen report · Looks like your app Read the changelog →
Self-hostingOverview

Self-hosting

Mushi Mushi is OSS-first. Mushi Mushi Cloud at kensaur.us/mushi-mushi/admin runs the same code as this repo — there is no closed-source plus-tier. Every edge function, migration, and admin SPA you see here is what powers Mushi Mushi Cloud. The one difference is data: the hosted service keeps its own tuning (prompt wording, evaluation sets and scoring weights tuned on live traffic) as configuration. The repo ships working default prompts, so your stack has every feature. See Open source & licensing.

Prerequisite: Node ≥ 22, a Supabase  project, and the Supabase CLI .

What you’ll deploy

LayerTechnologyLicense
Database + AuthSupabase (Postgres 15 + pgvector + pgcrypto + pg_cron)Open
Edge Functions50+ Supabase Edge functions (Deno) — run pnpm docs-stats for live countAGPLv3
Admin SPAReact + Vite, deployed to any static hostAGPLv3
ObservabilityLangfuse + SentryMIT / Commercial
Sandbox (optional)E2B, Modal or Cloudflare, through @mushi-mushi/agentsExternal

Fastest path — Docker Compose

The whole stack (Postgres + Auth + REST + Storage + edge functions + console) in one command, no managed Supabase project required:

git clone https://github.com/kensaurus/mushi-mushi.git cd mushi-mushi/deploy cp .env.example .env # set ANTHROPIC_API_KEY + Supabase creds docker compose up -d

See Self-host in minutes for the full walkthrough.

Managed-Supabase path

Prefer a hosted Supabase project? Link it and push the schema:

git clone https://github.com/kensaurus/mushi-mushi.git cd mushi-mushi pnpm install # installs all workspaces cd packages/server # Supabase CLI works relative to this dir npx supabase link --project-ref <your-ref> npx supabase db push # applies all migrations

Then follow the guides in order:

  1. Supabase setup — extensions, RLS, and required seed data
  2. Edge Functions deploy — all edge functions + secrets
  3. Admin SPA deploy — build and deploy the console
  4. Observability (Langfuse + Sentry) — traces and error tracking
Last updated on