An open-source agentic OS. Voice-first. JARVIS-like. Forkable. Yours.
Morphis is an agent kernel — a system that sits above your existing OS (macOS, Windows, Linux, Android) and turns your computer into a voice-driven AI assistant that can install software, build apps, manage your digital life, and remember everything. Like JARVIS from Iron Man, but real, open source, and customizable.
The four-line pitch:
- Voice-first. Talk to your computer. Get answers, actions, and built software back. Sub-300 ms acknowledgement.
- Cloud + Local. Uses Claude / GPT when online. Falls back to local Qwen / Gemma when offline. Auto-routes.
- Owns its memory. Every conversation is a markdown file in an Obsidian-compatible vault you own. It evolves nightly like sleeping human memory.
- Forkable like Linux. Apache 2.0. Stewarded by The Nerfed Lab. Make your own Morphis variant in a YAML recipe.
This is the alpha cut. Some things work end-to-end today; others are deliberately stubbed so the architecture stays honest as the rest lands. The full V0→V3 timeline is in DEVELOPMENT_PLAN.md.
Works today:
- Voice loop: wake word → STT → LLM (Claude cloud + Ollama local fallback) → episodic memory write → TTS. Try
morphis voice loop. - Living Vault: markdown notes under
~/.morphis/vault/, hybrid dense+recency retrieval, cold-start re-index. - Sandbox tier 1 (Wasmtime / WebAssembly) — runs code-as-actions today.
- Permission Broker with JSONL audit log — every
shell:execgoes through one HITL gate. - Skill loader (
morphis skills install --local <path>/morphis skills list). Three reference skills inexamples/skills/. morphis doctor— full subsystem health check.morphis log— query the audit log with--tail/--grep/--since.
Surface ships, backend lands later:
- Sandbox tier 2 (Firecracker microVM). Skills declaring
sandbox: firecrackerare refused loudly in V0.1.0 — never silently downgraded. Backends land in V0.5 (ADR 0007). morphis-shell(Tauri desktop window). Today the CLI is the only entry point.- L0–L5 Permission Broker tier ladder. V0.1.0 has one gate; the full ladder lands in V1.
- LanceDB vector index. V0.1.0 ships an in-memory linear-scan cosine impl; the trait surface is the contract (ADR 0005).
- bge-micro-v2 embeddings via fastembed. V0.1.0 uses a deterministic hash embedder.
Not in V0.1.0:
| Phase | Timeline | What ships |
|---|---|---|
| V0 (current) | 0–6 months | Voice loop + LLM router + Living Vault + Wasmtime sandbox + Permission Broker V0 + skill loader. CLI-only. |
| V0.5 — Hardening | months 2–4 | Firecracker backends, LanceDB, bge-micro-v2, L0–L5 broker, sub-agents. |
| V1 — Skills marketplace | months 4–9 | SKILL.md adoption + MCP-native + LiteLLM + Sigstore registry + multi-channel inbox. |
| V2 — Morphis OS | months 9–15 | BlueBuild / Fedora Atomic distro variant. |
| V3 — Mobile | months 15–24 | Android launcher + iOS companion + libp2p mesh. |
These are the V0.1.0 demos. Each one actually runs against the code in this repo.
morphis voice loop— wake on "Morphis", STT your turn, route to Claude or local Ollama, write the exchange to~/.morphis/vault/episodic/, speak the reply.
morphis skills install --local examples/skills/launch-app— installs a skill that opens a host application by name. Permission Broker gates theshell:exec; the decision is logged to~/.morphis/logs/approvals.jsonl.
morphis doctor— verifies every subsystem reports ✓: platform, vault, sandbox, LLM connectivity, skill store.
morphis log --since 1h --grep approval— query the audit log of every permission decision Morphis has made.
For the full vision (build-a-website via Claude Code sub-agent, multi-channel inbox, etc.), see docs/users/what-morphis-can-do.md.
Pre-built installers (brew install, winget install, flatpak install) land in V0.5 alongside Sigstore-signed release artifacts. For V0.1.0, build from source:
# Requirements:
# - Rust 1.78+ (rustup is fine)
# - Python 3.12+ (voice loop + Claude provider use it as a shim)
# - cmake + pkg-config (for cpal / Rust audio crate)
# - On Linux: libasound2-dev
git clone https://github.com/Nerfed-Lab/morphis
cd morphis
cargo build --release --bin morphis
./target/release/morphis doctor # health check
./target/release/morphis skills list # (empty by default)
./target/release/morphis skills install --local examples/skills/launch-appThe voice loop additionally needs:
# Python venv for the voice helpers (STT, TTS, wake word)
python3 -m venv morphis-voice/python/.venv
source morphis-voice/python/.venv/bin/activate
pip install -r morphis-voice/python/requirements.txt
# Optional: cloud LLM. Skip for local-only.
export ANTHROPIC_API_KEY=sk-ant-...
# Optional: local LLM via Ollama
ollama serve &
ollama pull qwen3.5:9b
./target/release/morphis voice loopFull instructions, troubleshooting, and hardware notes: docs/users/install.md.
Morphis serves four very different audiences. The docs branch by what you want to do:
| You are… | Start here |
|---|---|
| A user — want to install Morphis and talk to it | docs/users/install.md |
| A skill author — want to write a skill in 10 minutes | docs/builders/quickstart-skill.md |
| A developer — want to contribute to Morphis core | docs/developers/architecture.md |
| A researcher — want to cite or build on Morphis | docs/researchers/theoretical-foundations.md |
| A fork maker — want to ship your own Morphis variant | docs/forks/creating-a-variant.md |
| Browsing — want the big picture | docs/start-here.md |
For the authoritative architecture, threat model, and research grounding: MORPHIS_RESEARCH.md. For the executional plan: DEVELOPMENT_PLAN.md. For the architectural decisions: docs/decisions/.
Each row is a load-bearing design choice — read MORPHIS_RESEARCH.md for the rationale.
| Feature | Morphis | OpenClaw | Claude Code / Cursor |
|---|---|---|---|
| Voice-first JARVIS personality | ✅ default | bolted on | ❌ |
| Sandbox by default (Wasmtime + Firecracker microVM) | ✅ from line one (ADR 0006) | retrofitting Q1 2027 | ❌ |
| Permissioned self-modification (L0–L5) | ✅ unique | ❌ | ❌ |
| Per-variant security postures | ✅ Reference/Hacker/Caregiver/Sterile/Yolo | ❌ | ❌ |
| Linux distro variant (Morphis OS) | ✅ V2 via BlueBuild | third-party experiment | ❌ |
| Android launcher (full shell replacement) | ✅ V3 | companion app only | ❌ |
| "Build me X" via Claude Code in microVM | ✅ V0.5 anchor demo | not first-class | ❌ |
| Self-evolving Obsidian-vault memory ("Living Vault") | ✅ unique — cd into your memory (ADR 0005) |
opaque vector DB | hidden context window |
| Code-as-actions (smolagents pattern) | ✅ V0 default (ADR 0008) | JSON tool-calls | JSON tool-calls |
| Apache 2.0 + The Nerfed Lab stewardship | ✅ from day 1 | MIT + independent foundation | proprietary |
| 20+ chat channels | ✅ V1 via Matterbridge sidecar | ✅ native | ❌ |
| MCP-native | ✅ V1 | ✅ | ✅ |
| 140+ LLM providers | ✅ V1 via LiteLLM | ✅ via gateway | partial |
| SKILL.md compatibility (OpenClaw / Claude / Cursor / Codex) | ✅ V1 | ✅ | ✅ |
Morphis is built in the open. Every kind of contribution welcome:
- Bug reports →
.github/ISSUE_TEMPLATE/bug_report.md - Feature requests →
.github/ISSUE_TEMPLATE/feature_request.md - Skill proposals →
.github/ISSUE_TEMPLATE/skill_proposal.md - Security issues → see
SECURITY.md— disclose privately first. - Code contributions → start with
CONTRIBUTING.md, thendocs/developers/contributing-code.md. - Doc improvements → PRs welcome; small fixes don't need an issue first.
Governance, RFC process, and TSC structure: GOVERNANCE.md.
Apache 2.0. Patent grant included. Trademark "Morphis" held by The Nerfed Lab (in formation). See docs/governance/trademark.md for trademark policy.
Morphis stands on the shoulders of: AIOS (Rutgers, COLM 2025) for the agent-kernel framing; Anthropic Claude Auto Dream and A-MEM (NeurIPS 2025) for memory consolidation; OpenClaw for proving the agent-OS-as-substrate pattern; Universal Blue / BlueBuild for forkable-Linux-by-recipe; Obsidian and Smart Connections for the vault substrate; smolagents and Open Interpreter for the code-as-actions pattern; Wasmtime + Firecracker for the sandbox boundary; LiteLLM, Matterbridge, and mautrix for absorbing huge integration moats so we don't have to.