Installation
Get MinusX running with Docker in 5 minutes
MinusX is currently in alpha. Expect rough edges, breaking changes, and incomplete features. We'd love your feedback — open an issue or reach out to the team.
Prerequisites
- Docker (the from-source path also needs Docker Compose)
- An Anthropic API key — or any supported LLM provider
Option A — install script (recommended)
Pulls the prebuilt image from GitHub Container Registry and, while it downloads, walks you through setup in the terminal — workspace and admin account, AI model provider (with a real connection test), and optionally your first database connection. When the app comes up, everything is already configured: just log in.
curl -fsSL https://minusx.ai/install.sh | bashPrefer to read it before you run it: minusx.ai/install.sh (it's in the repo). The script checks Docker, creates a minusx/ directory, generates NEXTAUTH_SECRET into frontend/.env, pulls the image, validates your answers against the app's own code (a one-token LLM call and a real database connector test, run inside the image), creates the workspace, and starts MinusX on the first free port from 3000.
Every setup question is skippable — anything you skip is handled by the in-app setup wizard on first login. Running non-interactively (no terminal) skips all questions.
Re-running the same command later upgrades in place — an existing workspace is detected, the questions are skipped, and your data in minusx/data/ survives restarts and upgrades.
MinusX will be available at http://localhost:3000.
Option B — from source
Builds the image locally instead of pulling the prebuilt one.
1. Clone the repo
git clone https://github.com/minusxai/minusx.git
cd minusx2. Configure environment variables
MinusX is a single Next.js app — the AI agent orchestrator runs in-process, so
all configuration lives in frontend/.env (there is no separate backend).
cp frontend/.env.example frontend/.envEdit frontend/.env — add a generated NextAuth secret:
# Generate with: openssl rand -base64 32
NEXTAUTH_SECRET=<generated-secret-here>The LLM provider is configured in the app after first launch — the setup wizard's AI Models step (or Settings → Models) stores providers and API keys in the workspace; see LLM Providers.
3. Download sample data
Download the mxfood demo dataset (~140MB) — a food delivery analytics database:
mkdir -p data
curl -L -o data/mxfood.duckdb https://github.com/minusxai/sample_datasets/releases/download/v1.0/mxfood.duckdb4. Start MinusX
docker compose up -dMinusX will be available at http://localhost:3000.
For local development without Docker, see the development setup guide.
Supported databases
Rendered from the shared compatibility.json — the same file that drives the app's connection forms and the install.sh interview:
| Database | Type | Configurable in setup.sh |
|---|---|---|
| PostgreSQL | postgresql | yes |
| BigQuery | bigquery | yes |
| Athena | athena | yes |
| ClickHouse | clickhouse | yes |
| CSV | csv | in-app only |
| Excel Workbook | xlsx | in-app only |
| Google Sheets | google-sheets | in-app only |
DuckDB and SQLite additionally work as local dev-mode connectors.
Next steps
- The full environment-variable reference: Configuration
- Pointing the agent at a different model or provider: LLM Providers
- What reports outside your box and how to turn it off: Telemetry & Privacy