Agent skill

MemOS Memory Search Guide

by MemTensor in MemTensor/MemOS

Explains when to call MemOS's own memory tools to search past conversations, after the automatic per-turn recall hook comes up empty.

Apache-2.0Auto-check: warningsAgent Workflows

Install MemOS Memory Search Guide

The automated check flagged lines worth reading first. See the safety section below.

skills CLI
$ npx skills add MemTensor/MemOS --skill memos-memory-guide -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install MemTensor/MemOS memos-memory-guide --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/MemTensor/MemOS.git skills-src && mkdir -p .claude/skills && cp -r skills-src/apps/memos-local-openclaw/skill/memos-memory-guide .claude/skills/memos-memory-guide && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
memos-memory-guide
GitHub stars
12k
Token cost
~3.5k tokens
SKILL.md length
1,738 words
Files
1
Skills in repo
6
Repo updated
First seen
Licence
Apache-2.0

At a glance

Explains when to call MemOS's own memory tools to search past conversations, after the automatic per-turn recall hook comes up empty.

  • Works in 11 steps: No memories in context or auto-recall… → Need to see the full original text of a… → Search returned hits with task_id and… → …
  • Answering a question that depends on something the user mentioned before
  • SKILL.md covers How memory is provided each turn, Tools — what they do and when…, Quick decision flow and Writing good search queries, plus 1 more section
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

This skill describes how to use MemOS's memory tools once automatic per-turn recall — which searches the current message and injects relevant past memories before a reply is even drafted — isn't enough, such as when a message is long, vague, or the automatic search returns nothing. In those cases it directs you to write a short, focused query yourself, optionally filtering by role or widening the result count and score threshold.

It separates two sharing planes that must not be confused: local sharing visible only within the same workspace, and team sharing visible to teammates through a configured server, reachable only by searching with a wider scope. Beyond search, the tools cover pulling a memory's full original text, writing or sharing memories publicly, summarizing a task, and discovering, installing, or publishing reusable skills across the network.

When your agent uses it

  • Answering a question that depends on something the user mentioned before
  • Running your own memory search after automatic recall returns nothing
  • Searching team-shared memories instead of only your own local history

Example prompts

  • “What did I say about my project's deployment setup last week?”
  • “Search team memory for any notes on the pricing decision.”
  • “Pull the full text of that memory about the API migration.”

Workflow steps

11 steps, taken from the first numbered list in SKILL.md.

  1. No memories in context or auto-recall reported nothing
  2. Need to see the full original text of a search hit
  3. Search returned hits with task_id and you need full context
  4. Task has an experience guide you want to follow
  5. You need the exact surrounding conversation of a hit
  6. You need a capability/guide that you don't have
  7. You have new shared knowledge useful to all local agents
  8. You already have an existing memory chunk and want to expose or hide it
  9. You are about to do anything team-sharing-related
  10. You want to share/stop sharing a skill with local agents or team
  11. User asks where to see or manage their memories

What it can do on your machine

Read from SKILL.md and the folder at commit a7367d0. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

MemOS Memory Search Guide loads about 3.5k tokens when it runs. Until then it costs about 159 tokens; SKILL.md has 1,738 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~159
When it runs · the whole SKILL.md, loaded when a task matches
~3.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: warnings

The automated check found patterns that need a careful read before installing.

  • WarningTells the agent its actions are pre-authorized / not to stop for confirmationSKILL.md:78
    me workspace, you may share proactively without asking the user.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from MemTensor/MemOS at commit a7367d0, republished under its Apache-2.0 licence (© MemTensor). 1,738 words, ~3,497 tokens.

