
Recall
Search prior agent sessions for decisions, code notes, and conversations instead of re-deriving context from scratch.
Overview
recall is a journey-wide agent skill that retrieves past session memories via memory_smart_search—usable whenever a solo builder needs to surface prior decisions before committing.
Install
npx skills add https://github.com/rohitg00/agentmemory --skill recallWhat is this skill?
- Invokes memory_smart_search with a natural-language query and configurable limit (examples use limit 10)
- Returns typed memories: decision, code, and conversation with sessionId, title, narrative, and importance scores
- Three worked examples: single decision hit, multi-session rate-limiter results, and empty-result guidance
- Presentation rules: lead with highest-importance hits and group multi-session results by sessionId
- Suggests alternate tooling when recall returns no matches (readme truncates to `sch…`)
- Three worked recall examples in the skill readme
- Example searches use memory_smart_search with limit 10
Adoption & trust: 1.2k installs on skills.sh; 21.8k GitHub stars; 2/3 security scanners passed (skills.sh audits).
What problem does it solve?
You cannot remember which session dropped Redis, how the rate limiter counts traffic, or whether a migration was ever agreed.
Who is it for?
Long-running agent projects where decisions and code rationales should persist across sessions and be searchable by topic.
Skip if: Greenfield chats with no AgentMemory backend, or when you need to create or edit memories rather than search existing ones.
When should I use this skill?
The user asks to remember, recall, or find past decisions, code notes, or discussions stored in AgentMemory.
What do I get? / Deliverables
The agent returns ranked narratives from prior sessions with session IDs and importance, grouped for multi-hit queries or an honest empty result.
- User-facing answer citing sessionId, type, title, and narrative
- Grouped multi-session summary when multiple hits return
Recommended Skills
Journey fit
Useful at every journey phase - explore requirements and options before committing to a direction.
Where it fits
Ask whether a competitor analysis conclusion was already captured before duplicating work.
Recall how session caching was decided before swapping the state store implementation.
Pull the per-IP rate limiter code memory to validate the PR matches the agreed design.
Surface prior conversation notes about deferred features when replying to a repeat user question.
Check past incident narratives before changing throttling behavior in production.
How it compares
Session memory lookup skill, not a replacement for git blame or your issue tracker.
Common Questions / FAQ
Who is recall for?
Solo and indie builders using AgentMemory-backed agents who want conversational access to stored decisions and code notes.
When should I use recall?
Use it in Idea when checking prior research decisions, in Build when verifying implementation choices, in Ship during review, and in Operate when debugging against documented constraints.
Is recall safe to install?
It reads memory via search only in the documented examples; confirm what data your memory store holds and review the Security Audits panel on this Prism page.
SKILL.md
READMESKILL.md - Recall
# recall worked examples ## 1. Hit on a past decision User: "Did we ever decide how to cache sessions?" Invocation: ```json memory_smart_search { "query": "session caching decision", "limit": 10 } ``` Response: ```json { "results": [ { "sessionId": "7f3a9c21", "type": "decision", "title": "Drop Redis for iii state store", "narrative": "We decided to drop Redis and use the iii-engine state store for session caching.", "importance": 8 } ] } ``` Present: > Yes. In session `7f3a9c21` you decided to drop Redis and use the iii-engine > state store for session caching (importance 8). ## 2. Multiple results across sessions User: "Recall anything about the rate limiter." Invocation: ```json memory_smart_search { "query": "rate limiter", "limit": 10 } ``` Response: ```json { "results": [ { "sessionId": "b21d004e", "type": "code", "title": "limit.ts counts per-IP", "narrative": "Rate limiter counts per-IP, not per-user.", "importance": 6 }, { "sessionId": "c98f1100", "type": "conversation", "title": "Discussed sliding window", "narrative": "Considered a sliding-window limiter, deferred.", "importance": 4 } ] } ``` Present them grouped by session, leading with the per-IP code note. ## 3. No results User: "Recall the GraphQL schema migration." Invocation: ```json memory_smart_search { "query": "graphql schema migration", "limit": 10 } ``` Response: ```json { "results": [] } ``` Present: > No memories matched that. Try `schema change`, `graphql`, or `migration` as > narrower terms, or `recap this week` to scan recent sessions. --- name: recall description: Search agentmemory for past observations, sessions, and learnings about a topic using hybrid BM25 plus vector plus graph search. Use when the user says "recall", "what did we do about", "did we ever", "have we seen", or needs context from past sessions. argument-hint: "[search query]" user-invocable: true --- The user wants to recall past context about: $ARGUMENTS ## Quick start ```json memory_smart_search { "query": "jwt refresh token rotation", "limit": 10 } ``` Expected output: ```text 2 results across 2 sessions. [importance 8] decision · "Rotate refresh tokens on every use" (session 7f3a9c21) [importance 5] code · "limit.ts counts per-IP" (session b21d004e) ``` ## Why Only surface what the tool returned. Never fabricate an observation, a session id, or an importance score. If nothing comes back, say so. ## Workflow 1. Call `memory_smart_search` with the user's text as `query` and `limit: 10`. Pass `project` when the user scopes to a specific repo. 2. Group results by session. 3. For each observation show its type, title, and narrative. 4. Lead with the high-signal observations (importance >= 7). 5. If zero results, suggest 2-3 alternative search terms and stop. Do not guess. ## Anti-patterns WRONG: results are empty, so you write "We probably discussed token expiry last week" from assumption. RIGHT: "No memories matched that query. Try `refresh token`, `session expiry`, or `auth rotation`." ## Checklist - Every observation shown came from the tool response. - Results grouped by session, high-importance first. - Empty results trigger alternative-term suggestions, not invention. - No session id or score was paraphrased or rounded. ## See also - `remember`: the write side; recall retrieves what it stores. - `recap`, `handoff`, `session-history`: session-scoped views of the same data. ## Troubleshooting See ../_shared/TROUBLESHOOTING.md if `memory_smart_search` is not available.