Skip to content
Data
Skill

/memory-triage

Persistent long-term memory protocol powered by mem0. Evaluate conversations for durable facts worth storing via memory_add. Handles identity, preferences, decisions, configurations, rules, projects, and relationships. Loaded by the openclaw-mem0 plugin when skills mode is

From plugin
mem0
63k32 skills1 MCP
Install
$ npx -y skills add mem0ai/mem0 --skill memory-triage --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition โ†’
  • You can call itInvoke it directly when you want it.
  • Slash command/memory-triage

Context preview

The summary Claude sees to decide when to auto-load this skill.

Persistent long-term memory protocol powered by mem0. Evaluate conversations for durable facts worth storing via memory_add. Handles identity, preferences, decisions, configurations, rules, projects, and relationships. Loaded by the openclaw-mem0 plugin when skills mode is

SKILL.md

memory-triage.SKILL.md
name: memory-triage
description: >
  Persistent long-term memory protocol powered by mem0.
  Evaluate conversations for durable facts worth storing via memory_add.
  Handles identity, preferences, decisions, configurations, rules,
  projects, and relationships. Loaded by the openclaw-mem0 plugin when skills mode is active.
user-invocable: false
metadata:
  {"openclaw": {"always": false, "injected": true, "emoji": "๐Ÿง ", "requires": {"env": ["MEM0_API_KEY", "OPENAI_API_KEY", "ANTHROPIC_API_KEY"], "bins": []}}}

Memory Protocol

You have persistent long-term memory powered by mem0. After responding to the user, evaluate this turn for durable, actionable facts worth persisting across future sessions.

Your primary role is to extract relevant pieces of information from the conversation and organize them into distinct, manageable facts. This allows for easy retrieval and personalization in future interactions.

**The core question**: "Would a new agent โ€” with no prior context โ€” benefit from knowing this?" If no โ†’ do nothing. Most turns produce zero memory operations. That is correct and expected.

Available Tools

memory_search

Semantic search across stored memories.

  • `query` (required): search query
  • `limit`: max results (default: configured topK)
  • `userId`, `agentId`: scope overrides
  • `scope`: `"all"` (default), `"session"`, or `"long-term"`
  • `categories`: filter by category array
  • `filters`: advanced filter object

memory_add

Store new facts in long-term memory.

  • `facts` (required): array of facts to store โ€” ALL must share the same category
  • `text`: alternative single-fact string
  • `category`: `"identity"`, `"preference"`, `"decision"`, `"rule"`, `"project"`, `"configuration"`, `"technical"`, `"relationship"`
  • `importance`: 0.0โ€“1.0 (omit for category default)
  • `userId`, `agentId`: scope overrides
  • `metadata`: additional key-value metadata
  • `longTerm`: true (default) for persistent, false for session-scoped

memory_get

Retrieve a single memory by ID.

  • `memoryId` (required): the memory ID

memory_list

List all stored memories for a user or agent.

  • `userId`, `agentId`: scope overrides
  • `scope`: `"all"` (default), `"session"`, or `"long-term"`

memory_update

Update an existing memory's text in place. Atomic and preserves edit history.

  • `memoryId` (required): the memory ID to update
  • `text` (required): the new text (replaces old)

memory_delete

Delete memories by ID, query, or bulk.

  • `memoryId`: specific memory ID to delete
  • `query`: search query to find and delete matching memories
  • `all`: delete ALL memories (requires `confirm: true`)
  • `confirm`: safety gate for bulk operations
  • `userId`, `agentId`: scope overrides

memory_event_list

List recent background processing events (platform mode only).

memory_event_status

Get status of a specific background event.

  • `event_id` (required): the event ID to check

Decision Gate

Every candidate fact must pass ALL four gates:

**Gate 1 โ€” FUTURE UTILITY**: Would this matter to a new agent days or weeks from now?

  • Pass: identity, configurations, standing rules, preferences with rationale, decisions, project milestones, relationships, important personal details
  • Fail: tool outputs, status checks, one-time commands, transient state, small talk, generic responses โ†’ SKIP

**Gate 2 โ€” NOVELTY**: Check your recalled memories below โ€” is this already known?

  • Already known and unchanged โ†’ SKIP
  • Known but materially changed โ†’ UPDATE (find old โ†’ update in place)
  • Genuinely new โ†’ proceed
  • **Material difference test**: Only UPDATE if new information adds real context, details, or changes meaning. Cosmetic differences (synonyms, rephrasing, punctuation) are NOT updates. "Loves daily walks" vs "enjoys daily walks" = no material change = SKIP.

**Gate 3 โ€” FACTUAL**: Is this a concrete, actionable fact โ€” not a vague statement or question?

  • Pass: specific names, configs, choices with rationale, deadlines, system states, plans, preferences
  • Fail: vague impressions, questions, small talk, acknowledgments, generic assistant responses ("Sure, I can help") โ†’ SKIP

**Gate 4 โ€” SAFE**: Does this contain ANY credential, secret, or token?

  • Scan for known credential prefixes, auth tokens, webhook URLs with tokens, pairing codes, long alphanumeric strings in config/env context, and key-value assignment patterns. The plugin injects the full pattern list at runtime.
  • ANY match โ†’ NEVER STORE the value. Instead, store that the credential was configured:
  • WRONG: "User's API key is [redacted]"
  • RIGHT: "API key was configured for the service (as of 2026-03-30)"
  • When in doubt โ†’ SKIP. No exceptions.

All four gates must pass. If any fails โ†’ do nothing.

What to Extract (Priority Order)

1. Configuration & System State (importance: 0.95 | permanent)

Tools/services configured, installed, or removed (with versions/dates). Model assignments for agents. Cron schedules, automation pipelines, deployment configs. Architecture decisions. Specific identifiers: file paths, sheet IDs, channel IDs, machine specs.

"User's Tailscale machine 'mac' (IP 100.71.135.41) is configured under beau@rizedigital.io (as of 2026-02-20)"
"User's executive orchestrator agent Quin runs on Claude Opus, heartbeat every 10 min"

2. Standing Rules & Policies (importance: 0.90 | permanent)

Explicit user directives about behavior. Workflow policies. Security constraints, permission boundaries. Always capture the reason.

"User rule: never create accounts without explicit user consent. Reason: security policy"
"User rule: each agent must review model selection before completing a task"

3. Identity & Demographics (importance: 0.95 | permanent)

Name, location, timezone, language preferences. Occupation, employer, job role, industry. Keep related facts together in a single memory.

"User is Chris, senior platform engineer at Mem0, based in EST timezone"

4. Preferences & Opinions (

Read more
Ships withmem0

Mem0 ("mem-zero") enhances AI assistants and agents with an intelligent memory layer, enabling personalized AI interactions.

Get the whole plugin

Other skills on mem0.