Prerequisites
| Tool | Version | Install |
|---|---|---|
| Node.js | 22 LTS | nodejs.org or nvm install 22 |
| npm | ≥ 10 | Included with Node.js 22 |
| Python | 3.11 | python.org or brew install python@3.11 |
| Git | any | git-scm.com |
Node.js 22 LTS is required — the project’s
.nvmrc pins this version. If you use nvm, run nvm install 22 && nvm use 22 before proceeding.Clone and install
Set up the Python environment
Run in development mode
Debugging
Renderer process
Open DevTools: View → Toggle Developer Tools or ⌥⌘I. Standard Chrome DevTools with React DevTools extension support.Main process
In development, Electron prints its process PID to the terminal. You can attach a Node.js debugger via VS Code using the Attach to Process option — select the Electron main process. Alternatively, openchrome://inspect in a Chromium-based browser while MIRA is running in dev mode.
Python engines
Both bridge processes (rlm-bridge.py, nae-bridge.py) write debug output to stderr only. In development, stderr from the child processes appears directly in the terminal that launched npm run dev. All stdin messages (commands) and stdout messages (responses) exchanged with the bridges are also logged via electron-log in the main process.
Edit this page — Open a pull
request