# Sensibler Speicher

Verstehen Sie die tatsächlichen Bereinigungs- und Abrufsichtbarkeitssteuerungen für Anmeldedaten, personenbezogene Daten und hochsensible Erinnerungen.

- Canonical: https://docs.xmemo.dev/de/docs/concepts/sensitive-memory
- Locale: de-DE
- Content-Locale: de-DE
- Canonical-Content-Digest: f4135c91811fc6ab82f0fcbe64bdbe557f8f57024585230ef640f73d09da08fa
- Edition-Digest: 3269b8d7470c5ac545766b84cbf3e13ad087f03799ab21c9e5beaaa358a2d6f8
- Source-Revision: sha256:2d80a1534f639a21ed4385df129fd914a3ed4da7b24c261eee0ad18032a0f691

## Sensibel ist eine Verarbeitungsrichtlinie, kein Speichertyp

Das memory_type-Enum des Speichervertrags lautet episodic, semantic, procedural, working oder identity; es gibt keinen Wert sensitive. Sensibilität wird über gemeinsame Schwärzungen und Sicherheitsumschlag-Steuerungen gehandhabt, anstelle einen sechsten Speichertyp einzuführen.

- Werte im Format von Anmeldedaten werden vom kanonischen Server-Bereiniger stets geschwärzt.
- Personenbezogene Daten (PII) des Eigentümers bleiben standardmäßig erhalten und werden geschwärzt, wenn der Eigentümer auto_redact_pii aktiviert.
- Hochriskante Inhalte wie private Schlüssel oder AWS-Geheimnisse führen dazu, dass die Agentenerfassung das Ereignis überspringt.

## Inhalt, Metadaten und Herkunft gemeinsam bereinigen

sanitize_server_write wendet die gemeinsame Regelregistrierung auf jede Zeichenkette an, die von einem Speicherdatensatz aus erreichbar ist, einschließlich Inhalt, Metadaten und Herkunft. Bezeichnungen von Anmeldedaten, API-Schlüssel, JWTs, URL-Geheimnisse und sonstige registrierte Anmeldedatenformate werden vor der Persistenz entfernt; Schwärzungen geben den Rohwert niemals in Ergebnis-Metadaten zurück.

```python
from memory_manager.security.redact import sanitize_server_write

result = sanitize_server_write(
    "Deploy with token=not-a-real-secret",
    redact_contact_pii=False,
)
print(result.text)
print(result.applied, result.redactions)
```

## Vault-Modus kann Speicher lokal halten

Der Sicherheitsumschlag zeichnet security_mode, encryption_state, retrieval_visibility, server_embeddings_enabled und server_content_search_enabled auf. Der Vault-Modus speichert Chiffretext und verwendet standardmäßig retrieval_visibility=client_local_only bei deaktivierten Server-Embeddings; der Serverabruf ist ausgeschlossen, es sei denn, der Mandant entscheidet sich explizit für eine semantische Indizierung.

```json
{
  "security_mode": "vault",
  "encryption_state": "ciphertext",
  "retrieval_visibility": "client_local_only",
  "server_embeddings_enabled": false,
  "server_content_search_enabled": false
}
```

## Der Abruf beachtet den Sicherheitsumschlag

Das Abruf-Gate des Servers verwirft Zeilen, die als client_local_only oder not_retrievable gekennzeichnet sind. Vault-Zeilen sind ebenfalls ausgeschlossen, sofern ihre Metadaten nicht explizit vault_semantic_index_opt_in aktivieren; der Sicherheitsumschlag beschreibt dieses Opt-in als Kompromiss, da es einen serverseitigen semantischen Index erlaubt. Nutzen Sie den lokalen Abruf für Inhalte, die nicht in den Serverabruf gelangen dürfen.

```text
client_local_only  -> excluded from server recall
not_retrievable    -> excluded from server recall
vault + opt-in     -> server vector recall allowed
vault without opt-in -> local recall required
```

## ChatGPT-Benutzer

Geben Sie ChatGPT dauerhaften Zugriff auf Ihre XMemo-Präferenzen, Projektfakten, Entscheidungen und TODOs, ohne Bearer-Token in einen Chat einzufügen.