Download SKILL.mdSave it as .claude/skills/memos-memory-guide/SKILL.md (or your agent's skills folder).
name
memos-memory-guide
description
Use the MemOS Local memory system to search and use the user's past conversations. Use this skill whenever the user refers to past chats, their own preferences or history, or when you need to answer from prior context. When auto-recall returns nothing (long or unclear user query), generate your own short search query and call memory_search. Available tools: memory_search, memory_get, memory_write_public, memory_share, memory_unshare, task_summary, skill_get, skill_search, skill_install, skill_publish, skill_unpublish, network_memory_detail, network_skill_pull, network_team_info, memory_timeline, memory_viewer.

MemOS Local Memory — Agent Guide

This skill describes how to use the MemOS memory tools so you can reliably search and use the user's long-term conversation history, query team-shared data, share tasks, and discover or pull reusable skills.

Two sharing planes exist and must not be confused:

  • Local agent sharing: visible to agents in the same OpenClaw workspace only.
  • Team sharing: visible to teammates through the configured team server.

How memory is provided each turn

  • Automatic recall (hook): At the start of each turn, the system runs a memory search using the user's current message and injects relevant past memories into your context. You do not need to call any tool for that.
  • When that is not enough: If the user's message is very long, vague, or the automatic search returns no memories, you should generate your own short, focused query and call memory_search yourself.
  • Memory isolation: Each agent can only see its own local private memories and local public memories. Team-shared data only appears when you search with scope="group" or scope="all".

Tools — what they do and when to call

  • What it does: Search long-term conversation memory for past conversations, user preferences, decisions, and experiences. Returns relevant excerpts with chunkId and optionally task_id. Only returns memories belonging to the current agent or marked as public.
  • When to call:
    • The automatic recall did not run or returned nothing.
    • The user's query is long or unclear — generate a short query yourself and call memory_search(query="...").
    • You need to search with a different angle (e.g. filter by role='user').
  • Parameters:
    • query (string, required) — Natural language search query.
    • scope (string, optional) — 'local' (default) for current agent + local shared memories, or 'group' / 'all' to include team-shared memories.
    • maxResults (number, optional) — Increase when the first search is too narrow.
    • minScore (number, optional) — Lower slightly if recall is too strict.
    • role (string, optional) — Filter local results by 'user', 'assistant', 'tool', or 'system'.
memory_get
  • What it does: Get the full original text of a memory chunk. Use to verify exact details from a search hit.
  • When to call: A memory_search hit looks relevant but you need to see the complete original content, not just the summary/excerpt.
  • Parameters:
    • chunkId (string, required) — The chunkId from a search hit.
    • maxChars (number, optional) — Max characters to return (default 4000, max 12000).
memory_write_public
  • What it does: Create a brand new local shared memory. These memories are visible to all agents in the same OpenClaw workspace during memory_search. This does not publish anything to the team server.
  • When to call: In multi-agent or collaborative scenarios, when you want to create a new persistent shared note from scratch (e.g. shared decisions, conventions, configurations, workflows). Do not use it if you already have a specific memory chunk to expose.
  • Parameters:
    • content (string, required) — The content to write to local shared memory.
    • summary (string, optional) — Short summary of the content.
memory_share
  • What it does: Share an existing memory either with local OpenClaw agents, to the team, or to both.
  • When to call:
    • If you want to share conversation content to team or hub, first retrieve memories related to that content to obtain the right chunkId(s), then share.
    • target='agents' (default): When those memories would clearly help other agents in the same workspace, you may share proactively without asking the user.
    • target='hub' or 'both': Only after explicit user consent when the content would benefit collaborators—explain briefly, ask first, then call hub/both (Hub must be configured). Never silently Hub-share.
  • Do not use when: You are creating a brand-new shared note with no existing chunk—use memory_write_public instead.
  • Parameters:
    • chunkId (string, required) — Existing memory chunk ID.
    • target (string, optional) — 'agents' (default), 'hub', or 'both'.
    • visibility (string, optional) — Team visibility when target includes team: 'public' (default) or 'group'.
    • groupId (string, optional) — Optional team group ID when visibility='group'.
memory_unshare
  • What it does: Remove an existing memory from local agent sharing, team sharing, or both.
  • When to call: A memory should no longer be visible outside the current agent or should be removed from the team.
  • Parameters:
    • chunkId (string, required) — Existing memory chunk ID.
    • target (string, optional) — 'agents', 'hub', or 'all' (default).
    • privateOwner (string, optional) — Rare fallback only for older public memories that have no recorded original owner.
task_summary
  • What it does: Get the detailed summary of a complete task: title, status, narrative summary, and related skills. Use when memory_search returns a hit with a task_id and you need the full story. Preserves critical information: URLs, file paths, commands, error codes, step-by-step instructions.
  • When to call: A memory_search hit included a task_id and you need the full context of that task.
  • Parameters:
    • taskId (string, required) — The task_id from a memory_search hit.
skill_get
  • What it does: Retrieve a proven skill (experience guide) by skillId or by taskId. If you pass a taskId, the system will find the associated skill automatically.
  • When to call: A search hit has a task_id and the task has a "how to do this again" guide. Use this to follow the same approach or reuse steps.
  • Parameters:
    • skillId (string, optional) — Direct skill ID.
    • taskId (string, optional) — Task ID — will look up the skill linked to this task.
    • At least one of skillId or taskId must be provided.
  • What it does: Search available skills by natural language. Searches your own skills, local shared skills, or both. It can also include team skills.
  • When to call: The current task requires a capability or guide you don't have. Use skill_search to find one first; after finding it, use skill_get to read it, then skill_install to load it for future turns.
  • Parameters:
    • query (string, required) — Natural language description of the needed skill.
    • scope (string, optional) — 'mix' (default, self + local shared), 'self', 'public' (local shared only), or 'group' / 'all' to include team results.
skill_install
  • What it does: Install a learned skill into the agent workspace so it becomes permanently available. After installation, the skill will be loaded automatically in future sessions.
  • When to call: After skill_get when the skill is useful for ongoing use.
  • Parameters:
    • skillId (string, required) — The skill ID to install.
skill_publish
  • What it does: Share a skill with local agents, or publish it to the team.
  • When to call: You have a useful skill that other agents or your team could benefit from.
  • Parameters:
    • skillId (string, required) — The skill ID to publish.
    • target (string, optional) — 'agents' (default) or 'hub'.
    • visibility (string, optional) — When target='hub', use 'public' (default) or 'group'.
    • groupId (string, optional) — Optional team group ID when target='hub' and visibility='group'.
    • scope (string, optional) — Backward-compatible alias for old calls. Prefer target + visibility in new calls.
Show full SKILL.md (658 more words)Show less
skill_unpublish
  • What it does: Stop local agent sharing, remove a team-published copy, or do both.
  • When to call: You want to stop sharing a previously published skill.
  • Parameters:
    • skillId (string, required) — The skill ID to unpublish.
    • target (string, optional) — 'agents' (default), 'hub', or 'all'.
network_memory_detail
  • What it does: Fetches the full content behind a team search hit.
  • When to call: A memory_search result came from the team and you need the full shared memory content.
  • Parameters: remoteHitId.
task_share / task_unshare
  • What they do: Share a local task to the team, or remove it later.
  • When to call: A task is valuable to your group or to the whole team and should be discoverable via shared search.
  • Parameters: taskId, plus sharing visibility/scope when required.
network_skill_pull
  • What it does: Pulls a team-shared skill bundle down into local storage.
  • When to call: skill_search found a useful team skill and you want to use it locally or offline.
  • Parameters: skillId.
network_team_info
  • What it does: Returns current team server connection information, user, role, and groups.
  • When to call: You need to confirm whether team sharing is configured or which groups the current client belongs to.
  • Call this first before: memory_share(... target='hub'|'both'), memory_unshare(... target='hub'|'all'), task_share, task_unshare, skill_publish(... target='hub'), skill_unpublish(... target='hub'|'all'), or network_skill_pull.
  • Parameters: none.
memory_timeline
  • What it does: Expand context around a memory search hit. Pass the chunkId from a search result to read the surrounding conversation messages.
  • When to call: A memory_search hit is relevant but you need the surrounding dialogue.
  • Parameters:
    • chunkId (string, required) — The chunkId from a memory_search hit.
    • window (number, optional) — Context window ±N messages, default 2.
memory_viewer
  • What it does: Show the MemOS Memory Viewer URL. Call this when the user asks how to view, browse, manage, or check their memories. Returns the URL the user can open in their browser.
  • When to call: The user asks where to see or manage their memories.
  • Parameters: None.

Quick decision flow

  1. No memories in context or auto-recall reported nothing → Call memory_search(query="...") with a self-generated short query.

  2. Need to see the full original text of a search hit → Call memory_get(chunkId="...").

  3. Search returned hits with task_id and you need full context → Call task_summary(taskId="...").

  4. Task has an experience guide you want to follow → Call skill_get(taskId="...") or skill_get(skillId="..."). Optionally skill_install(skillId="...") for future use.

  5. You need the exact surrounding conversation of a hit → Call memory_timeline(chunkId="...").

  6. You need a capability/guide that you don't have → Call skill_search(query="...", scope="mix") to discover available skills.

  7. You have new shared knowledge useful to all local agents → Call memory_write_public(content="...").

  8. You already have an existing memory chunk and want to expose or hide it → Call memory_share(chunkId="...", target="agents|hub|both") or memory_unshare(chunkId="...", target="agents|hub|all").

  9. You are about to do anything team-sharing-related → Call network_team_info() first if team server availability is uncertain.

  10. You want to share/stop sharing a skill with local agents or team → Prefer skill_publish(skillId="...", target="agents|hub", visibility=...) and skill_unpublish(skillId="...", target="agents|hub|all").

  11. User asks where to see or manage their memories → Call memory_viewer() and share the URL.

Writing good search queries

  • Prefer short, focused queries (a few words or one clear question).
  • Use concrete terms: names, topics, tools, or decisions.
  • If the user's message is long, derive one or two sub-queries rather than pasting the whole message.
  • Use role='user' when you specifically want to find what the user said.

Memory ownership and agent isolation

Each memory is tagged with an owner (e.g. agent:main, agent:sales-bot). This is handled automatically — you do not need to pass any owner parameter.

  • Your memories: All tools (memory_search, memory_get, memory_timeline) automatically scope queries to your agent's own memories.
  • Local shared memories: Memories marked as local shared are visible to all agents in the same OpenClaw workspace. Use memory_write_public to create them, or memory_share(target='agents') to expose an existing chunk.
  • Cross-agent isolation: You cannot see memories owned by other agents (unless they are public).
  • How it works: The system identifies your agent ID from the OpenClaw runtime context and applies owner filtering automatically on every search, recall, and retrieval.

© MemTensor, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in apps/memos-local-openclaw/skill/memos-memory-guide of MemTensor/MemOS.

Open the folder on GitHubat commit a7367d0

Compare with similar skills

MemOS Memory Search Guide next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

MemOS Memory Search Guide compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
MemOS Memory Search Guide this skillMemTensor/MemOS12k—~3.5kAutomated safety check: WarnApache-2.0
Project Timeline Reportthedotmack/claude-mem97k1 repos~3.1kAutomated safety check: PassApache-2.0
Neat-Freak Knowledge CloseoutKKKKhazix/khazix-skills21k—~1.9kAutomated safety check: PassMIT
Beads Task Memorygastownhall/beads28k—~1.2kAutomated safety check: PassMIT
MemPalace Memory SearchMemPalace/mempalace59k—~1.4kAutomated safety check: PassMIT
Reflect on Session Learningscursor/plugins10k5 repos~1.2kAutomated safety check: PassNone

Similar skills

  • Project Timeline Report

    thedotmack/claude-mem

    Writes a narrative Journey Into report on a project's whole development history, built from the timeline that claude-mem has recorded.

    97k GitHub starsUsed in 1 repo~3.1k tokens
    Agent WorkflowsAuto-check passed
  • Neat-Freak Knowledge Closeout

    KKKKhazix/khazix-skills

    Brings project docs, agent rule files, authorized memory and leftover workspace files back in line with what the code and runtime actually do at the end of a work session.

    21k GitHub stars~1.9k tokensUpdated 6 days ago
    Agent WorkflowsAuto-check passed
  • Beads Task Memory

    gastownhall/beads

    Tracks multi-session work with dependencies in the bd issue tracker so the agent can find ready tasks and recover its context after conversation compaction.

    28k GitHub stars~1.2k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • MemPalace Memory Search

    MemPalace/mempalace

    Mines project files and conversation exports into a local, searchable memory palace and recalls past work by semantic search through the mempalace CLI.

    59k GitHub stars~1.4k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Official

    Starts three parallel reviewer subagents over the current conversation transcript, then turns their findings into concrete edits to existing skills.

    10k GitHub starsUsed in 5 repos~1.2k tokens
    Agent WorkflowsAuto-check passed
  • Compound Learning Writer

    EveryInc/compound-engineering-plugin

    Records one solved and verified problem as a durable learning in the repository, but only when the reasoning is not already clear from the final code, tests or docs.

    25k GitHub stars~2k tokensUpdated today
    Agent WorkflowsAuto-check passed

More from MemTensor/MemOS

  • Dev Browser Automation

    MemTensor/MemOS

    Automates a real browser through short TypeScript scripts that keep page state between runs, for navigating, filling forms, taking screenshots and extracting data.

    12k GitHub starsUsed in 3 repos~1.7k tokens
    Auto-check passed
  • Controls a browser through BrowserWing's local HTTP API: navigation, clicks, typing, data extraction, accessibility snapshots, screenshots and batch operations.

    12k GitHub starsUsed in 2 repos~3.9k tokens
    Auto-check passed
  • Ask User Question

    MemTensor/MemOS

    Shows a question as a modal in the interface to clarify a task, collect a preference or get approval, since the user cannot see terminal output.

    12k GitHub stars~1k tokensUpdated 8 days ago
    Auto-check passed
  • BrowserWing Admin

    MemTensor/MemOS

    Installs, configures and operates BrowserWing, a browser automation platform, covering Chrome setup, LLM provider configuration, and creating or running automation scripts.

    12k GitHub stars~4.1k tokensUpdated 8 days ago
    Auto-check: notes
  • Safe File Deletion

    MemTensor/MemOS

    Enforces explicit user permission before any file deletion. Activates when you're about to use rm, unlink, fs.rm, or any operation that removes files from…

    12k GitHub stars~291 tokensUpdated 8 days ago
    Auto-check passed

Categories

Questions about MemOS Memory Search Guide

What does MemOS Memory Search Guide do?

Explains when to call MemOS's own memory tools to search past conversations, after the automatic per-turn recall hook comes up empty. This skill describes how to use MemOS's memory tools once automatic per-turn recall — which searches the current message and injects relevant past memories before a reply is even drafted — isn't enough, such as when a message is long, vague, or the automatic search returns nothing. In those cases it directs you to write a short, focused query yourself, optionally filtering by role or widening the result count and score threshold.

When should I use MemOS Memory Search Guide?

MemOS Memory Search Guide fits situations like: answering a question that depends on something the user mentioned before; running your own memory search after automatic recall returns nothing; searching team-shared memories instead of only your own local history.

How do I install MemOS Memory Search Guide in Claude Code?

Run `npx skills add MemTensor/MemOS --skill memos-memory-guide -a claude-code`. Or copy the skill folder (apps/memos-local-openclaw/skill/memos-memory-guide in MemTensor/MemOS) into .claude/skills/memos-memory-guide in your project. Claude Code loads it when a task matches its description.

How do I install MemOS Memory Search Guide in Codex?

Run `npx skills add MemTensor/MemOS --skill memos-memory-guide -a codex`. Or copy the skill folder (apps/memos-local-openclaw/skill/memos-memory-guide in MemTensor/MemOS) into .agents/skills/memos-memory-guide in your project. Codex loads it when a task matches its description.

Can I use MemOS Memory Search Guide in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add MemTensor/MemOS --skill memos-memory-guide -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/memos-memory-guide, .gemini/skills/memos-memory-guide, .github/skills/memos-memory-guide and .opencode/skills/memos-memory-guide in your project.

What does MemOS Memory Search Guide need to run?

SKILL.md names no scripts, command-line tools or credentials: MemOS Memory Search Guide is instructions for the agent only.

Does MemOS Memory Search Guide access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is MemOS Memory Search Guide safe to install?

Our automated static check of SKILL.md flagged 1 warning(s): tells the agent its actions are pre-authorized / not to stop for confirmation. Read the flagged lines before installing; the check is not a guarantee either way.

What licence does MemOS Memory Search Guide use?

MemOS Memory Search Guide is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does MemOS Memory Search Guide use?

About 3.5k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to MemOS Memory Search Guide?

Skills that share tags, products or a category with MemOS Memory Search Guide: Project Timeline Report (thedotmack/claude-mem, 97k stars), Neat-Freak Knowledge Closeout (KKKKhazix/khazix-skills, 21k stars), Beads Task Memory (gastownhall/beads, 28k stars) and MemPalace Memory Search (MemPalace/mempalace, 59k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains MemOS Memory Search Guide?

MemTensor (a GitHub organization) maintains it in MemTensor/MemOS, which has 11,738 GitHub stars. The repository holds 6 skills in this directory. The repository was last updated on September 29, 2026.

Source: MemTensor/MemOS on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.