skills/gupsammy/claudest/recall-conversations

recall-conversations

SKILL.md

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.

Weekly Installs
1
GitHub Stars
49
First Seen
6 days ago
Installed on
claude-code1