Your Local AI Assistant with Multi-Agent Intelligence
Run powerful AI agents locally with a beautiful web UI, CLI, or desktop GUI
Features • Quick Start • Agents • Tools • Installation
| 🎯 | Multi-Agent Architecture - Specialized agents that collaborate to solve complex tasks |
|---|---|
| 🖥️ | Multiple Interfaces - Web UI, CLI, and native GUI application |
| 🤖 | Local LLM Support - Run models locally with llama.cpp integration |
| 🔒 | Privacy First - Your data stays on your machine |
| 🌐 | Web Research - Search, weather, finance, and more |
| 💻 | Code Execution - Safe Python sandbox and shell commands |
# Clone and install
git clone <repository-url>
cd aria
uv sync
# Start the server
aria server run
# Open http://localhost:8000 in your browser📦 Install with GUI support
uv sync --extra gui
aria-gui # Launch desktop applicationAria uses a team of specialized agents that work together:
| Agent | Role | Capabilities |
|---|---|---|
| 🎯 Aria | Orchestrator | Conversation, task routing, PDF parsing |
| 🐍 Guido | Python Developer | Code execution, syntax validation, debugging |
| 🌐 Wanderer | Web Researcher | Web search, content download, data extraction |
| 📊 Wizard | Market Analyst | Stock data, financial research, market insights |
| 🎬 Spielberg | IMDb Expert | Movie/TV search, cast info, ratings, trivia |
User Request → Aria (Orchestrator) → Specialist Agent → Response
↓
[Routes to best agent for the task]
Aria evaluates each request and either handles it directly or delegates to the most capable specialist.
Each agent has access to specialized tools:
| Category | Tools |
|---|---|
| 📁 Files | Read, write, search, manage files safely |
| 🌐 Search | DuckDuckGo, weather, finance, YouTube transcripts |
| 💻 Shell | Execute commands with platform-specific handling |
| 🐍 Development | Python execution, syntax checking, debugging |
| 🎬 IMDb | Movie/TV search, person lookup, episode guides |
| 🧠 Reasoning | Step-by-step problem solving, scratchpad |
| 🌍 Browser | Web automation, page interaction |
- Python 3.12 or higher
uvpackage manager (recommended)- Git
# Clone the repository
git clone <repository-url>
cd aria
# Install dependencies
uv sync
# Or with GUI support
uv sync --extra guiOn first launch, Aria automatically:
- Creates configuration files
- Sets up the database
- Generates auth secrets
aria check # Verify installation
aria server run # Start the web server# Server management
aria server run # Run in foreground
aria server start # Start in background
aria server stop # Stop the server
aria server status # Check status
# User management
aria users list # List users
aria users add # Add new user
# Model management
aria models list # List downloaded models
aria models download # Download a model
# System info
aria system info # System information
aria system gpu # GPU information
# Configuration
aria config show # Show current configaria-gui # Launch desktop applicationThe GUI provides:
- Server control (start/stop)
- User management
- Model downloads
- Log viewing
After starting the server, access the web interface at http://localhost:8000
Aria uses environment variables stored in .env:
# Core settings
DATA_FOLDER=./data
CHAINLIT_AUTH_SECRET=<auto-generated>
# Model paths
CHAT_MODEL=<path-to-chat-model>
VISION_MODEL=<path-to-vision-model>
EMBEDDING_MODEL=<path-to-embedding-model>📁 Directory Structure
aria/
├── data/ # Database, models, binaries
│ ├── aria.db # SQLite database
│ ├── models/ # GGUF model files
│ └── bin/ # llama.cpp binaries
├── storage/ # Uploaded files
├── chromadb/ # Vector database
└── .env # Configuration
Contributions are welcome! Please feel free to submit issues and pull requests.
# Install dev dependencies
uv sync --group dev
# Run tests
uv run pytest
# Format code
uv run black src/
uv run isort src/This project is licensed under the MIT License - see the LICENSE file for details.
Made with ❤️ by malvavisc0
