Decision system for software built with AI
Keep your project's direction in human hands as agents do more of the work.
Nauro records the project decisions you approve, including their reasons and rejected alternatives. It brings those reasons into later agent sessions.
Status: Stable (1.x).
https://github.com/user-attachments/assets/f75ede99-db11-4460-bc09-801c86df1e19
A Codex session, then a Claude session in Pareto, Nauro's development mock project.
Nauro supports longer-lived work across sessions, tools, and handoffs. If a small repo plus a reliable AGENTS.md or CLAUDE.md keeps agents oriented, Nauro may be more than you need.
Retrieval is advisory. New or revised decisions require your explicit approval. Local use needs no account; the record is plain Markdown on your machine. Cloud sync is optional. Nauro sends no product analytics.
The free app installs the CLI, connects agents, and sets up a project. Its read-only viewer shows the project record.
Download for macOS (Apple silicon), signed and notarized. Setup guide.
https://github.com/user-attachments/assets/e23d3d7f-2d5b-4ce4-be18-fcaff74e7973
uv tool install nauro
Install uv, or use pipx install nauro with Python 3.10 or newer.
Pennykeep is the bundled fictional budgeting app.
No account or agent setup required. On macOS or Linux:
mkdir -p /tmp/nauro-demo && cd /tmp/nauro-demo
nauro init --demo
nauro check-decision "Replace envelope budgeting with a passive spending tracker and charts"
Look for Envelope budgeting method in the related decisions. This retrieves prior reasoning; it does not run an agent or change decisions. PowerShell and demo guide.
For CLI setup:
cd your-repo
nauro adopt --with-skills --with-subagents
Skip this command if the desktop wizard already adopted your repository. Restart your agent, then run /nauro-adopt in Claude Code, $nauro-adopt in Codex, or @nauro-adopt in Cursor. Review the proposed project record.
Approve one existing decision you want future sessions to remember. Start a fresh session and ask about a task where it matters. Check how the agent uses the reason.
Run nauro status to check the connection. See agent workflows and setup details.
An existing AGENTS.md is preserved unless you run nauro sync. Its # Manual section survives replacement.
Documentation covers commands, storage, and cloud access. Semantic versioning covers the CLI, local stdio MCP contract, store format, and curated nauro-core API. Cloud sync and hosted MCP are versioned separately.
uv sync --all-packages --all-extras
uv run pytest packages/nauro-core/tests/ -x -q
uv run pytest packages/nauro/tests/ -x -q
Report bugs and request features in GitHub Issues.
Apache 2.0. Named for Peter Naur's Programming as Theory Building (1985).
Source-derived launch command. Check the maintainer’s required arguments and credentials before running:
uvx nauroMerge this template into ~/Library/Application Support/Claude/claude_desktop_config.json. Keep existing servers. Add any arguments, credentials, and permissions required by the maintainer; this template has not been install-tested.
{
"mcpServers": {
"ai-nauro-nauro": {
"command": "uvx",
"args": [
"nauro"
]
}
}
}Restart Claude Desktop completely for changes to take effect. Confirm the server appears connected in the client’s tool list, then try a read-only example from its documentation.
Claude Desktop setup referencenauropypiNauro works with any MCP-compatible client. Copy the config snippet from the Configuration section above and add it to the file shown for your client, then restart the application.
~/Library/Application Support/Claude/claude_desktop_config.jsonRestart Claude Desktop completely for changes to take effect.~/.cursor/mcp.jsonRestart Cursor for changes to take effect..vscode/mcp.jsonReload VS Code window for changes to take effect.~/.codeium/windsurf/mcp_config.jsonRestart Windsurf for changes to take effect..mcp.jsonSave at the project root, then start Claude Code in that project and review the MCP server approval prompt. Keep real credentials out of shared files.