Docs

Everything you need to wire mnueron into your tools.

Skim the sections, copy the commands, run them. Then forget mnueron exists — your AI tools will start remembering things by themselves.

Getting started

End-to-end install + setup, with three audience tracks: General User (Claude Desktop in 10 minutes), Developer (SDK + Codex + VS Code, 20 minutes), and Contributor (local dev + your first PR, 45 minutes).

Integrations

Auto-config for Claude Desktop, Claude Code, Cursor, Windsurf, Cline — and instructions for everything else.

Chrome extension

Capture from claude.ai and chatgpt.com, backfill all past Claude history, search-as-you-type ambient context.

CLI reference

Every `mnueron` subcommand: setup, dashboard, migrate-to-hosted, rebuild-embeddings, rechunk, plugin.

MCP tools

Six tools your AI sees: memory_save, memory_recall, memory_list, memory_get, memory_delete, memory_get_thread.

Mnueron Meet

Local-first meeting memory: upload transcripts or sync Granola / Fathom / Zoom / Teams, auto-extract decisions and action items, AI Summary per meeting, Project organization with auto-classifier.

What's new

Public changelog. Each release lists the customer-facing change AND the developer details side-by-side. Latest: KMS envelope encryption, three meeting connectors, AI Summary card fix.

Hosted mode

Sign up for cross-machine sync, point your tools at the hosted backend, deploy your own if you'd rather.

Security & data architecture

How Mnueron protects org data and credentials: RLS tenant isolation, encryption at rest (pgcrypto + AWS KMS envelope encryption with per-row DEKs), append-only secret access log, key rotation procedure, what we store vs what we don't, operator runbook. Written for IT and procurement reviewers.

Bring Your Own Storage

Three deployment modes — Mnueron Cloud (we host), Cloud + Archive (your own S3/R2/B2 bucket), or Local-only — with the explicit responsibility split between Mnueron and customer for each. Liability for misconfigured customer-owned storage is documented in Privacy Policy §9.A.

Runbooks

Save how-to procedures as procedural memory — agents pull them back when they hear a matching trigger phrase. With three full examples.

Memory Consolidation

Nightly reflective pass that merges duplicates, retires superseded statuses, and writes an audit log. Set it up in 2 minutes; works locally or hosted.

Downloads

Field guides and whitepapers as PDF + Word doc — for offline reading, design reviews, or handing to a stakeholder.

Quickstart

From zero to working AI memory in under 5 minutes.

Prerequisites

You need Node.js 20+ and npm 10+ on your machine. To check:

node --version    # want v20.x or higher
npm --version     # want 10.x or higher

Don't have Node? Install from nodejs.org/en/download (pick the LTS installer for your OS). Platform shortcuts:

  • macOS: brew install node@20
  • Windows: download the Windows Installer (.msi) from nodejs.org and run it
  • Ubuntu / Debian: sudo apt install nodejs npm
  • Fedora / RHEL: sudo dnf install nodejs npm

Install mnueron

Standard path is the npm one-liner. Source install is available for contributors who want to hack on the CLI itself.

A. From npm (recommended)

npm install -g mnueron
mnueron setup

Fetches the latest published version from npmjs.com/package/mnueron and exposes mnueron + mnueron-mcp as commands on your PATH.

B. From source (for contributors)

git clone https://github.com/randi2160/mnueron.git
cd mnueron
npm install
npm run build
npm link            # registers your local build as the global `mnueron`
mnueron setup

Use this if you're modifying mnueron itself. To go back to the published npm version: npm unlink -g mnueron && npm install -g mnueron.

First-run setup

mnueron setup is an interactive wizard. It scans for installed AI tools (Claude Desktop, Claude Code, Cursor, Windsurf, Cline) and offers to wire mnueron into each. Sample output:

  🧠  mnueron — persistent memory for AI dev tools
      mode: local SQLite

Configured:
  ✓ Claude Desktop          added
  ✓ Claude Code             added via `claude mcp add`
  ✓ Cursor                  added

