Use when wiring inMemory() from @tanstack/ai-memory/in-memory — explains setup, options (embedder, extract, topK/minScore), when to pick it (dev/tests/single-process demos), and what NOT to use it for (multi-process or persistent).
80
100%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Zero-dependency recall/save adapter backed by a Map. Records vanish on process
restart.
Map; users get
inconsistent memory.For production, use redis() (see the tanstack-ai-memory-redis skill).
import { memoryMiddleware } from '@tanstack/ai-memory'
import { inMemory } from '@tanstack/ai-memory/in-memory'
const memory = inMemory()
memoryMiddleware({ adapter: memory, scope })inMemory(options?) accepts:
topK (default 6), minScore (default 0.15), kinds — recall tuning.embedder: { embed(text): Promise<number[]> } — enable semantic scoring (both
recall and save embed through it).extract(turn, scope) — return derived facts to persist alongside the raw turn
(e.g. call an LLM to pull out preferences). Without it, save stores the raw
user/assistant messages and recall scores them lexically + by recency.render(hits) — replace the built-in prompt renderer.The adapter scans every record in a scope per recall. Fine up to ~100k records; beyond
that, switch to Redis.
4ab149f
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.