Press Alt+Space. Speak. Done. Your personal AI agent is always one keystroke away.
AgentLite is an open-source desktop AI agent designed for everyone — not just developers. No terminal. No Docker. No setup complexity. A single desktop app with voice as the primary interface.
- Instant activation — Press Alt+Space, a floating orb appears, already listening
- Voice-first — Speak naturally, get spoken answers. Text input is the fallback
- Multi-LLM — Anthropic Claude, OpenAI GPT, or local Ollama (free)
- 7 built-in tools — Weather, web search, calculator, reminders, notes, timers
- Voice confirmation — Agent asks before taking actions. Say "yes" or "no"
- Budget control — Set weekly spending limits with proactive warnings at 50/75/90/100%
- Memory — Remembers your name, preferences, and facts across conversations
- Privacy-first — Local STT/TTS by default. Your data stays on your machine
- Telegram integration — Connect a Telegram bot that responds with the same AI
- System tray — Lives quietly in your tray, zero CPU when idle
- 4-step onboarding — Voice test, AI provider, budget, hotkey practice. Done in 3 minutes
- Cross-platform — Windows, macOS, Linux
Prerequisites: Rust, Node.js 18+, pnpm
git clone https://github.com/user/agentlite.git
cd agentlite
pnpm install
export PATH="$HOME/.cargo/bin:$PATH" # if cargo not in PATH
pnpm tauri dev- Voice test — Click the orb and say something to test your microphone
- Connect AI — Select a provider and paste your API key (or use free Ollama)
- Set budget — Choose weekly spend limit ($5/$15/$50 or custom)
- Practice — Press Alt+Space (or Ctrl+Shift+A) to summon the floating orb
That's it. AgentLite minimizes to your system tray.
You're working on a document...
[Press Alt+Space]
╭──────────────────────╮
│ │
│ ╭────────╮ │
│ │ 🎤 │ │ ← Floating orb appears, listening
│ ╰────────╯ │
│ │
│ "What's the weather │ ← Live transcription
│ in Naples?" │
│ │
│ ┌──────────────────┐│
│ │ Naples: 22°C ││ ← Agent responds (voice + text)
│ │ Partly cloudy ││
│ └──────────────────┘│
│ │
│ ⌨ Type $2/$15 │ ← Voice/text toggle + budget
╰──────────────────────╯
[Popup fades away after 8 seconds]
Back to your document. Total interaction: ~5 seconds.
| Tool | Description | Needs Confirmation |
|---|---|---|
calculator |
Math expressions: "What's 15% of 240?" | No |
weather |
Current weather via Open-Meteo (free, no key) | No |
web_search |
Instant answers via DuckDuckGo (free, no key) | No |
note_save |
Save notes: "Remember my wifi password is..." | Yes |
note_list |
List all saved notes | No |
reminder |
Set reminders: "Remind me to call mom in 30 minutes" | Yes |
timer |
Start timers: "Set a 5 minute pasta timer" | No |
Tools requiring confirmation ask via voice: "Should I proceed?" — say "yes" or "no".
| Layer | Technology |
|---|---|
| Desktop | Tauri 2 (Rust + WebView) |
| Frontend | React 19 + TypeScript (strict) |
| Styling | Tailwind CSS 4 |
| State | Zustand |
| STT | Web Speech API / Whisper.cpp (local) |
| TTS | Web Speech API / OpenAI TTS / Kokoro (local) |
| LLM | Anthropic Claude / OpenAI GPT / Ollama (local) |
| Database | SQLite (rusqlite) |
| Build | Vite |
| Tests | 19 Rust unit tests + Biome lint + TypeScript strict |
All configurable from the Settings page (no config files to edit):
- AI Provider — Anthropic / OpenAI / Ollama + API key + model
- Voice — STT — Auto / Web Speech / Whisper Local / OpenAI Cloud
- Voice — TTS — Browser Speech / OpenAI / Kokoro / Piper + speed slider
- Budget — Weekly limit with presets ($5/$15/$50) or custom
- Personality — Professional / Friendly / Minimal
- Hotkey — Alt+Space (default), Ctrl+Shift+A (fallback)
- Auto-hide — 5s / 8s / 15s / Never
- Startup — Launch on boot
- Wake Word — "Hey Agent" (opt-in, requires Picovoice Porcupine)
- Memory — View/add/delete remembered facts
- Channels — Connect Telegram bot
| Feature | AgentLite | OpenClaw | Siri/Alexa | Raycast AI |
|---|---|---|---|---|
| Setup time | 3-5 min | 30-60 min | 0 | 2 min |
| Activation | Hotkey + floating orb | CLI/message | Voice (always on) | Hotkey |
| Voice-first | Primary | Addon | Yes | No (text) |
| Desktop app | Yes | No (CLI) | No | Yes (macOS only) |
| Open source | Yes | Yes | No | No |
| Local/private | Yes | Yes | No | No |
| Budget control | Yes | No | N/A | No |
| Memory | Yes | Yes | Limited | No |
| Tools | 7 built-in | Many | Limited | No |
| Always listening | No (by design) | N/A | Yes | No |
| Cross-platform | Yes | Yes | No | No |
# Prerequisites: Rust, Node.js 18+, pnpm
export PATH="$HOME/.cargo/bin:$PATH"
pnpm install # Install frontend deps
pnpm tauri dev # Run app in dev mode (hot reload)
pnpm tauri build # Build distributable
pnpm test # Run frontend tests
pnpm lint # Biome check
pnpm typecheck # TypeScript strict check
cd src-tauri
cargo test --lib # Run 19 Rust unit tests
cargo check # Type check
cargo clippy # Rust lintersrc-tauri/src/ # Rust backend
├── agent/ # LLM runtime, providers, tools, memory
├── voice/ # STT, TTS, VAD, wake word
├── budget/ # Token tracking, cost calculation, limits
├── channels/ # Telegram bot, WhatsApp bridge
├── commands/ # Tauri IPC command handlers
├── config.rs # TOML configuration
└── db.rs # SQLite schema
src/ # React frontend
├── windows/ # FloatingOrb + MainWindow
├── pages/ # Onboarding, Chat, Settings, Dashboard
├── components/ # VoiceOrb, ActionCard, BudgetMeter, etc.
├── hooks/ # useVoice, useTTS, useAutoHide, useBudget
├── stores/ # Zustand: agent, settings, voice, window
└── lib/ # Tauri wrappers, audio utilities
Apache 2.0 — see LICENSE