The memory we have now save the summary and Casual links to a certain extend, what about the reasoning behind it the cause and effect? So i built one myself
The Problem: Forgetting vs. Being Confidently Wrong
The thing that finally broke me wasn't my agent forgetting stuff. Forgetting is annoying - it announces itself, the agent asks again, you sigh, you re-explain. What broke me was the silent version: my agent confidently re-proposed an approach we'd tried and abandoned a month earlier.
Another time it planned against a decision we'd replaced two weeks before - the old decision was still sitting in its notes, looking exactly as authoritative as the new one. Nothing failed loudly. It just quietly burned the hours again.
Generic memory fixes forgetting. Nothing I tried fixes being confidently wrong about the past because that's not a recall problem - it's a status problem. "We ruled this out," "this was replaced," "this is still unverified" - that's not what a similarity search returns.
The Solution: NodeDex
So I spent 3 months building the other half: NodeDex - a local graph of your project's reasoning, built automatically from your agent's conversations by a background pipeline (the agent never has to remember to save):
- Dead-ends are first-class: an enumerable list of what was tried and abandoned, with the why - the agent is taught to check it BEFORE proposing
- Decisions carry their why + the alternatives that lost
- When something gets replaced, nothing is deleted - a
supersedesedge points old truth โ current truth, so the agent can't mistake stale for current
What It's NOT
To be clear: it doesn't replace Claude's native memory or your fact store. Those remember notes and preferences, and they're good at it. This is a different job - the project's decision history. Run both.
Quick Start
You can poke it in 60 seconds, no API key:
npx nodedex demo
That serves a small sample project graph over MCP. Point Claude (or any MCP agent) at it and ask: "Is 'keep the counters in Redis' still the current decision?" - then watch it follow the supersede edge and answer with the replacement instead of the stale one. That moment is the whole product.
Honest Limits
Before you find them:
- The dead-end check is a strong nudge (server instructions + a skill), not a hard block - a pre-generation hook gate is on the roadmap
- Extraction needs a smart, big context model (Gemini Flash-Lite โ half a cent per session; my 12B local test understood everything but failed the strict structured passes - floor is ~27-30B local with real 16k+ context)
- It's early and solo-built (1196 tests pass, but it's been on npm for three days)
- Local SQLite, AGPL, graph never leaves your machine
Repo & Call for Testing
Repo: github.com/NodeDex/NodeDex-v0.1
I'd love for people to break it - especially: does your agent actually check the dead ends unprompted in your setup, or does it need the nudge? That's the question I most need real world answers to.
Comments
No comments yet. Start the discussion.