AnovaX is a small local-first voice assistant that runs completely on the user's computer and treats the desktop as its action surface. It focuses on automating desktop tasks while keeping data local and improving robustness.
Unlike cloud-dominant desktop assistants that send raw audio off the machine and expose fixed skills, AnovaX operates locally and controls desktop resources directly. The design aims to enable secure, private automation of routine tasks.
A single Python process integrates a wake-word detector, a speech processing pipeline, an LLM planner that emits a structured plan of tool calls, a whitelist-and-denylist safety layer, and a multi-agent orchestrator. The planner produces a plan representing tool invocations, which the orchestrator translates into typed child agents executed on a bounded thread pool.
Every tool maps to a specialized agent class (for example, application agents, typing agents, browser agents and six other specializations). Each agent has its own timeout, retry policy, and shared-resource locks. The system-level safety layer enforces what operations are permitted or denied before agents act.
The multi-agent orchestrator runs agents within a limited-size thread pool. When a core step fails, an adaptive recovery loop takes over to retry, replan, or adjust execution strategy so the system can still reach the intended outcome.
AnovaX demonstrates a local-first approach to desktop voice assistants by combining LLM-driven planning with agent-level isolation and adaptive recovery. This architecture enables secure automation of desktop tasks while reducing exposure of sensitive data.
1. How does AnovaX differ from cloud assistants? AnovaX runs fully on the user's machine and avoids shipping raw audio to cloud services, offering local control over actions.
2. How is safety enforced? A whitelist-and-denylist layer plus per-agent limits, retries and resource locks constrain allowed operations.
3. What happens on failure of a core step? An adaptive recovery loop takes control to retry or change strategy to achieve the goal.
4. How are tool calls represented? The planner emits a structured plan of tool invocations that the orchestrator translates into typed agents.
Source: https://arxiv.org/abs/2607.15367