Skip to main content
Memory tools enable agents to persist and recall information across conversations.

Available Tools

memory_store

Store new information

memory_recall

Search and retrieve memories

memory_list

List all stored memories

memory_forget

Delete specific memories

memory_store

Store information for later retrieval.

Parameters

content
string
required
Information to remember
category
string
Category for organization: fact, preference, task, context
tags
array
Optional tags for filtering

Example

{
  "content": "User prefers TypeScript for new projects",
  "category": "preference",
  "tags": ["programming", "languages"]
}

memory_recall

Search memories using semantic similarity or keywords.

Parameters

query
string
required
Search query
category
string
Filter by category
limit
integer
Maximum results (default: 10)

Example

{
  "query": "programming language preferences",
  "category": "preference",
  "limit": 5
}

Response

Returns array of matching memories with relevance scores:
[
  {
    "content": "User prefers TypeScript for new projects",
    "category": "preference",
    "tags": ["programming", "languages"],
    "timestamp": "2026-03-03T12:00:00Z",
    "relevance": 0.95
  }
]

memory_list

List all memories, optionally filtered by category.

Parameters

category
string
Filter by category

Example

{
  "category": "fact"
}

memory_forget

Delete memories by ID or pattern.

Parameters

id
string
Memory ID to delete
pattern
string
Delete all memories matching pattern

Example

{
  "pattern": "old project"
}

Memory Categories

Objective information and dataExamples:
User preferences and choicesExamples:
  • “User prefers concise responses”
  • “Avoid emojis in documentation”
Ongoing tasks and TODOsExamples:
  • “Need to update README with new features”
  • “Pending code review for PR #123”
Conversation context and stateExamples:
  • “Currently debugging authentication issue”
  • “Working on feature branch: auth-v2”

Backend Support

Stores memories as markdown files in ~/.zeroclaw/memory/Features:
  • Human-readable format
  • Git-friendly
  • No dependencies
  • File-based search

Configuration

[memory]
backend = "sqlite"  # or "markdown", "postgres"
embedding_model = "text-embedding-3-small"
max_memories = 10000

[memory.sqlite]
path = "~/.zeroclaw/memory.db"

[memory.postgres]
url = "postgresql://user:pass@localhost/zeroclaw"

Source Code

Build docs developers (and LLMs) love