---
id: sm-mem-search
name: "mem-search"
url: https://skills.yangsir.net/skill/sm-mem-search
author: thedotmack
domain: ai-agent-memory-knowledge
tags: ["memory-search", "knowledge-retrieval", "semantic-search", "information-management", "ai-search"]
install_count: 8300
rating: 4.50 (70 reviews)
github: https://github.com/thedotmack/claude-mem
---

# mem-search

> 搜索所有会话中的历史工作记录，提供搜索、过滤和获取的简单工作流，用于回顾过往信息，提升工作效率。

**Stats**: 8,300 installs · 4.5/5 (70 reviews)

## Before / After 对比

### 高效回顾历史工作记录与信息

## Readme

# mem-search

# Memory Search

Search past work across all sessions. Simple workflow: search -> filter -> fetch.

## When to Use

Use when users ask about PREVIOUS sessions (not current conversation):

- "Did we already fix this?"

- "How did we solve X last time?"

- "What happened last week?"

## 3-Layer Workflow (ALWAYS Follow)

**NEVER fetch full details without filtering first. 10x token savings.**

### Step 1: Search - Get Index with IDs

Use the `search` MCP tool:

```
search(query="authentication", limit=20, project="my-project")

```

**Returns:** Table with IDs, timestamps, types, titles (~50-100 tokens/result)

```
| ID | Time | T | Title | Read |
|----|------|---|-------|------|
| #11131 | 3:48 PM | 🟣 | Added JWT authentication | ~75 |
| #10942 | 2:15 PM | 🔴 | Fixed auth token expiration | ~50 |

```

**Parameters:**

- `query` (string) - Search term

- `limit` (number) - Max results, default 20, max 100

- `project` (string) - Project name filter

- `type` (string, optional) - "observations", "sessions", or "prompts"

- `obs_type` (string, optional) - Comma-separated: bugfix, feature, decision, discovery, change

- `dateStart` (string, optional) - YYYY-MM-DD or epoch ms

- `dateEnd` (string, optional) - YYYY-MM-DD or epoch ms

- `offset` (number, optional) - Skip N results

- `orderBy` (string, optional) - "date_desc" (default), "date_asc", "relevance"

### Step 2: Timeline - Get Context Around Interesting Results

Use the `timeline` MCP tool:

```
timeline(anchor=11131, depth_before=3, depth_after=3, project="my-project")

```

Or find anchor automatically from query:

```
timeline(query="authentication", depth_before=3, depth_after=3, project="my-project")

```

**Returns:** `depth_before + 1 + depth_after` items in chronological order with observations, sessions, and prompts interleaved around the anchor.

**Parameters:**

- `anchor` (number, optional) - Observation ID to center around

- `query` (string, optional) - Find anchor automatically if anchor not provided

- `depth_before` (number, optional) - Items before anchor, default 5, max 20

- `depth_after` (number, optional) - Items after anchor, default 5, max 20

- `project` (string) - Project name filter

### Step 3: Fetch - Get Full Details ONLY for Filtered IDs

Review titles from Step 1 and context from Step 2. Pick relevant IDs. Discard the rest.

Use the `get_observations` MCP tool:

```
get_observations(ids=[11131, 10942])

```

**ALWAYS use `get_observations` for 2+ observations - single request vs N requests.**

**Parameters:**

- `ids` (array of numbers, required) - Observation IDs to fetch

- `orderBy` (string, optional) - "date_desc" (default), "date_asc"

- `limit` (number, optional) - Max observations to return

- `project` (string, optional) - Project name filter

**Returns:** Complete observation objects with title, subtitle, narrative, facts, concepts, files (~500-1000 tokens each)

## Examples

**Find recent bug fixes:**

```
search(query="bug", type="observations", obs_type="bugfix", limit=20, project="my-project")

```

**Find what happened last week:**

```
search(type="observations", dateStart="2025-11-11", limit=20, project="my-project")

```

**Understand context around a discovery:**

```
timeline(anchor=11131, depth_before=5, depth_after=5, project="my-project")

```

**Batch fetch details:**

```
get_observations(ids=[11131, 10942, 10855], orderBy="date_desc")

```

## Why This Workflow?

- **Search index:** ~50-100 tokens per result

- **Full observation:** ~500-1000 tokens each

- **Batch fetch:** 1 HTTP request vs N individual requests

- **10x token savings** by filtering before fetching

Weekly Installs388Repository[thedotmack/claude-mem](https://github.com/thedotmack/claude-mem)GitHub Stars37.6KFirst SeenFeb 7, 2026Security Audits[Gen Agent Trust HubPass](/thedotmack/claude-mem/mem-search/security/agent-trust-hub)[SocketPass](/thedotmack/claude-mem/mem-search/security/socket)[SnykPass](/thedotmack/claude-mem/mem-search/security/snyk)Installed onopencode375gemini-cli363codex360github-copilot338cursor328kimi-cli322

---
*Source: https://skills.yangsir.net/skill/sm-mem-search*
*Markdown mirror: https://skills.yangsir.net/api/skill/sm-mem-search/markdown*