Quick Start: Build Your First Agent in 10 Minutes
This tutorial will get you from zero to a working AI agent in under 10 minutes. By the end, youโll have:- โ OmniDaemon installed and running
- โ Your first agent listening for events
- โ A publisher sending events
- โ Results being stored and retrieved
Step 1: Install Event Bus & Storage Backend
For this Quick Start, weโll use Redis (the current production-ready backend for both event bus and storage).๐ก OmniDaemon is pluggable! Redis Streams is our first event bus implementation. Coming soon: Kafka, RabbitMQ, NATS. For storage, we support JSON (dev) and Redis (production), with PostgreSQL, MongoDB, and S3 planned.
macOS
Ubuntu/Debian
Windows
Docker (All Platforms - Easiest!)
PONG
โ If you see โcommand not foundโ or connection error, the event bus backend isnโt running. Try the Docker method above.
Step 2: Install OmniDaemon
Using uv (Recommended - Fast!)
Using pip (Traditional)
Step 3: Create Your First Agent (Production-Ready)
Weโll use the Supervisor pattern - for process isolation and auto-recovery.
Create Agent Directory
callback.py:
__init__.py:
agent_runner.py:
- โ Process isolation (like containers)
- โ Auto-restart on crash
- โ Production-ready for Python agents
- โ Fault containment
๐ Working Examples
Want to see complete, production-ready implementations? Check these out:Multiple Supervised Agents
examples/agents_with_supervisors/
Shows real-world patterns:
- Multiple agents with supervisors in one runner
- Google ADK with MCP filesystem tools
- Proper initialization and graceful shutdown
supervisor_agent_runners.py- Runner setupgoogle_adk_with_supervisor/callback.py- Agent logicgoogle_adk_with_supervisor/adk_agent.py- ADK setup
๐ก These examples are your best teacher. Copy their patterns for production use.
Development Alternative (Simple)
For quick prototyping only (no isolation):Step 4: Run Your Agent
- Shows โRegistered agentโ message
- Shows โAgent runningโ message
- Process doesnโt exit (stays running, waiting for messages)
Keep this terminal running - your agent is now alive and listening!
Step 5: Publish an Event
Open a NEW terminal (keep the agent running in the first one!) and createpublisher.py:
SIMPLE VERSION (Required parameters only)
FULL VERSION (With all optional parameters)
webhook: None (no HTTP callback)reply_to: None (no response topic)correlation_id: Auto-generated UUIDcausation_id: Nonesource: โunknownโtenant_id: โdefaultโ
Step 6: Check System Health
In a new terminal:๐ Success! What Just Happened?
You now have a fully functional event-driven AI agent runtime:- โ Event Bus - Running and handling message distribution (using Redis Streams)
- โ Storage Backend - Persisting agents, results, and metrics (using Redis)
- โ OmniDaemon - Installed and operational
- โ Agent - Registered and listening for events
- โ Event Flow - Published task โ Agent processed โ Result stored
- โ Health Check - All systems verified
โ๏ธ Configuration (Optional)
The Quick Start uses smart defaults - you donโt need to configure anything! Defaults:- Storage Backend: JSON files in
.omnidaemon_data/(pluggable) - Event Bus: Redis Streams at
localhost:6379(pluggable) - API: Disabled (use SDK/CLI only)
.env file:
For Quick Start: Stick with defaults! ๐
๐ Quick Troubleshooting
Problem: โEvent Bus connection keeps failingโ
Problem: โAgent runs but doesnโt process tasksโ
Problem: โNo output when running agentโ
This is normal! Agent runs in background. Look for:- โ โRegistered agentโ message
- โ โListening for topicsโ message
- โ No error messages
Problem: โCanโt import OmniDaemonSDKโ
๐ Whatโs Next?
Congratulations! Youโve built your first AI agent with OmniDaemon. Hereโs where to go next:Learn More
- Core Concepts - Understand EDA deeply
- Agent Lifecycle - Registration, subscription, deletion
- Callback Pattern - Master the callback
Build Real Agents
- Use OmniCore Agent - AI agent with MCP tools
- Use Google ADK - Googleโs Agent Development Kit
- Common Patterns - 7 production-ready recipes
Go to Production
- Production Setup - Deploy for real
- Monitoring - Metrics, health, DLQ
Explore the API
- Python SDK Reference - Complete API docs
- CLI Reference - All CLI commands
๐ Need Help?
- ๐ฌ Ask Questions
- ๐ Report Issues
- ๐ Get Support
Happy building! ๐