- Python 3.11+
- Node.js + npm
- uv (Python package manager)
- Docker + Docker Compose (optional, recommended)
winget install Astral.UVcurl -LsSf https://astral.sh/uv/install.sh | shThe helper script supports two modes:
docker: runsdocker compose up --build(recommended)local: runs backend (uvicorn) + frontend (next dev) on your machine
If you run with --mode auto (default), it uses Docker if available, otherwise falls back to local mode.
Extra flags:
--dry-run: prints the commands and key env defaults (secrets redacted) without starting anything--service backend|frontend|all: start only the backend or only the frontend (default:all)--docker-mode auto|cpu|gpu|ask: choose Docker runtime mode (default:auto)--internet: enable web research and start theinternetDocker profile (SearxNG)--no-bootstrap: skipuvenvironment bootstrap in local backend mode (assumes deps already installed)
.\scripts\local\run.ps1Force a specific mode:
python .\scripts\start.py --mode docker --docker-mode cpu
python .\scripts\start.py --mode docker --docker-mode gpu
python .\scripts\start.py --mode docker --docker-mode gpu --internet
python .\scripts\start.py --mode local
python .\scripts\start.py --mode local --service backend
python .\scripts\start.py --mode local --dry-runConvenience commands:
.\scripts\docker\cpu.ps1
.\scripts\docker\gpu.ps1
.\scripts\docker\gpu-internet.ps1chmod +x ./scripts/*.sh ./scripts/local/*.sh ./scripts/docker/*.sh
./scripts/run.sh --mode localForce a specific mode:
./scripts/run.sh --mode docker
./scripts/docker.sh gpuThis creates .venv/ and installs project dependencies (plus dev extras):
.\scripts\setup\setup.ps1./scripts/setup/setup.sh- Backend: http://localhost:8000
- Frontend: http://localhost:3000
Local mode defaults:
ENVIRONMENT=developmentAPI_ACCESS_KEY=dev-secret-keyNEXT_PUBLIC_API_URL=/api/v1BACKEND_API_URL=http://localhost:8000/api/v1
For real provider usage, set OPENAI_API_KEY / ANTHROPIC_API_KEY / GOOGLE_API_KEY in your shell env (or .env used by Docker Compose).