Reina is an open-source desktop AI agent. It holds a continuous conversation around your local workspace — understanding your projects, organizing information, and driving multi-step tasks forward — and when one pair of hands isn't enough, it fans the work out to a coordinated team of sub-agents. Everything runs as a plain desktop app: you bring your own models and API keys, and nothing has to pass through a vendor backend.
Note
Reina brings its own model layer: you configure your own models and API keys in settings (stored locally in ~/.reina/) and decide which provider to use. No product HTTP server, no cloud backend.
- 🧠 Workspace-aware sessions — a continuous conversation organized around your local projects, files, and tasks. Long sessions survive context compaction without forgetting the original goal, and every session persists so you can pause and pick up seamlessly.
- 🤝 Multi-agent team mode — a lead agent decomposes a goal into a DAG of subtasks and coordinates worker agents through phase gates until every branch lands — no coordinator stalls, no premature "done".
- 🧩 MCP & Skills, with a marketplace — connect MCP servers and install skills from built-in marketplaces; the agent can even search for and install new skills for itself mid-task.
- 🔑 Bring your own models — configure any provider you like and switch per session. API keys live in
~/.reina/, never reach the UI layer, and stay fully under your control. - 🛡️ Permissioned & transparent — side-effecting actions go through approval prompts; every step is visible, pausable, and resumable.
- 🖥️ Multi-window desktop UX — chat / workspace / settings in cleanly separated surfaces, hugging your local workflow instead of living in a browser tab. Auto-updates keep you on the latest build.
Curious how a coding agent like this actually works under the hood? Reina's core mechanisms — the agent loop, context compaction, prompt-cache engineering, subagent watchdogs, permission gates, the provider compatibility layer — are taught in learn-agent: 15 runnable, zero-dependency lessons, each ported and simplified from this codebase. Read the lesson, then come back and find the real implementation here.
Download the build for your OS from Releases:
- Windows — installer (NSIS) and portable build.
- macOS — DMG or ZIP.
Install or unzip and run. First time: pick a workspace → enter your model and API key in settings → type a goal or task.
git clone https://github.com/Reina-Agent/Reina.git
cd reina
npm install
npm run build:desktop # builds main process + agent-host + renderer
npm run desktop # launches the desktop appTip
Requires Node.js >= 22. Architecture at a glance below.
Note
The chat UI honors your OS reduce-motion setting. Transitions like the expandable tool-call cards are intentionally disabled when "reduce motion" is on — turn it off in your system settings (Windows: Settings → Accessibility → Visual effects → Animation effects) to see them.
Architecture at a glance
renderer (React + Tailwind v4: chat / workspace / settings windows)
→ preload bridge
→ Electron main IPC
→ agent-host (Node child process, JSON-line stdio)
→ AgentEngine
→ model providers and local tools
Runs entirely as a local desktop app: no product HTTP server, no CLI product entry point.
Issues and PRs welcome! Newcomers can start with good first issue tickets.
Found a security issue? Please report it privately via GitHub Security Advisories — don't open a public issue.
Reina is licensed under AGPL-3.0.
You may freely use, modify, and distribute it, but any modified version — including a service offered over a network — must release its complete source under AGPL-3.0. For use in closed-source / commercial products, contact the author for a commercial license.
Copyright © 2026 7-e1even

