Skip to main content
The local setup runs Postgres, the control plane, and the worker behind a local HTTPS address.

Prerequisites

  • Node.js 24 or newer
  • pnpm 11
  • Docker

Start the stack

1

Clone and set up

local:setup installs dependencies, generates a gitignored .env.local, starts Postgres, applies the migrations, and creates a local example runtime profile. Run it once.
2

Configure .env.local

Open .env.local and set:
Without AI_GATEWAY_API_KEY, automations still run when the workspace adds its own API key or ChatGPT subscription in Settings → Models.
3

Start the stack

The command prints the local HTTPS address. Restart the stack after changing .env.local.
4

Create an account and workspace

Open the printed address, sign up, and create a workspace. It opens on Automations. Follow the Quickstart from step 2.
The app and sign-in work without provider credentials. Integration OAuth flows and webhooks need a public HTTPS address. Set RESPONDER_NGROK_URL to a static ngrok domain and local:dev starts a tunnel to it. Run pnpm tunnel:claim to route the tunnel to the current checkout.

Seed demo data

After you create a local account, you can add a demo workspace:

Stop the stack

The database is kept in a Docker volume for the next pnpm local:dev.

Validate changes

Run the full suite before opening a pull request:
See CONTRIBUTING.md.