Skip to main content
Glama
xbrxr03
by xbrxr03

MemoryGraph

Ihr Agent hat eine relevante Erinnerung gefunden. MemoryGraph sagt ihm, ob diese Erinnerung noch wahr ist.

MemoryGraph ist eine lokal-orientierte Evidenz- und Revisionsschicht für Überzeugungen von KI-Agenten. Sie bewahrt Quellbeobachtungen auf, stellt Behauptungen als temporaler Graph dar und erklärt, warum eine Behauptung aktuell, historisch oder umstritten ist.

MVP-Status

Der deterministische MVP läuft. Die maßgebliche Architektur beginnt bei 00-architecture-index.md; der implementierte Kern umfasst:

  • Unveränderliche Quellbeobachtungen.

  • Typisierte Entitätsknoten und atomare Claim-Kanten mit exakten Evidenzbereichen.

  • Bi-temporale Aktualitäts- und Verlaufsabfragen für Überzeugungen.

  • Explizite Bestätigung, Widerspruch und atomare Ersetzung.

  • recall, history- und explain-Befehle.

  • Harte Bank-Isolation und ein append-only-Protokoll der Mutationsereignisse.

  • Einen provider-agnostischen Validator für Dream-Vorschläge mit Evidenz-, Wasserzeichen-, Claim-Versions-, Idempotenz-, Konfidenz-, Herausforderer- und Review-Gates.

  • Dauerhafte Dream-Läufe, Tasks, Vorschläge, Review-Elemente, Leases, Ereignis-Wasserzeichen und atomare Proposal-Commits.

  • Einen deterministischen Metadaten-Provider, der den vollständigen Dream-Zyklus durchläuft, ohne Quelldaten an ein externes Modell zu senden.

  • MemoryRotBench-Fixtures, Basislinien, Retrieval-Bewertung und Engine-Integration.

  • Hybrides FTS/Vektor-Recall mit lokaler Basislinie ohne Abhängigkeiten und austauschbarem Embedder.

  • Quarantäne beim Retrieval für nicht vertrauenswürdige, anweisungsartige Inhalte.

  • Crash-wiederherstellbare Dream-Worker mit Leases, Heartbeat-Verlängerung, Wiederholungen und replay-sicherem Fortsetzen.

  • Einen OpenAI-kompatiblen Structured-Output-Provider, der nur Kandidaten vorschlagen kann.

  • Einen STDIO-MCP-Server mit fünf Werkzeugen: recall, record, explain, correct und forget.

  • Nutzerfreigestützte Codex-JSONL-Aufnahme und einen projektbezogenen Codex-Installer.

  • Eine deterministische, Obsidian-kompatible Markdown-Übersichtsprojektion.

  • Erstklassige prozedurale Episoden für begrenzte Wiederverwendung erfolgreicher und fehlgeschlagener Codierungsversuche.

  • Reproduzierbare Benchmark-Adapter ohne Speicher, mit Markdown, BM25, Flachkontext und externen/Graphify-Providern.

  • Plattformübergreifende CI, Paketprüfung und umsetzbare doctor-Diagnosen.

Die eigentliche Engine besteht derzeit alle zwölföffentlichen MemoryRotBench-Recall-Anfragen und alle sieben Produktions-Chaos-Verträge. Die Repository-Testsuite umfasst an diesem Kontrollpunkt 196 erfolgreiche Tests. In der ersten gefingerabdruckten öffentlichen Matrix bestehen die stärksten primitivernessen 7/12, während MemoryGraph 12/12 besteht.

Schnellstart

uv sync
uv run memorygraph init --database /tmp/memorygraph.db
uv run memorygraph doctor --database /tmp/memorygraph.db
uv run memorygraph bank create personal:founder --database /tmp/memorygraph.db
uv run memorygraph dogfood bootstrap --database /tmp/memorygraph.db
uv run memorygraph predicate define works_at \
  --bank personal:founder --cardinality one --volatility volatile \
  --database /tmp/memorygraph.db

Evidenz aufzeichnen und in einen Claim verwandeln:

OBSERVATION_ID=$(uv run memorygraph observe "Abrar works at Acme." \
  --bank personal:founder --source-key event:acme \
  --database /tmp/memorygraph.db)

CLAIM_ID=$(uv run memorygraph claim assert Abrar works_at Acme \
  --bank personal:founder --observation "$OBSERVATION_ID" \
  --database /tmp/memorygraph.db)

