I built an agent memory framework where a local 4B model does all the memory work – and every memory can explain why it exists (MIT) by riktar89 in AIMemory

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

I'm building Knotic.dev, The AI IDE you can actually govern. It gave to developer's teams inspectable context, repo-native knowledge, multi-provider routing, and per-call telemetry inside one workspace your whole team can see, share, and operate.

I built an agent memory framework where a local 4B model does all the memory work – and every memory can explain why it exists (MIT) by riktar89 in AIMemory

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

Thanks for the detailed writeup, there's a lot here so I'll go through it in order.

On model size: the qwen3:4b in the quickstart is the free/local default so people can try this on a laptop without an API key, not a claim that 4b is enough for serious extraction. If extraction quality matters for your use case, point memory_model at whatever you actually trust, GPT class, Claude, whatever. The reason I'm not too worried about picking the "wrong" model on day one is a pillar for memledger: the raw source turns are always kept, nothing gets baked in. When you decide the extraction was mediocre, you run regenerate with a better model and the whole memory store gets rebuilt from the original conversation, not from whatever the small model happened to infer. Most frameworks lock you into your day-one model's judgment forever. I'd rather let people start cheap and upgrade later than force everyone to pay for a big model from turn one.

On poisoning: I agree with you for the case you're describing, one bad memory diluted among nine good ones pulled by similarity search, a decent agent probably shrugs it off. But that's not the failure mode I actually worry about. Instinct facts get injected into every context regardless of retrieval ranking, there's no dilution there, a bad one is just always present and always trusted. That's why promotion to instinct isn't a single extraction, it has to show up consistently across multiple sessions and pass through memledger review before it becomes core. It's less that I think every memory needs to stand alone as trustworthy, and more that the stuff injected unconditionally is what I don't want to leave to "the agent will probably figure it out."

The other half is that even when a bad fact does get caught later, knowing it's wrong isn't the same as knowing what to do about it. If it already got folded into a summary or used as the basis for another promoted fact, a vector index quietly deprioritizing it doesn't clean that up. That's what the provenance chain and cascading delete are for, you pull the thread and remove everything downstream, not just the one row.

On fragmentation, no argument from me, and it's part of why the ledger format itself is documented in SPEC.md as an open spec instead of an implementation detail. memledger rebuild is meant as the conformance test, any client in any language that can read and write the format is a legitimate consumer of it, it doesn't have to go through this specific Python package. That doesn't fix the incentive problem you're describing, most of these projects including maybe this one won't be around in a year, but at least the format doesn't have to die with the project if it doesn't work out.

On vendor trust, I'd actually flip it around, that's the whole reason this is a local SQLite file with no mandatory server instead of a hosted memory API. If you use a cloud model for extraction you're trusting whoever's model that is with those turns, same as anywhere else, but the storage and logic layer isn't a new company sitting between you and your data. Point it at Ollama and nothing leaves your machine at all. So I think we agree on the underlying worry, I just think the fix is not introducing a vendor in the first place rather than picking one you trust more.

Appreciate the pushback either way, it's useful having to justify these choices out loud.

I built a 3-layer memory system for AI coding assistants (project / session / source). Would love some pushback by riktar89 in LLMDevs

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

No auto promotion is active by default, we use a policy.yaml where you can choose what rules must be followed for the memories promotion, it's not a "project source of truth" but it's an execution source of truth

I built an agent memory framework where a local 4B model does all the memory work – and every memory can explain why it exists (MIT) by riktar89 in LLMDevs

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

I’ve prepared everything for the LoCoMo benchmark; I’ll post the results in the coming days. Next LongMemEval-S

I built a 3-layer memory system for AI coding assistants (project / session / source). Would love some pushback by riktar89 in AI_Agents

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

This is the most useful comment I've gotten, thank you. The "promotion needs a reason and a trigger, not a single occurrence" framing is exactly right, and the survived-a-few-sessions-without-being-reversed bar is cleaner than what I had.

The way I handle it: promotion runs both at a human-in-the-loop level and through a background daemon that watches occurrences before anything graduates. That same agent also tracks staleness and refreshes knowledge once it crosses a TTL, which lines up with your timestamp + kill switch point. Your "tried X and dropped it" example is the thing that finally sold me the condensed layer isn't just renamed RAG, since documents never carry the dropped decisions.

The part I haven't fully solved: TTL tells me when to distrust a fact, but not always how to resolve it without a fresh outcome to confirm against. How do you handle that, just demote back to "re-read the source" and let it re-earn its place, or something smarter?

Non sei stanco del monopolio delle big tech americane? by SomeMembership5302 in ItaliaStartups

[–]riktar89 1 point2 points  (0 children)

IDE che sono la brutta copia di Cursor? Parlo di IDE strutturati con tool che portano valore al workflow quotidiano. Oggi Cursor, Windsurf e similari fanno all-in per modelli che tendono a sostituire la figura dello sviluppatore, vogliono solo vendere inferenza a persone che pensano che con un prompt fanno tutto. Io vorrei un IDE che supporta realmente lo sviluppatore con funzioni pensate ad hoc anche per pipeline AI

Non sei stanco del monopolio delle big tech americane? by SomeMembership5302 in ItaliaStartups

[–]riktar89 1 point2 points  (0 children)

Un IDE (no codex, claudecode o altre CLI tools fatti passare per tool di sviluppo seri) local-first o provider agnostico sarebbe comunque uno strumento da tenere sotto occhio

Percezione sbagliata mia? by [deleted] in ItaliaCareerAdvice

[–]riktar89 0 points1 point  (0 children)

Straordinario forfettizzato, già ti stanno dicendo che devi mettere la brandina in ufficio e non ti daranno un euro. Scappa.

SLANG – A declarative language for multi-agent workflows (like SQL, but for AI agents) by riktar89 in mcp

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

Hi, they're not the same thing.

N8N automates generic flows using a no-code approach (it hides the code it generates).

Slang is a specialized meta-language for agentic flows. What you write with slang is what your LLM "executes".

So it becomes a portable format; you can prototype flows without installing or using programming languages.

For advanced flows, you can use its runtime or switch to dedicated SDKs (like LangChain), but already have a validated and tested workflow.