Memory-API
Vollständige Referenz der 22 Memory-Endpunkte: speichern, abrufen, suchen, semantische Suche, Sync, Audit und mehr.
Memory-API
Die Memory-API ist das Herz von Synapse. Sie bietet 22 Endpunkte zum Speichern, Abrufen, Suchen und Verwalten strukturierter Erinnerungen. Alle Endpunkte erfordern einen Mind Key zur Authentifizierung.
Kategorien
Memories sind in 8 Kategorien gegliedert:
| Kategorie | Anwendungsfall |
|---|---|
identity |
Nutzername, Rolle, Kontaktinfo, Selbstaussagen |
preference |
Vorlieben, Abneigungen, Arbeitsstil, Kommunikationspräferenzen |
fact |
Überprüfbare Fakten (Projekt-Details, Daten, URLs) |
project |
Projektstatus, Meilensteine, Architektur |
skill |
Dinge, die der Nutzer gut kann |
mistake |
Frühere Fehler — nicht wiederholen |
context |
Session-relevanter Kontext |
note |
Sonstige Notizen |
Prioritäten
low— nett zu wissennormal— Standardhigh— wichtigcritical— darf nie vergessen werden (Nutzeridentität, rechtliche Infos)
Kern-Endpunkte
GET /memory/recall
Liefert ALLE Memories als LLM-optimierten Klartext. Rufe dies zu Beginn jeder Session auf.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/memory/recallAntwort (text/plain):
Mind: Michael's Mind
Memories: 12 total (10 verified)
[001] identity (CRITICAL)
user_name
Michael Schäfer
Tags: person, identity
...POST /memory
Einen neuen Memory speichern oder einen bestehenden aktualisieren (gleiche Kategorie + Key = Update).
curl -X POST https://synapse.schaefer.zone/memory \
-H "Authorization: Bearer YOUR_MIND_KEY" \
-H "Content-Type: application/json" \
-d '{
"category": "fact",
"key": "user_name",
"content": "The user's name is Michael Schäfer",
"tags": ["person", "identity"],
"priority": "critical"
}'Antwort: { "id": "mem_001", "status": "stored" }
GET /memory
Memories mit optionalen Filtern auflisten.
# Alle Memories (JSON)
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
"https://synapse.schaefer.zone/memory?limit=50&offset=0"
# Nach Kategorie filtern
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
"https://synapse.schaefer.zone/memory?category=project"
# Nach Tag filtern
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
"https://synapse.schaefer.zone/memory?tag=docker"PUT /memory/:id
Einen bestimmten Memory per ID aktualisieren.
curl -X PUT https://synapse.schaefer.zone/memory/mem_001 \
-H "Authorization: Bearer YOUR_MIND_KEY" \
-H "Content-Type: application/json" \
-d '{"content": "Updated content", "priority": "high"}'DELETE /memory/:id
Einen einzelnen Memory löschen.
curl -X DELETE -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/memory/mem_001Such-Endpunkte
GET /memory/search
Volltextsuche via FTS5.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
"https://synapse.schaefer.zone/memory/search?q=docker+swarm"FTS5-Syntax:
- Mehrere Wörter = AND:
docker swarm - Phrase:
"docker swarm" - Präfix:
docker* - Boolesch:
docker OR kubernetes - Ausschließen:
docker -swarm
GET /memory/semantic-search
Konzeptionelle Suche via Embeddings (langsamer als FTS5, versteht aber Bedeutung).
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
"https://synapse.schaefer.zone/memory/semantic-search?q=container+orchestration"Liefert Memories, die semantisch zur Anfrage passen, selbst wenn keine Keywords übereinstimmen. Nützlich für „finde Memories über X", wenn X anders beschrieben wird.
GET /memory/by-tag
Memories nach Tag auflisten.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
"https://synapse.schaefer.zone/memory/by-tag?tag=docker"GET /memory/related/:id
Memories finden, die mit einem bestimmten Memory verwandt sind (über gemeinsame Tags).
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/memory/related/mem_001Sync & Diff
GET /memory/diff
Inkrementeller Sync — liefert Memories, die seit einem Zeitstempel geändert wurden.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
"https://synapse.schaefer.zone/memory/diff?since=1700000000"Antwort: { "added": [...], "updated": [...], "deleted": [...] }
POST /memory/sync
Einen Diff aus einer anderen Instanz anwenden (für selbstgehosteten Sync).
curl -X POST https://synapse.schaefer.zone/memory/sync \
-H "Authorization: Bearer YOUR_MIND_KEY" \
-H "Content-Type: application/json" \
-d '{"added": [...], "updated": [...], "deleted": [...]}'Bulk-Operationen
POST /memory/bulk-delete
Mehrere Memories per ID löschen.
curl -X POST https://synapse.schaefer.zone/memory/bulk-delete \
-H "Authorization: Bearer YOUR_MIND_KEY" \
-H "Content-Type: application/json" \
-d '{"ids": ["mem_001", "mem_002", "mem_003"]}'POST /memory/embed-batch
Embeddings für Memories generieren, die noch keine haben (für semantische Suche).
curl -X POST https://synapse.schaefer.zone/memory/embed-batch \
-H "Authorization: Bearer YOUR_MIND_KEY" \
-H "Content-Type: application/json" \
-d '{"limit": 100}'GET /memory/embed-batch-status
Fortschritt der Embedding-Generierung prüfen.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/memory/embed-batch-statusVerifikation
Memories haben ein verified-Flag. Vom Agent gespeicherte Memories sind
standardmäßig unbestätigt (source=agent); von Menschen gespeicherte Memories
sind verifiziert (source=user).
POST /memory/verify
Einen Memory als verifiziert markieren (erfordert JWT, nicht Mind Key).
curl -X POST https://synapse.schaefer.zone/memory/mem_001/verify \
-H "Authorization: Bearer YOUR_JWT"POST /memory/unverify
Einen Memory als unverifiziert markieren (erfordert JWT).
curl -X POST https://synapse.schaefer.zone/memory/mem_001/unverify \
-H "Authorization: Bearer YOUR_JWT"GET /memory/unverified
Memories auflisten, die auf menschliche Verifikation warten.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
"https://synapse.schaefer.zone/memory/unverified?limit=100"Statistik & Audit
GET /memory/stats
Aggregierte Statistiken für den aktuellen Mind.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/memory/statsLiefert: { "total": 12, "verified": 10, "unverified": 2, "by_category": {...}, "by_priority": {...} }
GET /memory/audit
Audit-Log aller zustandsverändernden Operationen.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
"https://synapse.schaefer.zone/memory/audit?limit=100&action=store"GET /memory/contradictions
Potenzielle Widersprüche in gespeicherten Memories erkennen.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/memory/contradictionsGET /memory/expiring
Memories auflisten, deren Ablaufdatum näher rückt.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
"https://synapse.schaefer.zone/memory/expiring?within=7d"Health & Export
GET /memory/health
Schneller Health-Check für das Memory-System.
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/memory/healthGET /memory/mind-export
Vollständiger JSON-Export aller Memories (für Backups).
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
https://synapse.schaefer.zone/memory/mind-export > backup.jsonPOST /memory/compact
Ähnliche Memories komprimieren (Auto-Summary).
curl -X POST https://synapse.schaefer.zone/memory/compact \
-H "Authorization: Bearer YOUR_MIND_KEY" \
-H "Content-Type: application/json" \
-d '{"dry_run": true}'