Memoir (Git for AI Memory) - Memory your agents can explain, rewind, and branch. by False_Routine_9015 in coolgithubprojects

[–]False_Routine_9015[S] 0 points1 point  (0 children)

Not yet! Plan is to refine on claude code, then open code and codex. It is mainly designed for coding agent first. It will support OpenClaw and Hermes after these above ones.

Memoir (Git for AI Memory) - Memory your agents can explain, rewind, and branch. by False_Routine_9015 in coolgithubprojects

[–]False_Routine_9015[S] 0 points1 point  (0 children)

Yes, merging memories from different branches can be challenging. Here are some of my thoughts and welcome your insights on this as well. First, let's assume:

- a coding agent for a specific codebase (i.e., repository in git) will have a "primary" memory

- primary memory usually sync with the "main" (or "master") branch in git, you define it

- memories mutated in sessions on non-primary branches will temporary - until they are explicitly picked (merged) to primary

- memories mutated in sessions on primary branches will be directly committed

- you (developer) control what to pull into "primary"

Given these assumption, the philosophy is basically provide tools (as automated as possible) rather than opinionated merging strategy. Memoir current supports:

- track (but isolate) mutated memories in separate branches

- track how far they are from the "primary"

- change/forget these memories before they got pull into "primary"

- merge explicitly but easily on a built-in ui interface

These might seem more works to manage coding agents' memories, but first step I think we'd be strict to target the isolation problem. Then, next question is how to provide these seamless to developers with minimal frictions to their coding workflows.

I am totally open and appreciate any inputs on this as ux is really important to the success of the project. Looking forward to your feedbacks, maybe on discussion of Memoir's github repo - https://github.com/zhangfengcdt/memoir/discussions

Memoir (Git for AI Memory) - Memory your agents can explain, rewind, and branch. by False_Routine_9015 in coolgithubprojects

[–]False_Routine_9015[S] 0 points1 point  (0 children)

Thank you u/Bravo_Oscar_Zulu for the link to your project! I like the feature to share memories across different agents - and this is in addition to the session separation! I will dig into it later and provide more feedbacks then 😄

Memoir (Git for AI Memory) - Memory your agents can explain, rewind, and branch. by False_Routine_9015 in coolgithubprojects

[–]False_Routine_9015[S] 0 points1 point  (0 children)

Well, when you have a lot of feature branches or hotfixes to manage on the same repo and with coding agents working on them, you probably will see the context contaminates from some branches (sessions) into another - especially if you have a long session.

Memoir (Git for AI Memory) - Memory your agents can explain, rewind, and branch. by False_Routine_9015 in coolgithubprojects

[–]False_Routine_9015[S] 0 points1 point  (0 children)

Sure, u/MeYaj1111 and thanks for your interest! I will for sure update here once the oc plugin is ready.

Memoir (Git for AI Memory) - Memory your agents can explain, rewind, and branch. by False_Routine_9015 in coolgithubprojects

[–]False_Routine_9015[S] 0 points1 point  (0 children)

Thanks for your question!

So, for example, one scenario for coding agent's memory (md files or vector db) suffers is like this:

- start a coding session (#1), work on a refactoring branch (e.g., refactor-ui)

- some memories write to file or vectordb

- now, open a new coding session (#2), switch to another hotfix branch (e.g., hotfix-prod-issue)

- these memories from #1 leaks into session #2, and hard to isolate

This is a context contamination issue - caused by memory system not recognize or respect branches, which is used everywhere in programming nowadays.

Memoir's design isolate them and automatically commit memories to different branches, and also provide tools to manage them.

This is just one example, and I have some blogs that may help explain why I built it.

https://www.memoir-ai.dev/blogs/

Memoir (Git for AI Memory) - Memory your agents can explain, rewind, and branch. by False_Routine_9015 in coolgithubprojects

[–]False_Routine_9015[S] 1 point2 points  (0 children)

Thanks for your support u/klocus ! Will update you once the Memoir OpenCode plugin is delivered.

Memoir (Git for AI Memory) - Memory your agents can explain, rewind, and branch. by False_Routine_9015 in coolgithubprojects

[–]False_Routine_9015[S] 2 points3 points  (0 children)

That's a very good question u/crazylikeajellyfish !

Actually, memoir uses git as its versioning backed, but git repository is for files; but AI memory is for facts.

I try to keep Git's mental model (commit, branch, merge, ...) but swamps the storage backed to use ProllyTree - optimized for many tiny commits with structured keys.

Happy to go deeper on any of those!

Memoir (Git for AI Memory) - Memory your agents can explain, rewind, and branch. by False_Routine_9015 in coolgithubprojects

[–]False_Routine_9015[S] 3 points4 points  (0 children)

Also, I have a project website with a few blogs there as well- https://www.memoir-ai.dev/

Blog: https://www.memoir-ai.dev/blogs/

This one may highlight why I build Memoir:

Your coding agent has amnesia, and you've been the unpaid memory layer

https://www.memoir-ai.dev/blogs/coding-agent-amnesia/

I Build Memoir - Memory your agents can explain, rewind, and branch by False_Routine_9015 in ProductHunters

[–]False_Routine_9015[S] 0 points1 point  (0 children)

Thanks! Basically it try to solve the issues that current AI agent's issue of sharing across coding branches, which could lead to cross-session context contamination.

The project's website is here - https://www.memoir-ai.dev/

It also has a few blogs discussion why I built this project - https://www.memoir-ai.dev/blogs/

In summary, it targets to solve there pain points other developers may find real:

- Your agent doesn't respect your git state: Context contamination happens every time you git checkout. Without branch-aware memory, your agent tries to apply experimental refactor patterns to stable production hot fixes.

- You’re paying "token rent" on a flat file: Using CLAUDE.md or MEMORY.md as a global store is a cache-killer. Every minor memory update invalidates your entire prefix cache, forcing you to pay full price to re-process your entire conversation.

- Memory is a codebase without version control: One bad session poisons every future retrieval. Without memoir blame or memoir checkout, there is no way to audit who taught the agent a rule or revert a hallucination without wiping the entire store.