I rebuilt Siri AI from scratch and open sourced it
OpenDex is an open-source desktop AI assistant with a voice-first loop, supporting multiple models (including local Apple Intelligence), offline operation, pluggable voice components, and full-interface themes. It offers cinematic interfaces like a Jarvis HUD and agentic skills with permission gating, even computer control.
Notifications You must be signed in to change notification settings
Fork 2
Star 15
BranchesTags
Open more actions menu
Folders and files
NameName
Last commit message
Last commit date
Latest commit
History
103 Commits
103 Commits
.github/workflows
.github/workflows
assets/download
assets/download
build
build
screenshots
screenshots
scripts
scripts
site
site
src
src
.example.env
.example.env
.gitignore
.gitignore
AGENTS.md
AGENTS.md
CLAUDE.md
CLAUDE.md
CONTRIBUTING.md
CONTRIBUTING.md
LICENSE
LICENSE
PRIVACY.md
PRIVACY.md
README.md
README.md
RELEASING.md
RELEASING.md
components.json
components.json
electron.vite.config.ts
electron.vite.config.ts
package.json
package.json
pnpm-lock.yaml
pnpm-lock.yaml
pnpm-workspace.yaml
pnpm-workspace.yaml
tsconfig.json
tsconfig.json
Repository files navigation
A voice-first, open-source AI assistant for your desktop. Wake it, talk to it, and a tool-using agent talks back — in a cinematic interface you choose.
Download
Or browse every version on the Releases page.
The app auto-updates: it checks GitHub Releases on launch (and hourly), downloads new versions in the background, and prompts you to restart when one is ready.
What is OpenDex?
OpenDex is a desktop app that turns any LLM into a hands-free, Iron-Man-style voice assistant. Say the wake word (or push to talk), speak naturally, and the agent thinks, uses tools, and replies out loud — streaming its answer into a live visualization.
It's a harness, not a single bot: the model, the voice, the wake/transcription engines, the on-screen theme, the greeting, and the agent's skills are all configurable, and it can run fully offline and free (local speech in, local speech recognition, system voice out) — and on a Mac with Apple Intelligence, even the model runs on-device, so the whole loop is free with no key.
Features
🎙️ Voice-first loop — wake word → listen → think (with tools) → speak, plus natural follow-ups and opt-in barge-in (interrupt mid-reply).
🧠 Bring any model — pick your provider in setup: Apple Intelligence (on-device, free, no key — macOS), your own OpenAI or Anthropic key, or the Vercel AI Gateway (one key → Claude, GPT, Gemini, and more). (An OpenDex hosted subscription — sign in, no keys, cloud-synced — is coming soon.)
🆓 Free & offline option — Vosk wake word + local Whisper transcription (WASM, no signup) and your OS's built-in voice. No data leaves the machine except the LLM call.
🔌 Pluggable voice I/O — wake via push-to-talk, Vosk, or Web Speech; transcribe via local Whisper/Vosk, OpenAI, or Web Speech; speak via ElevenLabs or system TTS.
🎨 Full-interface themes — the theme is the whole UI: a cinematic Jarvis HUD with an animated arc reactor, a minimal Talking Dot, or a Typing Cursor terminal. All react to your voice.
🛠️ Agentic skills with a permission gate — the agent can take real actions (e.g. open apps & URLs); sensitive actions pop an Allow once / Always / Deny prompt that's remembered per skill.
🖥️ Computer-use (opt-in) — let it see the screen and drive the mouse & keyboard to operate apps for you. Works with any vision model (screenshots stream back as images), and stays behind the permission gate.
🔐 Secure by design — API keys are encrypted with your OS keychain and live only in the main process, never in the UI.
Themability
OpenDex is fully theamable, you can change anything about the user interface and make it yours.
Screenshots
First-run setup Minimal "typing cursor" theme
Build from source
Requires Node.js 20+ and pnpm.
git clone https://github.com/wassgha/opendex.git cd opendex pnpm install pnpm dev # launches the OpenDex desktop window
On first launch a short onboarding wizard walks you through choosing a model provider, voice, wake/transcription engine, theme, and greeting. Everything is changeable later from the Settings gear (⚙).
Pick where the thinking happens — every part of the loop can be free/offline:
Model: Apple Intelligence (on-device, free, no key — macOS only), your own OpenAI/Anthropic key, or the Vercel AI Gateway (one key, any provider).
Voice out: "System voice" (free) or ElevenLabs (key).
Voice in: local Whisper/Vosk (free, offline, one-time model download) or OpenAI Whisper (key).
Wake: push-to-talk / Vosk (free, offline) or Web Speech (browser).
On a Mac with Apple Intelligence enabled, the whole loop (model + speech + voice) runs locally with no keys at all.
Optional .env (dev convenience)
Keys are normally entered in-app and stored encrypted. For development you can seed them via .env (used only as a fallback):
cp .env.local.example .env
Variable Purpose
AI_GATEWAY_API_KEY chat via the Vercel AI Gateway
OPENAI_API_KEY chat via OpenAI directly, and/or OpenAI Whisper transcription
ANTHROPIC_API_KEY chat via Anthropic (Claude) directly
ELEVENLABS_API_KEY ElevenLabs TTS (skip if using the system voice)
TAVILY_API_KEY web-search tool (optional)
The chat provider needs one of AI_GATEWAY_API_KEY / OPENAI_API_KEY / ANTHROPIC_API_KEY — matching the provider you select. Apple Intelligence needs none.
Skills & permissions
The agent's capabilities are skills — declarative tool bundles. Sensitive ones run behind a permission gate: when the model wants to act, OpenDex pauses and asks, and your choice (Allow once / Always / Never) is remembered. Built-in skills today: Open apps & URLs, and Control the computer (screen capture + mouse/keyboard — opt-in, off by default).
Computer-use setup (macOS): enable Control the computer in Settings → Skills & tools, then grant OpenDex Screen Recording and Accessibility permission in System Settings → Privacy & Security (without them, screenshots come back blank and clicks do nothing). It's powerful — keep the permission on Ask, and "Allow once" covers the whole task it's working on.
Roadmap
Electron shell + secure agent/TTS-over-IPC
Config, onboarding & OS-keychain key storage
Full-interface themes (Jarvis HUD · Talking Dot · Typing Cursor)
Pluggable wake-word + speech-to-text (incl. free offline Whisper & Vosk)
Skills + permission gate (Open apps & URLs)
Computer-use — screen capture + mouse/keyboard control, gated & opt-in
Pluggable model providers — Apple on-device, OpenAI/Anthropic keys, AI Gateway
OpenDex hosted subscription — sign in, no keys, cloud-synced settings & history
MCP servers + more built-in skills (shell, filesystem, …)
Signed GitHub releases + auto-update
Scripts
Command Description
pnpm dev run the app with hot reload
pnpm build build main/preload/renderer into out/
pnpm start run the built app
pnpm dist package installers (mac/win/linux) via electron-builder
pnpm typecheck tsc --noEmit
pnpm smoke:chat [briefing] exercise the agent loop without Electron
Tech Stack
Electron · electron-vite · React 19 · Tailwind CSS 4 · Vercel AI SDK v6 · ElevenLabs · Vosk · transformers.js (Whisper) — all local speech engines are WASM. The only native module is nut.js (computer-use input control); it ships prebuilt N-API binaries per platform.
License
MIT — contributions welcome.
About
A fully open-source, extensible, voice-first agentic harness that can control your computer (yes, it has a J.A.R.V.I.S. theme)
getopendex.com
Resources
Readme
License
MIT license
Contributing
Contributing
Uh oh!
There was an error while loading. Please reload this page.
Activity
Stars
15 stars
Watchers
0 watching
Forks
2 forks
Report repository
Releases 10
1.1.7
Latest
Jun 29, 2026
+ 9 releases
Packages 0
Uh oh!
There was an error while loading. Please reload this page.
Contributors
Uh oh!
There was an error while loading. Please reload this page.
Languages
TypeScript 97.3%
CSS 2.1%
HTML 0.6%