recall
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseRecall — Find What Was Said
召回功能——查找过往对话内容
When Joel references something vaguely, don't guess — fan out across all memory sources and find it.
当Joel模糊引用某些内容时,不要猜测——要在所有记忆源中进行扇出式搜索并找到对应内容。
Trigger Detection
触发检测
Phrases that indicate a recall is needed (case-insensitive):
- "from earlier", "earlier today", "earlier this week"
- "remember when", "remember that", "you mentioned"
- "what we discussed", "what we talked about", "the conversation about"
- "that thing with", "the thing about", "what was that"
- "did we ever", "have we", "wasn't there"
- "last session", "the other day", "yesterday"
- "correlate with", "connect to what we"
- Any vague pronoun reference to past context ("those photos", "that idea", "the notes")
Key principle: If you'd have to guess what "earlier" or "that" refers to, you need recall.
表明需要执行召回的短语(不区分大小写):
- "from earlier"、"earlier today"、"earlier this week"
- "remember when"、"remember that"、"you mentioned"
- "what we discussed"、"what we talked about"、"the conversation about"
- "that thing with"、"the thing about"、"what was that"
- "did we ever"、"have we"、"wasn't there"
- "last session"、"the other day"、"yesterday"
- "correlate with"、"connect to what we"
- 任何指代过往上下文的模糊代词("those photos"、"that idea"、"the notes")
核心原则:如果你需要猜测"earlier"或"that"指代的内容,就需要执行召回操作。
Fan-Out Search Pattern
扇出式搜索模式
Search these sources in parallel where possible, with timeouts on each:
尽可能并行搜索以下这些源,每个搜索都要设置超时时间:
1. Today's Daily Log (fastest, most likely)
1. 今日日志(速度最快,最有可能找到)
bash
undefinedbash
undefinedAlways check first — most "from earlier" references are same-day
总是先检查这里——大多数"from earlier"的引用都是当天的内容
cat ~/.joelclaw/workspace/memory/$(date +%Y-%m-%d).md
undefinedcat ~/.joelclaw/workspace/memory/$(date +%Y-%m-%d).md
undefined2. Recent Daily Logs (if today's doesn't have it)
2. 近期日志(如果今日日志中没有找到)
bash
undefinedbash
undefinedYesterday and day before
昨天和前天的日志
cat ~/.joelclaw/workspace/memory/$(date -v-1d +%Y-%m-%d).md
cat ~/.joelclaw/workspace/memory/$(date -v-2d +%Y-%m-%d).md
undefinedcat ~/.joelclaw/workspace/memory/$(date -v-1d +%Y-%m-%d).md
cat ~/.joelclaw/workspace/memory/$(date -v-2d +%Y-%m-%d).md
undefined3. Curated Memory
3. 整理后的记忆库
bash
cat ~/.joelclaw/workspace/MEMORY.mdSearch for keywords from the vague reference.
bash
cat ~/.joelclaw/workspace/MEMORY.md根据模糊引用中的关键词进行搜索。
4. Session Transcripts
4. 会话记录
Use the tool to search recent sessions:
session_contextsessions(limit: 10) # find recent session IDs
session_context(session_id: "...", query: "what was discussed about <topic>")使用工具搜索近期会话:
session_contextsessions(limit: 10) # 查找近期会话ID
session_context(session_id: "...", query: "what was discussed about <topic>")5. Vault Notes
5. 笔记库
bash
undefinedbash
undefinedKeyword search across Vault
在笔记库中进行关键词搜索
grep -ri "<keywords>" ~/Vault/ --include="*.md" -l | head -10
undefinedgrep -ri "<keywords>" ~/Vault/ --include="*.md" -l | head -10
undefined6. System Log
6. 系统日志
bash
slog tail --count 20 # recent infrastructure changesbash
slog tail --count 20 # 近期基础设施变更记录7. Processed Media
7. 已处理媒体文件
bash
undefinedbash
undefinedCheck for images/audio that were processed
检查已处理的图片/音频文件
ls /tmp/joelclaw-media/ 2>/dev/null
undefinedls /tmp/joelclaw-media/ 2>/dev/null
undefined8. Redis State
8. Redis状态存储
bash
undefinedbash
undefinedMemory proposals, loop state, etc.
记忆提案、循环状态等
redis-cli LRANGE memory:review:pending 0 -1 2>/dev/null
undefinedredis-cli LRANGE memory:review:pending 0 -1 2>/dev/null
undefinedWorkflow
工作流程
- Extract keywords from the vague reference. "Those photos from earlier" → keywords: photos, images, media, telegram.
- Fan out across sources 1-8 above. Use on any command that might hang.
timeout 5 - Synthesize — combine findings into a coherent summary of what was found.
- Present context — show Joel what you found, then continue with the original task.
- If nothing found — say so honestly. Don't fabricate. Ask Joel to clarify.
- 提取关键词:从模糊引用中提取关键词。例如“Those photos from earlier” → 关键词:photos、images、media、telegram。
- 扇出搜索:在上述1-8号源中执行搜索。对任何可能卡顿的命令使用。
timeout 5 - 整合结果:将搜索结果整合成连贯的总结内容。
- 呈现上下文:向Joel展示找到的内容,然后继续执行原始任务。
- 未找到内容时:如实告知。不要编造内容。请Joel进行澄清。
Timeouts Are Mandatory
必须设置超时时间
Every external call (Redis, grep over large dirs, session reads) MUST have a timeout. The gateway session cannot hang on a recall operation.
bash
undefined所有外部调用(Redis、大目录下的grep、会话记录读取)都必须设置超时时间。网关会话不能因召回操作而卡顿。
bash
undefinedGood
正确示例
timeout 5 grep -ri "keyword" ~/Vault/ --include="*.md" -l | head -10
timeout 5 grep -ri "keyword" ~/Vault/ --include="*.md" -l | head -10
Bad — can hang indefinitely
错误示例——可能无限期卡顿
grep -ri "keyword" ~/Vault/ --include="*.md"
undefinedgrep -ri "keyword" ~/Vault/ --include="*.md"
undefinedAnti-Patterns
反模式
- Don't grep one file and call it done. The whole point is fan-out.
- Don't guess when recall fails. Say "I couldn't find it" and ask.
- Don't read entire session transcripts. Use with a focused query.
session_context - Don't skip media. Photos, audio, processed images in are often what "from earlier" refers to.
/tmp/joelclaw-media/
- 不要只搜索一个文件就结束:扇出式搜索的核心是多源搜索。
- 召回失败时不要猜测:直接说“我未找到相关内容”并请求澄清。
- 不要读取完整的会话记录:使用带聚焦查询的工具。
session_context - 不要忽略媒体文件:中的图片、音频、已处理图片通常是"from earlier"所指代的内容。
/tmp/joelclaw-media/