Build your workflow
Workflows & consolidation
Carry multi-step work across sessions and organize accumulated memories into useful context.
In this guide
#Cross-Session Workflow Threads
Solve context loss across long multi-session tasks. Named workflows automatically thread context across sessions.
The Problem This Solves
When working on a multi-day task (e.g., "implementing authentication"), each new Claude session starts fresh with no memory of previous progress. You waste tokens re-explaining context, and Claude may make contradictory decisions across sessions. Workflows fix this by creating a named thread that persists.
Step-by-Step Usage with Claude Code
Start a workflow at the beginning of a multi-session task
Tell Claude:
"Start a workflow called 'Implementing auth system' — I'll be working on this across multiple sessions"Claude will call start_workflow. All memories stored during this session are automatically tagged with the workflow.
Work normally — memories are auto-tagged
Every store_memory and quick_store_decision call automatically gets tagged with the active workflow ID. No extra effort needed.
End of session — pause the workflow
Tell Claude:
"Pause the workflow, I'm done for today"Next session — resume and get full context
Tell Claude:
"Resume the auth system workflow"Claude calls resume_workflow which returns the workflow state, progress, and all tagged memories.auto_session_start also automatically includes active workflow context.
Task done — complete the workflow
Tell Claude:
"Complete the auth workflow with a summary of what we built"Claude calls complete_workflow which generates a consolidated summary of everything accomplished.
Important Notes for Claude Code Users
- • Only one workflow can be active at a time per workspace. Pause or complete the current one before starting another.
- • Workflows respect workspace isolation — a workflow in project A won't appear in project B.
- •
auto_session_startautomatically detects and includes active workflow context, so you often don't need to explicitly resume. - • Workflow memories are tagged with
workflow:{id}— you can search for them specifically usingget_workflow_context.
Auto-Consolidation Pipeline
Keep your memory store efficient as it grows by automatically clustering and merging similar memories.
How It Works
- • Scans your memories and finds clusters of similar content using embedding similarity
- • Merges similar memories into consolidated summaries while keeping originals as version history
- • Reduces token cost of
auto_session_startby serving pre-summarized context - • Configurable thresholds: similarity (default 0.75), cluster size (default 2), max memories (default 1,000)
Usage with Claude Code
Automatic ModeTell Claude:
"Run auto-consolidation on my memories"Claude calls auto_consolidate which scans all memories, finds clusters above the similarity threshold, and creates consolidated summaries. You can customize thresholds:
"Run consolidation with a similarity threshold of 0.9 and only for memories older than 7 days"Force ModeAfter a large batch import or when you want to bypass the 24-hour cooldown and memory count threshold:
"Force run consolidation now — I just imported a lot of memories"Claude calls force_consolidate which runs the full clustering pipeline regardless of thresholds. Original memories are preserved with a 'consolidated' tag, and new consolidated summaries are created with supersedes relationships linking back to the originals.
Check StatusTo see what's been consolidated:
"Show me the consolidation status"Returns: total memory count, threshold, whether consolidation is recommended, last run date and cluster stats, and a provider quality warning if applicable.
Embedding Provider Requirement
Auto-consolidation relies on vector similarity to find related memories. If you're using the Anthropic fallback provider (keyword-based, no real embeddings), consolidation will not find meaningful clusters. For best results, configure one of these providers:
Voyage AICohereOpenAIDeepseekGrokOllama (local)Consolidation Parameters
| Parameter | Default | Description |
|---|---|---|
| similarity_threshold | 0.75 | Minimum cosine similarity to consider memories related |
| min_cluster_size | 2 | Minimum memories needed to form a consolidation group |
| max_memories | 1,000 | Maximum memories to scan per run |
| max_age_days | none | Only consolidate memories older than N days (optional) |
| memory_count_threshold | 100 | Minimum memories before auto_consolidate will run |
Recommended Workflow
Combining workflows and consolidation for maximum efficiency
Start of multi-session task
start_workflow("Building payment integration") — creates a named thread
Work across multiple sessions
Pause/resume as needed. All decisions and context auto-tagged to the workflow.
Complete the workflow
complete_workflow — generates a summary of all work done
Consolidate accumulated memories
auto_consolidate — merges similar workflow memories into efficient summaries
Prompt Examples for Claude Code
Copy-paste these prompts to get the most out of Recall with Claude Code. Each prompt shows what you type and what Claude does behind the scenes.
Session Start Prompts
Before we start, load my project context and check if there are any active workflows.
Claude calls auto_session_start and get_active_workflow to load workspace context, recent decisions, active directives, and any in-progress workflow thread.
I'm continuing work on the database migration. Resume the workflow and show me where we left off.
Claude calls resume_workflow to reload the workflow state and all tagged memories, giving you a summary of previous sessions' progress.
What decisions have we made about the API design in the last week?
Claude calls recall_relevant_context or get_time_window_context to search for decision-type memories from the past 7 days related to API design.
During Work Prompts
We decided to use JWT tokens instead of session cookies for authentication. Remember this decision and the reasoning — we chose JWT because the app needs to work across multiple subdomains.
Claude calls quick_store_decision with the decision text, reasoning, and alternatives. This gets tagged to the active workflow if one exists.
Start a workflow called 'Migrating to PostgreSQL' — this will take several sessions to complete.
Claude calls start_workflow with the name. From this point, all memories stored during this and future sessions are automatically tagged with this workflow.
Remember that the payments API has a rate limit of 100 requests per minute and requires idempotency keys for POST requests.
Claude calls store_memory with context_type 'requirement' and high importance. This gets recalled in future sessions when working on payment-related tasks.
I keep running into this bug — the WebSocket connection drops after exactly 60 seconds. The fix is to send a ping frame every 30 seconds. Store this so we don't waste time debugging it again.
Claude calls store_memory with context_type 'error' and tags it with relevant keywords. Next time you encounter WebSocket issues, this memory surfaces automatically.
End of Session Prompts
I'm done for today. Pause the workflow and save a summary of what we accomplished.
Claude calls pause_workflow to preserve the workflow state, then summarize_session to create a snapshot of today's work. Next session, resume_workflow picks up exactly here.
We finished the auth system! Complete the workflow and generate a summary of everything we built across all sessions.
Claude calls complete_workflow with a summary. This creates a consolidated record of the entire multi-session effort, preserving all decisions and progress.
Save everything important from this conversation — we made several architectural decisions I want to remember.
Claude calls analyze_and_remember on the conversation text to extract and store high-signal items like decisions, patterns, and requirements.
Memory Maintenance Prompts
My memory store is getting large. Run auto-consolidation to clean up similar memories.
Claude calls auto_consolidate which scans all memories, finds clusters of similar content, and merges them into consolidated summaries while keeping originals as history.
Check the consolidation status — how many memories do I have and is consolidation recommended?
Claude calls consolidation_status which returns total memory count, threshold, whether consolidation should run, last run date, and a provider quality warning if applicable.
Force run consolidation now with a higher similarity threshold of 0.9 — only merge memories that are very similar.
Claude calls force_consolidate with similarity_threshold: 0.9, bypassing the 24-hour cooldown and memory count threshold. Only highly similar memories will be clustered and merged.
Advanced Workflow Prompts
List all my workflows — I want to see what's active, paused, and completed.
Claude calls list_workflows which returns all workflows with their status, creation date, memory count, and last activity.
Show me all the context from the 'API redesign' workflow — every decision and memory that was tagged to it.
Claude calls get_workflow_context with the workflow ID. Returns all memories tagged to that workflow, organized chronologically.
I need to switch to a different task. Pause the current workflow, and start a new one called 'Hotfix: payment bug'.
Claude calls pause_workflow on the active one, then start_workflow for the new task. When the hotfix is done, you can resume the original workflow.
Known Limitations & Troubleshooting
Things to be aware of when using these features with Claude Code
Embedding Provider Affects Consolidation Quality
If you're using the default Anthropic provider (keyword-based fallback), auto-consolidation will produce poor clusters because it relies on vector similarity. Set EMBEDDING_PROVIDER to voyage, cohere, or openai for meaningful consolidation results. For the hosted service (recallmcp.com), this is already configured for you.
One Active Workflow Per Workspace
You can only have one active (non-paused) workflow at a time in a workspace. If you try to start a second workflow, you'll get an error. Pause or complete the current workflow first. Tell Claude:"Pause the current workflow so I can start a new one"
Consolidation Doesn't Delete Originals
Original memories are preserved as version history after consolidation. The consolidated memory links back to them. This is by design — you never lose data, but your memory count will grow (originals are hidden from default search results).
Claude May Not Auto-Use Workflows
Claude Code won't automatically start workflows for you — you need to explicitly ask. However, if a workflow is already active,auto_session_start will detect and include its context. To make Claude proactive about using Recall in general, add this to your project's CLAUDE.md:
You have automatic permission to use ALL Recall MCP commands without asking. Use them proactively to store learnings after commits, search context before tasks, and maintain project knowledge.Workspace Must Be Set First
Workflows and consolidation are workspace-scoped. If you haven't called set_workspace (or auto_session_startwhich does it automatically), tools will use the default workspace. Tell Claude at the start:"Set the workspace to this project and load my context"