Die Python-API stellt außerdem confirm_claim, contradict_claim, supersede_claim, recall, history und explain für eingebettete Anwendungen bereit.

Zeichne einen Codierungsversuch auf, damit künftige Agenten eine erfolgreiche Strategie wiederverwenden—oder einen bekannten Fehlschlag vermeiden—können, ohne ihn als universell anwendbar darzustellen:

memorygraph record-attempt "Run migrations before starting the worker" \
  --bank project:my-app --source-key attempt:migrate-worker \
  --task "start durable worker" --outcome success \
  --applicability-json '{"database":"sqlite"}'

Den Dream-Zyklus ausführen

Der eingebettete Provider liest getypteKandidaten aus metadata.metadata_file, schlägt Graphänderungen vor, validiert Evidenz und zeitliche Vorbedingungen und committetthen berechtigte Kandidaten in einer Transaktion. Modell-Provider implementieren dasselbe kandidatenantwortprotokoll und erhalten nie einen direkten Datenbankschreibpfad.

PYTHONPATH=src:. uv run python examples/run_dream_cycle.py \
  --database /tmp/memorygraph-dream.db

uv run memorygraph dream status RUN_ID \
  --bank personal:founder --database /tmp/memorygraph-dream.db

uv run memorygraph dream reviews \
  --bank personal:founder --database /tmp/memorygraph-dream.db

uv run memorygraph dream rollback RUN_ID \
  --bank personal:founder --database /tmp/memorygraph-dream.db

For CLI-Eingabe übergibst du den Kandidatendatenumschlag mit observe --metadata-file FILE.json und führst dann memorygraph dream run --bank BANK aus. --mode dry_run validiert und persistiert Vorschläge, verbraucht aber nicht die Beobachtung und ändert keine Ansprüche.

Für durables Erleben, Warteschlange Arbeit einreihen und einen Worker separat ausführen:

uv run memorygraph dream queue \
  --bank personal:founder --database /tmp/memorygraph-dream.db

uv run memorygraph dream worker \
  --bank personal:founder --database /tmp/memorygraph-dream.db

Um einen OpenAI-kompatiblen Responses-Endpunkt zu verwenden, setze die konfigurierte Schlüsselvariable und übergib sowohl der Warteschlange als auch dem Worker ein Modell. Die Provider-Ausgabe wird als streng strukturierte Daten geparst und durchläuft weiterhin dieselben deterministischen Evidenz- und Commit-Gates.

export OPENAI_API_KEY=...
uv run memorygraph dream queue --bank personal:founder \
  --provider-model YOUR_MODEL --database /tmp/memorygraph-dream.db
uv run memorygraph dream worker --bank personal:founder \
  --provider-model YOUR_MODEL --database /tmp/memorygraph-dream.db

Codex verbinden

Paket installieren, Projektbank initialisieren und projektbezogene MCP-Konfiguration hinzufügen:

uv run memorygraph init
uv run memorygraph bank create project:my-app
uv run memorygraph install-codex --project .
uv run memorygraph probe-codex --project .

Der Installer erstellt oder repariert einen [mcp_servers.memorygraph]-Block in .codex/config.toml, zeigt auf das aktuelle Python-memorygraph.mcp-STDIO-Modul, und konfiguriert Codex so, dass Schreibvorgänge von einer expliziten Freigabe abhängen. Es ändert nicht die globale Codex-Konfiguration. Die fünf MCP-Operationen erfordern einen expliziten Bankbereich.

probe-codex validiert die Projektkonfiguration und testet einen echten MCP-Subprozess-Lebenszyklus. Verwende --project-database, wenn die Sonde statt temporärer Wegwerf-Datenbanken die konfigurierte Projektdatenbank treffen soll.

Das Importieren von Sitzungsinhalten ist optional. Jeder JSONL-Datensatz muss bank, session_id, turn_id enthalten. role, content und approved; nicht freigegebene Datensätze werden standardmäßig übersprungen:

memorygraph ingest-codex approved-session.jsonl

Dogfood-Alpha

Die offizielle Offline-Matrix mit sechs Armen ist folgende:

PYTHONPATH=src:. uv run python examples/run_dogfood_fixture_matrix.py

Für ein echtes Projekt zuerst den Betriebsvertrag bootstrappen:

uv run memorygraph dogfood bootstrap \
  --database .memorygraph/memory.db \
  --bank project:my-app \
  --workspace my-app

Die Fixture-Matrix führt diese Arme aus:

  • no_memory

  • markdown

  • memorygraph_graph_only

  • memorygraph_gated_dream

  • memorygraph_always_dream

  • graphify_compatible

