hermes-erkenntnisse/nachtplan-2026-07-20.md

29 KiB
Raw Permalink Blame History

🌙 NACHTPLAN v7 — Stand 2026-07-20, 13:00 CEST

Kontext: VM302 (A40 KI-Workstation, Kansas City) + gpu1 (Modell-Server, ZFS→M:/R:) + Portal cp.go-ki.eu (VM201). Regel: nur GETESTETE Erledigungen mit Beweis. Nichts „fertig" ohne Verifikation.


🎯 GESAMT-ZIEL

Barby KI Studio = komplette Kreativ-Suite, so nah an Veo wie möglich, ALLES ĂŒber cp.go-ki.eu steuerbar. Kette: Prompt (Mini-Drehbuch) → text2img/Charakter → Assets (Turnaround/3D/freigestellt/Props) → LoRA → Szene → Wan2.2-Video → deutsche Stimme → Lip-Sync → alles im Portal, Veo3-einfach.


✅ ERLEDIGT & VERIFIZIERT

Barby KI Studio — Kreativ-Kette

  • Charakter-Konsistenz GELÖST — IPAdapter PLUS FACE weight 0.6 + lustify_endgame + barby_final.png → photorealistischer Ganzkörper, konsistent (inline verifiziert). Kein insightface nötig.
  • text2img / Bilderzeugung — Lustify / ponyRealism / realisticVision / FLUX. Endpoints /api/text2img, /api/barby.
  • Undress-Pipeline — denoise 0.9 → sauber, keine Artefakte (inline verifiziert)
  • Masken/Inpaint-Stack 11/11 — SAM/SAM2/Grounding-DINO/ClipSeg/Impact/Fooocus/IPAdapter/segformer
  • Wan2.2 I2V Video — scharf, charakterkonsistent, echte Bewegung, Ganzkörper. Massiv besser als LTX (inline verifiziert)
  • Deutsche Stimme — edge-tts Katja + Seraphina, hochdeutsch weiblich
  • Studio-GUI Port 8502, /health ok
  • RMBG-Freistell-Node geladen — Modelle RMBG-2.0 · INSPYRENET · BEN · BEN2, AusgĂ€nge IMAGE/MASK/MASK_IMAGE
  • Modelle auf gpu1-ZFS-Dataset → M:/R: via Samba (117 GB+), ComfyUI liest sie