Not detected:
    Windsurf
    Cline (VS Code)

✨ Done. Restart any running AI tool to load the memory plugin.

Verify it works

  1. Restart whichever AI tool you wired up (close it fully, reopen).
  2. Open a new chat in that tool.
  3. Ask: "Save a memory: I prefer 2-space indentation in JavaScript."
  4. Start a brand-new chat, ask: "What indentation do I prefer in JavaScript?" — the AI should call memory_recall and answer correctly.
  5. Run mnueron dashboard in a terminal and open http://localhost:3122 — you should see the memory there.

(Optional) Sign up for hosted

Local works forever and is free. Hosted ($10/mo) syncs across machines and is needed for the Chrome extension's cloud mode: create a free account.

Troubleshooting

  • "mnueron: command not found"after Path A install — the `npm link` step didn't run or your PATH doesn't include npm's global bin folder. Run npm config get prefix to see where it would install, and confirm that path is in your shell's PATH.
  • Setup wizard says no tools detected— that's usually fine; it means you don't have any MCP-aware tool installed yet. Install Claude Desktop / Cursor / Windsurf, then re-run mnueron setup.
  • Windows-specific: if `npm link` fails with EACCES, open PowerShell as Administrator the first time. Or use npm install --global . from the project folder as an alternative.
  • Native module errors on `npm install` — sqlite-vec and better-sqlite3 compile native code. Make sure you have Python and build tools available (npm install -g windows-build-tools on Windows, Xcode CLT on macOS, build-essential on Linux).
Chrome extension

Capture, recall, and ambient context for web AI chat.

ChatGPT and Claude on the web don't support MCP, so AI tools running there have no way to call mnueron directly. The extension bridges that gap: capture conversations into your store, search your store as you type, and inject relevant past memories into the prompt with a click.

Features

  • One-click capture from claude.ai and chatgpt.com (gemini.google.com coming).
  • Backfill all history — imports every past Claude conversation via their internal API. Idempotent (chats already imported are skipped) and pausable.
  • Recall + inject — popup search box returns top-5 matches; click Insert to drop one into the chat prompt.
  • Ambient context (opt-in) — as you type, a small pill appears above the input when matching memories exist. Click to expand and insert.
  • Local or cloud — single toggle in the popup. Same UI either way.
  • Local → cloud migration from the options page — one-click upload of your local store to a hosted account.

Install

One click from the Chrome Web Store:

Add to Chrome — mnueron AI chat memory →

Click the icon in your toolbar after install. Edge and Firefox use the same ZIP — listings on those stores are submitted.

Install from source (contributors)

If you're modifying the extension or want the bleeding-edge build:

  1. git clone https://github.com/randi2160/mnueron.git
  2. Open chrome://extensions, toggle Developer mode, click Load unpacked, select the extension/ folder.

Configure

The popup has a Backend toggle (Local / Hosted). For Hosted mode you need an API token:

  1. Pop-up → toggle Hosted → click Sign in to mnueron.com →
  2. Tab opens at /account-settings/tokens. Click Create token, name it, copy the mnu_… value.
  3. Right-click the extension icon → Options → paste the token into Bearer tokenunder "Hosted backend" → Save.
  4. Captures now go to your mnueron.com account. Local mode requires no token.

Privacy

The extension reads conversation content from claude.ai and chatgpt.com only when you click Capture (or the backfill button). It does not send data anywhere except your configured mnueron backend (your local SQLite DB by default, or your hosted account if you opt in). No third-party tracking. Full source at github.com/randi2160/mnueron/extension.

Integrations

Auto-detected by mnueron setup.

Run the setup wizard once and mnueron looks for supported AI tools on your machine. When it finds one, it updates that tool's MCP configuration for you. If a tool is not installed yet, install it and run setup again; the command is idempotent and safe to re-run.

Claude Desktop

