Jon Saad-FalconandClaude Opus 4.6 350916699e chore: restructure CLAUDE.md as routing table with .claude/rules/
Move detailed architecture, testing, and pattern docs out of CLAUDE.md
into focused .claude/rules/ files. CLAUDE.md is now a lean routing table
that points to the right context based on what you're working on.

Also fixes stale HazyResearch links in README.md (docs URL, clone URL)
and adds CLAUDE.md to .gitignore so it stays per-developer.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 23:19:12 +00:00

OpenJarvis

Composable, Programmable Systems for On-Device, Personal AI.

Project Docs Python License


Documentation

Project Site

OpenJarvis is a framework for building AI systems that run entirely on local hardware. Rather than treating intelligence as a cloud service, OpenJarvis provides composable abstractions for local model selection, inference, agentic reasoning, tool use, and learning — all aware of the hardware they run on.

from openjarvis import Jarvis

j = Jarvis()                                      # auto-detect hardware + engine
response = j.ask("Explain backpropagation")       # route to best local model

j.ask("Solve x^2 - 5x + 6 = 0",                  # multi-turn agent with tools
      agent="orchestrator",
      tools=["calculator", "think"])

j.memory.index("./papers/")                       # index documents into local storage
results = j.memory.search("attention mechanism")  # semantic retrieval
j.close()

Installation

pip install openjarvis            # core framework
pip install openjarvis[server]    # + FastAPI server

You also need a local inference backend: Ollama, vLLM, SGLang, or llama.cpp.

Quick Start

The fastest path is Ollama on any machine with Python 3.10+:

# 1. Install OpenJarvis
pip install openjarvis

# 2. Detect hardware and generate config
jarvis init

# 3. Install and start Ollama (https://ollama.com)
curl -fsSL https://ollama.com/install.sh | sh
ollama serve                      # start the Ollama server

# 4. Pull a model
ollama pull qwen3:8b

# 5. Ask a question
jarvis ask "What is the capital of France?"

# 6. Verify your setup
jarvis doctor

jarvis init auto-detects your hardware and recommends the best engine. After init, it prints engine-specific next steps. Run jarvis doctor at any time to diagnose configuration or connectivity issues.

Development

From source, you need the Rust extension for full functionality (security, tools, agents, etc.):

# 1. Clone and install Python deps
git clone https://github.com/open-jarvis/OpenJarvis.git
cd OpenJarvis
uv sync --extra dev

# 2. Build and install the Rust extension (requires Rust toolchain)
uv run maturin develop -m rust/crates/openjarvis-python/Cargo.toml

# 3. Run tests
uv run pytest tests/ -v

See Contributing for more.

The Five Pillars

Pillar What it does Key abstractions
Intelligence Model management and routing RouterPolicy, QueryAnalyzer, ModelCatalog
Engine Inference runtime abstraction InferenceEngine ABC — Ollama, vLLM, SGLang, llama.cpp, MLX
Agents Pluggable reasoning strategies BaseAgent ABC — Simple, Orchestrator, ReAct, OpenHands, OpenClaw
Tools Capabilities via MCP BaseTool ABC — calculator, code interpreter, web search, memory; external MCP servers auto-discovered
Learning Trace-driven adaptation LearningPolicy ABC — SFT (model routing), AgentAdvisor (restructuring), ICL (tool usage)

Every interaction produces a Trace — a structured record of the full reasoning chain. Learning policies consume traces to improve model selection, agent behavior, and tool usage over time.

About

OpenJarvis is part of Intelligence Per Watt, a research initiative studying the efficiency of on-device AI systems. The project is developed at Hazy Research and the Scaling Intelligence Lab at Stanford SAIL.

Sponsors

Laude InstituteStanford MarloweGoogle Cloud PlatformLambda Labs

License

Apache 2.0

S
Description
No description provided
Readme
105 MiB
Languages
Python 82.8%
Rust 8.6%
TypeScript 7.1%
Shell 0.7%
HTML 0.3%
Other 0.5%