Assivy

Quickstart

From a fresh checkout to a chatting agent with its first trace.

Prerequisites: Node 22, pnpm, Docker for the backing services, and uv for the source-processing service.

Create your .env

Every app reads one file at the repo root. Copy the template:

cp .env.example .env

The defaults point at the local services started in the next step. Fill in:

  • MINIO_ACCESS_KEY and MINIO_SECRET_KEY — any values; the local RustFS storage starts with them.
  • QDRANT_URL (and QDRANT_API_KEY if your server needs one) — Qdrant holds knowledge vectors and isn't part of the local stack: use Qdrant Cloud or a local server at http://127.0.0.1:6333.
  • AI_GATEWAY_API_KEY — see step 4.

Secrets left empty fall back to development-only defaults with a warning.

Start the backing services

deploy/infra runs MongoDB (with Search and Vector Search), Redis, and RustFS (S3-compatible storage):

cd deploy/infra
docker compose --env-file ../../.env up -d

Data lives under DOCKER_DATA_DIR (default /mnt/c/DockerData). Its rustfs, redis, mongodb, mongodb-config, and mongot subfolders must exist before the first up.

Run the apps

# from the repo root
pnpm install

# terminal 1: the API (http://localhost:8000)
pnpm start:dev

# terminal 2: the worker — runs every background job
pnpm start:worker

# terminal 3: the web UI (http://localhost:3000)
pnpm start:web:dev

Without the worker nothing queued ever runs: no ingestion, syncs, scheduled runs, or evaluation runs. See Background work.

Knowledge ingestion also needs the source-processing service, a separate Python repo that reads the same .env when checked out beside this one:

# in ../SourceProcessing
uv sync
uv run python main.py   # http://localhost:9100

Check the API is up: GET http://localhost:8000/api/health, and GET /api/health/ready for whether it can serve.

Give it a model key

Agents call real models. A new organization starts on the Free plan, whose models run through the Vercel AI Gateway, so set AI_GATEWAY_API_KEY in .env and restart the API and worker. Direct vendor keys (OPENAI_API_KEY, ANTHROPIC_API_KEY, GOOGLE_AI_KEY) are optional; plans with bring-your-own keys can also add providers under Settings → Model Providers — see Model providers.

Without a provider for the model, the chat is refused with Model "<name>" is not available: no provider is configured for it.

Create your first agent

Open Agents and create one — blank, or from the Templates tab. Give it a name, instructions, and at least one model; the default model is the one new chats start on. Then open the agent and send a message.

You now have a turn. Everything below is about understanding it.

Open the trace

Go to Tracing. Your turn is the top row of Traces: expand it to see the span chain, and click a row or span to open its drawer, which lists that span's logs with a toggle for the whole trace. The Logs tab shares the agent and time window you picked on Traces; Metrics keeps its own.

Next

On this page