Skip to main content
memloom can be installed by the agent that will use it. This page is written for the agent: exact commands, expected output, and the two points where the human must decide. A human setting up by hand can follow the same steps.

For humans: one prompt

Paste this into your agent (Claude Code, Cursor, or any agent that can run commands and fetch a URL):
If your agent supports skills, you can install memloom’s instead:
That adds two skills: memloom-setup (this runbook, condensed) and memloom-use (how to use memloom well day to day).

For agents: ground rules

Everything below is yours to do autonomously, except two things that belong to the human:
  1. The API key. Ask for OPENROUTER_API_KEY when the step comes. If the human declines, continue in offline mode and tell them recall quality is degraded until a key is set. Never print the key into logs, chat, or command output.
  2. Consent for capture and paid imports. Never run memloom connect claude-code or a non-dry-run memloom import without the human naming the scope or approving the run.
Report each step’s outcome briefly. If a step fails, check Troubleshooting below before improvising.

Steps

1. Check Node

Expect v20 or later. If older, stop and ask the human to upgrade Node first; npm will silently skip the install otherwise.

2. Install and initialize

init creates ~/.memloom (store and config.env) and starts the daemon. Expect output naming the config path and the daemon address http://127.0.0.1:4319.

3. Ask for the API key

Ask the human for their OpenRouter API key. With their key in hand, add this line to ~/.memloom/config.env (on Windows: %USERPROFILE%\.memloom\config.env):
Then restart the daemon so it picks the key up:
If anything was saved before the key was set, the daemon will refuse to start because offline and cloud vectors live in different spaces. Run memloom stop, then memloom reembed, then memloom init. See Configuration. If the human declines the key, skip this step. Everything still works offline except semantic recall quality, dedup, conflict detection, and entity indexing.

4. Register the MCP server

For Claude Code:
For other clients, apply the config from the matching page: Claude Desktop, Cursor, VS Code, Codex, Zed, Cline, Windsurf, opencode. The shape is always the same: run npx -y @memloom/mcp as a stdio server. Ask the human which projects memloom may capture. Then:
Repeat --project per project, or --all if the human explicitly approves capturing everything. This installs two hooks in the Claude Code settings: session-end capture (finished sessions are distilled into memories) and prompt-time recall (relevant memories are injected into every prompt). Both edits merge with existing hooks and a one-time backup is written first. See Automatic capture. Bring in the memory files agents on this machine already keep:
Show the human what it found, then run without --dry-run. This import is free of distillation calls. Then session history, which does spend LLM calls:
Show the human the session count, get approval, then run without --dry-run.

7. Verify

Expect the saved memory back as the top hit. Then, from the MCP client, call recall_memory with the same query and expect the same hit. Finish with:
Expect: daemon running, both hooks installed, the capture scope the human chose.

Troubleshooting