- CLAUDE.md: "Entwickeln & Deployen" auf Windows->Gitea->Bosgame umgestellt (key-basiertes SSH als hitonabi, rsync nach /opt, sudo-Restart) - ROADMAP.md: Projektstand-Sektion (Schritt 1 live auf :9000, Reihenfolge, naechster Schritt = Feature 3 mit geprueften sysfs/psutil-Quellen) - Feature 3 + 5 Status praezisiert Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
4.5 KiB
Mission Control — Roadmap v2
Nordstern: Den Bosgame nie wieder via SSH/Putty bedienen müssen. 100 % Automatisierung oder Klicki-Bunti.
Projektstand (Stand 2026-06-20)
✅ Schritt 1 erledigt & live auf :9000 — SoC-Refactor + Design 2.0 als Fundament (Commit 3649394).
Backend in Helfer + routers/* zerlegt, Frontend in ES-Module (js/core + js/panels) + ausgelagertes
CSS, neues Dashboard-Layout (Sidebar-Nav, Topbar, Alert-Banner, Hero, KPI-Kacheln, Health-Signale,
Modell-Listen, Aktivitäts-Stream) angelehnt an docs/mission-control-overview.png. Bestehende Funktionen
1:1 migriert, Endpoint-URLs unverändert. Architektur + Deploy-Weg stehen in CLAUDE.md.
Reihenfolge (abgestimmt): Design/Architektur zuerst (✅), dann Quick Wins, Security-Brocken zuletzt:
1 (✅) Fundament → [2] Feature 3 Live-Auslastung ← NÄCHSTES → Feature 6 → Feature 1 → Feature 4 → Feature 7 → Feature 2.
Arbeitsweise je Schritt: neuer routers/<x>.py + js/panels/<x>.js + Nav-Eintrag, sauber degradierend.
Bauen + Smoke-Test auf Windows, dann push→pull→rsync→restart auf den Bosgame (CLAUDE.md „Entwickeln & Deployen").
Ein Commit je Schritt. Ich (KI) habe key-basierten SSH-Zugang zum Bosgame und kann selbst deployen+restarten.
→ Nächster Schritt konkret = Feature 3 (Live-Auslastung). Quellen auf dem Bosgame geprüft — amd-smi/rocm-smi
fehlen, daher sysfs + psutil:
- CPU/RAM/Disk via
psutil(zurequirements.txthinzufügen — im Prod-/opt/.venvnoch nicht drin) oder/proc-Fallback. - GPU-Speicher:
/sys/class/drm/card1/device/mem_info_{gtt,vram}_{used,total}(Bytes; GTT-Pool ≈133 GB). - Temperatur: hwmon mit
name=amdgpu(GPU,temp1_inputin m°C) bzw.k10temp(CPU). - ⚠️ hwmon-Index und
card*-Nummer nicht hardcoden — übername/Existenz auflösen (nicht reboot-stabil). - Panel füllt die „n/a"-Plätze: KPI-Karte „System-Last" + „Stack-Gesundheit"-Zeile „Auslastung (RAM/GPU/Disk)".
Features
1. Server-Management ("Update-Panel 2.0")
Aktuell gibt es nur "Container aktualisieren" + "Alles aus dem Speicher". Ziel: den kompletten Server aus der UI verwalten.
- OS-/Core-Updates (
apt update/upgrade) per Knopf, mit Live-Output - Dienste steuern (
llama-swap,mission-control: Status, Restart) - Reboot / Health-Übersicht
- Referenz: altes
ai-control-Skript als Funktionsvorlage - ⚠️ Scope-/Security-Sprung: macht MC zum Server-Admin-Panel. Rechte minimal halten (sudoers-Whitelist für genau die erlaubten Befehle, statt Vollzugriff).
2. Live-Terminal / Log via SSH
- Live-Log-Stream im Browser (Stack-Logs,
journalctl) - Zugang über SSH bzw. SSH-Key, sauberes Credential-Handling
- ⚠️ Security-kritisch: SSH-Zugang in einer Web-UI — Auth + strikte LAN-Bindung Pflicht.
3. Live-Auslastung im Dashboard ← NÄCHSTER SCHRITT (Details im Projektstand oben)
- CPU / RAM / GPU-VRAM+GTT / Temperatur live anzeigen
- Quellen: sysfs + psutil —
amd-smi/rocm-smisind auf dem Bosgame NICHT installiert! GPU-Mem:/sys/class/drm/card1/device/mem_info_*; Temp: hwmon-nameamdgpu/k10temp.
4. Cookbook + "Modell holen" verschmelzen
- Rezept-basiertes Einpflegen (Odysseus-Style): kuratierte Modell-Rezepte (Repo, Datei, ctx, Flags) per Klick installierbar
- "Modell holen" wird Teil des Cookbooks statt separates Formular
5. Design 2.0
- Grundgerüst + Design-Sprache in Schritt 1 umgesetzt (Sidebar-Nav, Topbar, Hero, getönte
KPI-Kacheln, Health-Signale, Listen, Aktivitäts-Stream, Alert-Banner) — Tokens in
css/base.css. - Feinschliff pro Feature (jeder neue Bereich nutzt die bestehenden Komponenten/Tokens).
- Referenz liegt als
docs/mission-control-overview.png(vom User nachzulegen; Design ist daran angelehnt).
6. Mehr LLM-Metriken
- Fähigkeiten pro Modell anzeigen (Text / Bild / Code)
- Tokens/Sek, Kontextgröße, Quant, Dateigröße auf Platte
- Status pro Modell: geladen / idle / Ladezeit
7. Integrations-Anleitungen
- Eingebaute Guides: wie man die LLMs in andere Tools bekommt (OpenCode für Windows, Cline, …)
- Copy-Paste-fertige Configs (Base-URL, Modell-IDs)
Tech-Leitplanken
- KISS beibehalten — kein schweres Framework, solange es ohne geht.
- Sicherheit zuerst bei allem mit Shell-/SSH-Zugriff: LAN-only, Auth, minimale Rechte.
- Backend-Logik in
app.py, UI instatic/index.html— Trennung sauber halten.