Installation

How to install TheSpider — the brain server, the web UI, and the Rust agent

TheSpider has three components you may install: the brain server (Bun + Hono + Drizzle), the web UI (Nuxt, served same-origin by the server image in production), and the agent (a single Rust binary). This page covers a local dev setup; for production on-prem see On-prem deploy.

Prerequisites

ComponentRequirement
Brain serverBun ≥ latest stable, Docker (for Postgres)
DatabasePostgres 16 (bundled compose, or BYO)
AgentRust ≥ 1.75, a POSIX shell (sh) on PATH
Agent on Windowsrun under git-bash or WSL (model execution shells out to sh -c)
Modelsone or more coding-agent / LLM CLIs installed locally with working auth

Boot the brain server (local dev)

cd server && bun install
docker compose up -d          # Postgres 16 on :5433
bun run migrate
bun run serve                 # API (+ web SPA when image-built)

DATABASE_URL defaults to the compose Postgres above. Override it to point at your own database.

Run the web UI (dev)

The web SPA is bundled into the production server image, but for local dev run it standalone:

web/
cd web && bun install && bun run dev

Install the agent

Linux: grab a static binary (musl, x86_64/aarch64, no system deps) from the releases page and drop it on your PATH. Checksums ship as SHA256SUMS alongside each release.

macOS / Windows / from source:

client/
cd client && cargo build --release   # -> target/release/thespider-agent

The release binary is the whole agent — a single artifact. A strings check on it shows no prompt or methodology text (only one rendered prompt per claimed slice ever reaches the client, by design).

On-prem / production (Docker Compose)

For a real single-tenant install, skip the dev steps above and use the shipped image — it serves the /v1 API, the Better-Auth endpoints, and the web SPA from one origin, and migrates-on-boot:

deploy/
cp deploy/.env.example deploy/.env
# At minimum set in deploy/.env:
#   BETTER_AUTH_SECRET   (openssl rand -base64 48)
#   LICENSE_JWT          (from your vendor; without it the instance is read-only)
docker compose -f deploy/docker-compose.yml up -d --build
curl -fsS http://localhost:8080/healthz     # {"status":"ok","mode":"onprem",...}

Full guide: deploy/install-guide.md. Air-gap: deploy/air-gap.md.

Verify the install

curl -fsS http://localhost:8080/healthz

Next steps