Der auto-lernende Mem0-Store sammelte trotz Relevanz-Direktive viel Müll:
Fakten ÜBER den Assistenten selbst (Hermes/Lucy), transiente Zustände
(Commit-Rückstand, Cronjob-Läufe, Onboarding-/Test-Fragen) und Gesprächs-Meta.
Live-Store war zu ~40% solcher Ballast; der niedrige Recall-Schwellwert (0.3)
blendete zudem marginale Fakten pro Turn ein und brach damit --cache-reuse.
- mem0_service/app.py: custom_instructions verschärft (NIEMALS Fakten über den
Assistenten selbst / keine zeitgebundenen Zustände) + deterministischer
Post-Extraktions-Guard (_is_junk_fact) löscht Assistenten-Meta/transiente
Fakten, die mem0-OSS trotz Direktive extrahiert — unabhängig vom LLM.
- hermes/plugins/mc2-memory/__init__.py: RECALL_MIN_SCORE 0.3->0.5 (nur starke
Treffer, oft leer -> stabilerer Prompt-Prefix -> --cache-reuse greift),
MIN_USER_LEN 12->25 + Trivial-Turn-Skip (Begrüßung/Quittung/Aufwärmen).
Alles env-überschreibbar und reversibel. Backend/Frontend unberührt.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Auto-Lernen speicherte News (Bahn-Ausfall, SpaceX...) + Meta-Aussagen ('Nutzer fragt nach X') als
Fakten. custom_instructions weisen die Extraktion jetzt an, NUR dauerhaft nützliche Nutzer-/Projekt-/
Stack-Fakten zu behalten und Vergängliches komplett zu ignorieren. (10 Altlasten bereits gelöscht.)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Schliesst den offenen "Update"-Punkt aus dem Upgrade-Playbook (Backup war Schicht 1):
- mem0_service/requirements.txt jetzt GEPINNT (mem0ai==2.0.8, chromadb==1.5.9,
fastapi==0.138.1, uvicorn==0.49.0) -> Upgrades nur absichtlich. Grund: der Sidecar
nutzt mem0-Interna (NoThink-Swap, Roh-Chroma-Zugriff), die ein blindes Upgrade still
brechen koennte.
- mem0_service/smoke_test.py: prueft add/Suche/Auto-Lernen/Deutsch/Auto-Einordnung/Graph
gegen eine WEGWERF-Collection (fasst /srv/models/mem0 nicht an). Vor/nach mem0-Upgrades
laufen lassen. Live: alle Tests gruen.
- docs/UPGRADE.md: sichere Upgrade-Prozedur (Backup -> Pin -> install -> smoke_test ->
gruen=restart / rot=anpassen oder restore) + reagraph/React- und Hermes-Plugin-Hinweise.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
custom_instructions als zwingende Sprach-Direktive — mem0s englischer Extraktions-Prompt
zog sonst Richtung Englisch. Eigennamen/Befehle/Modellnamen (PowerShell-Push, Qwen3.6, …)
bleiben unveraendert. Live verifiziert: gemischter DE/EN-Input -> Fakten auf Deutsch.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Saubere Neuordnung der Gedaechtnis-Kategorien an der etablierten Memory-Taxonomie
(semantisch/prozedural/episodisch), bewusst knapp (Best Practice: 3-5, klar beschrieben):
identity (Identitaet & Vorlieben) · knowledge (Wissen & Fakten) ·
rules (Regeln & Konventionen) · events (Ereignisse & Entscheidungen)
Loest die alten gemischten 5 (user/instruction/stable/versioned/ephemeral) ab.
Auto-Einordnung: OSS-mem0 kann nicht nativ kategorisieren (Cloud-Feature) -> nach der
Fakt-Extraktion ordnet dasselbe (Thinking-freie) Hirn jeden neuen Fakt per JSON-Call
genau einer Kategorie zu (classify_facts im Sidecar /learn). Behebt den "alles ist stable"-
Bug. Manuelle Eintraege: Kategorie weiter waehlbar (Default knowledge).
Umgesetzt in mem0_service, backend (services/routers), mcp_memory (Tool-Docs) und Frontend
(MemoryView + GraphView: Labels/Farben/Filter). Kein Migrationsbedarf (leerer Start).
Live verifiziert: gemischter Absatz -> identity/rules/knowledge/events korrekt zugeordnet.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>