Infra & Netzwerk

  • 🔒 KRITISCHE SICHERHEITSLÜCKE GESCHLOSSEN — VM302 hatte keine Firewall (Windows-Profil „Private" disabled, öffentliche NIC darin). ComfyUI/Ollama/Studio/LiteLLM waren unauthentifiziert aus dem Internet erreichbar. Fix: Proxmox-Firewall, nur VM-Ebene gefiltert, Hosts offen.
  • ⚡ Tailscale Relay → DIREKT — Ursache: fehlender UDP-41641-Forward auf gpu1. Fix: DNAT + portwahrender SNAT. 162 ms/40 ms-Jitter → 127 ms/0,8 ms.
  • ⚡ VM302 RSC-Tuning — Recv Segment Coalescing war an (Latenz-Killer). Abgeschaltet → −7 ms netto, Abstand zu blankem Blech 9,1 → 2,0 ms.
  • đŸ›Ąïž fail2ban auf gpu1 + pm1, Whitelist aller bekannten Hosts, 3 echte Angreifer sofort gebannt
  • Nextcloud data.ki1.it 64✓ 6â„č 0⚠ 0✗ · Mail data@ki1.it · 24 GB RAM/8 vCPU
  • n8n 2.30.7 verkabelt, alle VM302-Endpoints aus Container erreichbar (Owner-Setup offen → BĂ€r)
  • KASM auf 159.195.19.76, nur rdp.ki1.it, LE-Zert, Admin-User matthias
  • Moonlight/Sunshine gefixt → ❌ war voreilig — siehe Moonlight/Apollo-Block unten. Kopplung gelöst, Bild unbrauchbar, auf BĂ€r-Wunsch abgebrochen
  • Portal-Architektur entschlĂŒsselt — cp.go-ki.eu → npm-vm → VM201:9090, FastAPI-SPA /opt/gpu1-status/app.py. Admin-Tab-System gefunden: Link-Tabs ohne Code-Edit möglich.
  • Matrix-Ergebnisversand — Raum + Poster getestet (Text + Bild gepostet)
  • VIDEO-Shadow-API archiviert → Forgejo barby/shadow-bulletproof
  • Skill-Verteilung gebaut (gab es fĂŒr Claude Code vorher nicht) + Skills tailscale-admin, berlin-time
  • Desktop-Steuerung pyautogui :3336 verifiziert (Screenshot inline)

🔒 NETZWERK-THEMA GESCHLOSSEN (2026-07-20) — Endstand

BĂ€r-Entscheidung: Thema beenden, zurĂŒck zum Studio. Alles gemessen, nichts weiter zu holen.

Finale Latenz-Wahrheit: direkt 121 ms (aus RZ) · 130 ms (nas2/Starlink) · 150 ms (BÀrs Client)

Variante Ergebnis
Direkt ✅ Bestwert
Cloudflare-Tunnel +35
80 ms (mein 90-ms-„Gewinn" war ein Messfehler — Spielzeug-Testserver)
Netcup-DE-Relay (gw) +15 ms
Netcup-Virginia +9 ms
NordVPN Meshnet ≈ Tailscale, ±0 (funktional dasselbe)
Multi-Routing-Broker ❌ nicht bauen — Tailscale macht es bereits
RSC-Tuning auf VM302 ✅ −7 ms — der EINZIGE echte Gewinn des Tages

FĂŒr 5–10 €/Monat gibt es nichts, das hilft. Einziger echter Hebel wĂ€re eine GPU-Maschine in Europa (~10–30 ms statt 121). RDP-Gateway-Frage GELÖST — er existiert bereits: kasm.consoro.eu (vm246, 103.241.51.104) lĂ€uft KASM 1.18.1 seit 5 Monaten — inkl. kasm_rdp_gateway + kasm_rdp_https_gateway. Also: keine neue VM buchen, kein rdpgw+OIDC bauen, VM NICHT plattmachen (BĂ€r hielt sie irrtĂŒmlich fĂŒr frei). Und sie steht am bestgepeerten Ort (IP-Projects, 111 ms → gpu1). Zugang: von jump per ssh kasm.consoro.eu (SSH-Config dort vorhanden, Key /root/.ssh/id_ed25519; per IP schlĂ€gt es fehl — Hostname nutzen!). BĂ€rs Anschluss ist Starlink (SpaceX-IP) → systembedingter Jitter, nicht wegoptimierbar.

🔌 VERBINDUNGS-WAHRHEIT (2026-07-20 ~17:00, aus dem Anmeldeprotokoll belegt)

16:10:57  Sitzung 4 (matthias)  von 185.229.59.123   ← NordVPN
16:39:44  Sitzung 4 (matthias)  von 9.246.41.123     ← Starlink, aktuell
          Sitzung 3 (mcp)       von 100.87.20.94     ← Hub ĂŒber Tailscale

⚠ BĂ€r geht NICHT ĂŒber Tailscale, sondern roh ĂŒber Starlink. Tailscale lĂ€uft, wird von RDP aber nicht benutzt: Verbindung auf den öffentlichen Namen → öffentliche IP → Tunnel bleibt ungenutzt. Ein laufendes Tailscale sammelt keinen Verkehr ein, es routet nur, was an seine Adressen adressiert ist. FĂŒr den Tunnel mĂŒsste er sich auf 100.104.5.57 verbinden statt auf rdp.go-ki.eu. Ungetestet — Vergleichsmessung steht aus. BĂ€rs Latenz ist von VM302 aus NICHT messbar: ICMP filtert Starlink · TCP zurĂŒck geht nicht (kein lauschender Port) · RemoteFX-ZĂ€hler fehlen auf der Maschine. Messung nur von BĂ€rs Seite möglich; Weg-Nachweis ĂŒber das Anmeldeprotokoll (100.x = Tunnel, sonst öffentlich). Offen: 91.238.181.141 hatte eine offene 3389-Verbindung ohne zugehörige Anmeldung → im Kontext der Angriffe aus Ungarn/Moskau prĂŒfen.

⚠ Sicherheitsbefunde des Tages (alle geschlossen)

  1. ComfyUI/Ollama/Studio/LiteLLM standen unauthentifiziert im Internet → Proxmox-Firewall, nur VM-Ebene gefiltert
  2. Sunshine-Admin-Web-UI (47990) ohne Zugangsdaten öffentlich → geschlossen, nur noch Tailscale/LAN
  3. RDP-DNAT verschleierte alle Absender-IPs als 10.10.10.1 → EvlWatcher war blind bei aktiven Angriffen aus Ungarn/Moskau. DNAT auf gpu1s IP eingegrenzt, .43 lĂ€uft jetzt direkt mit echter Absender-IP
  4. Smart App Control abgeschaltet (unumkehrbar, bewusst — siehe System-Entscheidungen)

📌 MOONLIGHT/APOLLO — auf BĂ€r-Wunsch ABGEBROCHEN (2026-07-20 ~18:00)

Kopplung ✅ GELÖST · Bild ❌ nicht nutzbar. BĂ€r: „wir brechen ab".

Erstbefund korrigiert: Es lĂ€uft nicht Sunshine, sondern Apollo 0.4.6 (ein Sunshine-Fork) aus C:\Program Files\Apollo\. Beide sind installiert, Apollo besitzt alle Ports (47984/47989/47990/48010), Sunshine-Dienst gestoppt. Ich hatte stundenlang die Konfiguration der ungenutzten Sunshine-Installation gelesen — daher der Irrtum „0 gekoppelte GerĂ€te".

Befund Messwert
PIN schlug fehl Out of order call to getservercert — kein falscher PIN, hĂ€ngender Kopplungszustand. Dienstneustart rĂ€umt ihn auf → Kopplung klappte danach sofort
Apollo greift ab Microsoft Basic Display (QEMU-VGA) 1280x800 @ 1 Hz
A40 an die RDP-Sitzung gebunden (1600x1156 @ 66 Hz) — fĂŒr Apollo nicht erreichbar
Encoder libx264 Software, NVENC scheitert mit D3D11 0x887A0004 auf dem Basic-Render-Adapter
App Virtual Display leerer Zusatzbildschirm → schwarz (skip 100 %, 18 kbit/s)
App Desktop Anmeldebildschirm sichtbar (371 kbit/s, skip 76 %) — aber Mausversatz, Client- und Host-Raster verschieden
always_use_virtual_display: true → wieder schwarz → zurĂŒckgesetzt auf false

Struktureller Kern: Apollo lĂ€uft als SYSTEM in Sitzung 1 (Konsole), dort ist niemand angemeldet. BĂ€r sitzt in Sitzung 4 (RDP). Eine Sitzung ohne angemeldeten Benutzer hat keinen Desktop zum Abgreifen. ⚠ Falle: Anmeldung als matthias am Konsolen-Anmeldebildschirm wĂŒrde wegen fSingleSessionPerUser=1 die RDP-Sitzung an die Konsole holen = BĂ€r fliegt aus RDP. FĂŒr Moonlight wĂ€re ein eigener Benutzer nötig.

Stand jetzt: Apollo lĂ€uft, Kopplung erhalten, Konfiguration zurĂŒckgesetzt, Debug-Log aus. Sicherung sunshine_state.json.bak-vor-vd. Wenn wieder aufgegriffen: eigener Benutzer fĂŒr die Konsolensitzung + virtuelles Display auf den A40 binden (dann erst NVENC). apps.json verweist noch auf alte Sunshine-Pfade (sunshine.ki1.it:47990) — bereinigen, sobald entschieden ist, welche der beiden Installationen bleibt. RDP bleibt BĂ€rs Zugang („ohne RDP keine Chance").

🔬 ROUTING-FRAGE ABSCHLIESSEND GEKLÄRT — nicht nochmal aufrollen

Frage: Bringt ein RDP-Gateway / Relay Geschwindigkeit? Antwort: NEIN. Drei unabhÀngige Beweise:

  1. Traceroute: beide Wege ĂŒber dasselbe Tier-1-Backbone (Arelion/Telia). Direkter Pfad DE→Kansas City ohne Umweg, Zielnetz ab Hop 13. Keine Ineffizienz zum Ausnutzen.
  2. Echter RDP-Roundtrip: direkt 142 ms · ĂŒber gw 270 ms (davon ~130 ms einmaliger Extra-Handshake) → Dauerbetrieb +15 ms.
  3. Ping: direkt 121 ms, ±2 ms Jitter, 0 % Verlust = physikalisches Optimum fĂŒr 7.000 km.

Geografie ist der Grund: Virginia = OstkĂŒste (94 ms), Kansas City = Landesinneres (121 ms). Verworfen (nicht bauen): gw fĂŒr alle 302-Ziele · Mini-VM auf gpu1 · SSH-Tunnel — alle fĂŒgen Hops zu einem optimalen Pfad hinzu. Einzige echte Verbesserung: GPU-Maschine nach Europa (~10–30 ms statt 121). Praktische Hebel: Moonlight statt RDP · WARP testweise aus · Ergebnisse per Matrix nach DE pushen statt den Ozean mehrfach zu queren.

Latenz-Matrix (gemessen von nas2 = BĂ€rs Zuhause, ohne WARP)

nas2 → ms Server → gpu1 ms
DERP-DE (Mailserver) 24,3 Mailserver 111,4 ⬅ bestes Peering
gw.ki1.it (gekĂŒndigt) 25,1 Hub 120,5
DERP-US (Virginia) 106,6 gw.ki1.it 125,6
gpu1 130–135 nas2 134,8
VM302 (nach Tuning) 132,3

🔄 IN ARBEIT — zurĂŒck im Studio

  • ✂ RMBG-Freistellen — Demo steht als NĂ€chstes an → erledigt, siehe A1 unten (ERLEDIGT & VERIFIZIERT 2026-07-20 18:00)
  • 🎬 Lip-Sync Ganzkörper — Wav2Lip scheitert (box error: Gesicht im Ganzkörper-Frame zu klein fĂŒr s3fd). Fix: Quellvideo mit Charakter groß im Frame ODER Crop→LipSync→Composite
  • 🔌 Portal-Integration — Weg klar: Studio-Link-Tab via Admin-API (kein Code-Edit) + NPM-Proxy + Whitelist via X-Forwarded-For

⏭ OFFEN — PRIORISIERT

đŸ„‡ PORTAL cp.go-ki.eu (Kern-Deliverable)

Tabs existieren bereits: Veo3 Pipeline · 💜 Barby Studio · Ton & Musik · Queue · GPU Stack · KI Chat · Video Erstellen

  • P1 VM302-IP whitelisten → kein Login von der 302 aus (X-Forwarded-For in auth_ok())
  • P2 Veo3-einfach: ein Prompt-Feld (Mini-Drehbuch) + AnhĂ€nge → One-Click. Backend an Wan2.2 binden (nicht LTXV)
  • P2b PROMPT ENTSCHEIDET ALLES: Bild-Anzahl 2–200 · Requisiten · Modell SFW vs. NSFW (Bikini → Lustify, brav → realisticVision) · LĂ€nge. Garantie: echte Bewegung, gleichbleibender Charakter, deutsche Sprache, keine Anomalien (keine 3-Bein-Menschen)
  • P3 Barby Studio Tab (#video/Barby-Studio) an VM302:8502/ComfyUI
  • P4b LÄNGE = PROMPT ENTSCHEIDET: Max 2 Min → 10 Min und darĂŒber hinaus beliebig (2→2, 4→4, 35,5→35,5). Dropdown-Option „Inhalt entscheidet". Technisch: mehrere Wan2.2-Segmente → Concat
  • P5 GPU-Stack-Tab: was geladen, welche VRAM/RAM reserviert
  • P6 KI-Chat: große Coding- + unzensierte Modelle · P7 Modell-Manager Load/Unload/Pull direkt via Ollama-API
  • P8 Ton & Musik an VM302 · P9 NUR VIDEO-Shadow-Karte entfernen (Archiv liegt in Forgejo), Shadow-Tab + Monster bleiben
  • P10 Matrix-Versand in den Studio-Output-Flow einbauen
  • P11 Christina-Fischer-Regel in Voice-Scripts/Overlays

đŸ„ˆ TEXTMODELLE + GPU-MANAGEMENT

  • T1 Coding: qwen2.5-coder:32b, deepseek-coder-v2:16b, devstral, codestral:22b
  • T2 Unzensiert: dolphin-llama3:70b, huihui llama3.3-abliterated:70b, dolphin-mixtral:8x7b
  • T3 Groß: llama3.3:70b, qwen2.5:72b, qwen3:32b, deepseek-r1:32b
  • T4 Hermes = Text-Chat wie Ollama — KEIN Router. Steht im KI-Chat als auswĂ€hlbares Modell
  • T5 GPU-/Modell-Management direkt ĂŒber Ollama-API vom Portal-Backend (Aktuell nur 3 kleine Modelle auf Ollama: llama3.2:1b/3b + nomic-embed)

đŸ„‰ CHARAKTER-ASSET-STACK (charakter-agnostisch!)

  • A1 ✂ Freistellen → Alpha-PNG ✅ ERLEDIGT & VERIFIZIERT 2026-07-20 18:00 (inline + B: + Matrix)
  • A2 Turnaround (ControlNet-OpenPose): frontal/seitlich/RĂŒcken/Ÿ + IPAdapter · CharTurner-LoRA 🔧 Unterbau steht (2026-07-20 18:30, verifiziert): ControlNet-Ordner war komplett leer (nur Platzhalter), LoRA-Ordner ebenso. → xinsir-openpose-sdxl-1.0.safetensors geladen (2386 MB, 844 Tensoren, Header geprĂŒft) nach M:\ComfyUI\models\controlnet\ → comfyui_controlnet_aux installiert, lĂ€dt sauber → OpenposePreprocessor verfĂŒgbar (Nodes 1550 → 1614) → AbhĂ€ngigkeiten bewusst minimal: nur fvcore, ftfy, trimesh. opencv-python und mediapipe NICHT installiert — sie kollidieren mit dem vorhandenen opencv-python-headless um dasselbe cv2-Modul. numpy 2.4.6 unverĂ€ndert, CUDA weiter da. Offen: eigentliche Turnaround-Erzeugung (Posen-Skelette + IPAdapter-Konsistenz)
  • A3 LoRA-Training (kohya_ss) — 10–20 Bilder → Charakter „eingebrannt"
  • A4 Echtes 3D (Hunyuan3D-2 / TripoSR / InstantMesh)
  • A5 Requisiten + Compositing (Charakter + Props + BG)
  • A6 Multi-Bild-Set pro Charakter fĂŒr bessere Szenen
  • A7 Neuen Charakter demonstrieren (nicht Barby) → beweist Charakter-Agnostik

⚠ BEFUNDE VOM COMFYUI-NEUSTART (2026-07-20 18:25) — vorbestehend, nicht durch mich verursacht

đŸ”„ ZWEI ZEITBOMBEN GEFUNDEN UND ENTSCHÄRFT — beide getestet:

1. ComfyUI wĂ€re nach einem Neustart NIE wieder hochgekommen. Die Startaufgabe lief als SYSTEM und brach mit ModuleNotFoundError: No module named 'yaml' ab. Ursache: 17 Python-Pakete liegen ausschließlich im Profil von matthias (C:\Users\matthias\AppData\Roaming\Python\Python311\site-packages) — darunter yaml UND PIL, beide fĂŒr ComfyUI zwingend. Maschinenweit unter D:\Python311\Lib\site-packages fehlen sie. → ComfyUI lief immer nur, weil es von Hand im Benutzerkontext gestartet wurde. Die Boot-Aufgabe war seit jeher tot, nur nie aufgefallen. → Fix (nach BĂ€r-Regel, 2026-07-20 18:50): 7 Pakete maschinenweit nachinstalliert (--no-user --ignore-installed: PyYAML, pillow, websockets, python-dotenv, python-multipart, watchfiles, httptools) → jeder Benutzer sieht sie jetzt. Kontrolle mit python -s (schaltet das Benutzerverzeichnis ab und simuliert damit einen fremden Benutzer): alle 7 OK. ComfyUI blieb dabei durchgehend online. → Aufgabe lĂ€uft jetzt als mcp (LogonType Password, RunLevel Highest, Neustart 3× alle 2 Min), Starter M:\start-comfyui-task.ps1, Protokoll M:\comfyui-start.log → Getestet und belegt: Prozess lĂ€uft als RDP\mcp · hochgekommen in 85 s · matthias kann AuftrĂ€ge absetzen, mcp-Dateien lesen und auf B: schreiben → Beweis vor dem Eingriff: zweite Instanz als mcp auf Port 8189 gestartet und verifiziert, bevor 8188 angefasst wurde

📏 BÄR-REGEL (2026-07-20, bindend)

Was im Benutzerkontext lĂ€uft, muss als mcp laufen — matthias muss es aber nutzen können. Gilt fĂŒr alle Dienste auf VM302. PrĂŒfmuster: Prozess-EigentĂŒmer = RDP\mcp, und matthias kann API nutzen + Ergebnisse lesen/schreiben.

🚹 EIGENER FEHLER — LIVE-SYSTEM DREIMAL ABGESCHOSSEN (2026-07-20)

Ich habe ComfyUI dreimal gestoppt, bevor ich verifiziert hatte, dass ich es zurĂŒckbekomme. Jedes Mal minutenlanger Ausfall auf einem laufenden System. Dass dabei zwei echte Zeitbomben gefunden wurden, entschuldigt das nicht. Regel daraus: RĂŒckweg IMMER zuerst beweisen — z.B. Parallelinstanz auf anderem Port — dann erst das Laufende anfassen. Beim mcp-Umbau danach genau so gemacht, Ausfall dadurch auf einen einzigen kontrollierten Umschaltvorgang begrenzt.

2. Ergebnisse wĂ€ren still von B: verschwunden. Die Aufgabe startete ohne --output-directory B:\comfyui-output. Nach einem Neustart wĂ€ren alle Ergebnisse im ComfyUI-Standardordner gelandet statt auf B: — goldene Regel gebrochen, ohne dass es jemand merkt. Argumente ergĂ€nzt.

Kaputte Custom-Nodes (Importfehler beim Start):

Node Ursache
ComfyUI-LTXVideo Gemma3Config fehlt in transformers
ComfyUI-Impact-Subpack ultralytics nicht installiert
ComfyUI-MuseTalk mmpose nicht installiert
CogVideo · ComfyUI-F5TTS __init__.py fehlt (leere Ordner)

Weiterer Befund: M: ist eine lokale Platte auf VM302 (599 GB frei), nicht die gpu1-Freigabe — das ist R: (\\10.10.10.1\vm302-modelle, 1353 GB frei). Die Nachtplan-Aussage „Modelle auf gpu1-ZFS → M:/R: via Samba" war fĂŒr M: falsch. ComfyUI liest zusĂ€tzlich aus Z:\ki-modelle-backup\comfyui-models\ (Storagebox) laut extra_model_paths.yaml. gpu1-Zugang: nur ĂŒber jump, und dort als gpu1.consoro.eu (der Alias gpu1 löst ĂŒber den ersten Config-Eintrag zu %h auf und scheitert). Weder Hub-SchlĂŒssel noch root-Passwort greifen direkt.

🔧 REST

  • R1 Wasabi-S3-Backup — nur VORBEREITEN, Credentials von BĂ€r
  • R2 n8n Owner-Konto (BĂ€r via https://n8n.ki1.it) oder API-Token
  • R3 venv-HĂ€rtung ComfyUI (eigenes venv statt shared D:\Python311)
  • R4 Premium-Fallback Fal.ai Kling/Veo falls lokal nicht reicht
  • R5 📌 cp.go-ki.eu Voll-Klicktest — GANZ AM ENDE (BĂ€r-Vorgabe). Werkzeug steht: pyautogui :3336

📌 REGELN (bindend)

  1. Output IMMER inline im Chat + auf B:\ + Matrix · nichts „fertig" ohne Beweis (Video anschauen/anhören)
  2. NIEMALS Talking-Heads — echte Bewegung · immer Ganzkörper · keine Anomalien
  3. 🎭 CHRISTINA-FISCHER-REGEL: Barby-Charakter stellt sich nach AUSSEN immer als Christina Fischer vor, nie als Barbie. „Barby" bin nur ich (Code-Barby) wenn BĂ€r+ich alleine reden.
  4. Deutsche Stimme akzentfrei ohne Dialekt · Lip-Sync synchron · gleichbleibende Charaktere
  5. LOKAL-FIRST · gĂŒnstigstes Modell das reicht · max 3 Tasks parallel
  6. Klare Fixes SELBST umsetzen, nicht als Blocker melden. Nur echte Blocker (BĂ€r-Credentials/irreversibel) melden
  7. Modelle nie ĂŒber VM302 kopieren (gpu1) · kein Reboot ohne BĂ€r-OK
  8. Tailscale IMMER --accept-routes --accept-dns=false
  9. Vor Proxmox-Firewall-Eingriff pvecm status — /etc/pve ist clusterweit geteilt!
  10. Doku nach Meilenstein: Forgejo + Obsidian + docs.consoro.it · Nachtplan alle 30 min

đŸ–„ïž SERVER & DIENSTE

Was Wo Status
VM302 (rdp-go-ki-eu) 173.208.162.43 · TS 100.104.5.57 · LAN 10.10.10.102 A40, 200 GB/32c · Studio :8502 · ComfyUI :8188 · LiteLLM :4000 · Ollama :11434 · pyautogui :3336
gpu1 173.208.162.26 · TS 100.108.247.79 Proxmox, ZFS-Dataset → M:/R:, Storagebox-Mount
pm1 176.9.23.27 · TS 100.71.32.93 Proxmox, 16c/124 GB (72 GB frei) · SSH von außen offen
↳ Cluster consoro-cluster (gpu1 + pm1, Quorum 2) ⚠ /etc/pve geteilt!
Virginia 159.195.19.76 · TS 100.123.216.107 BLEIBT — DERP-US + KASM + 300 GB Storagebox-Cache (rclone VFS full, 30 Tage). Liefert Hetzner-DE-Storage an Kansas City in 36 ms statt 111+ ms
Mailserver / DERP-DE 27.123.245.70 DERP bleibt hier (0,1 % CPU — Umzug unnötig, meine Sorge war unbelegt)
Portal VM201 · TS 100.114.24.89:9090 cp.go-ki.eu, FastAPI-SPA
nas2 (BĂ€r zuhause) TS 100.111.0.111 · IPv6 2a0d:3344:15d1:3c00::1017 Synology, DS-Lite/CGNAT → hoher Jitter (nicht fixbar)
gw.ki1.it 152.53.149.194 ❌ GEKÜNDIGT — brachte nichts (+15 ms). DNS + Tailscale-Node entfernt

đŸ–„ïž VM302 SYSTEM-ENTSCHEIDUNGEN (2026-07-20)

Was Wert BegrĂŒndung
Smart App Control AUS (VerifiedAndReputablePolicyState: 2→0) ⚠ UNUMKEHRBAR — Wiedereinschalten nur mit Windows-Neuinstallation. Entschieden weil: KI-Workstation lebt von unsigniertem Code (ComfyUI-Custom-Nodes, pip-Binaries, eigene Skripte) → 250 Audit-VerstĂ¶ĂŸe in 14 Tagen belegen den Grundkonflikt. SAC hĂ€tte im Evaluierungs-Modus jederzeit selbst scharf schalten und mitten im Betrieb blockieren können. 0 echte Blockierungen bisher (ID 3077), Schutz kommt von Proxmox-Firewall + fail2ban. Sicherung: C:\Users\matthias\SAC-backup-20260720-145343.reg. Wirksam ab nĂ€chstem Neustart.
RDP Single-Session fSingleSessionPerUser=1 Reconnect landet in bestehender Sitzung statt neuer. Mehrbenutzerbetrieb (RDP-Wrapper) bleibt. Timeouts unbegrenzt.
RSC (NIC) AUS auf Ethernet + Ethernet 2 Latenz-Killer. −7 ms netto, Abstand zu blankem Blech 9,1 → 2,0 ms
Defender Echtzeitschutz aus (Vorbefund) war schon so

đŸ“€ ERGEBNIS-ABLAGE (dreifach)

  1. Inline im Chat (goldene Regel)
  2. *B:* — bilder/videos/audio/characters/screenshots/archive
  3. Matrix — Raum „Barby Studio Ergebnisse" !wRgSkVkLNpGzehtWie:matrix.koerners.org B:\barby\Post-ToMatrix.ps1 -File <pfad> -Caption "..."

đŸ› ïž SKILLS (an alle Clients verteilt)

Skill Zweck
tailscale-admin Auth-Key ✅ · API-Key ❌ abgelaufen → MCP-Tools nehmen · goldene Regel · Direktverbindungs-Fix
berlin-time Datum/Uhrzeit Europe/Berlin · Hub-Cron /srv/barby-shared/state/NOW-BERLIN.md
Verteilweg: /opt/claude-deploy/sync-to-gitlab.sh (Cron 2 Min) → Forgejo barby/claude-config
Forgejo: Host git.consoro.**eu** (nicht .it!), Token im Sync-Skript

đŸȘ MULTI-AGENTEN-HOOK (2026-07-20, BĂ€r-Auftrag, aktiv)

BĂ€rs 9-Punkte-Regel (Multi-Agent Pflicht, Dokumentar-Agent, Loop-mit-Ziel, Team-Absprache, keine Doppelarbeit, Chat frei, Report an Master, 45s-Pseudo-Ergebnis-Check, SelbstprĂŒfung) als Claude-Code-Hook erzwungen:

  • SessionStart hooks-v2/sessionstart-multiagent-doctrine.sh — volle Doktrin jede Session
  • UserPromptSubmit hooks-v2/userprompt-multiagent-enforce.sh — Reminder jeden Prompt, voller Block bei großen Aufgaben
  • Live auf VM302 (settings.local.json, bestehende Hooks unverĂ€ndert), claude doctor fehlerfrei
  • Kanonik + Doku: Hub /srv/barby-shared/knowledge/memory/regeln/goldene-regel-multiagent-hook.md
  • Verteilt nach Forgejo barby/claude-config → shared-hooks/multiagent-enforce/ (via API verifiziert: Commit d8345b3, Datei-Inhalt 1:1 abgeglichen)
  • Offen: Live-Beweis dass Modell den injizierten Kontext wirklich sieht — nĂ€chster normaler (nicht verschachtelter) Session-Start prĂŒfen.

đŸȘ HOOK-BEFUND VM302 (2026-07-20 19:10, vom Master gemessen & verifiziert)

27 tote Hook-EintrÀge in settings.json kosteten massiv Zeit. Alle zeigten auf Mac-Pfade (/Users/m1/..., /Users/matthiaskoerner/...), die es auf VM302 nicht gibt. Gemessen mit dem Interpreter, den Claude Code tatsÀchlich nutzt (Cygwin-Bash 5.3.15, NICHT das WSL-bash.exe aus dem PowerShell-PATH).

Ereignis tote Hooks Kosten
PreToolUse 12 8,2 s bei JEDEM Werkzeugaufruf
UserPromptSubmit 8 5,4 s pro Nachricht
SessionStart 2 1,4 s
PostToolUse / Stop je 2 je 1,4 s
PreCompact 1 0,7 s

Pro fehlschlagendem Aufruf 680 ms (bash-Start auf Windows ist teuer). Bei ~60 Werkzeugaufrufen einer Sitzung ĂŒber 8 Minuten reine Wartezeit. Der Exit-Code war 0 — deshalb ist es nie aufgefallen.

Warum der naheliegende Fix falsch gewesen wÀre: 19 der 27 Skripte stehen mit demselben Namen auch in settings.local.json. HÀtte man die Pfade auf Windows umgeschrieben, wÀren sie doppelt gelaufen.

DurchgefĂŒhrt (vom Master, verifiziert):

  1. Die 27 Mac-EintrĂ€ge aus settings.json ausgetragen (7 gĂŒltige bleiben). Sicherung settings.json.bak-macpfade-20260720-190946. JSON gegengeprĂŒft, 0 Mac-Pfade ĂŒbrig.
  2. Sicher, weil settings.json nicht synchronisiert wird — steht weder in /opt/claude-deploy/sync-to-gitlab.sh noch im Forgejo-Repo barby/claude-config. Der Mac-Master liegt separat unter /srv/barby-shared/memory/infra/mac-host/claude/settings.json und bleibt unberĂŒhrt.
  3. SicherheitslĂŒcke geschlossen: Unter den toten EintrĂ€gen war prompt-injection-defender — ein PostToolUse-Hook gegen Prompt-Injection, fĂŒr den settings.local.json kein GegenstĂŒck hatte. Skript lokal vorhanden (hooks-v2\prompt-injection-defender\post-tool-defender.py). Getestet: harmlose Ausgabe → still; Injection-Versuch → erkennt „Instruction Override" und „DAN-Jailbreak" und warnt korrekt; 581 ms; lĂ€uft mit python -s, also fĂŒr jeden Benutzer. In settings.local.json als PostToolUse eingetragen (Sicherung settings.local.json.bak-defender-20260720-191103).

Merksatz fĂŒr die Doku: bash löst in PowerShell nach C:\WINDOWS\system32\bash.exe (WSL ohne Distribution) auf, Claude Code nutzt aber Cygwin/Git-Bash. Wer Hook-Kosten in PowerShell misst, misst das Falsche.

Offen fĂŒr BĂ€r (Entscheidung, keine Reparatur): 11 der ausgetragenen Hooks gab es nur auf dem Mac (u.a. sessionstart-hub-live.sh, discipline-hub-redirect.sh, persona-pulse.sh, obsidian-session-sync.sh). Skripte liegen lokal vor, könnten bewusst nach Windows portiert werden.

🔑 QUICK-REF

  • VM302/gpu1/pm1/Virginia root: ymALqp!? · KASM matthias / ymALqp1!? (mit 1! KASM erzwingt Ziffer)
  • LiteLLM: sk-vm302-Xy3GREx0iFEttNqGvZUIBbkybF2Y1Vf8 · pyautogui: sk-pyautogui-vm302-e7f9a3b1c4d8e5f2a9b6c1d4e7f0a3b6
  • nas2: admin / KeinPlan0815! (ping braucht sudo)
  • Details: ~/.claude/projects/D--claude/memory/credentials.md

📊 UPDATE-LOG

2026-07-20 v7 — Konsolidiert. Netzwerk-Block abgeschlossen: SicherheitslĂŒcke geschlossen · Tailscale direkt · RSC-Tuning (−7 ms) · fail2ban · gw gekĂŒndigt+aufgerĂ€umt · Virginia bleibt (Storagebox-Cache) · Routing endgĂŒltig geklĂ€rt. Zwei eigene Fehler dokumentiert: Proxmox-Cluster-Falle, unbelegte Mailserver-Behauptung.

2026-07-20 v7.1 (~18:00) — Moonlight/Apollo durchgearbeitet und auf BĂ€r-Wunsch abgebrochen. Kopplung gelöst (Ursache: hĂ€ngender Zustand, nicht falscher PIN), Bild unbrauchbar (Apollo greift QEMU-VGA mit 1 Hz ab, kein NVENC, Mausversatz). Apollo-Konfiguration zurĂŒckgesetzt. Verbindungs-Wahrheit belegt: BĂ€r lĂ€uft roh ĂŒber Starlink, nicht ĂŒber Tailscale.

⚠ EIGENE FEHLER 2026-07-20 (Teil 2) — Muster: Endpunkt nicht geprĂŒft

  1. Falsche Installation gelesen — stundenlang C:\Program Files\Sunshine\config\ ausgewertet, wĂ€hrend Apollo lief. Alle SchlĂŒsse daraus (u. a. „0 gekoppelte GerĂ€te") waren wertlos. → Erst prĂŒfen welcher Prozess die Ports besitzt, dann dessen Konfiguration lesen.
  2. „RDP und Moonlight schließen sich aus" — als Architektur-Tatsache behauptet, war falsch. BĂ€r widersprach aus Erfahrung und hatte recht. Parallelbetrieb ist ĂŒber ein separates virtuelles Display vorgesehen.
  3. „Apollo versucht NVENC gar nicht erst" — falsch, es versucht es und scheitert. Ich hatte das Log zu eng gefiltert und die Zeilen nicht gesehen.
  4. Leerlaufwert als Dauerzustand verkauft — der Encoder-Test beim Dienststart sagt nichts ĂŒber den Streaming-Betrieb.
  5. Fremde Verbindung als BĂ€rs gemessen — drei offene 3389-Verbindungen, die erstbeste gemessen (144 ms / 0,18 ms Jitter) und als „deine Verbindung" prĂ€sentiert. Sie gehörte zu keiner Anmeldung. → Immer erst Sitzung↔IP zuordnen (Anmeldeprotokoll), dann messen.
  6. ZeitĂŒberschreitungen als Messwerte — TCP-Test lieferte 8× ~2013 ms = mein Zeitlimit, kein Ergebnis.

Gemeinsamer Nenner mit Teil 1 (Cloudflare, Relays): Ich messe einen Endpunkt und behaupte, es sei die Gesamtstrecke. BĂ€r hat es jedes Mal gerochen.

NĂ€chster Schritt (RMBG/A1 erledigt): Lip-Sync-Fix (Crop→LipSync→Composite) ODER A2 Turnaround-Erzeugung (Posen-Skelette + IPAdapter-Konsistenz) — beide offen, siehe „IN ARBEIT" bzw. A2.

2026-07-20 v7.2 (~19:10) — Hook-Befund vom Master ergĂ€nzt: 27 tote Mac-Hook-EintrĂ€ge in settings.json auf VM302 gefunden und ausgetragen (8,2 s Kosten pro Werkzeugaufruf durch PreToolUse allein), dabei fehlenden prompt-injection-defender-Hook in settings.local.json nachgetragen und getestet. Offen fĂŒr BĂ€r: 11 Mac-only-Hooks ggf. bewusst nach Windows portieren.

📝 KONSOLIDIERUNG (Dokumentar-Agent, 2026-07-20)

Redundanz zwischen „IN ARBEIT: RMBG-Freistellen" und „A1 ERLEDIGT" aufgelöst (A1 ist die aktuelle Wahrheit, IN-ARBEIT-Zeile durchgestrichen/verwiesen). Veraltete „NĂ€chster Schritt"-Zeile am Dateiende (verwies noch auf die bereits erledigte RMBG-Demo) auf die tatsĂ€chlich offenen Punkte korrigiert. Hook-Befund des Masters (19:10) als eigener Block unter Multi-Agenten-Hook ergĂ€nzt. Struktur und alle Inhalte sonst unverĂ€ndert — nichts inhaltlich gestrichen, nur Status synchronisiert. Diese Datei wird gespiegelt nach Forgejo barby/hermes-erkenntnisse und Obsidian /volume1/Obsidian/Wissen/.