Appearance
Installation
One-Command Install
The fastest way to install HELIX Mission Control:
Linux / VPS (Ubuntu 20.04/22.04/24.04, Debian 11/12)
bash
curl -fsSL https://helixnode.tech/install.sh | sudo bashmacOS (Apple Silicon or Intel)
bash
curl -fsSL https://helixnode.tech/install.sh | bashmacOS Prerequisites
Docker Desktop must be installed and running before you run the installer. Download it from docker.com. Homebrew will be installed automatically if not present.
The installer will prompt you for:
- Domain name — your server's domain (or IP address)
- Admin email — for SSL certificates and your first login
- Admin password — password for the admin account
- AI model provider — which AI provider to use (Moonshot, OpenAI, Anthropic, NVIDIA, or custom)
- AI model API key — your API key for the selected provider
What the Installer Does
- Pre-flight checks — verifies supported OS, 2GB+ RAM (Linux), 10GB+ disk, and port availability
- System updates — installs required packages (
curl,git,jq, etc.) - Docker setup — installs Docker Engine and Docker Compose if not present
- Creates helix user — dedicated system user for running services
- Clones repository — downloads HELIX Mission Control to
/home/helix/helix-mission-control - Environment config — generates
.envwith your settings, auto-generates secrets (JWT, DB password, gateway token) - Builds containers — builds and starts all Docker services (PostgreSQL, Redis, Gateway, Backend, Frontend)
- Database setup — tables are created automatically on first backend startup
- SSL setup — configures Caddy reverse proxy with automatic Let's Encrypt SSL (if domain provided)
- Systemd service — creates
helix-mission-controlservice for auto-start on boot - Backup scheduling — sets up daily automated backups
Install Options
bash
# With domain and SSL
curl -fsSL https://helixnode.tech/install.sh | sudo bash -s -- \
--domain helix.mycompany.com \
--email admin@mycompany.com
# HTTP only (no SSL)
curl -fsSL https://helixnode.tech/install.sh | sudo bash -s -- --skip-ssl
# Use external reverse proxy (skip Caddy)
curl -fsSL https://helixnode.tech/install.sh | sudo bash -s -- --skip-proxy
# Custom install directory
curl -fsSL https://helixnode.tech/install.sh | sudo bash -s -- \
--install-dir /opt/helixAll Options
| Flag | Description | Default |
|---|---|---|
--domain <domain> | Domain for SSL | Prompted |
--email <email> | Email for Let's Encrypt | Prompted |
--skip-ssl | HTTP only, no SSL | false |
--skip-proxy | Skip Caddy proxy | false |
--branch <branch> | Git branch to install | main |
--install-dir <path> | Installation path | /home/helix/helix-mission-control |
Manual Installation
1. Clone and setup
bash
git clone https://github.com/Xylement/helix-mission-control.git
cd helix-mission-control2. Generate environment config
bash
bash scripts/setup-env.shThis creates .env with auto-generated secrets (JWT, database password, gateway token).
3. (Optional) Configure AI model now
Edit .env and set your AI model API key:
bash
nano .envSet MODEL_API_KEY to your API key. For a free Google Gemini key, visit aistudio.google.com/apikey.
You can also skip this and configure the model from the web UI after starting.
4. Start HELIX
bash
docker compose up -d --buildThis builds and starts all services (database, Redis, gateway, backend, frontend). First build takes 3-5 minutes.
5. Access the dashboard
Open http://localhost:3000 in your browser.
The onboarding wizard will guide you through:
- Creating your organization and admin account
- Activating a license (or starting a free trial)
- Configuring your AI model (if not done in step 3)
- Setting up departments and agents
6. Verify setup
Visit http://localhost:3000/setup-check to see if all services are running correctly.
Note: The database tables are created automatically on first startup — no separate migration step is needed.
Post-Install
After installation completes:
- Access the dashboard at
https://your-domain.com(orhttp://your-ip:3000) - Log in with the admin email and password you configured
- Enter your license key in Settings > Billing (or start with the free trial)
- Run the onboarding wizard to configure your organization
The installer creates a systemd service, so HELIX starts automatically on boot:
bash
# Check service status
sudo systemctl status helix-updater.service
# View logs
sudo journalctl -u helix-updater -f
# Check HELIX containers
docker compose -f ~/helix-mission-control/docker-compose.yml psUpdating
From the Dashboard (Recommended)
Go to Settings > System and click Check for Updates. If a new version is available, click Update Now and confirm with your password. The update runs automatically with progress tracking and auto-rollback on failure.
Note: This requires the update daemon to be running. On Linux, it's set up automatically by the installer. On macOS, use the manual method below.
Manual Update
bash
cd ~/helix-mission-control
git pull origin main
docker compose up -d --buildOr use the update script:
bash
cd ~/helix-mission-control
bash scripts/update.shUninstalling
To completely remove HELIX:
bash
cd ~/helix-mission-control
bash scripts/uninstall.shWARNING
This removes all containers, volumes (including the database), and configuration. Make a backup first if you want to keep your data.
Troubleshooting
API requests return "Not Found" or pages show loading forever
The frontend auto-detects the backend URL. If accessing on port 3000, it redirects API calls to port 8000. Behind a reverse proxy (port 80/443), it uses relative paths.
If auto-detection doesn't work, set the backend URL explicitly:
bash
# Set explicit API URL in .env
echo "NEXT_PUBLIC_API_BASE_URL=http://YOUR-SERVER-IP:8000" >> .env
# Rebuild the frontend
docker compose up -d --build frontendVisit http://localhost:3000/setup-check to diagnose connectivity issues.
Containers won't start on macOS
Docker Desktop must be running before starting HELIX. Also ensure file sharing is enabled for your home directory in Docker Desktop > Settings > Resources > File Sharing.
"Permission denied" on install
On macOS, don't use sudo:
bash
# Correct (macOS):
curl -fsSL https://helixnode.tech/install.sh | bash
# Correct (Linux):
curl -fsSL https://helixnode.tech/install.sh | sudo bashUpdate button doesn't work
The update daemon must be running:
bash
sudo systemctl status helix-updater.serviceIf it's not running, reinstall it:
bash
# See the systemd service setup in the install script
sudo systemctl enable helix-updater.service
sudo systemctl start helix-updater.serviceOn macOS, update manually:
bash
cd ~/helix-mission-control
git pull origin main
docker compose up -d --buildVersion shows 1.0.0 after install
Pull the latest code and rebuild:
bash
cd ~/helix-mission-control
git pull origin main
docker compose up -d --build
cat VERSION # Should show latest version