Installation
Prerequisites
System requirements and dependencies before installing Aelio.
Runtime requirements
| Requirement | Version | Required for |
|---|---|---|
| Node.js | ≥ 20 | SDK, server, widget |
| pnpm | ≥ 9 | Building Aelio from source |
| Python | ≥ 3.9 | Python SDK only |
| Docker | Any recent | Production server deployment |
LLM provider (optional for local dev)
Set an API key for real LLM responses. Without one, the server uses a built-in mock LLM:
| Provider | API key | Config profile |
|---|---|---|
| OpenAI (default) | OPENAI_API_KEY | config.openai.yaml |
| Anthropic | ANTHROPIC_API_KEY | config.anthropic.yaml |
| Gemini | GEMINI_API_KEY | config.gemini.yaml |
| Groq | GROQ_API_KEY | — |
| Ollama | None (local) | — |
Secrets
You need one shared secret for SDK ↔ Server auth:
export AELIO_SDK_SECRET=change-me-in-productionGenerate a strong secret for production:
openssl rand -hex 32Never put
AELIO_SDK_SECRETin frontend code.
Three secrets (do not conflate)
| Secret | Purpose | Where it lives |
|---|---|---|
AELIO_SDK_SECRET | SDK ↔ Server auth | Server env + your backend env |
| LLM API key | Server ↔ LLM provider | Server env only |
| Session token | Widget ↔ Server auth | Issued per-user, short-lived |
Repository setup (from source)
git clone https://github.com/aelio-dev/aelio.git
cd aelio
pnpm install
pnpm buildDatabase (for your app)
Aelio Server uses embedded SQLite. Your application uses its own database (Postgres, MySQL, etc.) — Aelio never touches it.