GitHub - open-jarvis/OpenJarvis: Personal AI, On Personal Devices
Key Points
- 1OpenJarvis is a framework designed to enable local-first personal AI, addressing the current reliance on cloud APIs by providing the necessary software stack for on-device execution.
- 2It emphasizes shared primitives for agent development, evaluations that factor in energy and cost alongside accuracy, and a learning loop that improves models using local data.
- 3The project aims to make locally run personal AI agents the default, only accessing cloud resources when essential, functioning as both a research platform and a production foundation.
OpenJarvis is an opinionated framework designed to enable the development and deployment of personal AI agents that primarily operate locally on user devices, minimizing reliance on cloud-based APIs. The project addresses the current paradigm where "personal" AI agents predominantly route intelligence through remote servers, despite increasing capabilities of local language models (demonstrated by 88.7% efficacy for single-turn chat/reasoning queries and a 5.3x improvement in intelligence efficiency from 2023 to 2025). The core motivation is that while local models and hardware are maturing, a comprehensive software stack for practical local-first personal AI has been absent.
The methodology of OpenJarvis is built upon three foundational pillars:
- Shared Primitives for On-Device Agents: The framework provides a standardized set of components and abstractions to facilitate the construction of AI agents engineered specifically for execution directly on end-user devices. This architecture leverages a hybrid programming model, primarily utilizing Python for high-level scripting and user interaction, while critical, performance-sensitive functionalities (e.g., security, low-level tools, agent orchestration) are implemented in Rust. This dual-language approach aims to combine development agility with the computational efficiency and memory safety inherent to Rust, crucial for resource-constrained on-device environments.
- Multi-Constraint Evaluations: OpenJarvis integrates an evaluation paradigm that extends beyond traditional accuracy metrics to include critical operational constraints for on-device AI. Evaluations are designed to treat energy consumption, floating-point operations per second (FLOPs), latency, and monetary cost as first-class metrics, alongside the conventional accuracy assessment. This holistic approach ensures that models and agents developed within the framework are not only performant in terms of intelligence but also practical and efficient for deployment on diverse hardware, directly contributing to the "Intelligence Per Watt" research initiative. This implies a rigorous benchmarking and optimization loop that considers the full spectrum of device resource utilization.
- Local Trace Data Learning Loop: The framework incorporates a continuous learning mechanism that improves AI models using data collected directly from local device interactions. This "local trace data" comprises user inputs, system performance metrics, and agent behaviors observed during on-device operation. This data is utilized to refine and adapt models, potentially through on-device fine-tuning or personalized model updates, thereby enhancing the agent's performance and relevance to individual user contexts without necessitating constant cloud communication. This approach fosters a self-improving system that leverages real-world, localized usage patterns.
OpenJarvis supports integration with various local inference backends, including Ollama, vLLM, SGLang, and llama.cpp, providing flexibility for different model serving requirements. The development flow emphasizes uv for efficient dependency management and maturin for seamless integration and compilation of the Rust core into Python modules, underscoring its design as both a research platform and a robust production foundation for localized AI.