# Show HN: Renor – one memory for all your AI agents

> Source: <https://github.com/renorai/renor-engine>
> Published: 2026-11-04 17:06:10+00:00

What one agent learns in a session, every agent knows in the next.

1. **Tell one agent once:** a decision, a root cause, a correction.
2. **Renor saves it** as plain Markdown you own.
3. **Every agent recalls it** in its next session: Claude Code, Codex, Cursor, Grok, Gemini, VS Code, OpenCode, Pi or any MCP client.

Two ways in. Both take under a minute.

```
npx renor connect --client claude-code
```

`--client` is `claude-code`, `codex`, `cursor`, `grok`, `gemini`, `vscode`, `opencode` or `pi`. One command adds Renor to that app, signs you in through the app's own flow (no token to copy), writes the memory rule below, and ends with a live check that your workspace answers. Search is hybrid (keywords and meaning). Sign up at [renor.cloud](https://renor.cloud).

Your memory stays in a folder on your machine. No account, no API key. You need Node.js 22.16 or later (22.16+ or 24+); on an older Node, `renor-engine` prints one line saying so and exits.

```
claude mcp add --scope user renor-local -- npx -y renor-engine mcp
codex mcp add renor-local -- npx -y renor-engine mcp
```

Restart the agent. The first start downloads about 12 MB, and the first Renor call works about 3 seconds after an empty start. Notes go to `~/.renor` (set `VAULT_PATH` to use another folder).

**Then add [the memory rule](#the-memory-rule)** to the agent's instructions file, so it saves on its own.

**Cursor or VS Code**, one click:

**Grok.** Grok starts project servers only in a folder it trusts, so register Renor in the project:

```
grok mcp add --scope project renor -- npx -y renor-engine mcp
```

Trust the folder in Grok, then restart Grok. To check it: ask Grok to save a real decision from your project, restart Grok, and ask about it in the new session. To turn telemetry off, set `DO_NOT_TRACK=1` in the environment Grok runs in. Paste [the memory rule](#the-memory-rule) into the project's `AGENTS.md`.

**Any other MCP client:** the command is `npx` with the arguments `-y renor-engine mcp` (stdio).

**Check it works:**

```
npx renor-engine status
```

Then tell your agent a real decision ("remember that the orders service uses Postgres 16"), start a new session, and ask about it.

Running it on a server or with Docker: [docs/self-hosting.md](https://github.com/renorai/renor-engine/blob/main/docs/self-hosting.md).

Several agents on one memory: start each with its own `RENOR_CONNECTION_NAME` and they get the multi-agent ("hive") tools ([details](https://github.com/renorai/renor-engine/blob/main/docs/self-hosting.md)).

Five lines that make agents save decisions, corrections and facts on their own. In our Grok test (grok-4.7, renor-engine 1.4.0, 3 Nov 2026), agents with the rule saved in 8 of 8 sessions and the next session recalled 5 of 5 project facts.

`renor connect` writes it for you. Self-hosted, paste it into `~/.claude/CLAUDE.md` (Claude Code), `~/.codex/AGENTS.md` (Codex) or the project's `AGENTS.md` (Grok):

```
## Renor memory

Renor is connected to this app and remembers across sessions.
- Before deciding anything non-trivial, recall first: one get_context call is usually enough.
- Save with remember when the user makes a decision, corrects you, or states a fact that should outlive this chat. Include the reason.
- Save the specific value (a port, a name, a path), not a summary of it.
- Do not save secrets, or things that are already in the code.
```

Self-hosted, the local tools are `search`, `remember_fact` and `note`; agents map the rule onto them ([tool list](https://github.com/renorai/renor-engine/blob/main/skill/SKILL.md#stdio-renor-engine-mcp)).

- **Your memory is plain Markdown** in one folder you own. Edit it with anything; back it up like any folder.
- **SQLite** holds the search index, next to the notes. It is rebuilt from the Markdown at any time.
- **No embedding model needed.** Search is by keyword; when the exact words miss, it retries with word stems. Hybrid search (keywords and meaning) is the hosted default; self-hosters can opt in to OpenAI or a local model ([details](https://github.com/renorai/renor-engine/blob/main/docs/self-hosting.md#embeddings) ).
- **Small:** a 1.8 MB package, about 5 MB installed. About 143 MB of memory with 1,000 saved memories.
- **Telemetry:** anonymous usage numbers (never text, names or paths) are on by default, with a notice on first run.`renor-engine telemetry off` or`DO_NOT_TRACK=1` turns them off. Your memory text is never shared unless you say yes to that separately. Every field:[docs/TELEMETRY.md](https://github.com/renorai/renor-engine/blob/main/docs/TELEMETRY.md) .

| Benchmark | Renor | Setup | 
|---|---|---|
| LongMemEval-S | **98.4%** (492/500) | Deep search, off by default | 
| LongMemEval-S | **94.4%** (472/500) | Default settings | 
| LoCoMo (categories 1 to 4) | **96.7%** (1,489/1,540) | Deep search | 
| BEAM 128K / 1M / 10M | **76.2 / 74.7 / 60.2** | Deep search, score out of 100 | 
| ConvoMem | **88.4%** (191/216) | Default search, 100 conversations per memory | 

Claude Opus 5.5 answers LongMemEval, LoCoMo and BEAM; DeepSeek V4.1 Flash answers ConvoMem (a research run). One run each, Oct 2026. Deep search is top-K 50 with a 4,000-token budget (`RENOR_TOPK_SCALES_BUDGET=1`). Judges and methods for every run: [renor.cloud/research](https://renor.cloud/research).

You need Node.js 22.16 or later and git.

```
git clone https://github.com/renorai/renor-engine.git
cd renor-engine
npm ci && npm run build
node scripts/smoke-self-hosted.mjs
```

The last command starts the MCP server in a temporary folder, saves one fact, finds it again and ends with `PASS: self-hosted stdio MCP can remember and retrieve a current fact.` It never touches your notes. Downloaded a ZIP instead of cloning? Build with `RENOR_BUILD_COMMIT=0000000 npm run build`. Connecting a local build to each agent: [docs/self-hosting.md](https://github.com/renorai/renor-engine/blob/main/docs/self-hosting.md).

[Docs](https://renor.mintlify.app) · [Self-hosting, servers and Docker](https://github.com/renorai/renor-engine/blob/main/docs/self-hosting.md) · [Every setting](https://github.com/renorai/renor-engine/blob/main/docs/ENVIRONMENT-VARIABLES.md) · [Telemetry](https://github.com/renorai/renor-engine/blob/main/docs/TELEMETRY.md)

The engine is **Apache-2.0** ([LICENSE](https://github.com/renorai/renor-engine/blob/main/LICENSE)); 1.0.0 was released under AGPL-3.0; 1.1.0 and later are Apache-2.0; files imported from the upstream project stay ISC ([NOTICE](https://github.com/renorai/renor-engine/blob/main/NOTICE), [UPSTREAM.md](https://github.com/renorai/renor-engine/blob/main/UPSTREAM.md)). The `renor` CLI, the SDKs and the integrations are MIT.

Contributions are welcome: [CONTRIBUTING.md](https://github.com/renorai/renor-engine/blob/main/CONTRIBUTING.md) has setup, tests and good first issues. Sign off each commit with the [DCO](https://developercertificate.org/) (`git commit -s`); there is no CLA. Report vulnerabilities privately as described in [SECURITY.md](https://github.com/renorai/renor-engine/blob/main/SECURITY.md).

If Renor saves you re-explaining, a [⭐](https://github.com/renorai/renor-engine) helps other developers find it.
