This guide is the source of truth for operating Glide outside of Glide Cloud. Read it before pointing real money at the stack.Documentation Index
Fetch the complete documentation index at: https://glide-9da73dea.mintlify.app/llms.txt
Use this file to discover all available pages before exploring further.
Honest positioning
Glide OSS is a self-hostable orchestration shell, not a self-hostable bank stack. You bring your own:- Privy Multi-tenant tenant — auth + embedded wallets. OSS is Privy-only in v1; there is no swap-in alternative.
- Bridge / Noah / Avenia / IDRX / etc. contracts — fiat rails. The OSS Cathedral ships every connector adapter (
packages/connectors/<vendor>/), but the vendor relationship is yours. - Chainalysis / TRM / Elliptic — sanctions screening. The Chainalysis adapter ships under MIT; using it requires your own contract per the
DISCLAIMER.mdin the package. - Coinbase x402 facilitator (optional) — required for the x402 payer/recipient flow that lands with M2.5.
- Ory Hydra or BYO OAuth AS (optional) — required for the M2.5 agent banking surface.
packages/connectors/_base/ for the capability interface contracts. The OSS plan accepts community-contributed connectors per the M5 partner-PR flow.
90-second TTHW (time to hello, world)
The champion-tier metric the M3 plan calls for. From a fresh machine with Docker + Node 22 + pnpm installed:.env.local:
npx-flavored bring-up (M3 OSS scaffolder):
Environment posture
Demo posture (zero real-money corridor)
Production posture (real-money corridor)
pnpm glide doctor after wiring env to confirm every layer is reachable.
Operational keys
Glide Cloud AND self-hosters hold three EVM operational keys + one Solana recovery key. Per the M0 plan §“Operational keys detail”:| Key | What it can do | What it cannot do | Blast radius |
|---|---|---|---|
TREASURY_OPERATOR_EVM_PRIVATE_KEY | Signs the operator’s own revenue-share Safe | Touch user vaults, originate user-tx | Operator’s own Safe |
USER_MULTISIG_RELAYER_EVM_PRIVATE_KEY | Broadcasts pre-signed M-of-N bundles | Originate calldata, modify tx, sign for users | Gas relay only |
GLIDE_RECOVERY_EVM_PRIVATE_KEY | Propose owner-set / threshold changes on user 1/1 vaults | Execute without 72h Zodiac Delay timelock + non-veto | Recovery proposals |
GLIDE_RECOVERY_SOLANA_PRIVATE_KEY | Propose Squads multisig recovery | Execute without timelock + non-veto | Recovery proposals |
bash scripts/generate-keys.sh emits random hex/base58 placeholders. Pipe to .env.local.
For production: generate keys in a KMS (AWS KMS / HashiCorp Vault / GCP KMS). Never commit them, never let them touch shell history. Rotate per a documented cadence — start at quarterly for treasury / annual for recovery (the recovery cadence is balanced against the user-veto window).
Deploy targets
The OSS Cathedral targets four reference deploy patterns. Each has its own pros/cons; pick the one that matches your operational comfort level.1. Fly.io (recommended for solo self-hosters)
- Web:
apps/webdeploys viafly launchwith the auto-detected Next.js builder. - Worker:
apps/webInngest functions run inside the same Fly app. - MCP (M2.5+):
apps/mcpdeploys as a separate Fly app. - Postgres: Fly Postgres or Supabase.
- Redis: Upstash Redis (ships free tier; paid for prod).
2. Railway
Single-region, push-to-deploy. Good for staging / non-US corridors.3. Render
Long-history Heroku-replacement; good if you already have Render.4. Bare Docker on a VPS
For operators who want infra control. The basedocker-compose.yml boots Postgres + Redis + Inngest; docker-compose.demo.yml overlay layers in the demo posture.
Migrations
PerCLAUDE.md §“Database migrations”:
Migration files are the source of truth, notFor self-hosted upgrades, run the existing script:drizzle-kit generate. All migrations underapps/web/drizzle/*.sqlare hand-authored.apps/web/drizzle/meta/_journal.jsonis NOT authoritative. It tracks only the original 0000/0001 scaffold; every migration from 0002 onward applies via the custom runner.
Backups
The OSS Cathedral does NOT ship a backup orchestrator. The base posture:- Postgres: rely on the deploy target’s managed backup (Fly Postgres snapshots, RDS automated backups, etc.) at a minimum daily cadence with point-in-time recovery.
- Redis: ephemeral. Inngest job state is durable in Postgres; Redis is rate-limit + cache only.
- Secrets: the secrets backend (Doppler / AWS-SM / Vault) is the source of truth. The DB stores
secretRefs, never plaintext.
- Off-site replica in a different region.
- Cold backup (encrypted S3 Glacier / equivalent) at quarterly cadence at minimum.
- Disaster-recovery rehearsal at annual cadence.
Observability
OSS ships:/health— liveness probe (200 OK with{"status":"ok"})./api/health— readiness probe (Postgres + Redis + push reachability).- Sentry hook in the fail-closed audit (M2). Set
SENTRY_DSNto wire@sentry/nextjs.
/metrics Prometheus endpoint + reference Grafana dashboards land in a follow-up milestone (per OSS plan §10).
Compliance disclaimers
- Sanctions screening:
SCREENING_PROVIDER=permissiveis REFUSED underNODE_ENV=productionunlessGLIDE_ALLOW_PERMISSIVE_SANCTIONS_IN_PROD=trueis explicitly set. Don’t override unless you have a documented compensating control. - Mock connectors in production:
GLIDE_USE_MOCK_CONNECTORS=trueis REFUSED underNODE_ENV=productionunlessGLIDE_ALLOW_MOCKS_IN_PROD=trueis explicitly set. Reserved for staging / smoke tests against production-shaped infra. - AML posture: every connector’s manifest declares an
amlPosturefield.pass-throughmeans the vendor handles AML;vendor-screenedmeans the vendor + an upstream screening capability handle it;unscreened(onlysanctions-permissive) means there is no AML coverage.
Where to file issues
- Bugs / docs holes: GitHub issues on
axtior-neobank. - Security vulnerabilities:
security@axtior.comperSECURITY.md. - Connector partner submissions: see
CONTRIBUTING.md(lands with M5).
What’s NOT in this doc
- Trust Console operator runbook (M4).
- Agent-platform / MCP setup (M2.5).
- Public standards URLs at
glide.co/schemas/agent-banking/draft/. glide partner submitCLI flow (M5.5).