Adds mnueron as a local MCP server.

  1. 1Close Claude Desktop before editing settings.
  2. 2Run mnueron setup.
  3. 3mnueron updates claude_desktop_config.json with a mnueron MCP server entry.
  4. 4Restart Claude Desktop and ask: "What memory tools do you have?"

Claude Code

Registers mnueron through Claude Code MCP.

  1. 1Install or open Claude Code once so its config folder exists.
  2. 2Run mnueron setup.
  3. 3mnueron uses the equivalent of claude mcp add with the mnueron binary.
  4. 4Restart Claude Code and ask it to use memory_recall.

Cursor

Adds mnueron to Cursor's MCP config.

  1. 1Install Cursor and open it once.
  2. 2Run mnueron setup.
  3. 3mnueron updates ~/.cursor/mcp.json.
  4. 4Restart Cursor and check its MCP tools list.

Windsurf

Adds mnueron to Windsurf's MCP config.

  1. 1Install Windsurf and open it once.
  2. 2Run mnueron setup.
  3. 3mnueron updates ~/.codeium/windsurf/mcp_config.json.
  4. 4Restart Windsurf so it reloads MCP servers.

Cline (VS Code)

Patches the Cline extension MCP server list.

  1. 1Install VS Code and the Cline extension.
  2. 2Open Cline once so its settings file is created.
  3. 3Run mnueron setup.
  4. 4mnueron updates Cline's MCP settings under VS Code global storage.
  5. 5Reload VS Code and ask Cline what MCP tools it can see.

claude.ai (web)

Captures web conversations through the Chrome extension.

  1. 1Install the mnueron Chrome extension.
  2. 2Open the extension Options page.
  3. 3Choose local mode or paste your hosted URL and bearer token.
  4. 4Open claude.ai, click Capture or enable auto-capture.

chatgpt.com

Captures ChatGPT web conversations through the Chrome extension.

  1. 1Install the mnueron Chrome extension.
  2. 2Configure local or hosted sync in Options.
  3. 3Open chatgpt.com and capture the current conversation.
  4. 4Check Mnueron Memories for source web-chatgpt.

Your apps

Use the SDK when you own the application code.

  1. 1Create an API token in Mnueron.
  2. 2Install the Python or C# SDK.
  3. 3Call save/recall from your app with a namespace and source.
  4. 4Use this for product telemetry, internal tools, or custom agents.

More coming in v0.2.7 — Continue, Zed, Aider, Goose, OpenCode.

CLI reference

Subcommands you'll actually use.

mnueron setup
Interactive wizard. Detects AI tools and wires mnueron into each. Idempotent — safe to re-run.
mnueron dashboard
Boots the local SQLite-backed dashboard at http://127.0.0.1:3122.
mnueron migrate-to-hosted
Uploads your ~/.mnueron/memories.db to your hosted org and flips the active provider.
mnueron migrate-from-hosted
Pulls your hosted memories back into local SQLite. Useful before going offline.
mnueron rebuild-embeddings
Re-embeds all memories. Run after switching embedder model.
mnueron rechunk
Retroactively chunks long memories that pre-date chunking support.
mnueron plugin
list / enable / disable / add / remove memory-processor plugins.
MCP tools

What your AI sees.

Each is namespaced — you control which slice of your memory the tool can read or write to.

  • memory_save

    Persist a fact, decision, snippet, or summary. Optional tags + metadata.

  • memory_recall

    Hybrid keyword + semantic search. Returns the top-k most relevant memories.

  • memory_list

    Browse by namespace + recency. For UIs and reconciliation tasks.

  • memory_get

    Fetch one memory by id (returns full content; recall returns previews).

  • memory_delete

    Remove a memory. Idempotent — returns ok:false if it didn't exist.

  • memory_get_thread

    Reassemble a chunked conversation by its parent_ref.

Hosted mode

Cross-machine sync, no rewrites.

