Defined in src/memory.metta and catalogued in src/skills.metta.
All four skills accept quoted string arguments. Variables are not permitted in LLM-generated calls.
(remember "string")Store a string in long-term embedding memory as the triplet (timestamp, atom, embedding).
string— the text to remember. Use short, self-contained phrases for best recall.
The result of the ChromaDB write (internally). The agent treats a successful call as an effectful step.
(remember "user prefers dark mode")
(remember "to deploy: run make release then docker push")- Text is passed through
string-safebefore embedding, which escapes newlines, quotes, and apostrophes. - Embedding provider is selected by
embeddingprovider(LocalorOpenAI). - Nothing deduplicates automatically — repeated
remembercalls store multiple items.
(query "string")Return up to maxRecallItems memory entries whose embeddings are closest to the embedding of string.
string— a short descriptive phrase. Over-long queries dilute similarity scores.
A list-shaped result containing the nearest memory items.
(query "deployment steps")
(query "user preferences")maxRecallItemsdefault is 20 (seeinitMemory).- Similarity is purely embedding-based; exact string match is not guaranteed.
(episodes "YYYY-MM-DD HH:MM:SS")Return maxEpisodeRecallLines lines of the episodic trace centered on the given timestamp.
timestamp— must match the format produced byget_time_as_string.
A block of lines from memory/history.metta.
(episodes "2026-04-15 14:30:00")- Implemented by
helper.around_time. - Useful for answering questions like "what was I doing around X?"
(pin "string")Append a working-memory note to the episodic trace so the next turn can see it in HISTORY.
string— the note. Typical uses: intermediate results, plans for the next turn, checklists.
Success / failure of the append.
(pin "candidates: A) Launch Day B) We're Live C) Out Now")
(pin "next step: pick best candidate and send")pinis not semantically indexed — it only influences the next few turns through the rollingHISTORYwindow (maxHistorycharacters).- For anything you want to recall days later, use
rememberinstead.