EverMemory is the deterministic memory plugin for OpenClaw. It gives the agent persistent memory, user understanding, and governed self-improvement without hiding the storage or decision process.
EverMemory has 16 core capabilities. In the current OpenClaw plugin, 15 are exposed as tool commands, and onboarding is registered as profile_onboard. Smartness exists in the SDK/status layer but is not currently registered as a standalone OpenClaw tool.
| Capability | OpenClaw tool name | When to use |
|---|---|---|
| --- | --- | --- |
| Store memory | evermemory_store | User asks to remember a fact, decision, preference, or lesson |
| Recall memory | evermemory_recall | User asks what happened before, what they prefer, or what was decided |
| Consolidate memory | evermemory_consolidate | Cleanup, dedupe, archive stale memory |
| Status | evermemory_status | Inspect counts, DB path, activity, continuity KPIs |
| Smartness report | Not host-registered | Mention as internal/SDK capability, do not invent a tool call |
| Session briefing | evermemory_briefing | Generate startup continuity context |
| Rules | evermemory_rules | Read or manage promoted behavior rules |
| Profile | evermemory_profile | Read or recompute user profile |
| Explainability | evermemory_explain | Audit why EverMemory wrote, recalled, restored, or promoted something |
| Export | evermemory_export | Backup memory to snapshot or text export |
| Import | evermemory_import | Review or apply imported snapshot/text |
| Archive review | evermemory_review | Inspect archived or superseded items before restore |
| Restore | evermemory_restore | Recover archived memory with review/apply |
| Intent analysis | evermemory_intent | Analyze the likely user intent for a message |
| Reflection | evermemory_reflect | Generate lessons, warnings, or candidate rules |
| Onboarding | profile_onboard | First-run questionnaire and initial profile setup |
evermemory_storeUse for explicit long-term facts. Prefer concise, high-value content and a correct kind.
Example:
{
"content": "Technical decision: replace Webpack with Vite.",
"kind": "decision"
}
Store when the user says:
evermemory_recallUse before answering when the user asks about prior context, preferences, constraints, or project continuity.
Example:
{
"query": "Vite migration decision",
"limit": 5
}
evermemory_statusUse for health checks and operator-style visibility. It returns memory counts, archive counts, profile/rule/reflection state, recent debug activity, and continuity KPIs.
evermemory_briefingUse at session start or when the user asks for a summary of who they are, current constraints, and active project context.
profile_onboardUse for first-run setup. Ask the questions, collect answers, then submit them. Do not skip onboarding if no profile exists and the user wants personalized memory behavior.
evermemory_profileUse to inspect current user understanding. Prefer recompute: true when the user asks for a refreshed profile after many new interactions.
evermemory_rulesUse for behavior rules and guardrails. Prefer read/review paths before mutating rules.
evermemory_explainUse when the user asks "why did you remember this", "why was this recalled", "why was this archived", or "why did this rule trigger".
evermemory_export and evermemory_importmode: "review" first.apply after the user clearly confirms.evermemory_review and evermemory_restoremode: "review" first.evermemory_intent, evermemory_reflect, evermemory_consolidateUse these as maintenance and self-improvement tools:
evermemory_intent for intent labeling and routing insight.evermemory_reflect for lessons, warnings, and candidate rules.evermemory_consolidate for dedupe and stale-memory cleanup.用户: 开始使用 EverMemory
动作: 调用 profile_onboard
结果: 完成初始化问卷,建立基础画像
用户: 记住我们决定用 Vite 替代 Webpack
动作: 调用 evermemory_store
建议 kind: decision
用户: 回忆一下我们上次怎么定的
动作: 先调用 evermemory_recall,再基于召回结果回答
用户: 导出所有记忆为 JSON
动作: 调用 evermemory_export,并使用 format=json(OpenClaw 注册层)
用户: 把之前归档掉的 TypeScript 偏好恢复回来
动作: 先调用 evermemory_review 找候选,再调用 evermemory_restore
evermemory_smartness tool exists unless the host actually registers it.profile_onboard, not evermemory_onboard.review before apply for import and restore.Common environment variables for semantic retrieval:
EVERMEMORY_EMBEDDING_PROVIDER: local, openai, or noneEVERMEMORY_LOCAL_MODEL: local embedding model, default Xenova/all-MiniLM-L6-v2OPENAI_API_KEY: required when the embedding provider uses OpenAICommon plugin config fields:
databasePathbootTokenBudgetmaxRecalldebugEnabledsemantic.enabledsemantic.maxCandidatessemantic.minScoreintent.useLLMintent.fallbackHeuristics共 2 个版本