Welle 3 · Doku (Bedienung, Betrieb, offene Fäden) und Oberfläche: Rückfragen im Meldungstext, Sprung zu Lucy

- BEDIENUNG.md: Welle 1 bis 3 für den Alltag (Rückfragen, Antworttasten, Lucys Freiheiten, Wartungsfenster,
  Zertifikate, Neu entdeckt, Docker-Dienste, Was ist neu, Zeitleiste, Strg+K, Zeitpläne, neue Telegram-Nachrichten)
- BETRIEB.md: Lucy (Freiheiten, Rückfragen, Untersuchungen, Wochenbericht, Hermes-Neustart für neue Werkzeuge),
  Wartungsfenster im Homelab-Teil
- OFFENE-FAEDEN.md: Welle 2 und 3 erledigt, was am 27.09. zu beobachten ist
- Einstellungen: Meldungen-Karte nennt Rückfragen und Wochenbericht; #lucy fasst nach, wenn Karten nachladen

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Hitonabi
2026-09-26 09:32:46 +02:00
co-authored by Claude Opus 5.5
parent 6904bcbfb0
commit 67c82f5f73
21 changed files with 156 additions and 26 deletions
+46
View File
@@ -294,12 +294,58 @@ laufen lassen. Achtung: `ausfuehrer-einrichten.sh` schreibt `/etc/mc2-ausfuehrer
Berichte des Ausführers. Die Quellen bleiben die Dateien in `/var/lib/mc2` (`ausfuehrer-auftraege.json` hebt jetzt
die letzten 500 erledigten Aufträge auf, `ausfuehrer-berichte.json` die Eingänge der letzten 150 Berichte) und das
Melde-Log `/var/lib/mc2/notify.log`.
- **Wartungsfenster (seit 26.09.):** Der Steward (`services/homelab/wartung.py`) prüft jede Minute, ob das Fenster
offen ist (ab Werk So 03:00–04:15), und arbeitet dann einmal am Tag den Plan ab: je Gerät nach seiner Regel
(`melden`, `sicherheit`, `alles`; Standard `sicherheit`) über dieselben Update-Läufe wie die Knöpfe, mit Snapshot
vorher und Rückweg bei Rot; nach Fensterende beginnt kein Schritt mehr, der Host startet nie von selbst neu. Laufen
gerade „Alle aktualisieren“ oder ein Update, wartet es eine Minute. Einstellungen: `/var/lib/mc2/homelab-wartung.json`
(Oberfläche: Einstellungen → Homelab), Stand des letzten Fensters: `/var/lib/mc2/homelab-wartung-stand.json`. Die
Läufe schreiben Oberfläche und Steward in dieselbe Datei — seit 26.09. unter `flock`.
- **Wöchentliches Suchen:** Der Steward legt für jeden freigegebenen, laufenden Container, dessen Paketlisten älter als
7 Tage sind, den Auftrag `suchen` an (nur `apt-get update` bzw. `apk update` im Gast, es wird nichts installiert):
nachts 02:00–05:00, höchstens einmal je Gast und Tag, nicht während eines Updates; war die Instanz nachts aus, gleich
nach dem Start. Stand in `/var/lib/mc2/homelab-pflege.json` (Nacht, je Gast: letzter Tag, Fehlschläge, letzter
Fehler). Schreibt nur der Steward; zum Zurücksetzen die Datei löschen und `systemctl restart mc2-homelab-steward`.
## Lucy: Freiheiten, Rückfragen, Untersuchungen, Wochenbericht (seit 26.09.)
Ausbauplan Welle 3 (User-Entscheid 25.09. „mehr Freiheit“). Alles liegt auf der KI-Box; der Homelab-Teil meldet seine
roten Hinweise per HTTP dorthin (`MC_PARTNER_URL` aus `/etc/mc2/homelab.env`).
- **Freiheiten je Aktionsart** (`backend/services/lucy_autonomie.py`, Datei `/srv/models/lucy-autonomie.json`, nur
was der Commander umgestellt hat): `lesen`, `fragen`, `selbst`. Lucys Werkzeuge (`mcp/orchestrator_werkzeuge.py`) fragen
`GET /api/lucy/autonomie`, bevor sie aus eigenem Antrieb handeln; mit `auf_bitte=true` (der Commander hat
ausdrücklich gebeten) gilt die Stufe nicht. Lässt sich die Stufe nicht lesen, gilt `fragen`. Jede Aktion steht
mit Grund und Stufe in `~/.hermes/logs/orchestrator-werkzeuge.log`; „selbst“ meldet über `POST /api/lucy/gehandelt`.
- **Rückfragen** (`backend/services/rueckfragen.py`, `/srv/models/lucy-rueckfragen.json`, die letzten 200):
nummeriert, 24 h gültig, nur Pfade aus `ERLAUBT` (die Knöpfe der Oberfläche; nie Löschen, Einstellungen, Zugänge).
Ein „ja“ führt die gespeicherte Aktion per HTTP an MC2 selbst aus (`MC_EIGENE_URL`, Standard
`http://127.0.0.1:9001`); danach steht sie auf erledigt/fehler, ein zweites „ja“ tut nichts. Gehört sie zu einem
Hinweis, der schon weg ist: „hinfällig“; nach dem Ausführen prüft sie sechs Minuten nach und meldet, wenn er bleibt.
Ansehen: `curl -s http://127.0.0.1:9001/api/rueckfragen | jq`.
- **Antworttasten:** `notify.sh -k "ja 7|nein 7"` schickt die Nachricht direkt an die Bot-API mit einer
Antworttastatur (`reply_markup`); ein Tipp sendet nur den Text „ja 7“, den Lucy mit `rueckfrage_beantworten`
weitergibt. Scheitert der Direktweg, geht die Nachricht ohne Tasten über `hermes send`. Nachts wie jede andere
nicht dringende Meldung in die Morgenmeldung.
- **Rote Hinweise an Lucy:** Der Wächter beider Teile ruft vor seiner Telegram-Nachricht `POST /api/lucy/befund`
(`backend/services/ermittlung.py`). Hat der Hinweis einen Knopf (Neustart, Job wiederholen, Freigeben), wird er zur
Rückfrage; steht „ermitteln“ auf `selbst`, fragt MC2 Lucy über den api_server von Hermes (`HERMES_API_URL`, Schlüssel
aus der Hermes-Config) — dieselbe Lucy mit allen Werkzeugen, auch `geraet_logs` (Aktion `journal` des Ausführers,
nur lesend) und `dienst_logs`. Ihre Antwort und was sie dabei auslöst, kommen als eine Nachricht. Bremsen: je
Hinweis einmal in 6 h, höchstens 8 am Tag, eine nach der anderen. In Tests abgeschaltet (`MC_LUCY_BEFUND=0`,
`MC_EIGENE_URL` ins Leere, `backend/tests/conftest.py`) — auf der Box liefe das Prüftor sonst gegen das echte MC2.
- **Wochenbericht** (`backend/services/wochenbericht.py`, Timer `mc2-wochenbericht.timer`, sonntags 07:30): feste
Sätze aus der REST-API beider Teile, ein Absatz vom Modell `fast`, offene App-Updates des Homelabs als Rückfragen
(dazu „Alle aktualisieren“, wenn mehr ansteht). Der letzte liegt in `/srv/models/wochenbericht.json`. Von Hand:
`curl -s -X POST http://127.0.0.1:9001/api/lucy/wochenbericht` (verschickt wirklich). Nur ansehen, ohne zu senden:
`cd ~/mission-control-v2/backend && MC_MODELS_DIR=/srv/models .venv/bin/python -c "from services import
wochenbericht; print(wochenbericht.bauen(mit_angeboten=False)['text'])"`.
- **Hermes:** Der Abschnitt „Homelab Orchestrator“ in `~/.hermes/SOUL.md` sagt Lucy, wie sie mit Freiheiten und
„ja 7“ umgeht (Kopie: `deploy/nur-box/soul-orchestrator.md`), der Skill `homelab_orchestrator` die Einzelheiten.
Neue oder geänderte Werkzeuge sieht Hermes erst nach `systemctl --user daemon-reload && systemctl --user restart
hermes-gateway` (der Deploy startet das Gateway bewusst nicht neu). Prüfen:
`grep "homelab-orchestrator" ~/.hermes/logs/agent.log | tail -1` nennt die Zahl der Werkzeuge.
## Messwerte (Monitoring, seit 24.09.)
Jede Minute ein Punkt je Gerät, gelesen als letzte Stunde, letzter Tag oder letzte Woche (Aufbau in