search_memories first to check for duplicates before adding.
Parameters
The memory content text. Be specific and self-contained — this will be retrieved out of context.Bad:
"Fixed the bug". Good: "Fixed OOM in GraphService by adding connection pool limit of 10."Memory priority layer.
| Value | Description |
|---|---|
rule | Permanent constraints, always loaded first (e.g., “always use ESM”) |
working | Temporary session-scoped notes, clean up after use |
long_term | Durable cross-session knowledge (default) |
Memory classification.
| Value | Description |
|---|---|
rule | Behavioral directives (use with layer=rule) |
decision | Architectural choices with rationale |
fact | Verified objective information |
note | General observations (default) |
skill | Reusable techniques or solutions |
Tags for categorization and search filtering. Use lowercase, descriptive terms. Indexed in FTS5 for full-text search.
Expiration date in ISO 8601 format (e.g.,
"2025-12-31T23:59:59Z"). Expired memories are excluded from search. Useful for time-sensitive information.Storage scope.
| Value | Description |
|---|---|
project | Stored under the current project (default) |
global | Shared across all projects — use for universal preferences |
Example
Behavior
- Generates a 384d embedding from the content using all-MiniLM-L6-v2
- Assigns priority based on layer (rule=10, working=5, long_term=1)
- Inserts into
memoriestable andvec_memoriesvirtual table - FTS5 index is updated automatically via triggers
Returns
The full memory object including generatedid, embedding, and timestamps.