Verbinden Sie den gehosteten XMemo-MCP-Server über den OAuth-Ablauf der ChatGPT-/OpenAI-App und genehmigen Sie anschließend die Berechtigungen memory:read und memory:write für Ihr XMemo-Konto.

Speichern Sie eine synthetische Präferenz oder Projektnotiz, starten Sie einen neuen Chat und fordern Sie ChatGPT auf, diese vor der Fortsetzung der Arbeit über XMemo abzurufen.

Wenn OAuth fehlschlägt oder Tools nicht angezeigt werden, melden Sie sich in der Host-App vom MCP-Server ab, verbinden Sie die XMemo-Server-URL erneut und versuchen Sie es noch einmal, bevor Sie direkte Token erstellen.

## Copilot- / Codex-Entwickler

Übertragen Sie Repository-Entscheidungen, Programmierkonventionen, Bugfix-Notizen und den Aufgabenverlauf zwischen IDE- und CLI-Agenten.

Verwenden Sie OAuth für VS Code / GitHub Copilot und Gemini CLI, sofern verfügbar. Behalten Sie für Copilot CLI, Codex, Cursor oder andere direkte MCP-Clients XMEMO_KEY in der lokalen Umgebung oder im Secret-Store und setzen Sie eine stabile XMEMO_AGENT_INSTANCE_ID.

Erfassen Sie eine Codebasis-Entscheidung oder einen Bugfix und fordern Sie den nächsten IDE- oder CLI-Agenten auf, den relevanten XMemo-Kontext vor dem Bearbeiten abzurufen.

Wenn Abrufe leer bleiben, überprüfen Sie den ausgewählten MCP-Konfigurationspfad, die Umgebungsvariable XMEMO_KEY für direkte Clients und veraltete OAuth-Anmeldedaten in der Host-App.

## Verantwortlicher für Team- / Enterprise-Pilotprojekte

Evaluieren Sie geteilten Speicher mit Kontokontrollen, Quellenzuordnung, Export-/Lösch-Workflows und prüfersicheren Einrichtungsnachweisen.

Erstellen oder betreten Sie den geschützten XMemo-Arbeitsbereich, laden Sie freigegebene Benutzer ein und verbinden Sie jeden Client über OAuth oder bereichsbezogene direkte Anmeldedaten gemäß den Bereitschafts-Badges.

Lassen Sie ein Mitglied des Pilotprojekts eine synthetische Team-Erinnerung speichern, bestätigen Sie die Quellenzuordnung in XMemo und prüfen Sie anschließend Lösch-/Export- sowie Support-Pfade.

Wenn ein Mitglied keine Verbindung herstellen kann, prüfen Sie Rollenberechtigungen, OAuth-Genehmigung, Client-Bereitschaftsstatus und Support-Hinweise, bevor Sie ein neues Token ausstellen.

## Betreiber autonomer Agenten

Ermöglichen Sie es Headless- oder zeitgesteuerten Agenten, Fortschritte aufzuzeichnen, frühere Entscheidungen abzurufen und eine stabile, nicht-geheime Instanzidentität beizubehalten.

Rufen Sie /api/v1/mcp/config/autonomous-agent ab. Bevorzugen Sie auth_modes.oauth, wenn der Runner OAuth + benutzerdefinierte Header unterstützt; verwenden Sie auth_modes.xmemo_key mit XMEMO_KEY aus einem Secret-Store nur für vollständig autonome Headless-Runner.

Führen Sie eine synthetische Aufgabe aus, die den Fortschritt in XMemo schreibt, starten Sie den Runner neu und bestätigen Sie, dass er diesen Fortschritt unter Verwendung derselben XMEMO_AGENT_INSTANCE_ID abruft.

Wenn sich die Zuordnung ändert oder Abrufe über Instanzen hinweg aufgeteilt werden, speichern Sie XMEMO_AGENT_INSTANCE_ID außerhalb von Git und stellen Sie sicher, dass der Runner diese nicht bei jedem Start neu generiert.
