Every AI conversation starts from zero. Your projects, decisions, and preferences disappear as soon as you close the chat. Second Brain fixes that. It is a self-hosted memory layer that works with Claude, ChatGPT, Cursor, and any MCP client. You can store context once and recall it by meaning instead of keywords. It includes duplicate detection, semantic search, and a web UI. Built on Cloudflare, it offers a free tier and your data remains yours. MIT licensed.
This is the 2nd launch from Second Brain for AI. View more
Second Brain for AI v2
Launching today
Second Brain remembers your projects, people, decisions, and preferences across Claude, ChatGPT, Cursor, Codex, and any MCP client. V2 automatically links related memories, follows those connections during recall, and distinguishes settled decisions from drafts and stale context. Open source and self-hosted in your Cloudflare account.








Free
Launch Team / Built With






Persistent memory makes agents much more useful, but also raises interesting reliability challenges. How do you validate that outdated or incorrect memories don’t keep influencing future responses?
Second Brain for AI
@amjad_shaik Three mechanisms handle this: contradictory writes become drafts for review rather than silently overwriting settled context, canonical memories require explicit confirmation before they're superseded, and deprecated entries drop from recall but stay in the audit trail. Recency alone doesn't win.
@rahilpirani I like that approach, especially keeping deprecated memories in the audit trail instead of deleting them. Have you seen cases where the model still references deprecated memories indirectly, or has this approach eliminated that issue?
Second Brain for AI
@amjad_shaik The filter sits at the recall layer, so deprecated entries never reach the AI in the first place. The model only sees what recall returns. The one real edge case: if the old content was quoted or referenced inside a canonical memory before being deprecated, that canonical memory still surfaces. We treat it as a documentation problem rather than a filter bypass, and it has been rare in practice.
Second Brain for AI
The history is the context. Knowing that a decision changed, when it changed, and what replaced it is different from just knowing the current answer.
The linked-memory approach is compelling, but I think the harder problem isn't remembering more—it's remembering the right things.
How does v2 decide that a decision is "settled" versus something that should remain tentative? It seems like getting that boundary right could matter more than the size of the memory graph, especially when AI starts reusing old context automatically.
Congrats on the launch! 🚀
Second Brain for AI
@aryan787544 v2 doesn't decide on its own. Contradictory writes become drafts for your review, not silent overwrites. You confirm what's settled. The boundary stays with you; the system just makes the tension visible.
@rahilpirani That's an interesting distinction.
It actually made me think of a second-order consequence I hadn't considered before. If that assumption holds, it changes where I think products like this create trust over time.
Second Brain for AI
@aryan787544 Curious what consequence you're thinking about. That kind of observation usually points at something real.
the review's "what needs improvement" flags the Vectorize/Worker CPU ceiling under concurrent multi-hop recall - have you actually hit that limit at real personal-scale usage, or is it still theoretical?
Second Brain for AI
@sabber_ahamed Theoretical at personal scale. The bottleneck has been hop latency, not CPU. The ceiling becomes real when you layer concurrent multi-hop over conflict reconciliation at multi-tenant scale.
@rahilpirani hop latency over CPU is the more useful finding honestly, most people assume compute is the wall. is that network round trips between workers, or the traversal itself needing too many hops per query?
Second Brain for AI
@sabber_ahamed The traversal itself. Each hop is a sequential D1 read - you have to know which node you're at before you can follow the next edge. It's all in one Worker. Parallel edges at the same depth help, but depth itself is serial.
the settled-vs-draft distinction is the part I'd want to poke at - is that inferred from how often a decision gets re-referenced across sessions, or does the user have to explicitly mark something as settled?
Second Brain for AI
@sabber_ahamed User confirms it. Contradictions surface both writes as canonical vs draft, and you decide which stands. Re-reference frequency is a signal we track, but it doesn't automatically settle anything.
@rahilpirani makes sense to keep a human in the loop on that. does the conflict get surfaced right at write time, or does it stay quiet until you actually search across both versions?
Second Brain for AI
@sabber_ahamed At write time. The store operation itself returns the conflict notice, shows which memory is being superseded, and marks the newer one canonical. Nothing waits for a search.
Second Brain for AI
@sabber_ahamed Write time. The contradiction check runs on every write - if the new entry conflicts with an existing canonical, both surface immediately as a draft-vs-canonical pair. You see the tension the moment it's written, not later when you search.
I run most of my business ops through AI agents day to day, and the "newer isn't always more correct" framing matches exactly what I see — tools overwrite settled decisions with whatever happened last. Curious: when memories are written autonomously by agents rather than by me in a chat, does the canonical/draft distinction still hold up, or does it assume a human is doing the confirming?
Second Brain for AI
@podcast_ai The distinction holds regardless of who writes. Agent writes that conflict with existing canonical memories surface immediately as a draft-vs-canonical pair at write time. Settling a draft to canonical is a human action. Agents write freely but can't settle context unilaterally.
Interesting take on memory. The part I keep running into with long lived AI memory is not storage, it's that old memories go stale and quietly become wrong later. Curious how v2 handles that, do memories decay over time or get re checked against newer context?
Second Brain for AI
@henry_s_jung v2 doesn't auto-decay, but every write checks against existing canonical memories. Contradictory new context surfaces immediately as a draft-vs-canonical pair, so stale info gets flagged the moment something newer conflicts with it. The trickier case is memories that were wrong from the start and never contradicted - that's a real gap we're thinking about.
Interesting idea. How do this scale efficiently? Is there an indexing or meta layer so as I have more info to save? What about "split personalities?" There's work info, personal info, hobby info, etc that tend to be fairly siloed. Does it figure out my silos over time?
Second Brain for AI
@markherschberg Vectorize keeps recall latency flat as memory grows. On silos: v2 doesn't auto-partition yet. You can tag memories by context, but the graph links across domains when memories are semantically close. Automatic partitioning is on the roadmap.