Bastra Recall
@n0mad-ai
Persistent memory for any AI assistant — Claude, ChatGPT, Cursor — backed by your local Obsidian vault. One daemon, all your tools.
Overview
What is Bastra Recall?
Bastra Recall is a persistent memory layer that works across multiple AI surfaces — Claude, ChatGPT, Cursor, and any tool that speaks MCP or HTTP. It runs as a single local daemon serving all AI tools at once, storing memories as plain markdown files with YAML frontmatter in an Obsidian-compatible vault.
How to use Bastra Recall?
Install the daemon locally and point it to a vault folder of markdown files. The server autonomously saves learned information and recalls relevant memories before actions via hooks like PreToolUse and SessionStart (Claude Code). No manual configuration steps beyond setup are described in the README.
Key features of Bastra Recall
- Single daemon serves every AI tool simultaneously
- Vault is a folder of plain markdown with YAML frontmatter
- Hybrid BM25 + vector search with recall_when field weighting
- Typed memories (lesson, decision, preference, project-fact, workflow)
- Scope-based isolation per project
- Wikilinks automatically build a related[] graph
Use cases of Bastra Recall
- Maintain consistent context across Claude Code sessions
- Share memory between ChatGPT, Cursor, and Claude Desktop
- Keep project-specific facts isolated by scope
- Edit and sync memories via iCloud / Google Drive / Dropbox
FAQ from Bastra Recall
How does Bastra Recall differ from embed-everything memory approaches?
Bastra Recall uses hybrid BM25 + vector search with the recall_when field as the highest-weighted trigger, providing much better recall semantics than approaches that embed everything.
Where does Bastra Recall store data?
All memories are stored locally in a user-specified folder of plain markdown files with YAML frontmatter. This vault is compatible with Obsidian and can be synced via iCloud, Google Drive, or Dropbox.
What runtime or dependencies are required?
Bastra Recall runs as a single local daemon. The README does not specify a particular language runtime or dependency list, but it communicates over MCP and HTTP.
Does Bastra Recall support authentication or bring your own key?
Yes, it is BYOK (bring your own key) and MIT licensed.
What transport protocols does Bastra Recall support?
It supports both MCP (Model Context Protocol) and HTTP, allowing integration with any AI surface that speaks either protocol.