Mnemosyne OS

English 中文 繁體中文 Español Русский Deutsch ไทย 한국어 日本語

# Mnemosyne OS ☤

Mnemosyne OS | GitHub | Chinesische Dokumentation

PyPI License: MIT Python 3.8+ Model Context Protocol Downloads X 中文 繁體中文 Español Русский Deutsch ไทย 한국어 日本語

**Mnemosyne OS 8.1.0** — ein vollständig abhängigkeitsfreies (zero-dependency), lokal-zentriertes (local-first) KI-Gedächtnissystem mit mehrstufigem Vergessen (multi-tier forgetting), einem Hash-Chain-Ledger (hash-chain ledger), einem Plugin-SDK (plugin SDK), einem lokalen Web-Dashboard (local web dashboard) und MCP-Unterstützung (Model Context Protocol / 模型上下文协议). > Die einzige KI-Gedächtnis-Engine, deren **Kern keine externen Drittanbieter-Abhängigkeiten benötigt** (nur die Python-Standardbibliothek 3.8+) — keine Vektordatenbank (vector DB), keine LLM-Laufzeitumgebung (Large Language Model), kein Cloud-Vendor-Lock-in. Läuft auf einem Laptop, einem Server oder serverloser Infrastruktur (serverless). Nutzen Sie es als **Python-Bibliothek (Python library)**, als **CLI (Kommandozeile)**, als **HTTP-API (HTTP API)**, als **MCP-Server (MCP server)** oder betten Sie es über den **MCP-stdio-Transport (Model Context Protocol)** ein.
Abhängigkeitsfreier Kern (zero-dependency core)Läuft ausschließlich auf der Python-Standardbibliothek. Kein numpy, kein torch, keine Vektordatenbank, kein LLM erforderlich, um Erinnerungen zu speichern und abzurufen.
Mehrstufiges Gedächtnis (multi-tier memory)Hot-/Warm-/Cold-Ebenen mit ökonomischem Vergessen (forgetting economics) — migrieren Sie wertarme Erinnerungen, löschen Sie sie niemals stillschweigend.
Hash-Chain-Ledger (hash-chain ledger)SHA-256 verkettetes Ledger — verify_chain() erkennt Manipulationen und lokalisiert den exakten beschädigten Datensatz.
Plugin-SDK (plugin SDK)VectorBackendPlugin / CryptoPlugin / RerankerPlugin + offizielle Plugins (numpy_vector, crypto, reranker, hrr, async, context-engine).
MCP-Server (MCP server)55 Werkzeuge über stdio JSON-RPC, mit Token-Authentifizierung (token auth) und mandantenfähigen Namensräumen (multi-tenant namespaces).
Web-Dashboard (web dashboard)Lokal betriebenes, technisch gestaltetes dunkles Dashboard (local dark dashboard), kein externes CDN — ausgeliefert über web_server.py.
Async-API (async API)AsyncMemoryBrain asyncio-Wrapper für die Aufnahme mit hohem Durchsatz.
Chinesisch optimiert (Chinese-optimized)Bigramm-Tokenisierung (bigram tokenization) + FTS5 + eingebautes Synonymwörterbuch (built-in synonym dictionary).
Sicherheits-Notar (security notary)Erkennt Zugangsdaten, unsichtbares Unicode und HTML-Injection; feldweise Anonymisierung (field-level redaction) vor dem Schreiben.
--- ## ☁️ Mnemosyne OS SaaS Dieselbe Engine, gehostet, mit Web-Konsole: **[ai-memory.net](https://ai-memory.net)**. Die gehostete Konsole heißt **Mnemosyne OS SaaS** — dort registrieren Sie sich, erzeugen API-Schlüssel, durchsuchen Erinnerungen und verwalten Ihr Abo. | Tarif | Preis (USD) | Preis (CNY) | Enthalten | |---|---|---|---| | **Free** | $0 | ¥0 | Alle 55 MCP-Werkzeuge · 30-Tage-Rückrufffenster für das Cold-Layer-Gedächtnis · 1 Namensraum (namespace) · 7-Tage-Auditfenster · Daten werden nie gelöscht | | **Pro** | $6.9/Monat · $69/Jahr | ¥9.9/Monat · ¥99/Jahr | Permanentes Cold-Layer-Gedächtnis · Rückruf über Namensräume hinweg · unbegrenzte Audit-Historie · vollständiger Export | | **Team** | $19.9/Arbeitsplatz/Monat · $199/Arbeitsplatz/Jahr | ¥29.9/Arbeitsplatz/Monat · ¥299/Arbeitsplatz/Jahr | Alles aus Pro · Mehrbenutzer-Namensräume · Team-Richtlinien · Export von Audit-Berichten (Abrechnung pro Arbeitsplatz) | | **Compliance-Add-on** | $9.9/Monat | ¥19.9/Monat | Optionale Zusatzbuchung auf Pro oder Team (keine eigene Stufe, kein Jahresabo): regelmäßige `verify_integrity`-Berichte, Löschbeweis-Export, Konfiguration des Datenstandorts | Jahresabo = 10 Monate zahlen, 12 Monate nutzen (ca. 16,7 % Rabatt; Pro entspricht ¥8.25/Monat). Jedes neue Konto startet mit **30 Tagen Team-Zugang, ohne Karte** — danach bleiben Sie dauerhaft bei Free. USD läuft über ein PayPal-Abo mit automatischer Verlängerung (jederzeit in PayPal kündbar); CNY über einen WeChat-QR-Code + manuelle Bestätigung durch den Administrator. Selbstbetrieb bleibt MIT und unbeschränkt — die SaaS-Linie gibt es für alle, die keinen eigenen Server betreiben wollen. Die Engine ist identisch; **im Open-Source-Build ist keine Funktion gesperrt**. --- ## Schnellinstallation ### Über PyPI ```bash pip install mnemosyne-os ``` ### Abhängigkeitsfreier Kern (zero-dependency core — kein pip install erforderlich) ```bash # Core runs on the Python standard library alone python -c "from mnemosyne import MemoryBrain; print('Ready!')" ``` ### Entwickler-Installation ```bash git clone https://github.com/MnemosyneOS/mnemosyne.git cd mnemosyne pip install -e . ``` --- ## Erste Schritte ### CLI (Kommandozeile) ```bash # Initialize the memory database python mnemosyne.py --dir ./mem init # Store a memory python mnemosyne.py --dir ./mem retain --content "Apple Inc. was founded in 1976" # Search memories python mnemosyne.py --dir ./mem recall "Apple" --k 5 # Consolidate similar memories (pre-check) python mnemosyne.py --dir ./mem consolidate --dry-run # View status / health check python mnemosyne.py --dir ./mem status --json python mnemosyne.py --dir ./mem doctor --json # Knowledge graph query python mnemosyne.py --dir ./mem graph-query "Steve Jobs" --depth 2 --json # Ledger integrity / audit python mnemosyne.py --dir ./mem verify-integrity --json python mnemosyne.py --dir ./mem ledger-audit # Export / import python mnemosyne.py --dir ./mem export --format json --out ./memories.json python mnemosyne.py --dir ./mem import ./memories.json # Migrate JSONL -> SQLite python mnemosyne.py --dir ./mem migrate --jsonl ./mem/index.jsonl # Start the web dashboard python -m mnemosyne.webui.web_server --port 9090 ``` ### Python-API ```python from mnemosyne import MemoryBrain brain = MemoryBrain("./my_memories", enable_embeddings=False) brain.ensure_init() # Store brain.retain("Apple Inc. was founded in 1976", fast=True) # Recall results = brain.recall("Apple", k=5) for score, record, reasons in results: print(f"Score: {score:.4f} | {record['content']}") # Token-budgeted recall results, cost_report = brain.recall("Apple", k=5, budget_tokens=100) # Conversation history brain.add_conversation_turn("session-1", "user", "Tell me about Apple") hits = brain.search_conversations("Apple", session_id="session-1") # Context snapshot snapshot = brain.build_context_prompt(query="Apple", max_chars=2000) ``` ### Async-API ```python import asyncio from plugins.async_wrapper import AsyncMemoryBrain async def main(): brain = AsyncMemoryBrain("./memories", enable_embeddings=False) await brain.async_retain("Hello World", fast=True) results = await brain.async_recall("Hello", k=5) print(results) brain.close() asyncio.run(main()) ``` ### MCP-Server Starten Sie den MCP-Server über stdio JSON-RPC (Standard-JSON-RPC-Transport): ```bash export MNEMOSYNE_MCP_TOKEN="your-secret-token" # optional token auth python -m mnemosyne.webui.mcp_server --brain-dir ./mem --namespace default ``` Der MCP-Server stellt **55 Werkzeuge (55 tools)** bereit: | Werkzeug | Beschreibung | | --- | --- | | `retain` | Eine Erinnerung schreiben (write a memory) | | `recall` | Erinnerungen abrufen (retrieve memories) | | `retain_batch` | Batch-Schreiben, ~15× Beschleunigung (batch write) | | `stats` | Laufzeitstatistiken — Schreibvorgänge / Abrufe / Token-Einsparungen (runtime statistics) | | `graph_query` | Wissensgraphen-Abfrage (knowledge graph query) | | `temporal_query` | Zeitliche Versionsketten-Abfrage (temporal version-chain query) | | `list_projects` | Isolierte Projekte auflisten (list isolated projects) | | `doctor` | Integritätsprüfung — Integrität, Datensatzanzahl, Festplatte (health check) | | `audit` | Audit-Trail-Abfrage (audit-trail query) | | `confidence_history` | Konfidenz-Verlaufsabfrage (confidence trajectory query) | | `memory/export-v1` | Export über das Memory Exchange Protocol (memory exchange protocol export) | | `memory/import-v1` | Import über das Memory Exchange Protocol (memory exchange protocol import) | | `memory/claim` | Externe Erinnerungen aus einem Export übernehmen (claim external memories) | | `memory_export-v1` | Alias von `memory/export-v1` für Clients, die `/` in Toolnamen ablehnen | | `memory_import-v1` | Alias von `memory/import-v1` für Clients, die `/` in Toolnamen ablehnen | | `memory_claim` | Alias von `memory/claim` für Clients, die `/` in Toolnamen ablehnen | | `forget` | Eine Erinnerung vergessen — Konfidenz auf 0 setzen und Soft-Delete (akzeptiert `memory_id` oder eine `query` in natürlicher Sprache) | | `consolidate` | Kompression · Gedächtniskonsolidierung — stark ähnliche / synonyme Erinnerungen zu einer repräsentativen Erinnerung zusammenführen; Originale werden als `consolidated` markiert (`min_similarity`, `max_group`, `generate_summary`, `dry_run`) | | `reflect` | Kompression · erweiterte Reflexion — Summen nach Typ / Ebene / Fakten-Typ / Konfidenz, Top-Entitäten, Faktenkonflikt-Erkennung, zeitliche Dichte; `deep=true` ergänzt die Erkennung kognitiver Muster | | `dedup` | Kompression · Deduplizierung — Duplikate und Fast-Duplikate über Inhaltsfingerabdruck + Vektor-/Termfrequenz-Ähnlichkeit erkennen; `dry_run=true` meldet nur | | `recall_health` | Rückruf-Qualitätsmetriken — only-read: Leerquote, Top1-Trend, Löschungen durch Relevanzschwelle, Konfidenzbänder, Latenz (read-only recall quality metrics) | | `capsule` | Gedächtnis zu Zeiger + Fakten + Atome komprimieren — verlustfrei und adressierbar (compress a memory into pointer + facts + atoms) | | `expand` | Originaltext eines Capsule wortgetreu zurückholen, mit Hash-Prüfung (recover a capsule's original text byte-for-byte) | | `session_summarize` | Sitzungszusammenfassung — sieben Elemente (Ziel / Randbedingungen / Entscheidungen / Offenes / Artefakte / Fehler / Präferenzen) | | `session_recall` | Zusammenfassungen und offene Punkte nach Sitzung oder Projekt abrufen | | `conflict_resolve` | Konfliktklassifikation und -auflösung (sechs Klassen, `dry_run` zuerst) | | `task_record` | Aufgabenfakt festhalten — was getan wurde und wie es ausging (Faktebene) | | `playbook_save` | Erfahrung speichern — **Vorbedingungen sind Pflicht** (must / must_not / typical_env) | | `playbook_recall` | Erfahrung nach Zieltyp + Vorbedingungen suchen, gibt `applicable` / `blocked_by` zurück | | `code_change_record` | Code-Änderungsereignis festhalten (Absicht / Randbedingungen / verworfene Ansätze) | | `code_archaeology` | Änderungskette und Fallstricke zu einer Datei oder einem Symbol zurückverfolgen | | `memory_policy` | Sensitivitätsstufen und Quellenrichtlinien ansehen / setzen | | `profile_card` | Benutzerprofil-Karte — drei Ebenen (stabile Identität / Präferenzen & Randbedingungen / aktuelle Situation) + offene Punkte, direkt in einen System-Prompt einsetzbar | | `memory_inject` | Kontext-Injektions-Pipeline: Abfrage → vierfache Rückgewinnung → RRF-Fusion → Rerank → Injektion im Budget | | `recall_catalog` | Progressive Offenlegung, Katalog-Ebene: nur Titel + eine Zeile + Erweiterungskosten, nie der Volltext | | `expand_memory` | Progressive Offenlegung, Expansion: Volltext + einheitliche Hülle + Graph-Nachbarn + Evidenzkette | | `memory_envelope` | Einheitliche Gedächtnis-Hülle: acht Klassen + vierdimensionale Scope + Evidenzkette + Doppelzeitachse + TTL + SPO | | `memory_consolidate` | Drei Konsolidierungspfade: episodisch→semantisch, episodisch→prozedural, Fehlschlag→Negativgedächtnis; idempotent | | `memory_metrics` | Metriken: Chat (5) + Working (4) + Coding (4); unzureichende Daten geben `insufficient_data` statt 0 zurück | | `memory_cascade_delete` | Kaskadenlöschung: Quelle soft-löschen → abgeleitete Schlüsse invalidieren → Cache leeren → abhängige Zusammenfassungen stale setzen | | `memory_mask` | Maske: ersetzt den Text durch einen Platzhalter, behält aber das Rumpfskelett bei (KV-Cache bleibt nutzbar) | | `topic_summarize` | L3-Themenzusammenfassung: fasst mehrere L2-Sitzungszusammenfassungen eines Projekts zusammen | | `memory_trace` | Zeigerketten-Rückverfolgung: L3→L2→L1, mit Inhalt, abgedeckten Runden und `message_ids` | | `memory_hot_path` | Hot-Path-Puffer: `enable` aktiviert asynchrones Schreiben, `status` zeigt die Queue, `flush` wartet auf das Landen | | `add_memory` | Text oder Verlauf für einen Benutzer/Agenten speichern | | `search_memories` | Semantische Suche mit Filtern | | `get_memories` | Strukturierte Filter + seitenweise Liste | | `get_memory` | Ein Eintrag per id | | `update_memory` | Text und/oder Metadaten überschreiben | | `delete_memory` | Einen Eintrag löschen | | `delete_all_memories` | Einen Scope leeren | | `delete_entities` | Entitäten inkl. Kaskade löschen | | `list_entities` | users/agents/apps/runs auflisten | | `list_events` | Speicher-Operationen auflisten | | `get_event_status` | Asynchrone Operation abfragen | Verbinden Sie einen beliebigen MCP-Host (Claude Desktop, Hermes Agent usw.), indem Sie ihn auf den obigen stdio-Befehl verweisen. ### HTTP-API (Web-Dashboard) ```bash python -m mnemosyne.webui.web_server --port 9090 ``` Öffnen Sie anschließend `http://127.0.0.1:9090` — ein lokales dunkles Dashboard (local dark dashboard) mit Gedächtnis-Browsing, Graph-Ansicht, Statistiken und einem REST-Endpunkt (Representational State Transfer). Das Standardkonto `admin / mnemosyne` wird beim ersten Start erstellt; ändern Sie das Passwort nach dem Login. --- ## Plugins ```python # Crypto plugin (requires cryptography; degrades gracefully otherwise) brain = MemoryBrain("./memories", plugins=["crypto"]) # Numpy vector backend (requires numpy; optional sentence-transformers model) brain = MemoryBrain("./memories", plugins=["numpy_vector"]) # Reranker plugin brain = MemoryBrain("./memories", plugins=["reranker"]) ``` --- ## Projektstruktur ``` Mnemosyne8.1.0/ ├── mnemosyne.py # Thin facade re-exporting the mnemosyne package ├── mnemosyne/ # Core engine package (brain / storage / retrieval / cognitive / notary) ├── storage/ # Storage backends (sqlite_backend / ledger / session_store / plugin_sdk) ├── context/ # Context snapshots (snapshot_builder) ├── context_engine/ # Context compression engine (engine-agnostic core + Hermes adapter) ├── lexical/ # Built-in synonym dictionary ├── profiles/ # User profile management ├── providers/ # External provider adapter + multi-source router ├── security/ # Contradiction detection + security report ├── session/ # Conversation importer ├── visualization/ # Knowledge tree generator ├── plugins/ # Extra plugins (HRR / Async) ├── mnemosyne_plugins/ # Official plugins (numpy_vector / crypto / reranker / qdrant_backend) ├── examples/ # Runnable examples (Ollama / LangChain / MCP / CLI / embedded) └── docs/ # Documentation (architecture, modules, plugins, API, deployment) ``` ## Tests ```bash python -m unittest discover -s tests -v python -m unittest tests.test_plugins -v ``` ## Dokumentation - `README_CN.md` — Chinesische Dokumentation (Chinese README) - `docs/DEPLOY_DEEPSEEK_HARNESS.md` — Bereitstellung mit DeepSeek Harness (über MCP) - `docs/` — Vollständige Dokumentation: Architektur, Datenmodell, Moduldokumentation, Plugin-Dokumentation, API-/CLI-/MCP-Referenzen, Bereitstellung, Integration - `COMPLIANCE.md` — HIPAA / 等保 / GDPR / PIPL Compliance-Zuordnung - `comparison.md` — Funktionsvergleich mit Alternativen - `CHANGELOG.md` — Versionsverlauf - Berichte: `quality_report.md` (Abrufqualität), `benchmark_report.md` (Leistung), `security_report.md` (Sicherheit) ## Lizenz MIT-Lizenz — siehe [LICENSE](LICENSE). Erstellt von Mnemosyne OS contributors. > Diese Übersetzung wurde maschinell erzeugt. Die englische Version (README.md) ist die maßgebliche.