Troubleshooting & FAQ¶
Fixes for the most common problems, in the order you're likely to hit them.
All paths and ports below assume the one-line installer (~/.membrain,
gateway on http://localhost:8001). If you run from source with Docker
Compose, substitute your own ports.
Quick diagnostics¶
Before anything else, these three commands tell you what state MemBrain is in:
membrain status # container health at a glance
curl http://localhost:8001/health # gateway liveness
membrain logs # recent gateway logs
Installation problems¶
"Unsupported platform"¶
The installer supports macOS 13 (Ventura) or later, and Linux. Older macOS versions are not supported.
"Docker Compose plugin not found" / Docker won't start¶
MemBrain runs as Docker containers. Install
Docker Desktop (macOS) or
the docker-compose-plugin package (Linux), start it, and re-run the
installer. The installer waits up to 90 seconds for the Docker daemon — if it
times out, start Docker manually first.
"Port 8001 is already in use"¶
Another service is bound to the gateway's port. Find it with
lsof -i :8001, stop it, and re-run the installer.
Install finished but the gateway isn't responding¶
The containers can take a little while on first start (image pulls, database migrations). Check progress with:
If the log shows a crash rather than startup progress, the error message at the bottom is almost always the actual cause — read it before anything else.
First request fails¶
401 "Missing API key"¶
Authentication is on (REQUIRE_AUTH=true, the default for network-exposed
installs). Requests need a MemBrain key, passed either way:
See the Quickstart for creating keys.
Provider errors: "no API key" / authentication failed upstream¶
MemBrain forwards requests to the providers you configure, and the installer
lets you skip adding a key. Add your provider keys to ~/.membrain/.env:
then restart with membrain stop && membrain start.
Exception: Claude Code with ANTHROPIC_BASE_URL=http://localhost:8001
needs no key in .env — its own login session is forwarded upstream.
502 / 504 errors¶
The gateway couldn't reach the upstream provider (502) or the request timed out (504). Check your network and the provider's status page, then retry.
Runtime issues¶
429 "rate limited" — two different causes¶
From your provider (passed through). MemBrain forwards the provider's
own rate-limit responses faithfully, including the retry-after header and
(for Anthropic) anthropic-ratelimit-* reset metadata. A subscription-based
client like Claude Code hitting its usage cap will see 429s through
MemBrain exactly as it would without it — often per model, so switching
model can help while a cap resets. Nothing in MemBrain causes or fixes
these; the cap resets on the provider's schedule.
From MemBrain itself. If you configured per-key rate limits
(RATE_LIMIT_RPM), exceeding them returns 429 with a Retry-After header.
A 402 means a configured budget (BUDGET_LIMIT_USD) was exceeded.
PII redaction is too aggressive (or not aggressive enough)¶
Detection confidence is tunable. In ~/.membrain/.env:
See Configuration for per-pattern control.
Knowledge search returns nothing¶
Semantic search needs the embeddings add-on:
Without it (and Postgres), knowledge features are limited or disabled.
My data disappeared after a restart¶
Without a configured database, the gateway runs on an in-memory fallback —
fine for trying it out, but nothing persists. The installer's default stack
includes Postgres; if you run from source, set DATABASE_URL (see
Configuration).
FAQ¶
Does my data leave my machine? MemBrain is fully self-hosted. The only outbound traffic is to the LLM providers you configure (and only after PII sanitization). Route to a local model via Ollama and nothing leaves your machine at all.
What's free and what's paid? The Community build — proxy, shared memory, PII detection, routing, dashboard, audit trail — is free and open source (Apache 2.0). Team and Enterprise features (team queue, SSO, ML-based NER, SIEM export) require a license. See pricing.
Does MemBrain slow my requests down?
Some, honestly. Regex-based PII scanning adds little. Semantic memory
lookup adds an embedding query per request when enabled, and injected
knowledge adds prompt tokens (visible in the dashboard). If a request path
feels slow, membrain logs includes per-request timing.
What does MemBrain capture? Every proxied exchange and tool call is stored as a bounded, PII-sanitized episode, private to its owner, kept 90 days by default; capture is forward-only and sanitization failure drops the capture rather than storing raw text.
How does memory review work? Deliberate saves and daily reflected lessons (at most eight per day, each citing the episodes it derives from) land in a pending queue — nothing is injected until a human approves it. Rejected entries are tombstoned so the same content isn't re-proposed.
How do I upgrade?
How do I uninstall?
This removes the containers and ~/.membrain. Your data is in the Postgres
volume — export first via the dashboard if you want to keep it.
Which providers are supported?
Anthropic, OpenAI, Claude CLI, and Ollama natively; 100+ more via the
LiteLLM add-on (membrain enable litellm). See Providers.
Still stuck?¶
- GitHub Discussions — ask a question, report a bug, or search past answers.
- Email: membrn.ai@gmail.com