install on macOS
Install your mirror. Then choose how you talk to it.
Your mirror is one local home: your identity, memory, personas and journeys. Install it once, then talk to it from the runtime you prefer. Nautilus for Mirror, one of those options, can also create the mirror for you without a terminal.
Prepare
You need Node.js 24 or newer, an OpenRouter account with at least $5 in credits and an API key, and a subscription for the AI runtime you will use. Codex Plus is the recommended path with Pi.
node --version # must be v24.0.0 or newer
Install or upgrade Node.js from nodejs.org.
Install Mirror Core
Mirror Core is one npm package. There is nothing to clone or build. Run mirror to check it.
npm install -g mirror-mind
mirror
Create your mirror
Initialize your home, add your OpenRouter key to the configuration file init created, then seed your identity.
mirror init your-name
# add this line to ~/.config/mirror/env:
# OPENROUTER_API_KEY=sk-or-...
mirror seed
Your home is ~/.mirror-minds/your-name/. The key stays in that file, readable by you only. Getting Started explains every step.
choose how you talk to it
Each option below reaches the same mirror.
A terminal runtime: Pi
Pi is the recommended runtime: it works with several model providers. Install it, wire it to Mirror once, then open pi in any directory and speak naturally.
curl -fsSL https://pi.dev/install.sh | sh
pi install "$(npm root -g)/mirror-mind"
pi
- list my journeys
- list my personas
- show my Mirror Mind commands
- help me think through an idea using Mirror Mind
In the agent you already use: Claude Code, Codex, Antigravity, Grok Build
Mirror installs into these agents as a plugin: its skills, its hooks and its MCP server. You keep working in the agent you know, now with your identity, memory and journeys. Wire it once:
# Claude Code
mkdir -p ~/.claude/skills
ln -s "$(npm root -g)/mirror-mind/plugins/mirror-mind" ~/.claude/skills/mirror-mind
# Codex
codex plugin marketplace add "$(npm root -g)/mirror-mind"
codex plugin add mirror-mind@mirror-mind
At its next session, Codex asks once to trust the plugin's hooks; that is expected. Antigravity and Grok Build take one or two steps of their own: mirror init prints the steps for the agents it finds, and Getting Started lists them all.
A desktop app: Nautilus for Mirror
A macOS app for working in your journeys. Its assistant installs what it needs, including its own Pi, and connects your providers. With no mirror yet, it creates one for you, without a terminal; that mirror is used from the app. To use the mirror you created above, choose it in Settings › Choose Mirror home…, and the app and your terminal share one mirror.
The app shows what the home holds before it changes anything. A home made by an earlier Mirror is brought up to date only after the Mirror core takes a verified backup, and a Python-era Mirror (before Core 0.32) cannot open it afterwards. If you also use a terminal runtime with the app, use Pi: a Claude Code link would record the app's own turns twice.
Alpha. Built for Intel Macs; Apple Silicon is not tested yet. Not signed or notarized yet: the first time, macOS will refuse to open it. Open System Settings › Privacy & Security and choose Open Anyway.