Getting Started¶
This guide will help you get OmniAgent up and running quickly.
Installation¶
From Source¶
Verify Installation¶
Quick Start with WhatsApp¶
The fastest way to get started is with WhatsApp and OpenAI:
# Set your OpenAI API key
export OPENAI_API_KEY="sk-..."
# Run with WhatsApp enabled
OMNIAGENT_AGENT_PROVIDER=openai \
OMNIAGENT_AGENT_MODEL=gpt-4o \
WHATSAPP_ENABLED=true \
omniagent gateway run
A QR code will appear in your terminal. Scan it with WhatsApp (Settings → Linked Devices → Link a Device) to connect.
Configuration File¶
For more control, create a configuration file:
# omniagent.yaml
gateway:
address: "127.0.0.1:18789"
agent:
provider: openai # or: anthropic, gemini
model: gpt-4o # or: claude-sonnet-4-20250514, gemini-2.0-flash
api_key: ${OPENAI_API_KEY}
system_prompt: "You are OmniAgent, responding on behalf of the user."
channels:
whatsapp:
enabled: true
db_path: "whatsapp.db" # Session storage
telegram:
enabled: false
token: ${TELEGRAM_BOT_TOKEN}
discord:
enabled: false
token: ${DISCORD_BOT_TOKEN}
voice:
enabled: true
response_mode: auto # auto, always, never
stt:
provider: deepgram
model: nova-2
tts:
provider: deepgram
model: aura-asteria-en
voice_id: aura-asteria-en
skills:
enabled: true
paths: # Additional skill directories
- ~/.omniagent/skills
max_injected: 20 # Max skills to inject into prompt
Run with the config file:
Using Different LLM Providers¶
Anthropic (Claude)¶
export ANTHROPIC_API_KEY="sk-ant-..."
OMNIAGENT_AGENT_PROVIDER=anthropic \
OMNIAGENT_AGENT_MODEL=claude-sonnet-4-20250514 \
WHATSAPP_ENABLED=true \
omniagent gateway run
Google Gemini¶
export GEMINI_API_KEY="..."
OMNIAGENT_AGENT_PROVIDER=gemini \
OMNIAGENT_AGENT_MODEL=gemini-2.0-flash \
WHATSAPP_ENABLED=true \
omniagent gateway run
Testing & Debugging¶
Before connecting messaging channels, verify the agent is running correctly using the WebSocket gateway directly.
Health Check¶
Expected response: {"status":"ok"}
WebSocket Smoke Test¶
Install websocat if needed:
Connect to the WebSocket endpoint:
Then send JSON messages interactively:
{"type":"ping"}
{"type":"chat","content":"What tools do you have?"}
{"type":"chat","content":"Search for recent AAPL news"}
One-Liner Test¶
For quick validation in scripts or CI:
This tests the built-in web_search tool which supports web, news, and image searches via omniserp.
Expected response format:
{"id":"...","type":"response","content":"Here are the recent news articles about AAPL...","timestamp":"..."}
Debugging Tips¶
- Agent not responding? Check that
OPENAI_API_KEY(or your provider's key) is set - Search tool failing? Set
SERPER_API_KEYorSERPAPI_API_KEYfor web search - Tool calls failing? Verify compiled skills are registered in the agent logs
- Connection refused? Ensure
STORAGE_PATHpoints to a writable location (default/datarequires root)
Set environment variables for local development:
Next Steps¶
- WhatsApp Setup Guide - Detailed WhatsApp configuration
- Voice Integration - Enable voice notes
- Skills Development - Create custom skills
- Configuration Reference - Full configuration options