Hosted mnueron uses the same MCP tools as local — the only difference is where memories live. Tools and apps don't need to change.

  1. Sign up at /register. You'll get an API token.
  2. Set MNUERON_API_URL and MNUERON_API_TOKEN in your shell.
  3. Run mnueron migrate-to-hosted to upload your local DB.
  4. Done. Your AI tools now hit Supabase via the mnueron backend.
Security

Storage, isolation, and what we never see.

  • Local storage: SQLite at~/.mnueron/memories.db. You own the file. Back it up with `cp`.
  • Redaction: 13 regex patterns + Bearer/Basic-auth heuristics strip secrets at write time. Original text never persists.
  • Hosted isolation: Postgres Row-Level Security scopes every query to your org. Each connection sets app.current_org_id and switches to the restricted role.
  • Session cookies: httpOnly + Secure + SameSite=Lax. The raw token never reaches client-side JS.
  • Token revocation: Anytime via DELETE /v1/auth/tokens/:id. Multi-device sessions are independent.
Memory Consolidation

Set up the nightly reflective pass.

Memory Consolidation runs a low-cost LLM read across your store on a schedule, merges duplicates, retires superseded statuses, and writes an audit log. Free locally as an on-demand CLI command; scheduled nightly on Personal/Team. For the conceptual deep dive see /features/consolidation.

1. Try it manually first

Before turning on the schedule, run a dry-run to see what the pass would do without any writes:

mnueron consolidate detect --dry-run
# scans every namespace, prints proposals, makes no changes

Constrain to one namespace or tighten the similarity threshold while you're tuning:

mnueron consolidate detect --ns elevizio --threshold 0.92 --limit 50

2. Review proposals

Proposals land in a queue. List, inspect, and approve or reject individually:

mnueron consolidate list --status pending
mnueron consolidate approve <proposal-id>
mnueron consolidate reject  <proposal-id> --reason "still relevant"

Or open mnueron dashboard and use the Consolidation Proposals page — same queue, with diff view and one-click bulk approve.

3. Schedule the nightly pass (Personal / Team)

Once you trust the proposals on your data, schedule it. From the dashboard, Settings → Consolidation → Schedule and pick a cadence and time (defaults to 3 AM local). Or via CLI:

mnueron consolidate schedule --cadence nightly --at 03:00 --tz local
# per-namespace policy:
mnueron consolidate schedule --ns elevizio --cadence weekly --mode aggressive
mnueron consolidate schedule --ns preferences --mode off

4. Enable auto-apply (optional)

By default the pass writes proposals you have to approve. Once you've approved ~50 and they look right, you can flip auto-apply on per namespace so straightforward duplicates merge without manual review. Ambiguous ones still queue:

mnueron consolidate auto-apply --ns elevizio --on
mnueron consolidate auto-apply --ns elevizio --confidence 0.95
# off again whenever you want:
mnueron consolidate auto-apply --ns elevizio --off

5. Inspect the audit log

Every run writes a tagged memory you can recall by date:

mnueron recall --tag consolidation-log --k 5
# or open Dashboard -> Consolidation -> Run history

Safety defaults

  • Hard cap: 50 deletes per run. If a pass would exceed it, it stops and reports instead.
  • Quarantine: deletions are soft for 30 days — restore from mnueron consolidate restore <id>.
  • Preserved tags: entries tagged decision, architecture, or plan are never touched.
  • Preserved namespaces: preferences and any namespace you mark --mode off are skipped entirely.

Troubleshooting

  • Pass found nothing — that's often correct. Drop --threshold to 0.80 to surface looser candidates, or scope to one noisy namespace.
  • Schedule didn't fire (hosted) — check Dashboard → Consolidation → Run history for the last attempt. If your subscription lapsed, scheduled runs pause until billing is restored.
  • Too aggressive on my data — switch the namespace to --mode conservative and disable auto-apply. The default mode is conservative for new installs.
  • Read the runbook — operator-grade walkthrough on GitHub: docs/runbooks/memory-consolidation.md.

Something missing?

The docs follow the code, not the other way around. If you hit a wall, open an issue and we'll patch both.