Skip to main content
NullClaw’s memory system stores conversation history, facts, and context. Configure the storage backend, vector search, and memory lifecycle policies.

Memory Profiles

Memory profiles provide preset configurations for common use cases:
string
default:"markdown_only"
Memory profile preset:
  • markdown_only — File-based markdown memory (default, zero setup)
  • local_keyword — SQLite keyword-only search
  • local_hybrid — SQLite + vector search hybrid
  • postgres_keyword — PostgreSQL keyword-only
  • postgres_hybrid — PostgreSQL + vector hybrid
  • minimal_none — Stateless, no persistent memory
  • custom — Manual configuration (no profile defaults)

Backend Configuration

Basic Backend Setup

string
default:"markdown"
Memory backend: markdown (file-based), sqlite (local database), postgres (PostgreSQL), redis, api, or none.
boolean
default:"true"
Automatically save memory entries after each interaction.
string
default:"auto"
Citation style: auto (show when relevant), always, or never.

Vector Search Configuration

Enable semantic search with vector embeddings:
boolean
default:"true"
Enable vector search capabilities.
string
default:"none"
Embedding provider: openai, cohere, voyage, ollama, or none (disables vector search).
string
default:"text-embedding-3-small"
Embedding model identifier.
number
default:"1536"
Embedding vector dimensions (must match model output).
string
default:"auto"
Vector store backend: auto (matches memory backend), sidecar (local file), qdrant, or pgvector.
Combine keyword and vector search:
boolean
default:"false"
Enable hybrid search combining keyword and vector results.
number
default:"0.7"
Weight for vector search results (0.0 to 1.0).
number
default:"0.3"
Weight for keyword search results (0.0 to 1.0).
string
default:"rrf"
Result merging strategy: rrf (Reciprocal Rank Fusion) or score (weighted scores).

Memory Lifecycle

Configure memory archival and retention:
boolean
default:"true"
Enable automatic memory hygiene (archival and purging).
number
default:"7"
Archive memories older than this many days.
number
default:"30"
Permanently delete memories older than this many days.
number
default:"30"
Retain conversation context for this many days.
boolean
default:"true"
Automatically load archived memories when referenced.

PostgreSQL Backend

Use PostgreSQL for distributed deployments:
string
required
PostgreSQL connection URL.
string
default:"public"
Database schema name.
string
default:"memories"
Table name for memory storage.

Redis Backend

Use Redis for caching and fast retrieval:
string
default:"127.0.0.1"
Redis server hostname.
number
default:"6379"
Redis server port.
string
default:"nullclaw"
Prefix for all Redis keys.
number
default:"0"
Time-to-live for entries (0 = no expiry).

Advanced Configuration

Chunking and Sync

Response Cache

boolean
default:"false"
Cache LLM responses for identical queries.

Example: Local Hybrid Setup

Complete configuration for local SQLite with vector search:
The local_hybrid profile automatically applies these defaults. You only need to override specific values.