一键导入
memory-patterns
Configure the 4-layer memory system with SQLite/FTS5/vec storage for persistent agent knowledge that survives sessions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Configure the 4-layer memory system with SQLite/FTS5/vec storage for persistent agent knowledge that survives sessions.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
| name | memory-patterns |
| description | Configure the 4-layer memory system with SQLite/FTS5/vec storage for persistent agent knowledge that survives sessions. |
| compatibility | Reactive Agents TypeScript projects using @reactive-agents/* |
| metadata | {"author":"reactive-agents","version":"2.0","tier":"capability"} |
Produce a builder with the right memory tier, database path, and tool configuration so the agent retains and retrieves knowledge correctly across interactions and sessions.
agent.run() callsrecall) or by key (find)// Standard (in-memory only — lost on restart)
const agent = await ReactiveAgents.create()
.withProvider("anthropic")
.withReasoning({ defaultStrategy: "adaptive" })
.withTools({ allowedTools: ["checkpoint", "recall"] })
.withMemory() // "standard" tier — working + semantic, in-memory
.build();
// Enhanced (SQLite persistence — survives restarts)
const agent = await ReactiveAgents.create()
.withProvider("anthropic")
.withReasoning({ defaultStrategy: "adaptive" })
.withTools({ allowedTools: ["checkpoint", "recall", "find"] })
.withMemory({ tier: "enhanced", dbPath: "./agent-memory.db" })
.build();
| Layer | Purpose | Storage | Tier required |
|---|---|---|---|
| Working | Current task context, active reasoning | In-memory | "standard" |
| Semantic | Factual knowledge, SQLite + FTS5 full-text | SQLite | "standard" |
| Episodic | Past interactions, timestamped experience log | SQLite | "enhanced" |
| Procedural | Learned behaviors, skill patterns | SQLite | "enhanced" |
// Standard — working + semantic, in-memory (fast, no persistence)
.withMemory()
.withMemory("standard")
// Enhanced — all 4 layers, SQLite persistence
.withMemory("enhanced")
.withMemory({ tier: "enhanced", dbPath: "./data/agent.db" })
.withMemory({ tier: "enhanced", dbPath: "./data/agent.db", capacity: 24 })
// capacity: max working memory entries (default varies)
// recall — semantic search over episodic + semantic memory
.withTools({ allowedTools: ["recall", "find", "checkpoint"] })
// In system prompt: guide the agent to use memory tools
.withSystemPrompt(`
Before answering questions about past work, use recall("topic keywords").
After completing a task, checkpoint the key findings.
`)
.withDocuments([
{ id: "docs-1", content: "Product documentation...", metadata: { source: "docs" } },
{ id: "policy-1", content: "Company policy...", metadata: { source: "policy" } },
])
.withMemory({ tier: "enhanced", dbPath: "./agent.db" })
.withTools({ allowedTools: ["find", "recall", "checkpoint"] })
// find: searches over .withDocuments() content (rag-search was removed in v0.10.0 — use find)
// find also searches semantic memory if memory is enabled
// recall: searches over past agent interactions in memory only
// Give each agent a separate DB to prevent cross-contamination
const researchAgent = await ReactiveAgents.create()
.withMemory({ tier: "enhanced", dbPath: "./memory/researcher.db" })
.build();
const writerAgent = await ReactiveAgents.create()
.withMemory({ tier: "enhanced", dbPath: "./memory/writer.db" })
.build();
| Method | Key params | Notes |
|---|---|---|
.withMemory(opts?) | "standard"|"enhanced"|{ tier, dbPath?, capacity? } | No args = "standard" |
.withDocuments(docs) | DocumentSpec[] | RAG context — pairs with find tool |
.withExperienceLearning() | — | Injects prior-run experience tips from episodic memory |
"1" and "2" are deprecated tier names — use "standard" and "enhanced""enhanced" without dbPath uses a default path — always set dbPath explicitly in multi-agent environments to prevent collisionsrecall requires .withMemory() — silently returns empty results without itfind routes across multiple sources: scope: "documents" needs .withDocuments(), scope: "memory" needs .withMemory(), scope: "web" needs web-search enabled, scope: "auto" (default) tries documents first, falls back to webcapacity too low causes premature eviction of working memory; keep at 12–24 for long tasks.withExperienceLearning() requires .withMemory({ tier: "enhanced" }) — without it, no experience is persisted to injectAgentic harness diagnostic + improvement loop. Probes the framework with real model runs, uses the rax-diagnose CLI to root-cause failures from structured trace data, ships ONE coordinated architectural fix, verifies via before/after diff, commits with empirical evidence. Use at the start of any harness improvement session — replaces ad-hoc grep + log-spelunking with a deterministic feedback loop.
Use when the architecture may have drifted from documentation, packages have grown complex, dead code or disabled systems are suspected, or before planning a major refactor — scoped to the reactive-agents-ts 22-package monorepo.
Reactive Agents framework architecture — layer stack, dependency graph, build order, and package structure. Use when planning work, understanding package relationships, or determining build dependencies.
Use when analyzing the Reactive Agents codebase for architectural improvements, abstraction opportunities, composability gaps, or Effect-TS engineering quality — before proposing refactors, during design reviews, or when codebase complexity is growing.
LLMService API contract — the correct signatures for complete(), stream(), embed(), and response types. Use when calling LLMService from any layer, writing reasoning strategies, or building LLM-dependent features.
LLM provider streaming patterns and per-provider quirks. Use when adding a new provider, implementing adapter hooks, or debugging streaming tool call behavior in packages/llm-provider.