Sie misst Task bestanden/nicht bestanden, Nützlichkeits-Recall, verbotene oder veraltete Informationen, wiederholte Fehler, Latenz, Token-Schätzungen, Tool-Calls, Wiederholungsversuche, geschätzte Kostenfelder und den Dream-Review-Aufwand. Ergebnisse werden in benchmarks/reports/dogfood-offline-mvp.json und im append-only Protokollbestand benchmarks/reports/dogfood-offline-mvp.jsonl geschrieben. Task bestanden/nicht bestanden folgt den Abfrageerwartungen; der Dream-Review-Backlog kann zusätzlich gleichzeitig sichtbar nur im Aufwand auftreten.

Aktueller Offline-Fixture-Wert am 2026-08-22:

  • memorygraph_always_dream: 3/3

  • memorygraph_graph_only: 1/3

  • memorygraph_gated_dream: 1/3

  • graphify_compatible: 1/3

  • markdown: a 1/3, mit Verbotenen_Fragmenten im Abruf

graphify_compatible ist ein ProtokollAdapter, mit dem ein externer Retriever gegen diesel Judikatur Verträge von Manifeste, Zeitgrenzen und Bewertungs-Richtlinien antreten kann. Es ist keine Behauptung, dass dieses Repository bereits einen Vergleich mit live Graphify abgeschlossen hat.

Menschliche Überprüfung in Obsidian

Einen Markdown-Vault generieren, der aktuellen Claims, genaue Provenienz, Relationen und die Dream-Review-Warteschlange enthält:

memorygraph project-obsidian --bank project:my-app \
  --output .memorygraph/obsidian

Das Markdown ist Wegwerf- und Manifests-verwaltet. SQLite-Beobachtungen und Append-only-Ereignisse bleiben maßgeblich; Änderungen an generierten Notizen mutieren Erinnerungen nie.

Warum ein Graph?

Der Graph bietet Agenten komposierbare Struktur: Entitäten sind Knoten und Claims wie Abrar --arbeitet_bei--> Stripe sind typisierte Kanten. MemoryGraph behandelt eine Kante nicht als zeitlose Wahrheit. Jede Claim-Version trägt gültige Zeit, Systemzeit, Lebenszyklus, Provenienz und exakte Quellenbelege. Genau das ist der Unterschied zwischen einem nützlichen Erinnerungsgraphen und einem veralteten Faktencontainer.

Entwicklung

uv sync --extra dev
uv run pytest
uv run ruff check .
PYTHONPATH=src:. python examples/run_memoryrotbench_memorygraph.py
PYTHONPATH=src:. python examples/run_memoryrotbench_chaos_memorygraph.py
python examples/run_memoryrotbench_baseline_matrix.py
PYTHONPATH=src:. uv run python examples/run_dogfood_fixture_matrix.py

Erwartete Ergebnisse: 12/12 Fälle für öffentliches Retrieval und 7/7 Fälle für Produktions-Chaosklassen. Die Matrix hängt unveränderliche, mit Corpus- und Gutachter-Fingerprint versehene Datensätze an benchmarks/reports/public-baseline-matrix.jsonl an. Verwende --graphify-command, um einen externenGraphify-Adapter gegen genau denselben sichtbaren Korpus und denselben Bewertungsvertrag auszuführen.

Nächste Produktebene

Das nächste Gate ist immer noch echtes GitHub-Echtheits-omit-Echtwelt-Langzeittest: Live-modellgestützte Dogfood-Sitzungen, echte Graphify-Vergleiche und die Verwendung durch Design-Partner an realer Codierarbeit. Rückstände von vollständigen Löschungen werden geprüft und berichtet; etwaige Identitätsrückstände, die nicht sicher gelöscht werden können, ohne die Geschichte umzuschreiben, werden offengelegt statt versteckt. Der Dream-Validator bleibt die Sicherheitsbarriere in der Mitte, die jeder Provider und jeder Worker passieren muss.

Lizenziert unter Apache-2.0.

-
license - not tested
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

  • Long-term memory for AI agents: semantic facts, episodic events, and procedural workflows

  • Certified SEC EDGAR fact memory for AI agents with zero hallucination and filing provenance.

  • Persistent memory and knowledge graphs for AI agents. Hybrid search, context checkpoints, and more.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/xbrxr03/memorygraph'

If you have feedback or need assistance with the MCP directory API, please join our Discord server