How wombatoperator/omarchy-voice works
omarchy-voice is a voice-controlled Omarchy desktop agent, with separate browser, durable-task, and camera-vision capabilities. The main workflow is user request → Realtime or Live model → policy-gated desktop tools → spoken or visual feedback. Durable tasks and camera inspection are distinct branches. README documents these capabilities, but excerpts sample only selected modules, so uncertain internal wiring is omitted.
Main entry points: cli.py CLI · tools.py Tool executor · realtime.py Realtime session · tasks.py Task manager
Components 24
Voice interaction
- CLI
src/omarchy_voice/cli.py - Voice daemon
src/omarchy_voice/__main__.py - Control socket
src/omarchy_voice/session.py - Realtime session
src/omarchy_voice/realtime.py - Live backend
src/omarchy_voice/live.py - Audio feedback
src/omarchy_voice/feedback.py - One-shot planner
src/omarchy_voice/planner.py - Configuration
src/omarchy_voice/config.py
Desktop control
- Tool executor
src/omarchy_voice/tools.py - Action policy
src/omarchy_voice/security.py - System capabilities
src/omarchy_voice/capabilities.py - System discovery
src/omarchy_voice/discovery.py - Browser worker
src/omarchy_voice/browser.py - Page text
src/omarchy_voice/page_text.py
Durable tasks
- Task manager
src/omarchy_voice/tasks.py - Task store
src/omarchy_voice/tasks.py - Task worker
src/omarchy_voice/task_worker.py - Task artifacts
src/omarchy_voice/workspace_files.py
Camera vision
- Vision app
src/omarchy_voice/vision_app.py - Vision provider
src/omarchy_voice/vision_provider.py
Other components
- User
- OpenAI APIs
- Omarchy desktop
- Camera
Connections 35
- User → CLI: issues commands
- User → Voice daemon: speaks requests
- CLI → Control socket: sends controls
- Control socket → Realtime session: controls session
- Voice daemon → Realtime session: runs
- Realtime session → OpenAI APIs: streams audio
- OpenAI APIs → Realtime session: returns responses
- Realtime session → Tool executor: dispatches tools
- Realtime session → Audio feedback: reports state
- User → CLI: submits typed request
- CLI → One-shot planner: runs one-shot plan
- One-shot planner → OpenAI APIs: requests plan
- Live backend → OpenAI APIs: connects backend
- Live backend → Tool executor: dispatches tools
- Tool executor → Action policy: checks actions
- Tool executor → Omarchy desktop: executes desktop actions
- Tool executor → System capabilities: reads manifest
- System capabilities → Omarchy desktop: queries system
- System discovery → Omarchy desktop: inspects installation
- Tool executor → Page text: reads page text
- Tool executor → Browser worker: delegates browser task
- Browser worker → OpenAI APIs: requests computer use
- Browser worker → Omarchy desktop: observes browser
- CLI → Task manager: manages tasks
- Live backend → Task manager: delegates tasks
- Task manager → Task store: persists task state
- Task manager → Task worker: starts worker
- Task worker → Task store: updates task state
- Task worker → Task artifacts: writes artifacts
- CLI → Vision app: starts inspection
- Vision app → Camera: captures frames
- Vision app → Vision provider: requests analysis
- Vision provider → OpenAI APIs: sends selected frame
- CLI → Configuration: loads settings
- Voice daemon → Configuration: loads settings