# Orbitalo Homelab — KI Router # REGEL: Nur diese Datei beim Start lesen. Dann NUR den einen relevanten Doc laden. # Nie mehr als 1 STATE.md gleichzeitig in den Kontext laden. ## Quelle der Wahrheit **`homelab-brain/homelab.conf`** = EINZIGE Datei mit IPs, URLs, Containern, Passwörtern, Tokens. Vor JEDER Aktion mit variablen Daten: `cat homelab-brain/homelab.conf` lesen. Daten ändern = NUR `homelab.conf` editieren + auf pve-hetzner deployen. ## Routing-Tabelle | Aufgabe betrifft... | Lade diese Datei | |-----------------------------------|------------------------------| | IPs, URLs, Credentials, Container | homelab.conf | | WordPress / RSS / Arakava News | arakava-news/STATE.md | | Redakteur / WordPress KI-Autor | redax-wp/STATE.md | | Flugpreisscanner / Selenium | flugpreisscanner/STATE.md | | Gold / Silber / Edelmetall-Bot | edelmetall/STATE.md | | Smart Home / ioBroker / Grafana | smart-home/STATE.md | | ESP32 / Display / Heizung | esp32/PLAN.md | | FünfVorAcht / Telegram KI-Poster | fuenfvoracht/STATE.md | | Server / Container / Proxmox | infrastructure/STATE.md | | Telegram Bots allgemein | infrastructure/STATE.md | | TODOs / Aufgaben / Was steht an | Forgejo Issues (siehe unten) | | Alle Projekte / Übersicht | MASTER_INDEX.md | ## Server-Übersicht (Details in homelab.conf) | Logischer Name | Hostname | Standort | |---|---|---| | pve-hetzner | pve-hetzner | Hetzner DC | | pve-ka-1 | pve1 | Kambodscha | | pve-ka-2 | pve-Shops | Kambodscha | | pve-ka-3 | pve3 | Kambodscha | | pve-mu-2 | pve2 | Muldenstein | | pve-mu-3 | pve3 | Muldenstein | | pve-he | helmut-pve | Ramsin (bei Helmut) | **Achtung:** pve3 existiert zweimal (Kambodscha + Muldenstein). Immer den logischen Namen verwenden! ## TODO-Liste (Forgejo) Forgejo-URL und Token stehen in `homelab.conf` (FORGEJO_TOKEN). - Lesen: `source homelab-brain/homelab.conf && curl -s -H "Authorization: token $FORGEJO_TOKEN" http://$(grep CT_111_HZ homelab-brain/homelab.conf | cut -d'|' -f2):3000/api/v1/repos/orbitalo/homelab-brain/issues?state=open` - Neues TODO: POST an `/api/v1/repos/orbitalo/homelab-brain/issues` mit `{"title":"...","body":"...","labels":[ID]}` - Erledigt: PATCH mit `{"state":"closed"}` ## Server-Zugang Alle IPs und Passwörter stehen in `homelab.conf`. Keine Duplikate hier. Schnellzugriff: `source homelab-brain/homelab.conf && sshpass -p "$PW_HETZNER" ssh root@$SRV_HETZNER` ## Deployment — PFLICHT-Workflow Code-Änderungen IMMER über das Deploy-Skript ausrollen: ```bash ./homelab-brain/scripts/deploy.sh "Beschreibung" ``` **Was es tut:** git commit → push Forgejo → ssh pve-hetzner git pull → Bot restart **NIEMALS:** - `scp` oder `pct push` für Bot-Dateien verwenden - Dateien direkt auf pve-hetzner editieren - Änderungen ohne sofortigen Push machen (sync-state.sh überschreibt!) **Warum:** CT 116 (Hausmeister-Bot) hat einen Bind-Mount auf `/opt/homelab-brain/homelab-ai-bot/`. Git-Pull auf pve-hetzner = Bot sieht Änderungen sofort. Kein manuelles Kopieren nötig. **Architektur:** ``` Cursor (pve-ka-1) → Forgejo (CT 111) → pve-hetzner /opt/homelab-brain/ edit+push git repo git pull ↓ Bind-Mount CT 116 /opt/homelab-ai-bot/ ``` ## Goldene Regeln 1. Kontextfenster schonen — nie mehr laden als nötig 2. `homelab.conf` lesen vor jeder Infrastruktur-Aktion 3. STATE.md Dateien sind auto-generiert — niemals manuell editieren 4. Variable Daten ändern = `homelab.conf` editieren, sonst NICHTS 5. Bei Unklarheit: MASTER_INDEX.md lesen, nicht raten 6. MCP-Tools nutzen fuer Live-Daten: homelab_get_errors, homelab_all_containers, homelab_query_logs, etc. 7. Server immer mit logischem Namen referenzieren (pve-ka-3, nicht "pve3") 8. Code-Änderungen NUR über `scripts/deploy.sh` deployen — KEIN scp/pct push