# Savepoint — Mission Control 2.0 (MC2) _Stand: 2026-08-20, nach der Aufräum-Runde. Alle Zahlen hier sind **auf der Box gemessen**, nicht aus Doku übernommen._ ## Was das ist (in einem Satz) MC2 ist die **Web-Admin-Konsole** einer 100 % lokalen KI-Appliance („die Box", Bosgame M5 / AMD Strix Halo, 128 GB Unified RAM, llama.cpp-Vulkan). Sie verwaltet Engine, Modelle, Gedächtnis, Agenten-Status, Updates & Wartung — und dient als Steuerpult für die autonome KI („Lucy"). ## Architektur (Kurzform — Details in AGENTS.md/docs/) - **Backend** `backend/` — FastAPI, `:9001` als systemd-**User-Dienst** (reboot-fest, sudo-frei). - **Frontend** `frontend/` — React/Vite/Tailwind/shadcn. **`frontend/dist` ist ABSICHT im git** (Box hat kein Node; Backend liefert die gebauten Assets direkt aus). - **MC2-Gateway** `:9010` (`/v1`-Datenpfad, model:auto Routing + native Bildweiche). - **Modell-Router** `:8080` (llama-swap v250, Vulkan/RADV Engine b10502). - **Hermes Agent** `:8642` (`hermes-gateway`, v0.20.4) + `hermes dashboard` auf `:9119` (nur Loopback). - **Sidecars:** `voice_service/` (:8650, faster-whisper STT + Piper TTS), `mcp/` (4 MCP-Server), `client/hermes-pc` (PC-Executor :7777). ‼️ `mem0_service/` liegt noch im Baum, ist aber **stillgelegt** — `:8765` antwortet nicht. ## Modelle live (gemessen 20.08.2026) | Rolle (Alias) | Modell | Tempo | Zustand | |---|---|---|---| | `hermes` / `fast` | Qwen3.6-35B-A3B (MoE, DFlash) | **95,7 t/s** · Prompt 221 t/s | immer warm | | `coder` | Qwen3.8-27B (dicht, Vision) | **12,6 t/s** · Prompt 144 t/s | ttl 5400, ~29 s Kaltstart | | `debugger` | Muse-Glimmer-30B (DFlash) | — | ttl 600 | | `heavy` | gpt-oss-120b | — | on-demand | | `vision` | Qwen3-VL-30B-A3B-Instruct | — | on-demand | | `embed` / `reranker` | Qwen3-Embedding-0.6B / Qwen3-Reranker-0.6B | — | immer warm | Warm-Gruppe `brains` = embed + reranker + Qwen3.6-35B-A3B. Warm-Wächter weckt nur `fast`. **Hintergrund zum Tempo:** Strix Halo liefert ~215 GB/s Speicherbandbreite. Ein *dichtes* Modell muss pro Token seine vollen Gewichte lesen → 17 GB ÷ 215 GB/s ≈ 12,6 t/s ist das **Hardware-Limit**, kein Konfigurationsfehler. MoE-Modelle lesen pro Token nur einen Bruchteil und sind darum ~8× schneller. ## Aufgeräumt am 20.08.2026 - CI-Ampel wieder **grün** (Lauf #77) — zwei ungenutzte `MEM0_SERVICE_URL`-Importe entfernt. - Kaputter systemd-Timer `mc2-morgen-digest` abgeschaltet (der Hermes-Cron macht die Arbeit). - `mcp-stderr.log` (27 MB, 238k Ping-Zeilen) geleert. - Config-Drift aufgelöst: Repo == `/etc/llama-swap/config.yaml`. Warm-Set-Idee geparkt auf Branch `parked/warm-set-5d93822`. - Entfernt: Governor-Reste, OpenCode-/aider-Reste (853 MB), 61 alte Backup-Dateien, verwaiste Modelle Devstral-Small-2 + GLM-4.6V-Flash + mem0 (21,5 GB) → `/srv/models` 209 → 189 GB. - **Fähigkeiten repariert:** `orchestrator`- und `wartung`-Skill sowie `fremdblick.sh` zeigten auf gelöschte Modelle (`Qwen3-Coder-Next`, `GLM-4.6V-Flash`, `GLM-4.7-Flash`) → der Kritiker-Gate war stumm kaputt. Jetzt auf **Rollen-Aliase** umgestellt, damit Modellwechsel sie nicht mehr brechen. - Alles Gelöschte liegt gesichert in `~/archiv-aufraeumen-20260820/` (11 MB). ## Offen - `mem0_service/` + `_mem0_reachable()` in `backend/routers/system.py` ausbauen (toter Port). - `~/.hermes/scripts/fremdblick.sh` ist **unversioniert** — gehört ins Repo. - MCP-Log dauerhaft deckeln (Hermes' `max_size_mb` greift für gekapertes stderr nicht). - Verschwundene Wächter: Ampel-Wächter, Prüfstand, Stack-Rundumschlag. - Coder-Tempo: Entwurfsmodelle für spekulatives Dekodieren liegen ungenutzt unter `/srv/models/Qwen3.8-27B-DFlash2-GGUF/`.