doku: Wissen auf den Box-Wart-Stand (STACK, VERDIKTE, FALLEN, ARBEITSWEISE, OFFENE-FAEDEN)

- STACK.md: Stand 24.09. - Dienste mit Zustand (Konsole und Spracherkennung schlafen), Units im
  Repo und nur auf der Box, Modelltabelle aus der Config vom 24.09. (Hirn, Coder, zwei
  Bild-Zwillinge, brains mit exclusive: false), Hermes v0.21.4 mit MCP-Stand nach der Diaet,
  vollstaendiger Automatik-Fahrplan (Timer, Hermes-Crons, NerdQuiz 03:00), Coding-Bahn
  OpenChamber, Sicherheit in einem Satz.
- VERDIKTE.md: Box-Wart-Verdikte vom 23./24.09. ergaenzt (Umbau statt Neubau, zwei Instanzen,
  Homelab-Rechte und -Updates, keine Anmeldung, Nachtruhe, Timer, Box-Diaet, Radar-Leitplanken,
  Bild-Zwillinge, exclusive: false); Ueberholtes in eine Tabelle "Ueberholt (mit Datum)";
  Formatfehler (Zeilen mit "|-") beseitigt.
- FALLEN.md: neue Fallen (Persistent=true, Abzug ueberschreibt lebende Config, Jobs sterben bei
  MC2-Neustart, exclusive, Draft+Bild=500, Hermes-Cron als Updater, write_file, web_extract,
  Gitea-SSH-Benutzer); Werkstatt-, Kritiker-, Delegations- und Desktop-Fallen gestrichen.
- ARBEITSWEISE.md mit GRENZEN.md zusammengelegt; Flaechen-Tabelle fuer Box-Wart, Homelab-Teil,
  Lucy, Hermes, Telegram, OpenChamber, Android-App.
- OFFENE-FAEDEN.md neu: Phasen 0-5 laut Plan (Phase 1 laeuft, Oberflaeche und Doku offen) und
  13 offene Einzelpunkte, alle am Code in main belegt.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Hitonabi
