Jarvis wakes on its own, learns from every issue, asks when it's stuck, and improves its own code — behind a seatbelt that never lets it ship a regression. Open source. Runs on your models (Claude, Codex, or fully local via Ollama).
curl -fsSL https://jarvisbot.app/install | bash
Beta. Default mode: shadow — it proposes and asks, never acts, until you let it. Run it on a box you trust.
/curl -fsSL https://jarvisbot.app/install | bashclones the core, sets up the venv + dashboard./install.sh url re-prints itRuns on Linux. Optional Postgres + Redis (everything degrades gracefully without them).
Each wake it rebuilds its world from durable memory, does one bounded thing, writes back what it learned, and sleeps. Runs forever on a finite model.
It spawns cheap researchers on demand and coordinates them through shared memory — emergent, not hand-orchestrated.
Before it trusts a conclusion it red-teams its own work. Before it changes its own code it must beat a tamper-proof fitness check it cannot fake.
When it genuinely can't figure something out, it asks — in the dashboard or on Telegram — like a colleague, and learns from your answer.
It won't accept a conclusion until that conclusion has survived an adversarial red-team — and it fails closed: an un-run check never counts as a pass. What it can't verify, it asks you.
It can improve its own code — but only behind a tamper-proof fitness gate it can't fake, an independent red-team, and a one-command rollback. Off by default.
Claude/Codex via CLI, any OpenAI-compatible or Anthropic HTTP endpoint, or fully local via Ollama. Route a cheap model for grunt work and a frontier model for the main brain. Self-hosted, token-gated, secrets in a local vault. Nothing phones home.
Ships in shadow mode. Risky actions (deploy, infra, self-edit) are denied by default; you grant them deliberately and watch every tick in the Activity tab.
Jarvis reads what each model actually supports and shows only that: reasoning effort/thinking and the real context window — including Claude's 200K↔1M and per-model context sizing on Ollama. Switch it inline from the chatbox.
Add Model Context Protocol servers (local stdio or remote HTTP with one-click OAuth) and their tools are offered to whatever brain is answering — native tool-calls on HTTP backends, and the Claude CLI connects to the same servers itself.
Shipped skills (web research, network discovery, deep code search) install with a click and run from chat with /. Paste your own, or just ask Jarvis to write one — it's auto-detected.
Streaming chat with a collapsible thought block, inline images, syntax-highlighted code, a knowledge base of what it learned, and live activity — all in a zero-dependency web UI.
wake → perceive (alerts · backlog · memory) → orient → decide (priority ladder)
→ think (the model) → ask if stuck → act (workers, propose-only) → reflect → sleep
young Jarvis works on itself and learns first — your production work comes last, until it earns trust.
Memory: Redis (working) · Postgres (episodic) · optional semantic layer. Safety: every action class is opt-in; self-edits go snapshot → fitness → red-team → adopt or roll back.
The engine is public and environment-agnostic. Your infra lives in a private
extras/ overlay — your config, your skills, your secrets — never in the core. Clone
the core, add your overlay, run the installer. That's it.