Configuration
Remem reads remem.toml and environment variables. Environment variables are
most useful for deployment secrets and addresses; the TOML file contains the
storage, search, lifecycle, job, and metrics settings.
Environment variables
Section titled “Environment variables”| Variable | Default | Description |
|---|---|---|
REMEM_SERVER_API_KEY | (empty) | Server credential. Required in production. |
REMEM_SERVER_ENV | development | Set production to enforce the production credential check. |
REMEM_SERVER_HTTP_ADDR | 127.0.0.1:4545 | HTTP and MCP listener address. |
REMEM_STORAGE_PATH | ./data | Pebble data directory. |
REMEM_TENANT_DEFAULT | default | Default tenant for requests without an explicit tenant. |
REMEM_MCP_URL | http://127.0.0.1:4545/mcp | URL used by the stdio MCP bridge. |
REMEM_MCP_API_KEY | (empty) | Credential forwarded by the stdio MCP bridge. |
The complete configuration surface is available in the repository’s
config/remem.toml example. Environment variables follow the same section
names, for example REMEM_JOBS_WORKERS maps to [jobs].workers.
Storage and search
Section titled “Storage and search”Remem 0.5 uses Pebble for durable local storage. sync_writes = true is the
safe default: acknowledged writes are synced before the request returns. The
vector index, text index, graph, and lifecycle state are maintained alongside
the corpus and rebuilt by the administrative tools when needed.
The default embedding model is all-MiniLM-L6-v2 at 384 dimensions. Search
supports semantic, keyword, and hybrid modes. Search type is explicit on every
request so callers can choose the behavior they need.
Authentication
Section titled “Authentication”In production, Remem refuses to start without REMEM_SERVER_API_KEY. Send the
key as a bearer token:
curl http://localhost:4545/api/v1/memories \ -H "Authorization: Bearer $REMEM_SERVER_API_KEY"The readiness and basic health endpoints remain available for deployment probes. Keep the server behind your normal network boundary and use a long, random key.
Tenants
Section titled “Tenants”Every memory belongs to a tenant. The Community build provides a single-tenant deployment boundary by default, while the storage and API model are tenant-aware so future multi-tenant and horizontally scaled deployments can build on the same foundation.
Configuration file
Section titled “Configuration file”Start from config/remem.toml when you need settings beyond the defaults:
[storage]path = "/var/lib/remem"engine = "pebble"sync_writes = true
[server]env = "production"http_addr = "0.0.0.0:4545"
[lifecycle]enabled = truesweep_interval = "1h"
[jobs]workers = 4Mount the file into a container only when you need to override built-in defaults. Invalid values fail at startup rather than being silently ignored.