2026-09-24 15:38:10 +02:00
co-authored by Claude Opus 5.5
parent 59631601b9
commit 24e6dd81ba
6 changed files with 509 additions and 488 deletions
+64 -54
View File
@@ -1,65 +1,75 @@
# Arbeitsweise — wer der User ist und wie hier gearbeitet wird
# Arbeitsweise — wer der User ist, wie hier gearbeitet wird, was wohin gehört
_Kuratiert 10.07.2026. Gilt für JEDEN Agenten, der an diesem System arbeitet
(Box-Hermes, Hermes Desktop, Gemini/Antigravity, künftige)._
_Stand 24.09.2026. Gilt für jeden Agenten, der an diesem System arbeitet (Claude Code, OpenChamber/OpenCode,
Lucy auf der Box). Enthält seit 24.09. auch die frühere Grenzen-Landkarte._
## Der User (Hitonabi / „Commander")
## Der User (Hitonabi, „Commander")
- **Kein Software-Entwickler.** Selbstbild: „ich mache keine Updates". Er fasst keine
Konsole an und drückt keine Update-Knöpfe — alles muss ohne ihn funktionieren oder
per Knopf/Lucy/Telegram bedienbar sein.
- **GUI-first / „klicki bunti":** visuelle, klickbare Oberflächen sind sein Geschmack;
Terminal-Lösungen sind Fremdkörper. Sein Referenz-Erlebnis ist der
Antigravity-Agent-Manager-Stil: Aufträge verteilen, Agenten zuschauen, Diffs abnicken.
- **Produkt-Instinkt ernst nehmen:** seine „naiven" Fragen treffen oft den Kern
(Marketing-Filter → Fan-out-Kritiker; „alles autonom" → Appliance-Prinzip;
„Update verpassen?" → Radar). Vorschläge ernsthaft prüfen, nie abtun.
- Sprache: **Deutsch**, locker, direkt. Lucy nennt ihn „Commander".
- **Nordstern (wörtlich):** „Das komplette System muss AUTONOM funktionieren — in 6 Monaten
ohne Claude darf nichts brachliegen." Robustheit/Autonomie schlägt Features.
- **Kein Software-Entwickler.** Er fasst keine Konsole an und macht keine Updates von Hand. Alles muss ohne ihn
laufen oder per Knopf, Lucy oder Telegram bedienbar sein.
- **GUI-first:** klickbare Oberflächen statt Terminal. Sein Wunsch-Erlebnis: Aufträge verteilen, zusehen, Ergebnisse
abnicken.
- **Produkt-Instinkt ernst nehmen:** Seine einfachen Fragen treffen oft den Kern. Vorschläge ernsthaft prüfen, nie
abtun.
- **Sprache:** Deutsch, locker, direkt. Er schreibt oft roh und knapp. Lucy nennt ihn „Commander".
- **Nordstern (wörtlich):** „Das komplette System muss AUTONOM funktionieren — in 6 Monaten ohne Claude darf nichts
brachliegen." Robustheit und Autonomie schlagen Features.
## Die nicht verhandelbaren Regeln
## Die Regeln
1. **Verifizieren vor Behaupten.** Vor jeder Aussage/Änderung auf der Box messen
(SSH, Logs, curl, bench) statt aus Doku/Memory/Web zu schließen. Der Agenten-Erzählung
(auch der eigenen) nie glauben — Transcripts, worker.log, git-Status sind Beweise.
Mehrere erste Befunde kippten erst bei sauberer Gegenprobe.
2. **Scope challengen.** Ein Tool-/Technik-Vorschlag (auch vom User) ist kein
Umsetzungsbefehl: erst Use-Case klären, bei erkennbarer Fehlannahme kurz stoppen und
warnen. Lehrbuch-Best-Practice ≠ unser Use-Case (Beispiele: LobeChat, Tool Search).
3. **Propose-only + Mensch-Gate.** Jede Code-Zeile geht als Branch nach Gitea; gemergt wird nur vom User (Ampel grün).
Merge/Deploy NIE ohne grünes Gate. Bagatell-Klassen ohne Klick sind ausschließlich:
Doku/Wiki/Vault/Chronik/tote Dateien — nichts mit Code-Logik, immer Morgenlage-Bericht.
4. **Security-Config NIE ohne explizites User-Ja** (approvals, Tokens, ufw, sudoers,
command_allowlist). Direkt-Push auf main braucht ebenfalls ein explizites Ja.
5. **Fremd-Modell-Kritiker als Korrektiv.** Wer baut, benotet nicht selbst.
Zwei-Kritiker-Gate (Coder-Next + GLM), Urteil nach der Regel
**REPRODUZIERT-ODER-ABGELEHNT** — Freispruch nur mit belegtem Vorher/Nachher.
6. **Hermes-first vor Eigenbau.** Vor jedem Neubau prüfen, ob Hermes es nativ kann
(Eigenbau-Landkarte im Vault → `hermes --help`); Befund in den Vorschlag schreiben.
Hermes-Quellcode wird NIE gepatcht/geforkt.
7. **Alles reversibel:** Branch + Backup + Zeitmaschine + Pin-Register. Nichts bauen,
was Lucys ~1-s-Sprech-Latenz oder das Warm-Set gefährdet.
8. **Deutsch für alles User-Sichtbare** (Meldungen, Skills, Summaries, Karten).
Erste Zeile von Meldungen idealerweise: „Musst du etwas tun? NEIN/JA: …"
1. **Verifizieren vor Behaupten.** Vor jeder Aussage oder Änderung an der Box messen (SSH, Logs, `curl`, Messlauf),
statt aus Doku, Gedächtnis oder Web zu schließen. Der Erzählung eines Agenten (auch der eigenen) nie glauben:
Protokolle, Git-Stand und Messwerte sind Beweise.
2. **Scope challengen.** Ein Technik-Vorschlag (auch vom User) ist kein Bauauftrag: erst den Zweck klären, bei einer
erkennbaren Fehlannahme kurz stoppen und warnen. Lehrbuch-Praxis ist nicht automatisch unser Fall.
3. **Branch, Prüftor, dann Merge.** Nie direkt auf `main` arbeiten. `bash deploy/pruefen.sh` muss grün sein.
Claude darf bei grünen Prüfläufen selbst mergen und deployen (User-Entscheid 23./24.09.). Ein Direkt-Push auf
`main` ohne Branch braucht ein ausdrückliches Ja.
4. **Security-Config nie ohne ausdrückliches User-Ja** (approvals, Tokens, ufw, sudoers, command_allowlist).
5. **Endgültig löschen nur per User-Klick** (Modelle, Dateien und Reste auf der Box). Vorschlagen ja, selbst löschen nein.
6. **Hermes-first vor Eigenbau.** Vor jedem Neubau prüfen, ob Hermes es kann (`hermes --help`, Config, Plugins).
Hermes-Quellcode wird nie gepatcht oder geforkt.
7. **Alles reversibel:** Branch, Sicherung, Festhalten (Pin-Register). Nichts bauen, was Lucys Sprech-Latenz oder das
warme Hirn gefährdet.
8. **Deutsch für alles, was der User sieht** (Oberfläche, Meldungen, Skills, Zusammenfassungen, Commit-Messages).
Die erste Zeile einer Meldung sagt am besten, ob er etwas tun muss.
9. **Doku folgt dem Code.** Wer Verhalten ändert, zieht README, `docs/` und `deploy/jobs/README.md` im selben Branch
nach (Pflegeregeln: [docs/README.md](../README.md)).
## Rollen-Abgrenzung der Türen
## Die Flächen — was gehört wohin
- **Lucy (Electron-App)** = Zuruf, Voice, Begleitung — schlanke api_server-Lane, nicht mästen.
- **Hermes Desktop** = Arbeit: Projekte, Coding, Review, lange Threads (cli-Lane).
Faustregel: „Repo oder >2 Minuten → Desktop".
- **Telegram** = mobil + Melde-/Freigabe-Kanal (Alarmkette, Cron-Delivery).
- **MC2-Web-UI** = Verwaltung, Ideen, Chronik/Zeitmaschine, Wissen.
**Steuerpult, kein Chat** — Gesprächs-/Voice-Funktionen gehören zu Lucy/Telegram, nicht in MC2.
- **Gemini/Antigravity** = Notfall + Außen-Review, siehe [GEMINI_BRIEFING](../GEMINI_BRIEFING.md).
**Kern in einem Satz:** Box-Wart = Steuerpult (anschauen, klicken) · Lucy = Stimme und Gespräch · Hermes = das
Agenten-Fundament darunter (Quelle tabu) · Telegram = mobil melden · OpenChamber = Coding am PC.
**Bevor du ein Feature baust: [GRENZEN.md](GRENZEN.md)** — die volle „was gehört wohin"-Landkarte
inkl. Code-Ebenen (MC2 vs. Lucy vs. Hermes-Config/Skill/Hook, Quelle tabu) und der roten Linien.
| Fläche | Ort | Gehört hierhin | Gehört nicht hierhin |
|---|---|---|---|
| **Box-Wart** (MC2) | dieses Repo, `:9001` | Updates, Wächter-Hinweise, Modelle, Radar, Aufräumen, Dienste und Protokolle, Sicherungen, Einstellungen | ein Chat- oder Gesprächsfenster |
| **Homelab-Teil** (ab Phase 2) | gleiche Software als Container auf dem Proxmox-PC | Homelab-Geräte, deren Updates per Knopf, Erreichbarkeit | Dinge der KI-Box (die bleiben beim Box-Wart) |
| **Lucy** (Desktop-App) | Repo `F:\Coding Stuff\lucy` (Electron) | Sprache, Gespräch, proaktive Meldungen aus dem Briefkasten | Verwaltungs- und Update-Knöpfe |
| **Hermes** (Agent „Lucy" auf der Box) | `~/.hermes/` | Verhalten über `config.yaml`, `SOUL.md`, Skills, Plugins, MCP-Server | Änderungen am Quellcode in `~/.hermes/hermes-agent/` |
| **Telegram** | Hermes-Plattform | Meldungen empfangen, mit Lucy schreiben | eigene Oberflächen |
| **OpenChamber** | PC, Dateien unter `F:\Coding Stuff\…` | Coding; Modelle kommen von der Box über `:9001/v1` | Box-Verwaltung |
| **Android-App** (Phase 5) | noch offen | Push, Cockpit, Updates freigeben, Lucy per Sprache | – |
**Schnell-Entscheid „Ich will X bauen":**
- etwas anzeigen, verwalten, per Knopf auslösen → Box-Wart (Backend-Router dünn, Logik in `backend/services/`).
- reden, hören, proaktiv melden → Lucy.
- wie der Agent sich verhält (Werkzeug, Prompt, Fähigkeit) → Hermes-Config, `SOUL.md`, Skill, Plugin oder MCP-Server.
- etwas mobil melden → `deploy/notify.sh` (Telegram und Briefkasten in einem Aufruf).
- Wissen oder Doku ablegen → `docs/` in diesem Repo.
**Rote Linien:**
- Kein Chat im Box-Wart. Keine Update-Knöpfe in Lucy.
- Nie den Hermes-Quellcode ändern.
- Nie im Box-Checkout `~/mission-control-v2` von Hand ändern oder committen; neuer Code kommt nur über Gitea und
`deploy/deploy.sh`.
- Keine Doku in Lucys Gedächtnis kippen: Es lernt selbst und ist kein Ablageort.
## Wissens-Orte
- `docs/wissen/` (dieses Verzeichnis) = kuratierte Projekt-Wahrheit für alle Agenten.
- `AGENTS.md` (beide Repos) = verbindliche Bau-Regeln je Repo (lesen Zed/Kilo/Hermes nativ).
- `~/wissens-vault/` = Lucys Lernschicht (Träume, Radar, Eigenbau-Landkarte) — git-versioniert,
im MC2-UI als Wissens-Tab.
- Mem0 (`:8765`) = das LIVE-Gedächtnis (auto-lernend, semantisch) — kein Ablageort für Doku.
- `docs/` in diesem Repo = kuratierte Projekt-Wahrheit für alle Agenten (Index: [docs/README.md](../README.md)).
- `AGENTS.md` (hier und im Lucy-Repo) = verbindliche Bau-Regeln; OpenCode und Claude Code lesen sie selbst.
- `~/.hermes/memories/` = Lucys Gedächtnis; Hermes führt es selbst.
- Das Claude-Gedächtnis am PC = Arbeitsnotizen der Claude-Sitzungen, nicht verbindlich. Was bleiben soll, gehört hierher.