返回 Skill 列表
extension
分类: AI Agent 能力无需 API Key

recall-conversations

当用户要求回忆、搜索或继续过去的对话时,应使用此技能。触发词包括“我们讨论了什么”、“从上次停下来的地方继续”、“记得什么时候”、“正如我提到的”、“你建议过”、“我们决定”、“搜索我的对话”、“找到那次对话”、“我们一起做了什么”。此外,还会因隐含信号而触发,如过去时态的引用(“我们修复的那个bug”)、没有上下文的所有格(“我的项目”)或假设性问题(“你还记得吗”)。

person作者: jakexiaohubgithub

Tools

Two scripts retrieve data. For full option catalogs, load references/tool-reference.md.

recent_chats.py — retrieve recent sessions:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/recall-conversations/scripts/recent_chats.py --n 3

search_conversations.py — keyword search across all sessions:

python3 ${CLAUDE_PLUGIN_ROOT}/skills/recall-conversations/scripts/search_conversations.py --query "keyword"

Workflow

  1. Identify the lens from user intent:

| User Says | Lens | |-----------|------| | "where were we", "recap" | restore-context | | "what I learned", "reflect" | extract-learnings | | "gaps", "struggling" | find-gaps | | "mentor", "review process" | review-process | | "retro", "project review" | run-retro | | "decisions", "CLAUDE.md" | extract-decisions | | "bad habits", "antipatterns" | find-antipatterns |

Load references/lenses.md for per-lens parameters, core questions, and supplementary search patterns.

  1. Gather context using lens-appropriate tools:

    • For recent context: recent_chats.py --n N
    • For keyword search: search_conversations.py --query "keywords"
  2. Apply lens questions to analyze the retrieved conversations.

  3. Deepen the search if initial results are insufficient:

    • Retrieve more sessions: --n 20
    • Search for specific terms that surfaced
    • Filter by project: --project projectname
    • If 2 rounds of deepening yield no new relevant sessions, synthesize from available data.

Query Construction

Search terms should be content-bearing words that discriminate between sessions — high information value words that are rare enough to rank relevant sessions above irrelevant ones. BM25 ranking (when FTS5 is available) weights rare terms higher automatically.

Include: specific nouns, technologies, concepts, project names, domain terms, unique phrases. More terms improve ranking precision.

Exclude: generic verbs ("discuss", "talk"), time markers ("yesterday"), vague nouns ("thing", "stuff"), meta-conversation words ("conversation", "chat") — these appear in nearly every session and add noise rather than signal.

Algorithm:

  1. Extract substantive keywords from user request
  2. If 0 keywords, ask for clarification ("Which project specifically?")
  3. If 1+ specific terms, search with those terms; use --project to narrow scope

Synthesis

Principles

  1. Prioritize significance — 3-5 key findings, not exhaustive lists
  2. Be specific — file paths, dates, project names
  3. Make it actionable — every finding suggests a response
  4. Show evidence — quotes or references
  5. Keep it scannable — clear structure, no walls of text

Structure

## [Analysis Type]: [Scope]

### Summary
[2-3 sentences]

### Findings
[Organized by whatever fits: categories, timeline, severity]

### Patterns
[Cross-cutting observations]

### Recommendations
[Actionable next steps]

Length

Default: 300-500 words. Expand only when data warrants it.