What Ren is
A capable home AI that stays yours
Local-first memory
Every conversation, thread, and reminder lives in a SQLite file on your own machine. Nothing syncs to a cloud you do not control.
Cryptographic identity
Ren holds a persistent ed25519 keypair on-device and can present a signed identity card — a seam for a future trust network.
Whole-home control
18+ connectors: Home Assistant, Hue, HomeKit, Matter, Z-Wave, Sonos, Roku, SmartThings, EVs and more — addressed by name, not by ID.
Voice, optional
Server-side Whisper STT, Piper TTS, Silero VAD and wake-word — all CPU-only and entirely opt-in. Ren boots fine without them.
Safe tool system
A pluggable tool registry where side-effecting actions are gated off by default — Ren explains what it wanted to do instead of doing it blind.
Tiered models
Ren speaks in intent, not model IDs. Short asks route to a fast tier; planning and debugging route to a stronger one — automatically.
How it works
Running in three commands
Install
Clone the repo and run make install. It creates a virtualenv and installs everything with uv — no Docker required to start.
Configure
Copy .env.example to .env, add your ANTHROPIC_API_KEY, and set any REN_* connector vars you need.
Talk to Ren
Run make run and hit localhost:8000 — chat over HTTP, stream over SSE, or speak through the built-in voice client.
make install # uv sync — creates .venv, installs deps cp .env.example .env # add your ANTHROPIC_API_KEY make run # serves on http://127.0.0.1:8000
Smart home
One assistant, every system
Ren ships connectors for the platforms you already run. Assign devices to rooms, group them into scenes, and write automations that reference them by name.
Your AI. Your hardware. Your data.
No hosted accounts. No telemetry. The only thing that leaves your network is the Claude API call you explicitly make.