mcp_memory.py als MCP-Server in Hermes Agent registriert (mission-control-memory, 5/5 Tools). Bidirektional verifiziert: Hermes liest bestehende Memories und schreibt neue in dieselbe SQLite via /api/memory. v7/v8.3-Gedaechtnis ohne Migration im Agenten. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
9.1 KiB
Mission Control — Roadmap
Nordstern: Den Bosgame nie wieder via SSH/Putty bedienen. 100 % Automatisierung oder Klicki-Bunti. Größeres Ziel: Mission Control als persönliches Agentic OS — lokaler, privater KI-Assistent der das gesamte Setup kennt und steuert.
v9 — Hermes-Agent-Adoption (🔜 IN ARBEIT, Entscheidung 2026-06-23)
Strategiewechsel: Der hand-gebaute Agent (hermes_agent.py) wird durch das Nous Research Hermes Agent-Framework (MIT, github.com/nousresearch/hermes-agent) ersetzt. Mission Control wird zur Control-Plane darum herum.
Warum: Der Eigenbau ist schwach wegen Scaffolding (blinde DuckDuckGo-Suche, Memory-Voll-Dump in den Prompt, Fake-Streaming) — nicht wegen des Modells (Qwen3 ist SOTA bei Tool-Calling). Hermes Agent liefert die gesamte alte v9-Wunschliste fertig & gepflegt: Cron-Scheduler, Cross-Session-Memory (FTS5), Skills (procedural memory), 40+ Tools.
Verifizierte Kompatibilität (Primärquelle):
- 100 % lokal: spricht jeden OpenAI-kompatiblen Endpoint → llama-swap/llama.cpp (Agent-Modell braucht
--jinja). - MCP-Client (≥v0.2.0) und MCP-Server (≥v0.6.0) → eigenes
mcp_memory.pyplugt als MCP-Server ein, v7/v8.3-Memory + MemoryPanel bleiben erhalten. - OpenAI-API-Server auf :8642 (
API_SERVER_ENABLED=true,API_SERVER_KEY) → HermesPanel-Chat + Voice (Whisper/Piper) zeigen dorthin. - Config:
~/.hermes/config.yaml. Braucht Python 3.11, Node.js, ripgrep, ffmpeg.
Phasen:
- Phase 0 — Proof auf echter HW (✅ 2026-06-23): Hermes Agent v0.17.0 installiert (
~/.hermes/, Code in~/.hermes/hermes-agent).coder(Qwen3-Coder-30B-A3B) in llama-swap um--jinjaergänzt (Backup:/etc/llama-swap/config.yaml.bak-pre-jinja).hermes config: provider=custom, base_url=http://127.0.0.1:8080/v1, ctx 65536. Proof viahermes -z … --yolo: echter Tool-Call (free -h→ „21 GiB frei", exakt deckungsgleich mit Live-Wert). Befunde: ripgrep fehlt (grep-Fallback, späterapt install ripgrep); Hermes hat eigenes lokales STT (faster-whisper); terminal.backend=local; Version nicht sauber pinbar → v0.17.0 in~/.hermes/PINNED_VERSION, keinhermes update. - Phase 1 — Memory-Bridge (✅ 2026-06-23):
mcp_memory.pyviahermes mcp add mission-control-memory --command /opt/mission-control/.venv/bin/python --env MC_URL=http://127.0.0.1:9000 --args …/mcp_memory.pyregistriert (5/5 Tools, Test ✓). Erkenntnis:mcp_memory.pyist stdio-MCP→HTTP-Wrapper auf MC/api/memory— MC :9000 muss laufen. Proof: Hermes liest beide Bestands-Memories und schrieb neuen Eintrag (verifiziert in SQLite, 2→3). v7/v8.3-Gedächtnis ohne Migration im Agenten. Hinweis: Hermes' eigenes Session-Memory läuft zusätzlich → zwei Schichten im Blick behalten. - Phase 2 — Control-Plane: systemd-Dienst
hermes-agent.service+ MC-Panels (Agent-Status, Chat→:8642, Voice-Wrap). - Phase 3 — Aufräumen:
hermes_agent.py+ tote Tools löschen,routers/hermes.pyzu Proxy verschlanken, Self-Update auf beide Dienste erweitern. - Phase 4 — Auszahlung: Cron-Scheduler + Skills im Dashboard sichtbar machen (das geschenkte v9).
Entscheidungen (gesetzt): Memory via MCP einbinden (nicht migrieren) · HermesPanel behalten (nicht hermes-webui, das ist an Interna gekoppelt) · erst Qwen3-coder behalten, dann Hermes-4.3-36B A/B-testen · WebUI = Lockstep-Falle, stattdessen stabiler OpenAI-API-Server.
Risiken: sehr junges Projekt (hohes Release-Tempo) → Version pinnen · zwei Memory-Schichten (eigene via MCP + Hermes-Session-Recall) im Blick behalten.
v8.3 — Memory Import (✅ UMGESETZT & live, Stand 2026-06-23)
- MemoryPanel: Import-Button öffnet Formular — Text einfügen, jede Zeile wird ein eigener Eintrag (Batch-POST).
- Quelle wählbar:
claude·gemini·chatgpt·import·manual— Kategorie frei wählbar.
v8.2 — UX & Mobile (✅ UMGESETZT & live, Stand 2026-06-23)
- GuidesPanel: "Begriffe kurz erklärt" jetzt ganz oben; Tab-Navigation mit Active-Highlighting + Scroll-to-Group.
- ConnectPanel: Download-Links für Zed (
zed.dev) und Cline (VS Code + JetBrains Marketplace) ergänzt; OpenCode.jsonc-Pfad und"providers"-Key korrigiert; LAN-IP Override für NPM-Proxy-Setups. - Mobile (≤520px): Sidebar → Bottom-Navigation; kompaktere Buttons/Padding; Touch-freundliche Mindesthöhen.
v8.1 — Bug-Fix Release (✅ UMGESETZT & live, Stand 2026-06-23)
Alle kritischen Bugs aus dem ersten Bosgame-Praxistest behoben:
- Hermes system_status: Key-Mismatch behoben — zeigt jetzt echte CPU/RAM/GPU-Werte statt
? - Model-Routing: Keyword-Liste erweitert (recherchiere/suche/vergleiche/…); kein Downgrade wenn komplexes Modell bereits geladen
- HermesPanel: Chat-History überlebt Browser-Reload (sessionStorage); ⏹ Stopp-Button während Generierung; Verlauf-löschen
- Engine-Update: fragt jetzt nach sudo-Passwort (analog OS-Update)
- asyncio:
get_event_loop()→get_running_loop()in Whisper + TTS - Guide-Titel:
&→&(HTML-Entity in Textknoten war ein Bug) import osinrouters/maintenance.pyergänzt (war NameError inupdates())
v8 — Hermes Agent / Agentic OS Kern (✅ UMGESETZT & live, Stand 2026-06-23)
Hermes: dauerhafter lokaler KI-Assistent auf dem Bosgame. Text + Voice, Tool Calling, Gedächtnis.
hermes_agent.py: ReAct-Agent mit Tool-Set (read_file, list_dir, run_command, system_status, memory r/w, web_search). Modell-Routing: scout für einfache Tasks, coder für komplexe.routers/hermes.py: WS/chat(streaming), POST/transcribe(Whisper STT, CPU), POST/tts(Piper TTS, weibliche Stimme Kerstin), GET/status, GET/pubkey.- HermesPanel.svelte: Chat-UI mit Token-Streaming, Tool-Anzeige, Mikrofon-Button (MediaRecorder), TTS-Wiedergabe, Setup-Wizard.
Offene Schritte (nicht Code, sondern Einrichtung):
- Piper Binary + Kerstin-Stimme auf dem Bosgame installieren (Befehle im Setup-Wizard)
- Windows OpenSSH Server aktivieren (5 PowerShell-Befehle im Setup-Wizard)
- SSH-Key auf Bosgame generieren:
ssh-keygen -t ed25519 -C "hermes-agent@bosgame" -f ~/.ssh/id_ed25519_hermes_agent -N "" HERMES_WINDOWS_HOST+HERMES_WINDOWS_USERinmission-control.servicesetzen
v7 — Memory Layer / Gedächtnis (✅ UMGESETZT & live, Stand 2026-06-23)
Persistentes, tool-übergreifendes Gedächtnis für alle KI-Tools via MCP.
routers/memory.py: SQLite CRUD + Export, WAL-Mode, 5 Kategorien mit Enum-Validierung.mcp_memory.py: stdio-MCP-Server — Tools: get/add/search/update/delete_memory. Einmalig in Cline/OpenCode/Claude Code einbinden.- MemoryPanel.svelte: Gedächtnis-Tab mit Kategorie-Filter, Inline-Edit, Add-Formular.
- ConnectPanel.svelte: Gedächtnis-MCP Setup-Guide mit Config-Snippets.
- 5 Kategorien:
user(wer du bist) ·instruction(Verhaltensregeln für alle Tools) ·stable(Projektfakten) ·versioned(Tech-Versionen) ·ephemeral(7 Tage, dann weg).
v6 — Workflow & Politur (✅ UMGESETZT & live, Stand 2026-06-21)
- Dashboard zeigt echtes Modell hinter dem Alias; Toolbar-Update-Badges (OS + Modell-Upgrades).
- News als Magazin-Layout; Guide neu mit Tutorials/Workflows + Konzept-Karten.
- Cookbook: Modelle diversifiziert (Qwen3/Gemma/Mistral/DeepSeek), „Beste Wahl für dein System".
v5 — „Anfänger-Lotse" (✅ UMGESETZT & live)
v4 — „Der Lotse" (✅ UMGESETZT & live)
v3 — Redesign + Beginner-UX + Security (✅ UMGESETZT & live)
Details in Git-History.
Nächste Features (Vorschläge)
v8.4 — Hermes Windows-SSH (❌ überholt durch v9-Adoption)
Hermes Agent bringt SSH-Terminal-Backend von Haus aus mit — Eigenbau-SSH-Tools unnötig.
read_file_windows / write_file_windows / run_command_windows via paramiko
v9 (alt) — Agentic OS Orchestrierung Eigenbau (❌ ersetzt durch Hermes-Agent-Adoption)
Cron, Task-Queue, Push-Notifications, Multi-Step-Workflows — alles im Hermes-Agent-Framework bereits enthalten, siehe v9-Adoption oben.
v8.5 — .well-known/opencode Remote Config (bleibt relevant)
GET /.well-known/opencode— vollständige, dynamisch generierte OpenCode-Config (providers + models + MCP)- OpenCode Desktop lädt beim Start automatisch alle Configs von Mission Control
- Einmalig:
OPENCODE_REMOTE_CONFIG=http://192.168.178.151:9000/.well-known/opencodesetzen
v9.1 — Guides & Connect weiter verbessern
- Zed als primäre Editor-Empfehlung (Inline-Completion + Agent, lokal)
- Antigravity entfernen oder als "Cloud-first, lokal wackelig" markieren
- Continue als "unsichere Zukunft (Cursor-Akquisition)" markieren
.well-known/opencode-Snippet in Connect-Tab ergänzen (nach v8.5)
Langfristig
- Hermes-Persönlichkeit konfigurierbar (Name, Tonalität) über Gedächtnis
instruction-Einträge - Voice-to-Voice latency optimieren (Whisper ROCm wenn stable)
- Mehrsprachige TTS-Stimmen (EN + DE umschaltbar)
- Hermes kann Mission Control selbst weiterentwickeln (Agentic self-improvement)