Server Prerequisites

OS: Ubuntu 22.04+ or Debian 12+
RAM: 2 GB min, 4 GB recommended
CPU: 2 vCPU min
Ports: 80, 443 open inbound

# Node.js 22 via nvm
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
nvm install 22 && nvm use 22

# Docker + Docker Compose
curl -fsSL https://get.docker.com | sh

# Nginx
apt install nginx certbot python3-certbot-nginx

Server Installation

git clone https://github.com/jonathanARMS23/AI-Dev-Assistant.git /opt/ada
cd /opt/ada

ada server init --remote \
  --domain ada.your-domain.com \
  --email admin@your-domain.com
# Generates docker-compose.yml, nginx.conf, .env.server, ssl/

nano .env.server   # Edit ANTHROPIC_API_KEY + ADA_JWT_SECRET before deploying

ada server deploy
# → docker compose up --build -d
# → certbot --nginx -d ada.your-domain.com
# → nginx -s reload
# → Health check verification

Required Env Variables

VariableRequiredDescription
ANTHROPIC_API_KEYyesAnthropic API key (sk-ant-...)
ADA_JWT_SECRETyesJWT HS256 secret — min 64 chars. Generate: openssl rand -hex 32
ADA_DB_PATHnoSQLite path (default: /data/ada-api.db)
ADA_IPC_PORTnoIPC TCP port (default: 3099, inter-container)
ADA_API_PORTnoREST+WS port (default: 3001)
ADA_UI_PORTnoNext.js port (default: 7777)

Nginx Config (generated)

# /etc/nginx/sites-available/ada
server {
  listen 443 ssl;
  server_name ada.your-domain.com;

  location / {
    proxy_pass http://localhost:7777;    # ada-ui
  }

  location /api {
    proxy_pass http://localhost:3001;   # ada-api REST
  }

  location /ws {
    proxy_pass http://localhost:3001;   # ada-api WebSocket
    proxy_http_version 1.1;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection "upgrade";
  }
}
Security in server mode

JWT auth is mandatory. CORS + Origin check enforced. IPC is TCP loopback-only (127.0.0.1:3099) — never exposed to the network. Never commit .env.server to version control.