Development

Prerequisites

Tools and versions required to run the monorepo locally.

Required tools

ToolVersionNotes
Node.js>= 22Enforced by the root package.json engines field.
pnpm11.3.0The repo pins this via packageManager. Run corepack enable and pnpm picks up the right version automatically.
Dockerany recentRuns the local PostgreSQL (with pgvector) and MinIO (S3-compatible storage) from docker-compose.yml.

Why Docker

Local development relies on two containerized services defined in docker-compose.yml at the repo root:

  • PostgreSQL with the pgvector extension, on host port 6432 (mapped to the container's 5432). Port 6432 is used because 5432 falls inside a Windows reserved port range on some machines.
  • MinIO, an S3-compatible object store, on host ports 9000 (S3 API) and 9001 (web console). Uploaded knowledge and policy documents are stored here during local development.

You don't need a managed Postgres or a real S3 bucket to develop locally. The Docker services cover both. Cloud credentials are only needed for deployed environments.

Optional: a local LLM

The platform calls hosted models through OpenRouter by default. If you want to develop fully offline, you can point embedding and chat at a local Ollama instance instead. See the OLLAMA_* variables in Environment variables. This path is development-only and is disabled when NODE_ENV=production.

On this page