Skip to main content

Quick start: a disposable local evaluation

Availability: available for a private workstation. This is not a production setup.

Prerequisites

Install Docker Desktop with Compose, Node.js 22.13 or newer, and Corepack. Clone the repository; no cloud account, provider key, or external connector is required for this first run.

corepack enable
pnpm install
docker compose -f deploy\docker\compose.local.yml up --build --wait

This starts three persistent services: PostgreSQL/pgvector, one standalone backend, and the static Admin frontend. Short-lived Prisma and queue migration jobs finish before the backend starts. The frontend is the only exposed port.

Open http://localhost:8080 or http://127.0.0.1:8080, then sign in as admin / admin. These defaults exist only for the loopback development stack. Change them through host environment variables before sharing even a private UI; do not place the replacement value in a browser, URL, or documentation file.

$env:ADMIN_LOGIN = "local-operator"
$env:ADMIN_PASSWORD = "<non-default private local value>"
docker compose -f deploy\docker\compose.local.yml up --build --wait

Verify and clean up

curl.exe --fail http://localhost:8080/health/live
curl.exe --fail http://localhost:8080/health/ready
docker compose -f deploy\docker\compose.local.yml down -v

down -v is appropriate only here: it removes the named disposable local database volume. It is never a production recovery command.

Host-run tests and development

compose.test.yml starts only the disposable PostgreSQL/pgvector dependency for host processes; it listens on port 54329. Use pnpm db:test:up, supply a clearly test-only DATABASE_URL where a test asks for it, and run pnpm db:test:down afterwards. compose.admin.yml serves only the static Admin bridge for an API already running elsewhere; it has no database, queue, connector, or provider access.

For a real local Git knowledge experiment, continue with Git / Markdown.