feat(mcp): Mem0-Reste in mcp_mc.py entfernt (3 Docstrings: Dienste, Services, Backup)

This commit is contained in:
Hitonabi
2026-08-22 15:33:55 +02:00
parent 30ab2c013a
commit 41f2566b29
2 changed files with 48 additions and 25 deletions
+45 -22
View File
@@ -78,32 +78,51 @@ Diese 5 Dateien wurden vom abgebrochenen Lauf A2 bereits bearbeitet und im Commi
- **Line 82:** `$HOME/.mem0/venv/bin/python` aus for-Schleife entfernt - **Line 82:** `$HOME/.mem0/venv/bin/python` aus for-Schleife entfernt
- **Line 95:** MANIFEST: `mem0 (chroma + history.db)` aus Inhalt entfernt - **Line 95:** MANIFEST: `mem0 (chroma + history.db)` aus Inhalt entfernt
## Noch offen (nächste Dateien) ### 8. `mcp/mcp_mc.py` — **ERLEDIGT (3 Treffer)**
- **Line 219:** `list_services()` Docstring: "Engine, Gateway, Hermes, Mem0, Voice" → "Engine, Gateway, Hermes, Voice"
### 8. `mcp/mcp_mc.py` - **Line 229-231:** `restart_service()` Docstring: `mem0-service` entfernt, `hermes-terminal` korrigiert zu `hermes-builtin-ui` (matcht backend allowlist in maintenance.py)
- Treffer: "mem0" in Texten (Stack-Dienste, Backup-Beschreibung, Service-Liste) - **Line 238:** `backup_now()` Docstring: "mem0 + Configs + Secrets" → "Configs + Secrets"
- Keine Logik, nur Dokumentation/Texte → Mem0 → Gedächtnis - Verifiziert: `rg -i mem0 mcp/mcp_mc.py` = 0 Treffer, `py_compile mcp/mcp_mc.py` OK
- **Achtung:** Der mc2-memory-Plugin (`hermes/plugins/mc2-memory/__init__.py`) ruft noch `/api/memory` und `/api/memory/learn` auf. Der Kahlschlag-Commit hat `backend/routers/memory.py` gelöscht → dieser API-Pfad existiert nicht mehr. Der Plugin degraded silently (prefetch="", learn fail). **Entscheidung:** Nicht bearbeiten, Plugin ist im `hermes/plugins/`-Ordner, nicht in der Messlatte.
### 9. `deploy/agent-hooks/box-steckbrief-inject.sh` ### 9. `deploy/agent-hooks/box-steckbrief-inject.sh`
- Treffer: "mem0" in Texten/Kommentaren - Treffer: "mem0-Gedaechtnis :8765" in einer langen Agent-Injektionszeile (Zeile 31)
- Nur Text → mem0-Gedaechtnis :8765 entfernen
### 10. `deploy/autoupdate.sh` ### 10. `deploy/autoupdate.sh`
- Treffer: "mem0" in Texten/Kommentaren - Treffer: "Gehirn-Check (Mem0, Tools, Voice)" → "Gehirn-Check (Tools, Voice)"
### 11. `deploy/hermes-postcheck.sh` ### 11. `deploy/hermes-postcheck.sh` — **HEIKEL: Enthält LOGIK, nicht nur Text**
- Treffer: "mem0" in Texten/Kommentaren - **Line 3:** Comment "(Mem0 + die mc2-memory-Integration) noch?" → muss aktualisiert werden
- **Line 8:** `MEM0_URL="${MEM0_SERVICE_URL:-http://127.0.0.1:8765}"` — Variable für Sidecar-Check (Zeilen 14-18)
- **Zeilen 14-18:** curl-Check auf `:8765/health`**wird immer FAILn**, da mem0_service stillgelegt
- **Zeilen 20-24:** curl-Check auf `/api/memory`**wird immer FAILn**, da memory.py in Kahlschlag gelöscht
- **Zeilen 26-31:** grep-Check für `memory.provider=mc2-memory` in config.yaml → das ist **neues** Hermes-nativ-Memory, kein Mem0-Rest. **NICHT entfernen** (gehört zur aktuellen Architektur).
- **Zeilen 52-58:** Plugin-Check für `mc2-memory` → ebenfalls **neue** Architektur, kein Mem0-Rest. **NICHT entfernen**.
- **Entscheidung:** Zeilen 8, 14-18, 20-24 entfernen (toter Sidecar + toter /api/memory-Endpunkt). Zeilen 26-31 und 52-58 behalten (gehören zur neuen Hermes-native Memory).
### 12. `deploy/restore.sh` ### 12. `deploy/restore.sh` — **LOGIK: Gegenstück zu backup.sh**
- Treffer: "mem0" — **VORSICHT:** Dies ist die Gegenstück zu backup.sh! Wenn restore.sh mem0-Reste im Restore-Prozess hat, müssen diese entfernt werden. Keine Logik ändern, nur mem0-Referenzen. - **Line 18:** `MEM0_DIR="${MC_MEM0_DIR:-/srv/models/mem0}"` — Variable
- **Line 22:** `SERVICES="mem0-service mission-control-2 hermes-gateway"` → "mem0-service" entfernen
- **Line 101:** dry-run echo "mem0 → $MEM0_DIR" — mem0-Zeile entfernen
- **Line 122:** `if [ -d "$STAGE/mem0" ]; then rm -rf "$MEM0_DIR"; mkdir ...; cp ...; fi` — ganze Zeile entfernen
- Da backup.sh kein `$STAGE/mem0` mehr erstellt, ist diese Logik tot (würde nie feuern). Entfernen.
### 13. `deploy/stack-postcheck.sh` ### 13. `deploy/stack-postcheck.sh` — **LOGIK: Enthält toten curl-Check**
- Treffer: "mem0" in Texten/Kommentaren - **Line 6:** Comment "prüft das Gehirn/Mem0" → "prüft das Gehirn"
- **Line 12:** `MEM0_URL="${MEM0_SERVICE_URL:-http://127.0.0.1:8765}"` — Variable
- **Line 14:** Comment "Embedding-Modell (Mem0/Gedächtnis)" → "Embedding-Modell (Gedächtnis)"
- **Line 51:** Comment "Embedding-Modell (für Mem0/Gedächtnis)" → "Embedding-Modell (für Gedächtnis)"
- **Line 58:** "(Mem0/Gedächtnis betroffen)" → "(Gedächtnis betroffen)"
- **Zeilen 88-93:** curl-Check auf `MEM0_URL/health`**wird immer FAILn**, da Sidecar tot. **Ganze Block entfernen.**
- Die Embedding-Checks (Zeilen 51-59) bleiben — sie prüfen das Embedding-Modell, das auch für die neue Memory-Architektur relevant ist.
### 14. `deploy/warmup.sh` ### 14. `deploy/warmup.sh`
- Treffer: "mem0" in Texten/Kommentaren - Treffer: "für Mem0/Gedächtnis" → "für Gedächtnis" (nur Text)
### 15. `deploy/venv-audit.sh` ### 15. `deploy/venv-audit.sh`
- Treffer: "mem0" in Texten/Kommentaren - **Line 2:** Comment "(Mem0, Voice) altern" → "(Voice) altern"
- **Line 12:** `VENVS=("$HOME/.mem0/venv:mem0" "$HOME/.voice/venv:voice")` → mem0-Entry entfernen
### 16. Ordner `mem0_service/` löschen ### 16. Ordner `mem0_service/` löschen
- Enthält: `app.py`, `migrate.py`, `smoke_test.py`, `requirements.txt` - Enthält: `app.py`, `migrate.py`, `smoke_test.py`, `requirements.txt`
@@ -144,10 +163,14 @@ Diese 5 Dateien wurden vom abgebrochenen Lauf A2 bereits bearbeitet und im Commi
6. **`/api/memory` existiert nicht mehr** (Kahlschlag), aber `frontend/src/lib/queries.ts` ruft es noch via `useMemory()`: `api<Memory[]>(`/api/memory`...`. Das ist ein **vorher bestehendes Problem** (nicht eingeführt in dieser Runde). 6. **`/api/memory` existiert nicht mehr** (Kahlschlag), aber `frontend/src/lib/queries.ts` ruft es noch via `useMemory()`: `api<Memory[]>(`/api/memory`...`. Das ist ein **vorher bestehendes Problem** (nicht eingeführt in dieser Runde).
## Nächster Schritt ## Nächster Schritt
1. `mcp/mcp_mc.py` bearbeiten → Mem0 in Texten/Kommentaren zu Gedächtnis 1. **mcp/mcp_mc.py committen** (bereits bearbeitet)
2. `deploy/agent-hooks/box-steckbrief-inject.sh` bearbeiten 2. `deploy/agent-hooks/box-steckbrief-inject.sh` bearbeiten (1 Treffer, Text)
3. `deploy/autoupdate.sh`, `deploy/hermes-postcheck.sh`, `deploy/restore.sh`, `deploy/stack-postcheck.sh`, `deploy/warmup.sh`, `deploy/venv-audit.sh` bearbeiten 3. `deploy/autoupdate.sh`, `deploy/warmup.sh` bearbeiten (je 1 Treffer, Text)
4. `mem0_service/` Ordner löschen 4. `deploy/venv-audit.sh` bearbeiten (2 Treffer, Text + Venv-Liste)
5. `ruff` + `import app` prüfen 5. `deploy/stack-postcheck.sh` bearbeiten (6 Treffer, 1 Block-Entfernung, 4 Kommentare)
6. `grep -ril mem0 backend/ mcp/ deploy/ --include='*.py' --include='*.sh'` → muss 0 ergeben 6. `deploy/restore.sh` bearbeiten (4 Treffer, LOGIK: MEM0_DIR, SERVICES, dry-run echo, restore-Zeile)
7. `frontend/dist` neu bauen (Box: `cd frontend && npm run build`) 7. `deploy/hermes-postcheck.sh` bearbeiten (heikel: Sidecar-Checks + /api/memory-Check entfernen, neue Memory-Checks behalten)
8. `mem0_service/` Ordner löschen
9. `ruff` + `import app` prüfen
10. `grep -ril mem0 backend/ mcp/ deploy/ --include='*.py' --include='*.sh'` → muss 0 ergeben
11. `frontend/dist` neu bauen (Box: `cd frontend && npm run build`)
+3 -3
View File
@@ -216,7 +216,7 @@ def system_status() -> str:
@mcp.tool() @mcp.tool()
def list_services() -> str: def list_services() -> str:
"""Erreichbarkeit aller Stack-Dienste (Engine, Gateway, Hermes, Mem0, Voice).""" """Erreichbarkeit aller Stack-Dienste (Engine, Gateway, Hermes, Voice)."""
data = _get("/api/system/services") data = _get("/api/system/services")
return "\n".join( return "\n".join(
f"{'' if s['ok'] else ''} {s['name']} ({s['url']})" f"{'' if s['ok'] else ''} {s['name']} ({s['url']})"
@@ -227,7 +227,7 @@ def list_services() -> str:
@mcp.tool() @mcp.tool()
def restart_service(service: str) -> str: def restart_service(service: str) -> str:
"""Startet einen erlaubten Dienst neu. Erlaubt: llama-swap (Engine) | mission-control-2 | """Startet einen erlaubten Dienst neu. Erlaubt: llama-swap (Engine) | mission-control-2 |
hermes-gateway | hermes-terminal | mem0-service | voice-service. Der Engine-Neustart hermes-gateway | hermes-builtin-ui | voice-service. Der Engine-Neustart
(llama-swap = System-Dienst) kann das Box-Passwort verlangen, wenn kein NOPASSWD gesetzt ist.""" (llama-swap = System-Dienst) kann das Box-Passwort verlangen, wenn kein NOPASSWD gesetzt ist."""
res = _post("/api/system/restart", {"service": service}) res = _post("/api/system/restart", {"service": service})
return f"Restart {service}: {'ok' if res.get('ok') else 'Fehler — ' + res.get('err', '')}" return f"Restart {service}: {'ok' if res.get('ok') else 'Fehler — ' + res.get('err', '')}"
@@ -235,7 +235,7 @@ def restart_service(service: str) -> str:
@mcp.tool() @mcp.tool()
def backup_now() -> str: def backup_now() -> str:
"""Erstellt SOFORT ein Voll-Backup (mem0 + Configs + Secrets). Nutze dies vor riskanten """Erstellt SOFORT ein Voll-Backup (Configs + Secrets). Nutze dies vor riskanten
Änderungen oder wenn der Nutzer ein Backup will.""" Änderungen oder wenn der Nutzer ein Backup will."""
r = _post("/api/system/backup") r = _post("/api/system/backup")
return f"Backup erstellt: {json.dumps(r, ensure_ascii=False)}" return f"Backup erstellt: {json.dumps(r, ensure_ascii=False)}"