Quick Start

Get Elmo running on your infrastructure in under 5 minutes using the CLI.

Prerequisites

  • Docker — Docker Engine 24+ with Docker Compose v2
  • Node.js — 18.x or later (for the CLI)
  • At least one AI provider API key (OpenAI or Anthropic)

Install the CLI

npm install -g @elmohq/cli

Initialize Your Instance

Run the interactive setup wizard:

elmo init

The wizard walks you through:

  1. Config directory — Where to store your elmo.yaml and .env files (default: ./elmo)
  2. PostgreSQL — Run Postgres in Docker (recommended) or provide an existing DATABASE_URL
  3. AI Providers — Enter your API keys for OpenAI, Anthropic, and/or DataForSEO
  4. Start — Optionally start the stack immediately

Once complete, Elmo generates two files in your config directory:

FilePurpose
elmo.yamlDocker Compose configuration for all services
.envEnvironment variables, secrets, and API keys

Start Elmo

If you didn't start during init, bring everything up with:

elmo start

This pulls the Docker images, starts all services, and waits for them to become healthy. Once ready, open http://localhost:1515 in your browser.

System Architecture

Elmo system architecture: User connects to Web; Web and Worker share a Postgres database; Web calls LLM APIs; Worker calls both LLM APIs and an LLM Scraper.
ServiceRole
WebDashboard UI and REST API
WorkerBackground scheduler that drives prompt runs
PostgresShared database and job queue
LLM APIsDirect API calls (OpenAI, Anthropic, OpenRouter)
LLM ScraperScrapers for ChatGPT, Claude, and Google AI Mode (Brightdata, Olostep)
Elmo CLIGenerates elmo.yaml + .env and runs docker compose

CLI Commands Reference

Once Elmo is running, these commands help you manage it:

# Check service health
elmo status

# View live logs
elmo logs -f

# View logs for a specific service
elmo compose logs -f web

# Stop all services
elmo stop

# Run any docker compose command
elmo compose ps
elmo compose down

What's Next

With Elmo running, head to the User Guide to create your first brand, configure prompts, and start tracking AI visibility.

Was this page helpful?