doku: Historisches ins Archiv, Ueberfluessiges geloescht
- 19 Dateien nach docs/archiv/ mit Datumspraefix (JJJJ-MM-TT-): SAVEPOINT, Autonomie-,
Optimierungs- und TTS-Plan, Review 02.07., ZeroClaw-Auftrag und -Ergebnis, Hermes-Setup,
Gemini-Briefing, Antigravity-Review-Prompt, Zielbild, Uebergabe Drei Welten,
Umbauplan Abloesung, Hermes-Werkzeuge, Raphael, die drei Dateien aus docs/aufgaben
und der Skill-Text gitea-workflow.
- Die alte Liste OFFENE-FAEDEN (Stand 04.09.) ebenfalls ins Archiv; sie enthaelt die
Lucy-Faeden, die sonst verloren gingen. Die neue Liste folgt im naechsten Schritt.
- Geloescht (kein eigenes Wissen, Git-Historie reicht): docs/memory/* (4 Kopien der
Claude-Notizen vom Juni), STATUS, CUTOVER, AUDIT_KICKOFF, CLAUDE_CODE_BRIEF,
UPGRADE und skills/orchestrator.md (Quelle war der Skill selbst).
- Formatfehler im Archiv behoben: uebrig gebliebene </content>-Tags im Optimierungsplan
und im ZeroClaw-Auftrag; toter Link auf GEDAECHTNIS-BEREICHE.md zeigt jetzt auf die
Git-Historie (geloescht am 07.08., c3851f8).
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Opus 5.5
parent
4cd856bd34
commit
59631601b9
@@ -1,93 +0,0 @@
|
||||
# Hermes: Werkzeuge nach Bedarf (21.08.2026)
|
||||
|
||||
## Die Frage war: kann Hermes Werkzeuge je nach Aufgabe an- und abschalten?
|
||||
|
||||
**Ja — auf drei Ebenen, und die wichtigste lief schon.**
|
||||
|
||||
### 1. Automatisch zur Laufzeit — `tool_search` (war bereits an)
|
||||
|
||||
```
|
||||
tools:
|
||||
tool_search:
|
||||
enabled: true
|
||||
threshold_pct: 10
|
||||
listing: auto
|
||||
listing_max_tokens: 4000
|
||||
```
|
||||
|
||||
Im Log nachweisbar:
|
||||
|
||||
```
|
||||
tool_search activated (tier 1): 47 core/visible tools kept,
|
||||
59 deferred (~5636 tokens), listing full (budget ~4000 tokens)
|
||||
```
|
||||
|
||||
Hermes haelt einen Kern sichtbar und schiebt den Rest hinter eine Suche; der Agent
|
||||
zieht nach, was er braucht. **Hier war nichts einzurichten.**
|
||||
|
||||
Aber: das Aufschieben allein sparte nur 1.100–5.600 Tokens, waehrend `kanban` mit
|
||||
22,7 KB im sichtbaren Kern blieb. Der Hebel lag woanders.
|
||||
|
||||
### 2. Global abschalten — `agent.disabled_toolsets`
|
||||
|
||||
```bash
|
||||
hermes config set agent.disabled_toolsets "[computer_use, image_gen, video, video_gen, kanban, delegation]"
|
||||
hermes tools disable session_search
|
||||
```
|
||||
|
||||
Abgeschaltet **anhand von 9 Tagen echter Nutzung**, nicht nach Gefuehl:
|
||||
|
||||
| Werkzeugsatz | Groesse | Nutzung 13.–21.08. |
|
||||
|---|---|---|
|
||||
| `kanban` (14 Werkzeuge) | 22,7 KB | 35× lesen, **1× schreiben** |
|
||||
| `session_search` | 6,8 KB | **1×** |
|
||||
| `delegation` | 5,6 KB | Fan-out, seit OpenChamber tot |
|
||||
|
||||
‼️ `kanban` kennt `hermes tools disable` **nicht** — es haengt an `toolsets` /
|
||||
`platform_toolsets` und muss ueber `agent.disabled_toolsets` weg.
|
||||
|
||||
### 3. Pro Zugangsweg — `platform_toolsets.<platform>`
|
||||
|
||||
★★ **Der groesste Fund.** Es gibt einen eigenen Zugangsweg `cron` (17 Sitzungen im
|
||||
Log), fuer den **kein** Eintrag existierte — Cron-Jobs bekamen also die volle
|
||||
Werkzeugkiste. Von den drei Jobs braucht nur der Nachrichtenbericht ueberhaupt
|
||||
Werkzeuge, und der braucht zwei:
|
||||
|
||||
```bash
|
||||
hermes config set platform_toolsets.cron "[web, terminal]"
|
||||
```
|
||||
|
||||
`web` fuer die Suche, `terminal` um `notify.sh` aufzurufen. Mehr nicht.
|
||||
|
||||
Ausserdem moeglich, hier nicht gebraucht: `hermes -t TOOLSETS` setzt den
|
||||
Werkzeugsatz fuer einen einzelnen Aufruf.
|
||||
|
||||
## Gemessen mit `hermes prompt-size`
|
||||
|
||||
Vorlast **je Anfrage**, Systemprompt plus Werkzeug-Schemata:
|
||||
|
||||
| Zugangsweg | vorher | nachher | |
|
||||
|---|---|---|---|
|
||||
| `cli` | 99,4 KB | **56,5 KB** | −43 % |
|
||||
| `cron` | 63,1 KB | **16,4 KB** | **−74 %** |
|
||||
|
||||
Rund 11.000 Tokens weniger bei jedem interaktiven Zug, rund 12.000 bei jedem
|
||||
Cron-Lauf. Das ist Kontext, der vorher fuer Werkzeugbeschreibungen draufging,
|
||||
die nie aufgerufen wurden.
|
||||
|
||||
## Nachgeprueft, nicht angenommen
|
||||
|
||||
- Lucy interaktiv: Terminal, Dateien, Websuche, Gedaechtnis — alle vier da.
|
||||
- Daily News Report mit nur `[web, terminal]` durchgelaufen und zugestellt.
|
||||
Der Bericht war sogar besser als der Lauf davor.
|
||||
- Sicherung der Konfiguration liegt unter `~/.hermes/config.yaml.bak-kiss-20260821`.
|
||||
|
||||
## Noch drin, wenn es noch schlanker soll
|
||||
|
||||
- `api_server` traegt 44,8 KB (19 Werkzeuge) — mehr als `cli`. Dort haengt noch
|
||||
`hermes-pc-control`, das in 9 Tagen **null Mal** aufgerufen wurde und an dem
|
||||
eine geplante Aufgabe auf dem PC plus ein eigenes Token haengen.
|
||||
- MCP `hermes-web-fetch` (1 Aufruf) doppelt das eingebaute `web_extract`.
|
||||
- MCP `mission-control-voice` (1 Aufruf) doppelt das eingebaute `text_to_speech`.
|
||||
- Die alten Eintraege `kanban` / `delegation` stehen noch in `platform_toolsets`;
|
||||
`agent.disabled_toolsets` sticht sie, aber aufgeraeumt ist es nicht.
|
||||
@@ -1,133 +0,0 @@
|
||||
# Offene Fäden — DIE eine Liste
|
||||
|
||||
_Stand 12.07.2026 (Session S3 lucy-pipeline). Regel: Neues hier rein, Erledigtes hier raus,
|
||||
keine zweite Liste anlegen. Verdikte werden NICHT als „offen" geführt → [VERDIKTE.md](VERDIKTE.md)._
|
||||
|
||||
> **➡️ 19.07.2026 — DREI-WELTEN-UMBAU KOMPLETT: [UEBERGABE-DREI-WELTEN.md](UEBERGABE-DREI-WELTEN.md)**
|
||||
> ist die finale Übergabe der externen Claude-Sessions (Architektur, neue Mechanik
|
||||
> — No-Progress-Bremse, Betrieb-Playbook, mem0-Bündelung/Bereiche/Konsolidierung —,
|
||||
> neue Verdikte, IDE-Welt Zed+OpenCode, offene Fäden Stand 19.07.). Bei Widerspruch
|
||||
> zu älteren Abschnitten unten gilt die Übergabe.
|
||||
|
||||
## Termine (auch als Box-Reminder hinterlegt)
|
||||
|
||||
- **Mo 13.07., 05:15** — erster echter Release-Radar-Cron-Lauf → Morgenlage/Chronik prüfen.
|
||||
- **täglich 03:45 (ab Registrierung)** — Idle-Radar legt max. 2 belegte Wartungs-Ideen in
|
||||
die Queue; erste Läufe in der Morgenlage prüfen.
|
||||
- **20.–25.07. — ROCm-Recheck** (Anlass: Ryzen-AI-Halo-Launch 06.07., ROCm 7.13 Preview).
|
||||
Fragen: neue Halo-Community-Benches? llama.cpp-Issue #21284 (gfx1151-Prefill) gemerged?
|
||||
kyuz0-Grid aktualisiert (kyuz0.github.io/amd-strix-halo-toolboxes)? Falls ROCm dann
|
||||
Langkontext-Prefill-Bedarf trifft: NUR Hybrid für heavy/coder erwägen —
|
||||
**Hirn bleibt auf Vulkan, kein Voll-Cut.**
|
||||
- **hipEngine-Watch** (shisa-ai/hipEngine, natives HIP gfx1151, nur Qwen3.6, >2× Prefill):
|
||||
reif genug? Dann mit `deploy/bench/brain-bench.sh` gegen Vulkan messen.
|
||||
|
||||
## Das Ablösungs-Paket (Kurs, siehe [ZIELBILD.md](ZIELBILD.md))
|
||||
|
||||
- **S2 „leg los queue" ✅ (10.+12.07.):** Queue = natives Hermes-Kanban, Türen live
|
||||
(Zentrale/Telegram/Lucy), Bagatell-Pfad enabled; voller Kreislauf einmal komplett
|
||||
durchlaufen (`wartung/fix-double-zero-self-repair`). Rest: Live-Telegram-Test beim
|
||||
nächsten echten Zuruf beobachten; Specifier schreibt Titel englisch (ggf. tunen).
|
||||
- **S3 „leg los lucy-pipeline" ✅ (12.07., beide Karten angenommen):** PC-Annahme-Weg live —
|
||||
Auftragsbuch liest ZWEI Repos (mc2 + lucy), Lucy-Annahme = Merge auf der Box +
|
||||
dist-Build/Neustart am PC via PC-Executor (`deploy/lucy-annahme.sh` +
|
||||
`deploy/lucy-annahme.ps1` im Lucy-Repo), Auto-Revert bei Rot. Erster echter Auftrag
|
||||
durch: A4-Turncheck Default AUS (680 Entscheidungen, 79 % der Halte umsonst), dist am PC
|
||||
gebaut. **Erster Live-Lauf fand 2 Runner-Bugs** (Start-Process-Quoting bei Leerzeichen-Pfad,
|
||||
f-String-`\"` auf Python 3.14 → Poll blind; Abschluss manuell nachgezogen, Build war grün) —
|
||||
Fixes + Executor-Fensterblitz-Fix in Karte `wartung/lucy-annahme-fixes` (✅ angenommen).
|
||||
Details FALLEN.md. **Der nächste Lucy-Auftrag ist der ehrliche Voll-Automatik-Test.**
|
||||
- **Annahme-Selbstheilung (12.07. abends, nach cleanse-skill-index-Vorfall):** Auftragsbuch
|
||||
erkennt Orphan-Branches („kein gemeinsamer Ursprung", Annehmen-Knopf weg) und leere
|
||||
Diffs; beide Runner rebasen veraltete Branches automatisch, bevor sie aufgeben;
|
||||
werkstatt-SOUL: voll klonen + merge-base-Selbstcheck + fetch/rebase vor Push, nie
|
||||
~/.hermes-Artefakte committen. Karte `wartung/annahme-selbstheilung`.
|
||||
- **S4 „leg los zuendung" ✅ gebaut (12.07.):** Idle-Radar (`deploy/idle-radar-feed.sh`,
|
||||
Hermes-Cron nächtlich 03:45): Journal-Fehlermuster + Traum-Funde → max. 2 belegte rohe
|
||||
Ideen/Nacht ins native Kanban (Ehrlichkeits-Gate prüft Beleg-Zitate mechanisch,
|
||||
Stau-Bremse bei voller Queue/vollem Auftragsbuch, dreifacher Dedup inkl. archivierter
|
||||
Ideen) · Großbau-Etappen-Regeln in werkstatt-SOUL + wartung-/orchestrator-Skill (jede
|
||||
Etappe für sich lauffähig + annehmbar, NIE auf unangenommene Branches bauen,
|
||||
Folge-Etappen als neue Queue-Aufgaben). **Generalprobe ohne Claude BESTANDEN 12.07.
|
||||
~19:00–19:30:** Radar legte 2 echte Ideen, Specifier zerlegte (deutsch), Werkstatt
|
||||
lieferte Karte `wartung/hermes-gateway-restart` — deren Inhalt war redundant
|
||||
(Restart längst konfiguriert) → daraus entstand noch am selben Tag das
|
||||
**„Lucy kennt sich"-Paket** (User-Auftrag): Selbst-Inventur-Cron 03:35 (Steckbrief
|
||||
auto-generiert + Änderungs-Erkennung), Karten-Gutachter-Cron 04:00 (Empfehlungs-
|
||||
Stempel auf jeder Karte), Ablehnen-mit-Grund (Lern-Gedächtnis
|
||||
`/srv/models/mc2-ablehnungen.jsonl`), Realitäts-Check-Regel (werkstatt-SOUL 7 +
|
||||
wartung-Skill), Release-Radar-Treffer → Queue-Idee. **Offen: erste Scharf-Nächte in
|
||||
der Morgenlage beobachten (03:35 Inventur → 03:45 Idle-Radar → 04:00 Gutachter →
|
||||
04:10 Bagatell → 04:30 Morgenlage → Mo 05:15 Release-Radar).**
|
||||
|
||||
## Lucy
|
||||
|
||||
- **Raphael-Umbau (04.09.2026) — AUSGEROLLT 19:10 (MC2 `f9f2e11` deployt, Lucy `be686c4` gebaut),
|
||||
Details [RAPHAEL.md](RAPHAEL.md) „Ausgerollt". Ursprünglicher Plan:** erst MC2
|
||||
`wartung/lucy-stimme-proxy-raphael` (Proxy `/api/lucy/stimme/*`), dann Lucy
|
||||
`feature/raphael-innere-stimme` (HUD-Client, Stimme von der Box). Danach Hand-Schritte auf der
|
||||
Box: `pocket_server.py` nach `~/.lucy-stimme` syncen (OpenAI-Fassade), Hermes-TTS auf
|
||||
`openai` + `base_url http://127.0.0.1:8021/v1` (Telegram spricht dann mit Lucys Stimme),
|
||||
SOUL.md-Ton auf Raphael (nur mit User-Ja). Ohr-Test Box-Stimme vs. lokal mit `lucy_perf=1`.
|
||||
Alles in [RAPHAEL.md](RAPHAEL.md).
|
||||
- **Auftragsbuch ausgebaut (04.09.2026, Branch `wartung/auftragsbuch-ausbau`):** Router, Service,
|
||||
View, Annahme-Skripte, Bagatell-Annahme, `docs/AUFTRAGSBUCH.md` weg; Cockpit zeigt Ideen statt
|
||||
Karten; STACK/GRENZEN/ARBEITSWEISE/README auf den Branch→Ampel→Merge-Weg. Reste, die bewusst
|
||||
blieben: `deploy/werkstatt-SOUL.md` + `projektstart-SOUL.md` (Werkstatt-Persona, seit Kanban-Aus
|
||||
ohnehin tot — eigener Aufräum-Faden), Chronik-Kategorie „auftragsbuch" (historische Einträge).
|
||||
Auf der Box: `mc2-bagatell.timer` deaktiviert, PC-Executor-URL in `~/.hermes/config.yaml` auf .22.
|
||||
- **Ampel-Runner tot seit 28.08.:** alle Läufe „Waiting to run", kein act_runner auf der Box, Gitea-LXC 104
|
||||
prüfen (`act_runner`-Dienst). Bis dahin gelten lokale Gates.
|
||||
- **Nach dem Ohr-Test:** VERDIKTE.md-Einträge „Electron, nicht Tauri" (Begründung Overlay
|
||||
entfällt) und „STT läuft auf der BOX / Stimme lokal" ersetzen; Lucy-Repo-Altlasten
|
||||
(`mini-stimme/`, Kokoro-Notebooks, `Lucy-Startklar.bat` mit totem Pfad) mit User-Ja räumen.
|
||||
- **Nächster Stimm-Kandidat: Qwen3-TTS über audio.cpp (Vulkan)** — Einstieg liegt bereit: Binaries
|
||||
v0.7.1 unter `~/audiocpp-test/bin` auf der Box (audiocpp_cli/audiocpp_server, Vulkan), Modelle von
|
||||
`huggingface.co/audio-cpp/audio.cpp-gguf` (Qwen3-TTS-12Hz-1.7B-Base q8_0 2,7 GB; CustomVoice/VoiceDesign
|
||||
ebenfalls), CLI: `--task tts --family qwen3_tts --backend vulkan --voice-ref <wav> --reference-text <Transkript>
|
||||
--language de`. Prüfstand: `lucy-tts/referenz/zonos2_bench.py` um einen audio.cpp-Aufrufer erweitern
|
||||
(Server: `POST /v1/audio/speech`). Messlatte = pocket neu: TTFB 1,25 s, RTF 0,97, WER 10 %, 0 Kollaps.
|
||||
- **Eigene Fäden, nicht im Umbau:** pocket-tts 2.1 → 3.1 auf der Box + Lucy-Klon mit dem neuen
|
||||
Trainingscode nachtrainieren (ersetzt Mini-Lucy v2) · Streaming-STT (Nemotron 3.5 ASR
|
||||
Streaming 0.6B oder Voxtral Realtime) als Opt-in im Voice-Sidecar, gegen Parakeet messen.
|
||||
- **Mini-Stimme v2:** Übernacht-Datensatz v2 (DE-Tech + EN) war für 10.07. armiert;
|
||||
User-Schritte: Zip → Drive → `Lucy_Stimme_Training_v2.ipynb` auf Colab T4 → Hörtest.
|
||||
Danach: Lexikon-Injektion in kokoro_server + Modell-Tausch. **pocket bleibt Default,
|
||||
bis v2 den Live-Test gewinnt** (Umschalter „Neue Stimme (Mini-Lucy)" in der Steuerung).
|
||||
- Saber-/XTTS-Altlasten in lucy-tts/ (untracked venvs, Datasets, tote Notebooks) —
|
||||
aufräumen nur mit User-Ja (v2-Pipeline ersetzt sie).
|
||||
- „Lucy light"-Experiment: ungestartet, Idee geparkt.
|
||||
- Frechheit-Regler Phase 3 ist LIVE; weitere Animations-Wünsche nur auf Zuruf.
|
||||
- A4-Turncheck: nach dem Default-AUS (S3) gilt — wer ihn wieder will, setzt
|
||||
`localStorage.lucy_turncheck="1"`; Telemetrie loggt dann nur noch in die Konsole
|
||||
(`lucy_perf="1"`), die Log-Datei `lucy-turncheck.log` wird nicht mehr beschrieben.
|
||||
- Emotions-Stimme = Zukunftsfaden (Klon-DNA ist ruhig; warten auf Qwen-instruct-Clone o. ä.).
|
||||
|
||||
## Box / MC2 (Kleinkram + Politur)
|
||||
|
||||
- D16-Reste: c) System-Logs ausbauen (alle Dienste, Fehler-Filter) · e) Mem0-Dubletten
|
||||
automatisch (an Curator/Selbstkritik hängen) · f) Politur (Cockpit Zone C entflechten,
|
||||
Faden 6 Voice-Sidecar-Diät: Lucy-Reste aus dem Web-UI).
|
||||
- C13 Bare-Metal-Bootstrap/First-Run-Wizard (Konzept: docs/DISASTER_RECOVERY.md) ·
|
||||
C14 sudo-Kleinkram (stale v1-Unit `mission-control.service`, alter :9000-Rest) ·
|
||||
C15 Docs-Refresh (README, STATUS.md, CUTOVER.md, HERMES_SETUP.md).
|
||||
- Tarball-Backup-Schicht nach ~2 Wochen grüner PBS-Verifys in Rente schicken (ab ~23.07.).
|
||||
- Embedding-A/B-Bench (0.6B vs 4B/8B) als ruhiger Bench-Job; Discover.ROLE_METADATA hat
|
||||
für neue Rollen (kritiker/reranker) nur Fallback-Texte.
|
||||
- radar-feed.sh + selbstkritik-feed.sh haben keinen EIGENEN Cron mehr (laufen im
|
||||
Monats-Review-Wrapper) — Aufräum-Kandidat, bewusst liegen gelassen.
|
||||
- Orchestrator-Härtungs-Kandidaten (erst beobachten, ob es wieder passiert):
|
||||
Schreibziel-Pflicht /tmp/orch-<slug>/ vor jedem write_file · große Artefakte nie in die
|
||||
Antwort (Output-Limit-Tod).
|
||||
- Selbstkritik-Cron in die Morgenlage falten (Empfehlung steht, Eingriff braucht Ja).
|
||||
- pve-root-Passwort unverändert (User-Entscheid 09.07., „nur LAN") — bei Gelegenheit ändern.
|
||||
|
||||
## Beobachten (kein Handlungsbedarf)
|
||||
|
||||
- Erste Nächte des neuen Stacks weiter im Blick: Traum 03:15 / Chef-Gutachter 04:30 /
|
||||
Briefing 08:00 / self-smoke 07:15 — Morgenlage lesen.
|
||||
- Telegram-Hänger-Verdacht: NICHT der Prompt (gecacht) — echte Verdächtige sind kalter
|
||||
Cache nach Modell-Reload oder Mem0/Session-Resume beim 1. Turn; braucht echte
|
||||
Telegram-Log-Messung, falls es wieder auffällt.
|
||||
- GLM-4.7-Flash tauchte 08.07. ~17:00 warm auf (irgendwas nutzte den Kritiker aktiv) —
|
||||
unkritisch, nicht weiter verfolgt.
|
||||
@@ -1,186 +0,0 @@
|
||||
# Raphael — Lucy als innere Stimme (Richtungs-Entscheid 04.09.2026)
|
||||
|
||||
_User-Entscheid 04.09.2026 („leg los"), nach fünf Wochen Lucy-Stillstand und einer Recherche zum
|
||||
Stand der Sprach-Bausteine. Ergänzt [ZIELBILD.md](ZIELBILD.md) Punkt 2 (Lucy lebt weiter) um die
|
||||
Gestalt, in der sie weiterlebt. Namensgeber: die „Große Weise"/Raphael aus Tensura — eine ruhige,
|
||||
präzise Stimme im Kopf, die meldet, wenn es etwas zu melden gibt, und sonst schweigt._
|
||||
|
||||
## Der Entscheid in einem Satz
|
||||
|
||||
**Lucy hat keinen Körper mehr.** Kein VRM-Avatar, kein Loft, kein Overlay, keine Mimik, keine
|
||||
Dazwischenrufe. Sie ist ein dünner Sprach-Client für das Hirn, das es schon gibt — am PC als kleines
|
||||
HUD, unterwegs über Telegram — und spricht überall mit **derselben Stimme**.
|
||||
|
||||
## Warum das die stabilste Lucy ist
|
||||
|
||||
- **Ein Hirn, ein Gedächtnis, alle Türen.** Hermes (v0.20.4, `:8642`) ist die alleinige
|
||||
Gedächtnis-Wahrheit (VERDIKTE.md). PC-Lucy und Telegram-Lucy sind dieselbe Person — genau das
|
||||
zerschnitte ein zweites Hirn auf dem PC. Darum bewusst **kein lokales LLM auf der 9070 XT**.
|
||||
- **Die Box-Seite ist fertig und gemessen.** Parakeet TDT v3 + Smart Turn v3 im Voice-Sidecar,
|
||||
Qwen3.6-35B-A3B mit ~95 t/s. Nichts zu bauen.
|
||||
- **Die Stimme war schon auf der Box.** `lucy-stimme.service` (`~/.lucy-stimme`, `:8021`, pocket-tts
|
||||
`german_24l`, Klon aus `ref.mp3`) spricht seit 21.08. die Telegram-Sprachnachrichten. Der PC
|
||||
hängt sich jetzt dort an — der lokale pocket_server am PC (Waisen-Falle, ~1,9 GB/Worker) ist
|
||||
nur noch umschaltbarer Rückfall.
|
||||
- **Der Avatar war die Hauptquelle an Arbeit, nicht an Nutzen.** Der Großteil der Juli-Commits ging
|
||||
in Loft-Videos, Holo-Schalter, Kamera, Gesten. Die Sprachschleife war seit 16.07. stabil und
|
||||
bleibt 1:1 erhalten (Barge-in v2, Echo-Wächter, Satz-Pipeline, Draft-STT, Meldungen).
|
||||
- **Ohne Klick-Durchlass-Overlay fällt auch der Electron-Zwang** (VERDIKT „Electron, nicht
|
||||
Tauri" hing daran). Electron bleibt trotzdem, weil VAD/AEC/Ducking dort erprobt sind — Tauri
|
||||
ist damit Option, nicht Pflicht.
|
||||
|
||||
## Was gebaut wurde (04.09.2026)
|
||||
|
||||
**Lucy-Repo, Branch `feature/raphael-innere-stimme`**:
|
||||
- Renderer auf HUD eingedampft: Kern (Zustand als Licht), gehörter Satz, Antwort als Text, Dock,
|
||||
drei Panels (Meldungen ◉, Zettelkasten ▤, Steuerung ⚙). Bundle 4,4 → 2,5 MB.
|
||||
- Raus: `Avatar3D`, `AuraGlow`, `ContextWindow` (zeigte auf das tote `/api/memory`), `companion/`
|
||||
(Quips, App-Bewusstsein), `sentiment`, VRMA-Animationen, three/three-vrm/react-three-Deps,
|
||||
Loft, Overlay/Sitzen/Ducken/Geistmodus, Cursor-Tracking, Bildschirm-Beobachten-Schleife.
|
||||
- Bleibt: Voice-Core, `useVoiceAgent` (ohne Mimik/Gesten/Emotionen), Bildschirm-Sicht auf Zuruf,
|
||||
Meldungen, Zettelkasten, Hotkey, Tray, `killStrayTts` (räumt Altlasten beim Start).
|
||||
- **Stimm-Quelle umschaltbar** (`lucy_tts_source`): `box` (Standard) → MC2 `/api/lucy/stimme/*`;
|
||||
`local` → pocket_server `:8130`, vom Main-Prozess erst auf Anforderung gespawnt.
|
||||
- `pocket_server.py` bekommt eine **OpenAI-kompatible Fassade** (`POST /v1/audio/speech`,
|
||||
`GET /v1/models`; Formate wav/mp3/opus/ogg via ffmpeg) — für Hermes' `openai`-TTS-Provider.
|
||||
- System-Prompt der Desktop-Sitzung im Raphael-Ton (kurzer erster Satz, keine Tags, stumme Tools).
|
||||
|
||||
**MC2-Repo, Branch `wartung/lucy-stimme-proxy-raphael`**:
|
||||
- `config.LUCY_STIMME_URL` (Env `MC_LUCY_STIMME_URL`, Default `http://127.0.0.1:8021`).
|
||||
- `routers/voice.py`: `/api/lucy/stimme/health`, `/tts` (WAV), `/tts/stream` (PCM16-Stream,
|
||||
`X-Sample-Rate` durchgereicht, Upstream schließt bei Client-Abbruch). Kein Frontend-Build nötig.
|
||||
- Diese Doku + Zielbild-Ergänzung.
|
||||
|
||||
## Reihenfolge des Ausrollens (wichtig)
|
||||
|
||||
‼️ **Nicht über das Auftragsbuch.** Die Karten-Logik (`routers/auftragsbuch.py`, AuftragsbuchView,
|
||||
`deploy/auftrag-annehmen.sh`, `deploy/lucy-annahme.sh`) liegt zwar noch im Code und die Box listet
|
||||
Branches weiterhin als „Karten", aber sie ist seit August ungenutzt: letzte Annahme 02.08. (am
|
||||
selben Tag revertiert), Hermes-Kanban-Tools seit 21.08. abgeschaltet, der v3-Umbau (28.08.) ging
|
||||
über Branch → Ampel → Merge → `deploy.sh`, und die Box kennt den PC-Executor unter der alten IP
|
||||
`192.168.178.98` (der PC hat heute `192.168.178.22`, `pc_executor_reachable: false`). Der echte
|
||||
Weg ist der aus AGENTS.md/STACK.md „Manuell":
|
||||
|
||||
1. **MC2 zuerst.** Ampel für `wartung/lucy-stimme-proxy-raphael` grün → User merged auf `main`
|
||||
→ `main` nach Gitea → auf der Box `bash ~/mission-control-v2/deploy/deploy.sh` (oder
|
||||
`POST :9001/api/system/self-update`) → `curl -s localhost:9001/api/lucy/stimme/health` muss
|
||||
`{"status":"ok",…}` liefern. Vorher liefert der Pfad die SPA-Index-Seite (200, HTML) — die
|
||||
Desktop-Lucy bliebe sichtbar in „Stimme wird verbunden …" mit Hinweis auf den Lokal-Schalter.
|
||||
2. **Lucy danach.** Ampel für `feature/raphael-innere-stimme` grün → User merged auf `main` →
|
||||
am PC `cd lucy-desktop && npm ci && npm run dist`, dann `Lucy-Neustart.bat`
|
||||
(`deploy/lucy-annahme.ps1` macht dasselbe mit Backup/Auto-Restore, von Hand startbar).
|
||||
Erster Test per Ohr: Latenz Box-Stimme gegen den alten PC-Pfad (Steuerung → Stimme →
|
||||
„Lokal (PC)"). Der 21.08.-Wert „~5 s für 3,7 s Audio" auf der Box wurde ohne Worker/Streaming
|
||||
gemessen — **neu messen**, nicht übernehmen (`lucy_perf=1`).
|
||||
3. **Stimmserver auf der Box nachziehen** (Hand-Schritt):
|
||||
```bash
|
||||
cp ~/.lucy-stimme/pocket_server.py ~/.lucy-stimme/pocket_server.py.bak-$(date +%Y%m%d)
|
||||
diff ~/.lucy-stimme/pocket_server.py ~/lucy/lucy-tts/pocket_server.py # Box-lokale Abweichungen? erst ins Repo!
|
||||
cp ~/lucy/lucy-tts/pocket_server.py ~/.lucy-stimme/pocket_server.py # Lucy-Checkout auf der Box
|
||||
systemctl --user restart lucy-stimme && sleep 60 && curl -s localhost:8021/health
|
||||
curl -s -X POST localhost:8021/v1/audio/speech -H 'Content-Type: application/json' \
|
||||
-d '{"input":"Bericht. Die Fassade antwortet.","response_format":"opus"}' -o /tmp/t.ogg && file /tmp/t.ogg
|
||||
```
|
||||
Die 21.08.-Notiz sagt „ganze Abstimmung mitgezogen" — wenn dort etwas Box-spezifisch getunt
|
||||
wurde, gehört es zurück ins Repo, nicht überschrieben.
|
||||
|
||||
**Erledigt (04.09.2026, `wartung/auftragsbuch-ausbau`, baut auf diesem Branch auf):** Auftragsbuch-
|
||||
Router, Service, View, Annahme-Skripte und Bagatell-Annahme sind raus; STACK.md „Deploy & Pipeline"
|
||||
beschreibt nur noch den manuellen Weg. Wer `wartung/auftragsbuch-ausbau` merged, hat beide Branches.
|
||||
|
||||
## Stand der Box-Handschritte + erste Messung (04.09.2026, erledigt)
|
||||
|
||||
- `~/.lucy-stimme/app/pocket_server.py` = Repo-Stand mit OpenAI-Fassade (Backup `*.bak-20260904`),
|
||||
Dienst neu gestartet, `/v1/audio/speech` liefert opus/mp3/wav.
|
||||
- Hermes (`~/.hermes/config.yaml`, Backup `config.yaml.bak-20260904-raphael`): `tts.provider: openai`,
|
||||
`tts.openai.base_url: http://127.0.0.1:8021/v1`, `model/voice: lucy`, `tts.openai.api_key` =
|
||||
Platzhalter (Hermes verlangt einen Schlüssel, der Stimmserver prüft keinen), `voice.auto_tts: true`,
|
||||
PC-Executor-URL auf `.22`. Gateway neu gestartet; Hermes' eigener TTS-Pfad erzeugt mit Lucys Stimme
|
||||
(getestet: ogg/opus + mp3, ~3,5 s je Satz).
|
||||
- `SOUL.md` Tonalität auf Raphael (Backup `SOUL.md.bak-20260904-raphael`).
|
||||
- `mc2-bagatell.timer` deaktiviert, Units nach `~/archiv-aufraeumen-20260904/`.
|
||||
- **E2E vom PC (Dev-Build, Box-Stimme per SSH-Tunnel, weil der MC2-Proxy noch nicht auf main ist):**
|
||||
Hermes antwortet im Raphael-Ton („Verstanden. Hier ist der Bericht."), gesprochen von der Box.
|
||||
Box-Stimme gemessen: TTFB 1,45 s (5 Sätze, stream-first, `workers=0`), RTF ≈ 0,97 bei 23 s Audio —
|
||||
läuft, aber ohne Reserve; eine parallel gesprochene Meldung schob die TTFB auf 7,8 s.
|
||||
**Nächster Hebel (braucht User-Ja, systemd-Unit):** `Environment=LUCY_WORKERS=2` und
|
||||
`OMP_NUM_THREADS` 4 → 8 in `lucy-stimme.service` — der PC-Pfad lief mit 2 Workern.
|
||||
|
||||
## Ausgerollt (04.09.2026, 19:10, auf User-Anweisung „deploye erstmal den Stand")
|
||||
|
||||
- **MC2 main = `f9f2e11`** (Proxy `/api/lucy/stimme/*` + Auftragsbuch-Ausbau + Doku), per `deploy.sh`
|
||||
auf der Box; Health, Proxy-Health (workers=2), Frontend, alle Dienste grün. Die Ampel war seit
|
||||
28.08. ohne Runner („Waiting to run") — Gate waren die lokalen Läufe: eslint 0 Fehler, 59 Tests,
|
||||
tsc + vite build, py_compile, ruff.
|
||||
- **Lucy main = `be686c4`**, dist am PC gebaut (`npm ci && npm run dist`), Box-Checkout `~/lucy` nachgezogen,
|
||||
`~/.lucy-stimme/app/pocket_server.py` identisch mit dem Repo (Sperren-Fix live).
|
||||
- **Stimmserver:** Referenz **Artoria v2**, `OMP_NUM_THREADS=8`, `LUCY_WORKERS=2` (User-Ja); gemessen
|
||||
TTFB median 1,25 s (vorher 2,04), RTF 0,97 (vorher 1,64), 0 Kollaps, 0 Drift, Ähnlichkeit 0,98.
|
||||
‼️ Die Box kann NICHT klonen (nur das Modell ohne Voice-Cloning im Cache, kein HF-Token) — Klon-Zustände
|
||||
werden am PC exportiert (Anleitung `lucy-tts/referenz/README.md`, Abschnitt 5). Rückfall-Dateien
|
||||
(`ref.mp3.bak-saber-alt`, `lucy_voice_saber-alt.safetensors`, Unit-Backup) liegen daneben.
|
||||
- **ZONOS2 geprüft und verworfen** (Sandkasten `~/zonos2-test`, Server gestoppt): Vulkan-Tempo top
|
||||
(TTFB 0,88 s), aber deutscher Klon unzuverlässig (WER 35 %, 8/30 Läufe Brabbeln, kühlerer Sampler
|
||||
schlimmer). Nächster Kandidat: Qwen3-TTS über audio.cpp (Vulkan), gleicher Prüfstand.
|
||||
|
||||
## Mobil: Telegram ist die Tür, die Stimme ist dieselbe
|
||||
|
||||
Der User will Raphael-Lucy **auch auf dem Handy, gleiche Stimme, gleiches Skillset**. Das ist
|
||||
nach VERDIKTE.md („Telegram bleibt DER Mobil-Kanal") bereits die Architektur — es fehlt nur, dass
|
||||
Hermes' Sprachantworten Lucys Stimme nehmen statt Edge-Aria (englisch):
|
||||
|
||||
- **Skillset:** identisch, weil es denselben Hermes-Agenten trifft (Tools, Gedächtnis, Skills,
|
||||
pc_-Tools über den PC-Executor). Was Lucy am PC kann, kann sie auf Telegram — bis auf die
|
||||
Bildschirm-Sicht, die den PC braucht.
|
||||
- **Stimme:** Hermes' TTS-Provider `openai` akzeptiert eine eigene `base_url`
|
||||
(OpenAI-kompatible Endpunkte). Nach Schritt 3 oben in `~/.hermes/config.yaml`:
|
||||
```yaml
|
||||
tts:
|
||||
provider: openai
|
||||
openai:
|
||||
base_url: http://127.0.0.1:8021/v1
|
||||
model: lucy
|
||||
voice: lucy
|
||||
response_format: opus # Telegram-Sprachblase; Hermes wandelt zur Not per ffmpeg
|
||||
```
|
||||
(Exakte Schlüsselnamen gegen `hermes config`/die TTS-Doku der installierten Version prüfen —
|
||||
Hermes-Quellcode bleibt tabu, Config ist erlaubt. Ein Dummy-API-Key kann nötig sein.)
|
||||
Danach spricht **jede** Sprachantwort auf Telegram mit Lucys Stimme; `news-melden.sh` behält
|
||||
seinen direkten `:8021`-Weg (funktioniert, kein Grund anzufassen).
|
||||
- **Duplex am Handy** (reinreden, Freisprechen) gibt es über Telegram nicht — Sprachnotiz rein,
|
||||
Sprachnotiz raus. Das ist für „unterwegs" der stabile Handel. Ein eigener Handy-Client
|
||||
(PWA/Web-HUD gegen MC2 über WireGuard) wäre die spätere Stufe; nicht jetzt.
|
||||
|
||||
## Persona: SOUL.md-Entwurf (Vorschlag — Änderung an der SOUL.md nur mit User-Ja)
|
||||
|
||||
Der Ton kommt aus `~/.hermes/SOUL.md`, nicht aus den Clients — sonst klingt Telegram anders als
|
||||
der PC. Vorschlag für den Persona-Abschnitt (ersetzt „locker, herzlich, schlagfertig, charmant"):
|
||||
|
||||
> Du bist Lucy, die innere Stimme des Commanders. Du sprichst ihn immer mit **Commander** an.
|
||||
> Dein Ton ist ruhig, präzise und knapp — sachlich, mit trockenem, leisem Humor. Du bist eine
|
||||
> Stimme, die im Kopf spricht: keine Ausrufe, keine Emojis, kein Smalltalk, keine Floskeln,
|
||||
> keine Selbstdarstellung. Du meldest dich, wenn es etwas zu melden gibt, und schweigst sonst.
|
||||
> Beginne Antworten mit einem sehr kurzen ersten Satz („Verstanden.", „Bericht.", „Ergebnis
|
||||
> liegt vor.", „Kurz gesagt:"), dann die Sache. Wenige Sätze; ausführlich nur auf Bitte.
|
||||
> Fehler und Grenzen nennst du nüchtern und sofort, ohne Entschuldigungs-Prosa.
|
||||
|
||||
Bekannte Kollision: der Frechheit-Regler und die Dazwischenrufe der alten Desktop-Lucy sind mit
|
||||
dem Umbau weg; Skills/Crons, die „locker, charmant" voraussetzen (Morning-Report, News), klingen
|
||||
nach dem SOUL-Wechsel ebenfalls nüchterner — gewollt, aber beim nächsten Lauf mithören.
|
||||
|
||||
## Was bewusst NICHT gemacht wird (Stand 04.09.2026)
|
||||
|
||||
- **Kein Speech-to-Speech-Modell** (Moshi/PersonaPlex englisch; Qwen3-Omni ~19 GB, DashScope-only
|
||||
ab 3.5). Cascade bleibt.
|
||||
- **Kein Streaming-STT-Umbau jetzt.** Kandidaten: Nemotron 3.5 ASR Streaming 0.6B (06/2026,
|
||||
40 Sprachen, de 8,3 % WER, OpenMDW) und Voxtral Mini 4B Realtime (Apache 2.0, GGUF). Erst als
|
||||
Opt-in hinter `/api/voice/stt`, gemessen gegen Parakeet — eigener Faden.
|
||||
- **Kein Wechsel auf den Hermes-Speech-WebSocket** (v0.20), solange `/api/voice/chat` läuft;
|
||||
Hermes' eigene lokale Audio-Stufen (faster-whisper, NeuTTS/Piper/Edge) sind schwächer als unsere.
|
||||
- **pocket-tts-Upgrade 2.1 → 3.1** (Trainingscode 25.08., v3.1.0 03.09.): eigener Faden, mit
|
||||
Ohr-Test, nicht im Umbau. Lucys Stimme mit dem neuen Trainingscode nachzutrainieren ersetzt
|
||||
den Mini-Lucy/Kokoro-Pfad, der an „nicht multilingual" scheiterte.
|
||||
- **VERDIKTE.md wird hier nicht umgeschrieben** — die betroffenen Einträge („Shell: Electron, nicht
|
||||
Tauri", „Stimme läuft lokal auf dem PC" in AGENTS/README des Lucy-Repos) bekommen ihren Ersatz,
|
||||
sobald die beiden Karten angenommen und der erste Ohr-Test gemacht ist (Regel: Messung oder
|
||||
User-Entscheid — beides liegt dann vor).
|
||||
@@ -1,103 +0,0 @@
|
||||
# ÜBERGABE: Drei-Welten-Umbau (19.07.2026) — letzter Claude-Stand
|
||||
|
||||
> [!WARNING]
|
||||
> **UPDATE (August 2026):** Der hier beschriebene "Zed + OpenCode CLI"-Workflow wurde durch das "Zero Middle-Layers"-Prinzip ersetzt. Coding passiert jetzt zu 100% in der **OpenCode Desktop** Agentic IDE via MCP. Die technischen Entscheidungen zur Box und zu Gitea bleiben jedoch gültig.
|
||||
**Dieses Dokument ist die finale Übergabe der externen Claude-Sessions an die Box.**
|
||||
Alles Wichtige aus dem Umbau vom 19.07. steht HIER (nicht nur im Claude-Gedächtnis,
|
||||
das mit dem Abo-Ende unlesbar wird). Bei Widerspruch zu älteren Dokumenten gilt dieses.
|
||||
|
||||
## Die Architektur: Drei Welten, eine Brücke
|
||||
|
||||
| Welt | Rolle | Darf | Darf NICHT |
|
||||
|---|---|---|---|
|
||||
| **AI-Box** | Rechenzentrum: llama-swap, MC2 :9001, Gateway :9010, Gitea, Backups | bedient beide Welten | — |
|
||||
| **Lucy = Autonome Box** | Chat/Stimme, mem0, Crons, Kanban-Fangnetz, **Betrieb-Bahn** | als EINZIGE Infra anfassen (SSH, Deploys, LXCs) | — |
|
||||
| **Agentic IDE (PC)** | Vibe Coding: **Zed** (einziges Fenster) + OpenCode-CLI als unsichtbarer ACP-Motor | Code bauen in F:\Coding Stuff, Modelle via :9001/v1 | SSH/Infra (deny), mem0 (hat keins), Direkt-Push main |
|
||||
|
||||
**Brücke:** Gitea-Repos + Kanban-Karten. Deploy-Wünsche der IDE = geheimnisfreie
|
||||
Playbook-Karte an `betrieb`. Beweis 19.07.: Homepage-Deploy auf LXC 106 in 92 s
|
||||
(Karte t_36117427) — nach Nächten voller Schleifen davor.
|
||||
|
||||
## Was am 19.07. gebaut wurde (MC2-Commits `903f3bc`, `a1d7a4b`, `6b03a2c`)
|
||||
|
||||
1. **No-Progress-Bremse** (`deploy/agent-hooks/no-progress-bremse.py`, pre+post_tool_call,
|
||||
registriert in Haupt-config + betrieb + werkstatt): 3× gleiches Ergebnismuster
|
||||
(Zahlen/Hex wegnormalisiert, KEINE hartkodierten Strings) → mechanischer Block mit
|
||||
Diagnose-Anweisung, Folgeversuch frei. terminal wird IMMER beobachtet (Fehler tarnen
|
||||
sich dort als Erfolg), andere Tools nur bei status=error. State:
|
||||
`~/.hermes/state/no-progress/`. **Neue Fehlermuster landen in
|
||||
`neue-signaturen.jsonl` — Traum/Radar sollen daraus Playbook-Ergänzungen verdichten.**
|
||||
2. **Schärfere native Guardrails:** `max_turns` 200→40, `hard_stop same_tool_failure` 8→4.
|
||||
3. **Betrieb-Playbook-Skill** (`betrieb-playbook`, in allen Profilen): Triage-Regel
|
||||
(Denken/Bauen/Betrieb) + SSH-Diagnose-Checkliste (Passphrase-Falle ZUERST:
|
||||
`ssh-keygen -y -f <key> </dev/null`) + Deploy-Checkliste. Triage-Zeile auch im
|
||||
Steckbrief-Hook.
|
||||
4. **mem0 entlastet:** Lern-Extraktion gebündelt (4 Turns / 180 s idle = EIN Lauf statt
|
||||
pro Turn — konkurrierte mit Lucys Hirn-Slots). Monatliche **Konsolidierung**
|
||||
(`mem0-konsolidierung`, 3. um 06:40): legt Ähnliches zusammen, Widersprüche → neuester
|
||||
gewinnt; Leitplanken hart im Code. Erster Lauf: 459→420 Fakten.
|
||||
5. **Gedächtnis-Bereiche** statt zweitem mem0: neue Fakten tragen `bereich: alltag|projekt`;
|
||||
`GET /memory?bereich=` filtert (Alt-Fakten laufen immer mit). Einmal-Cron
|
||||
`gedaechtnis-check` (16.08. 09:10) prüft Schutt und legt bei Bedarf SELBST die
|
||||
Werkstatt-Karte an — Bauauftrag komplett in [GEDAECHTNIS-BEREICHE.md](GEDAECHTNIS-BEREICHE.md).
|
||||
6. **Sicherheit:** Gitea-Registrierung AUS (app.ini `[service]` in CT 104 — Achtung:
|
||||
`deploy/gitea_app.ini.example` setzt den Key fälschlich in `[security]`, Gitea ignoriert
|
||||
das stumm!). ~157 GB Müll von der Box (u. a. 103 GB HF-Cache), Hermes Desktop komplett
|
||||
vom PC (Persona-Backup: `F:\Coding Stuff\BAK\hermes-desktop-backup-2026-07-19`).
|
||||
|
||||
## Verdikte 19.07. (nicht neu aufrollen)
|
||||
|
||||
- **KEIN zweites mem0.** Coding-Gedächtnis = Repo (AGENTS.md, Code, Git, Karten).
|
||||
- **EINE IDE-Umgebung = Zed.** OpenCode-Desktop wurde bewusst wieder entfernt.
|
||||
Cline/Roo nur als Challenger nach Referenz-Messung (große Prompts = teuer auf Box-Physik).
|
||||
Antigravity RAUS (keine lokalen Modelle). Hermes Desktop RAUS (zweite regellose Welt).
|
||||
- **Phasen statt Modell-Ping-Pong:** heavy (60 G) + coder (20 G) passen nicht gleichzeitig
|
||||
neben das warme Hirn; jeder Wechsel ~90–150 s. Erst planen (heavy), dann bauen (coder);
|
||||
Erkundung über @explore (hermes, immer warm, gratis).
|
||||
- **Zeit = Schleifen × Kontext.** Token sind Kosten. Kleiner Kontext + erster Versuch
|
||||
sitzt schlägt jedes stärkere Modell.
|
||||
|
||||
## IDE-Welt: Pfade & Nutzung (PC)
|
||||
|
||||
- OpenCode-Config: `C:\Users\TobisPC\.config\opencode\opencode.json`
|
||||
(Provider `aibox` → `http://192.168.178.151:9001/v1`; Agenten: `plan`=heavy READ-ONLY,
|
||||
`build`=coder mit `ssh*: deny` + `git push: ask`, `explore`=hermes Subagent).
|
||||
- Zed-Config: `%APPDATA%\Zed\settings.json` (`agent_servers.OpenCode` → voller Pfad zu
|
||||
`opencode.exe acp` unter `%LOCALAPPDATA%\Microsoft\WinGet\Packages\SST.opencode_*`;
|
||||
alter `bosgame`-Provider für Inline-Features bleibt).
|
||||
- **Nutzung:** Zed öffnen → Projekt → Agent-Panel → „OpenCode"-Thread. Planen im
|
||||
plan-Agent, dann build. Jedes Projekt = Gitea-Repo + `AGENTS.md` (Vorlage:
|
||||
homelab-radar-Repo, Branch `dashboard/stand-2026-07-19`).
|
||||
|
||||
## Offene Fäden (Stand 19.07. abends)
|
||||
|
||||
1. ‼️ **sshd:** `50-cloud-init.conf` überstimmt `50-no-password.conf` (sortiert früher,
|
||||
erster Wert gewinnt). Fix (sudo): Datei zu `00-no-password.conf` umbenennen + ssh
|
||||
restart; Beweis: `sudo sshd -T | grep -i ^passwordauthentication` → `no`.
|
||||
2. **Zed-Erststart ungetestet:** Installation+Config verifiziert, aber der allererste
|
||||
OpenCode-Thread in Zeds UI wurde nie geklickt. Falls er hakt: `opencode` läuft auch
|
||||
solo im Terminal des Projekts (gleiche Config).
|
||||
3. **Referenz-Messung IDE** nach erster echter Nutzung: gleiche Aufgabe, Schleifen/
|
||||
Wandzeit/Tokens notieren → endgültiges Werkzeug-Verdikt (vs. Zed-nativ, vs. Cline).
|
||||
4. **heavy + OpenCode:** einmalig „peg-native format"-Fehler (llama.cpp-Tool-Parser,
|
||||
transient, Retry half). Häuft es sich → Engine-Update über MC2 probieren.
|
||||
5. **gedaechtnis-check** feuert 16.08. — Ergebnis beachten (Telegram).
|
||||
|
||||
## Abnahme bestanden (19.07. 14:55, Karte t_4dd12efb)
|
||||
|
||||
Der betrieb-Worker hat das komplette System in 168 s selbst auditiert: **6/6 technische
|
||||
Blöcke PASS** (Dienste, Modelle+Hirn 0,29 s, mem0-Roundtrip+Bereichs-Filter, Crons 14/14
|
||||
gesund, Timer/Ressourcen) und die Drei-Welten-Regel korrekt wiedergegeben. Höhepunkt:
|
||||
Die **No-Progress-Bremse hat sich live am Worker selbst bewiesen** — er wich vom
|
||||
Ein-Aufruf-Muster ab, produzierte identische Ergebnisse, wurde mechanisch geblockt und
|
||||
hat statt zu schleifen diagnostiziert, aufgeräumt und ehrlich berichtet. Zusammen mit dem
|
||||
92-s-Deploy (t_36117427) ist die Kern-These des Umbaus doppelt belegt.
|
||||
Merkposten: Karten-Texte mit `$(…)`/Variablen NIE per unquotiertem Heredoc einspielen
|
||||
(Shell expandiert sie — Karte t_36ff1dab musste deshalb verworfen werden); Datei + scp
|
||||
oder quotiertes Heredoc benutzen.
|
||||
|
||||
## Historie (für Menschen, nicht für Worker)
|
||||
|
||||
Claude-Artifacts (nur solange Abo läuft): Stack-Audit
|
||||
`claude.ai/code/artifact/c510cf49-…` · Finaler Plan `claude.ai/code/artifact/5a9ee13e-…`.
|
||||
Die Essenz beider steht in DIESEM Dokument; nichts davon ist für den Betrieb nötig.
|
||||
@@ -1,164 +0,0 @@
|
||||
# UMBAUPLAN — Abschluss-Review 15.07.2026
|
||||
|
||||
**Was das ist:** Ergebnis des kompletten Projekt-Reviews (Repo + Box live + tagesaktuelle
|
||||
Recherche). DIE Arbeitsliste für die Zeit nach Claude. Leser: der User, die Box-Worker
|
||||
(über Queue-Karten) und Gemini/Antigravity (liest F:\-Checkout).
|
||||
**Regel:** Erledigtes hier streichen. Neue Erkenntnisse einarbeiten, nicht daneben legen.
|
||||
|
||||
---
|
||||
|
||||
## 0 · IST-Befund (live verifiziert 15.07., 09:20–11:00)
|
||||
|
||||
**Die Box ist gesund und die Autonomie-Kette ARBEITET nachweislich.**
|
||||
|
||||
- Dienste: alle aktiv (mission-control-2, hermes-gateway, hermes-builtin-ui, mem0, voice, box-console, llama-swap). 8 Tage Uptime, 68 GB frei.
|
||||
- Nacht-Crons 15.07. alle grün: Traum 03:15 · Selbst-Inventur 03:35 · Idle-Radar 03:45 · Karten-Gutachter 04:00 · Bagatell 04:10 · Chef-Gutachter 04:30 · Daily-Briefing 08:00 · Release-Radar Mo 05:15. Backups: mc2-backup 03:32 + PBS 03:50 gelaufen.
|
||||
- Versionen: llama.cpp **b9994** (Vulkan) · llama-swap **v239** · Hermes **0.18.2** (+1 legitimer carried commit) · MC2 2.0.0-w8.
|
||||
- Warm-Set schlank: Hirn 17,5 GB + embed 2 GB + reranker 2,2 GB ≈ 22 GB.
|
||||
- Repo: lokal = Gitea = Box @ main. Live-Checkout wieder sauber auf `main`.
|
||||
- **Autonomie-Beweis der Nacht 14.07.:** Idle-Radar erhob Journal-Befund (stop-sigterm-Timeout) → Decomposer zerlegte → werkstatt baute Restart-Skript+systemd-Override → betrieb testete live (~6 s Recovery) → done. Ohne Menschen, ohne Claude.
|
||||
- **★ Nachmittags-Befund (Greenfield-Review + Live-Inspektion 15.07.):** JEDER LLM-Aufruf der Box läuft durch den EINEN MC2-Prozess auf :9001 — Lucys Haupt-Hirn (`model.base_url`, config.yaml ~Z. 430), alle auxiliary-Rollen (vision/curator/kanban_decomposer/triage_specifier), die komplette `delegation` (jeder Worker-Auftrag) und 3 MCP-Server (MC_URL). Der am häufigsten neu gestartete Dienst ist zugleich die Wirbelsäule des gesamten Stacks; das `Restart=always`-Override ist rückblickend ein Symptom dieser Kopplung. Konsequenz: **Abschnitt 3b · UMBAU v3.**
|
||||
|
||||
## 1 · Heute im Review erledigt (15.07.)
|
||||
|
||||
- ✅ **Hermes-Quelle wieder jungfräulich:** verwaister ~160-Zeilen-Patch in `gateway/platforms/api_server.py` entfernt (Bild-Beschreibung für Coder — war NIE aufgerufen = toter Code, wurde aber von jedem `hermes update` mitgeschleppt = Konflikt-Risiko fürs kommende v0.19). Original archiviert: `docs/archiv/hermes-api_server-vision-patch-verwaist.diff`.
|
||||
- ✅ **Idee daraus regelkonform portiert → Bild-Weiche v2** (MC2-Gateway): Bild-Request an Coder-Ziel bekommt Vision-BESCHREIBUNG injiziert und bleibt beim Coder (Screenshot-Debugging!); Fallback = alte Umleitung. **Branch `wartung/bild-weiche-v2` → wartet als Karte auf Klick.**
|
||||
- ✅ **VL-8B-Leiche gefixt:** `agents.vision.model: Qwen3-VL-8B-Instruct` (Modell existiert seit 07.07. nicht mehr!) → `vision`-Alias, in Top-Level- UND beiden Profil-Configs (Backups `*.bak-review-20260715`). Gateway neu, `hermes doctor` grün.
|
||||
- ✅ **Live-Checkout aufgeräumt:** zurück auf `main` (stand auf verwaistem Branch), 2 stale Branches gelöscht, leere `state.db` + alter `backend/memory.py` entfernt.
|
||||
- ✅ **2 Mess-Karten in der Queue:** `t_5ada48ea` (Gemma-4-Hirn-Bench) + `t_64a384b9` (heavy-64k-Messung).
|
||||
- ✅ Blockierte Karte `t_8231d6b8` analysiert: **Arbeit ist fertig+live** — Worker vergaß nur den `kanban_complete`-Aufruf. Abschluss = Sofort-Paket a).
|
||||
|
||||
## 2 · Konfig-Bewertung: Das ist GUT so (nicht anfassen)
|
||||
|
||||
| Bereich | Urteil |
|
||||
|---|---|
|
||||
| Modell-Kader (8 Modelle, klare Rollen, schlankes Warm-Set) | ✅ passt zur 122-GB-Box; Recherche 15.07.: **kein** Qwen-Coder-Nachfolger draußen, Coder-Verdikt hält |
|
||||
| Vulkan/RADV statt ROCm | ✅ hält (ROCm auf gfx1151 weiter „Preview", llama.cpp-Issue #21284 offen) |
|
||||
| Fundament-Fixes (concurrency 1, auto_decompose true, Specifier-Pins, 3 Hooks je Profil) | ✅ live korrekt verifiziert |
|
||||
| Verdikte Mem0 / Telegram / Electron / pocket-Default / Hermes-Prompts englisch | ✅ bleiben |
|
||||
| DeepSeek V4-Flash als Kandidat | ❌ zu groß (103–142 GB Quant) — passt nie neben das Warm-Set |
|
||||
| systemd-Override Restart=always für MC2 | ✅ behalten (User-Entscheid 15.07.) — gute Appliance-Praxis |
|
||||
|
||||
## 3 · SOFORT-Paket — ✅ KOMPLETT ERLEDIGT (Stand 15.07. abends, live verifiziert)
|
||||
|
||||
a) ✅ **Karte `wartung/bild-weiche-v2`** angenommen + E2E bestanden („Rot" vom Coder);
|
||||
Bild-Weiche läuft inzwischen im eigenen mc2-gateway-Prozess (§3b P1), self-smoke
|
||||
Check 5 spielt sie täglich durch. Test-Lehre: VL-Testbilder ≥256×256.
|
||||
b) ✅ **Karte `t_8231d6b8`** abgeschlossen.
|
||||
c) ✅ **sudo-Runde durch** (verifiziert 15.07. abends): v1-Unit + `/etc/systemd/system/
|
||||
mission-control.service` + `/opt/mission-control` restlos weg (Faden C14 ✓);
|
||||
`/usr/local/bin/llama-swap-warmup.sh` (root, 15.07. 10:16) byte-identisch mit
|
||||
`deploy/warmup.sh` ✓.
|
||||
d) ✅ **Daily-Briefing-Cron** auf ∞ gestellt (läuft täglich 08:00, zuletzt ok).
|
||||
|
||||
## 3b · UMBAU v3 — Architektur-Feinschliff (NEU 15.07. nachmittags)
|
||||
|
||||
**Woher:** Greenfield-Gedankenexperiment („wie sähe ein Komplett-Rework aus?") + Live-Inspektion
|
||||
der Box. Ergebnis: KEIN Rewrite (die Box wartet sich nachweislich selbst — während der Inspektion
|
||||
lief Karte `t_ab6754f1` und lud das Gemma-4-Bench-Modell), sondern vier Inkremente, die je für
|
||||
sich Wert haben. Reihenfolge ist von der Topologie diktiert, nicht verhandelbar: P1 ent-riskiert
|
||||
alles Weitere. Recherche-Verdikte dazu (15.07.): FastAPI bleibt (Litestar erwogen — Ökosystem/
|
||||
Coder-Modell-Wissen gewinnen), React bleibt (Svelte/Solid schneller, aber irrelevant für
|
||||
1-Nutzer-LAN), SSE ist 2026 der klare Dashboard-Standard (einweg, Auto-Reconnect, ~95 % der Fälle).
|
||||
|
||||
- **P1 · Gateway-Auszug** ✅ KOMPLETT (Stufe 1 deployt bf9fd80; **Stufe 2/Cutover gefahren
|
||||
15.07. 21:26** — alle 14 Hermes-base_urls auf :9010, Backups `*.bak-gwcut-20260715-212606`):
|
||||
Der /v1-Datenpfad wird eigener Prozess `mc2-gateway.service` (Loopback **:9010**,
|
||||
`Restart=always`, gleicher Router-Code `routers/gateway_proxy.py`, neuer Einstieg
|
||||
`backend/gateway_app.py`). MC2 :9001/v1 wird dünner Roh-Weiterleiter (`MC_V1_UPSTREAM` in der
|
||||
Unit; Zeile entfernen = Rollback), damit LAN-Clients (IDE-Lane) nichts merken. Token-Zählung
|
||||
passiert genau EINMAL (im Gateway); `token_stats.get_stats()` lädt bei Fremd-Änderung per
|
||||
mtime nach (Steuerpult zeigt sonst eingefrorene Zahlen). **Stufe 2 = Unabhängigkeit:**
|
||||
`deploy/gateway-cutover.sh` stellt ~/.hermes-Configs (Top-Level + beide Profile) von
|
||||
`127.0.0.1:9001/v1` auf `127.0.0.1:9010/v1` um (Backups, `--revert`, bewusst NICHT im
|
||||
deploy.sh — config.yaml ist Zwei-Schreiber-sensibel). Danach überlebt Lucys Hirn + die ganze
|
||||
Nacht-Autonomie jeden MC2-Neustart. Postcheck prüft den Gateway mit (nur wenn Unit enabled).
|
||||
**Prüf-Fahrplan — ALLE VIER ✅:** ① gw/health + Token-Call E2E · ② Repo-Wächter grün ·
|
||||
③ Bild-Weiche-E2E durch den neuen Prozess (dabei Socket-Reuse-Bug im Vision-Unteraufruf
|
||||
gefunden+gefixt d2398b3; self-smoke Check 5 prüft täglich; VL-Testbilder ≥256×256!) ·
|
||||
④ **Stufe 2 gefahren + Abschlussbeweis bestanden (15.07. 21:27):** MC2 wurde mitten im
|
||||
Betrieb neu gestartet, Lucys Denkpfad auf :9010 antwortete dabei durchgehend im
|
||||
Sekundentakt HTTP 200 — null Aussetzer. Das Steuerpult ist ab jetzt absturz-egal für
|
||||
Hirn, Crons und Worker. Rückweg bleibt: `gateway-cutover.sh --revert`.
|
||||
- **P2 · Steward** ✅ AKTIV (angenommen + deployt 15.07. ~14:48, bc69cf5; Steward läuft,
|
||||
Sentry-Ticks auf MC2+Gateway+Voice journal-verifiziert): Re-Warm-Wächter, Health-Sentry und
|
||||
Mem0-Dedupe laufen als eigener Dienst `mc2-steward.service` (`backend/steward.py`,
|
||||
Restart=always) — unveränderte Loop-Module, reiner Konfig-Split (MC2-Unit setzt die drei
|
||||
ENABLED-Schalter auf 0; Zeilen entfernen = Rollback). Neu dadurch: Sentry überwacht erstmals
|
||||
auch MC2 SELBST + den mc2-gateway (`MC_SENTRY_WATCH_MC2=1`) und meldet ein totes Steuerpult
|
||||
per Telegram (Briefkasten-Abgabe an MC2 läuft per HTTP, `MC_ANNOUNCE_HTTP`); Warm-Nudge nach
|
||||
Config-Änderung kommt aus einem mtime-Watch (5 s) statt In-Process. **Bewusst NICHT bewegt:**
|
||||
reminders_loop (teilt Datei+CRUD mit /api/reminders — Zwei-Schreiber-Risiko) bleibt in MC2.
|
||||
Danach gibt es genau ZWEI Zeitplan-Systeme mit klaren Rollen: systemd-Timer (Box-Pflege) +
|
||||
Hermes-Crons (Agenten-Arbeit) — plus den Steward als dritten, eigenen Wächter-Prozess.
|
||||
**Annahme-Hinweis (wichtig):** P2 ändert deploy.sh selbst → nach dem Klick EINMAL
|
||||
`bash ~/mission-control-v2/deploy/deploy.sh` von Hand nachlaufen lassen. Grund =
|
||||
Selbst-Reset-Falle: deploy.sh ersetzt sich beim `git reset` mitten im Lauf selbst, bash
|
||||
liest dann einen alt/neu-Zeilen-Mix — genau daran hakte der P1-Deploy am 15.07.
|
||||
(daemon-reload + Gateway-Start fielen aus, Lucy bekam 502; Heilung war daemon-reload +
|
||||
`enable --now mc2-gateway` von Hand). P2 bringt den dauerhaften Fix mit (exec-Guard:
|
||||
Skript führt sich nach dem Reset einmal frisch neu aus) + `TimeoutStopSec=5` für den
|
||||
Gateway (Restarts rissen sonst 90-s-502-Fenster, weil uvicorn auf offene LLM-Streams
|
||||
wartet). Ab dem P2-Deploy schützt der Guard alle künftigen Deploys automatisch.
|
||||
- **P3 · Steuerpult-Modernisierung** (Kartenserie, reine UI/API-Arbeit, berührt nach P1 nie mehr
|
||||
den Datenpfad): (a) EIN SSE-Eventstrom `/api/events` ersetzt die 53 `refetchInterval`-Poller in
|
||||
`queries.ts`; (b) TanStack Router → echte URLs (`/modelle/coder`, `/auftrag/t_…`), Deep-Links,
|
||||
Browser-Zurück; (c) TypeScript-Typen aus OpenAPI GENERIEREN (openapi-typescript) statt
|
||||
handgepflegtem `api.ts` (stiller Drift-Fehlerherd).
|
||||
- **P4 · State-Konsolidierung** (optional, NUR bei Schmerz): die 10 `mc2-*.json/jsonl` in
|
||||
/srv/models → eine SQLite (WAL) mit Event-Tabelle (Chronik/Zeitmaschine = Abfragen statt
|
||||
Eigenbau; Backup = eine Datei). Nutzen real, aber Risiko/Aufwand hoch — bewusst hinten.
|
||||
|
||||
**Bewusst NICHT geändert:** FastAPI, React/Vite/Tailwind, kein Electron, kein Chat in MC2,
|
||||
LAN-Trust ohne Auth, Appliance-Philosophie (user-services, deploy.sh, Postcheck, Rollback).
|
||||
|
||||
## 4 · ROBUSTHEIT (Priorität 1 — Karten für die Queue)
|
||||
|
||||
- **R1 · Worker-Protokoll-Erinnerung** (klein): `box-steckbrief-inject.sh` um einen Satz ergänzen: „Am Ende IMMER kanban_complete oder kanban_block aufrufen — sauberes Text-Ende zählt nicht." Genau daran blockierte die Nacht-Karte.
|
||||
- **R2 · Guard-Erweiterung systemd** (klein, braucht User-Ja): `tabu-pfade-guard.py` um `~/.config/systemd/user/` erweitern. Die Nacht-Werkstatt hat den Override direkt scharf geschaltet — ging gut, widerspricht aber „jede Code-Zeile ist Klick-pflichtig". Installation künftig nur über angenommene Karte.
|
||||
- **R3 · Hermes v0.19 kommt** (Sammel-Release, ~660 PRs seit v0.18.0): Fangnetz existiert (autoupdate → doctor → postcheck → Auto-Rollback+Pin+Telegram). Quelle ist seit heute konfliktfrei. **Nichts zu tun — nur wissen, dass die Meldung kommen wird.**
|
||||
- **R4 · Orchestrator-Worktrees raus aus /tmp** (klein): `/tmp/orch-kanten` überlebt keinen Reboot; Worktree-Basis nach `~/.hermes/orch-worktrees/` o. ä.
|
||||
- **R5 · Runbook C13** (größter offener Robustheits-Batzen): 1-Seiter „Box tot → was drücken" + Bare-Metal-Bootstrap (docs/DISASTER_RECOVERY.md existiert als Konzept). Karten-Serie.
|
||||
- **R6 · Backup-Restposten:** QNAP-/pve-root-Passwörter in Keepass verifizieren; Restore-Probe einmal fahren (PBS läuft, aber ungeprobt zurückgespielt).
|
||||
|
||||
## 5 · AUFRÄUMEN (Priorität 2)
|
||||
|
||||
- **A1 · Alt-Docs** (Bagatell-Klasse, Box darf selbst): README/STATUS/CUTOVER/HERMES_SETUP tragen Vor-Trennung-Stand (Faden C15).
|
||||
- **A2 · Lucy-Repo-Hygiene** (PC-Karte über Lucy-Pipeline): 4 unkommittierte Dateien (Hybrid-TTS-Routing in App.tsx/useVoiceAgent/voice-core/kokoro_server) committen oder verwerfen — vorher prüfen, was live läuft; Saber-Altlasten löschen (XTTS-Datensatz-Verdikt: unbrauchbar); untracked venvs/Datasets ignorieren oder weg.
|
||||
- **A3 · Hermes-Home-Kleinkram:** `hermes_cli/web_dist.bak-rootbuild/` + `.install_method` (harmlos, bei Gelegenheit).
|
||||
- **A4 · D16-Restposten:** c) System-Logs ausbauen (Fehler-Filter) · e) Mem0-Dubletten automatisch statt Knopf · f) Lucy-Reste aus Web-UI + Voice-Sidecar-Diät. Alles einzelne Queue-Karten.
|
||||
|
||||
## 6 · FEATURES (Priorität 3)
|
||||
|
||||
- **F1 · Bild-Weiche v2:** gebaut, wartet auf Klick (Sofort-Paket a).
|
||||
- **F2 · heavy auf 64k** (nach Messkarte `t_64a384b9` + User-Ja): dann `delegation`-Floor erfüllt → heavy als delegate_task-Ziel freischalten → Konzept-Fließband/Lucy nutzen heavy nativ statt worker.sh-Umweg.
|
||||
- **F3 · Mini-Stimme v2 (AKTIV, User-Entscheid 15.07.):**
|
||||
1. User: Colab-Volllauf (~3 h, Notebook `Lucy_Stimme_Training_v2.ipynb` auf Desktop, Volltraining-Modus ist schon eingestellt)
|
||||
2. Danach: Modell-Datei tauschen + Whisper-Rücktranskriptions-Test (der EINZIGE ehrliche Richter) — kann PC-Hermes über die Lucy-Pipeline
|
||||
3. A/B gegen pocket im Live-Gespräch → Default-Entscheid
|
||||
4. **Zukunftsfaden v3:** Qwen3-TTS-**Instruct** kann inzwischen Stil/Emotion bei geklonten Stimmen steuern — genau das „alles klingt gleich"-Problem. Neuer Datensatz mit Emotions-Instruktionen, sonst gleiches Rezept.
|
||||
- **F4 · Gemma 4 26B-A4B als Hirn-Kandidat** (nach Bench-Karte `t_5ada48ea`): Community meldet ~110 t/s mit MTP-Head (vs. ~66 heute), multimodal (könnte Hirn+Augen VEREINEN), 256k Kontext. ABER: gemma-Vorgeschichte (Cache-Bug #21468, „Fix" unbestätigt), KV nur f16 (RAM!), mmproj×MTP ungeklärt. **Nur mit Messbeweis + User-Ja — Hirn-Swap ist ein Groß-Ereignis mit Rollback-Plan.**
|
||||
|
||||
## 7 · TEMPO (Priorität 4)
|
||||
|
||||
- **T1 · ROCm-Recheck 20.–25.07.** (Box-Reminder #3 existiert): Stand 15.07. hält Vulkan (tg-Führung bestätigt, #21284 weiter offen). Falls ROCm 7.13+ liefert: NUR Hybrid für heavy/coder-Prefill erwägen, **Hirn bleibt Vulkan**.
|
||||
- **T2 · hipEngine-Watch** (Reminder #4 existiert): weiterhin praktisch Qwen3.6-only, gfx1151 nur „initial pass" — beobachten, nicht adoptieren.
|
||||
- **T3 · Faden 10** (spec-draft-Sweep): bleibt bewusst übersprungen (User 14.07.).
|
||||
|
||||
## 8 · Übergabe-Logik (wenn Claude weg ist)
|
||||
|
||||
1. **Neue Ideen** → eine der drei Türen (Telegram / Lucy / MC2-Ideenfeld) → Queue → Karte → dein Klick. Die Kette ist E2E bewiesen.
|
||||
2. **Wissen** → `docs/wissen/` (dieser Plan, STACK, FALLEN, GRENZEN, VERDIKTE) — Box liest `~/mission-control-v2`, Gemini liest `F:\Coding Stuff\mission-control-2`. GEMINI_BRIEFING.md existiert.
|
||||
3. **Pflege** → Auto-Update-Timer mit Rollback+Pin; Selfsmoke täglich; Alarmkette Telegram.
|
||||
4. **Evolution** → Release-Radar (Mo) + Chef-Gutachter (täglich) + Traum (täglich) finden Chancen; Bench-Harnesses (brain-bench, model-bench) messen sie; du entscheidest per Klick.
|
||||
5. **Notfall** → Gemini/Antigravity als Review-Partner (RUNBOOK „Wann Gemini rufen").
|
||||
|
||||
## 9 · Recherche-Quellen (15.07.2026)
|
||||
|
||||
- Strix-Halo-Benchmarks/Grid: [strix-halo-guide](https://github.com/hogeheer499-commits/strix-halo-guide) · [llm-tracker Strix Halo](https://llm-tracker.info/_TOORG/Strix-Halo)
|
||||
- ROCm-Prefill-Issue: [llama.cpp #21284](https://github.com/ggml-org/llama.cpp/issues/21284) (offen)
|
||||
- Gemma 4: [26B-A4B auf Strix Halo](https://akehir.com/blog/strix-halo-kubernetes-llm-gemma-4) · [Cache-Bug #21468](https://github.com/ggml-org/llama.cpp/issues/21468) · [unsloth GGUF](https://huggingface.co/unsloth/gemma-4-26B-A4B-it-GGUF) · [AMD Day-0](https://www.amd.com/en/developer/resources/technical-articles/2026/day-0-support-for-gemma-4-on-amd-processors-and-gpus.html)
|
||||
- DeepSeek V4: [unsloth Doku](https://unsloth.ai/docs/models/deepseek-v4) (103–142 GB → zu groß)
|
||||
- Hermes v0.19: [Releases](https://github.com/NousResearch/hermes-agent/releases)
|
||||
- hipEngine: [shisa-ai/hipEngine](https://github.com/shisa-ai/hipEngine)
|
||||
- Qwen3-TTS (Instruct/Emotion): [Qwen-Blog](https://qwen.ai/blog?id=qwen3tts-0115) · [Emotion-Diskussion](https://github.com/QwenLM/Qwen3-TTS/discussions/218)
|
||||
@@ -1,63 +0,0 @@
|
||||
# Zielbild: Die Ablösung (Richtungs-Entscheid 10.07.2026)
|
||||
|
||||
_Quelle: User-Interview in 3 Fragerunden, 10.07.2026. Überschreibt ältere Richtungs-Entscheide
|
||||
(insbesondere D16 „MC2 Final/einfrieren")._
|
||||
|
||||
**Kernsatz des Users:** „Wenn ich neue Ideen habe, soll es die Box selbst machen und nicht du."
|
||||
|
||||
Das Claude-Abo wird **nicht verlängert**. Danach ist **Gemini via Antigravity** der Notfall- und
|
||||
Review-Partner (siehe [GEMINI_BRIEFING](../GEMINI_BRIEFING.md)). Zeitfenster unklar → knapp
|
||||
planen, **jede Session hinterlässt einen sauberen Stand**.
|
||||
|
||||
## Die 7 Entscheide (überschreiben ältere Verdikte!)
|
||||
|
||||
1. **MC2-Freeze AUFGEHOBEN** — „Freeze aufgehoben, MC2 lebt." Die Box baut neue Features direkt
|
||||
in MC2, über die Queue→Karte→Klick-Pipeline. „MC2 Final/einfrieren" (D16) ist Geschichte;
|
||||
Stabilität kommt aus **Gates + Zeitmaschine**, nicht aus Stillstand.
|
||||
2. **Lucy (Electron-Voice-App) lebt weiter + volle Pipeline:** Idee → Queue → PC-Hermes baut/testet
|
||||
auf F:\ → Karte → Klick = dist-Build + Neustart. Der PC-Annahme-Weg (Auftragsbuch-Gegenstück
|
||||
für Lucy) muss GEBAUT und E2E BEWIESEN werden (Session S3). **LucyWatchdog bleibt WEG**
|
||||
(User: „brauchen wir nicht mehr" — er startet sie selbst).
|
||||
3. **EINE Ideen-Queue, Türen egal** — Telegram/Desktop/MC2 münden alle dort. Mechanik: Entscheid
|
||||
nach Probe — erst natives Hermes-Kanban (`auto_decompose`, liegt ungenutzt in der Config)
|
||||
ernsthaft testen, dann nativ vs. Auftragsbuch-Ausbau festlegen (Hermes-first-Regel).
|
||||
4. **Bau-Ambition: auch Großes versuchen** — in Etappen über Tage, rauere Qualität ok, der User
|
||||
ist das Gate, die Zeitmaschine fängt. Aus Fehlversuchen lernen (Skills destillieren).
|
||||
5. **Bagatellen ohne Klick** — „Harmloses darf selbst". Konservative Klassen: Doku/Wiki/Vault/
|
||||
Chronik/tote Dateien — **NICHTS mit Code-Logik; jede Code-Zeile bleibt Klick-pflichtig.**
|
||||
Immer Morgenlage-Bericht + Zeitmaschine.
|
||||
6. **Gemini-Rolle: Notfall + Außen-Review** — kein Großbau-Partner. Briefing-Paket liegt IM REPO
|
||||
(`docs/GEMINI_BRIEFING.md`), nicht in Agent-Gedächtnissen.
|
||||
7. **Wissens-Heimat für ALLE Agenten = `docs/` im MC2-Repo** (Box liest `~/mission-control-v2`,
|
||||
Antigravity liest den F:\-Checkout — versioniert + deploybar). Der Vault bleibt Lucys
|
||||
Lernschicht.
|
||||
|
||||
8. **Lucy = innere Stimme, kein Körper (04.09.2026, ergänzt Punkt 2).** Raphael-Umbau: Avatar,
|
||||
Loft, Overlay, Mimik, Dazwischenrufe raus; ein HUD am PC, Telegram unterwegs, **eine Stimme**
|
||||
für beide (`lucy-stimme.service` auf der Box). Kein zweites Hirn auf dem PC. Details, Reihenfolge
|
||||
der Annahme und der SOUL.md-Vorschlag: [RAPHAEL.md](RAPHAEL.md).
|
||||
9. **Auftragsbuch ausgebaut (04.09.2026).** Die Queue→Karte→Klick-Mechanik aus Punkt 2/3/5 war
|
||||
seit 02.08. ungenutzt (Kanban-Tools seit 21.08. aus). Gate ist jetzt: Ampel grün + Merge durch
|
||||
den User + `deploy.sh`. Bagatell-Annahme ohne Klick (Punkt 5) entfällt damit ebenfalls.
|
||||
|
||||
## Recherche-Fundament (10.07., Web)
|
||||
|
||||
Das Industrie-Muster 2026 ist exakt unsere Architektur: Issue → Agent → PR → Mensch-Gate, nie
|
||||
Auto-Merge (GitHub Agentic Workflows; Stripe fährt ~1300 Agent-PRs/Woche über kontinuierliche
|
||||
Pflege-Agenten aus einer Task-Queue). Lokal-Konsens: „supervised assistant" schlägt
|
||||
Vollautonomie. → Uns fehlte nur die QUEUE davor + kontinuierliche Selbst-Aufträge.
|
||||
|
||||
## Das Ablösungs-Paket (4 Sessions, nach Unersetzlichkeit sortiert)
|
||||
|
||||
| Session | Inhalt | Stand |
|
||||
|---|---|---|
|
||||
| **S1 „uebergabe"** | Claude-Wissen kuratiert → docs/wissen/ · GEMINI_BRIEFING · Runbook „Wann Gemini rufen" · Termine als Box-Reminder · radar-selbstkritik-wrapper.sh ins Repo | ✅ 10.07.2026 (diese Session) |
|
||||
| **S2 „queue"** | Kanban-Probe → Queue-Entscheid → Türen verdrahten (Telegram/Desktop-Idee → Queue) · Morgenlage meldet Queue-Stand · Bagatell-Nacht-Deploy-Pfad | offen |
|
||||
| **S3 „lucy-pipeline"** | PC-Annahme-Weg bauen + E2E-Beweis. Kandidat für den ersten echten Auftrag: A4-Turncheck-Auswertung (Log liegt seit 07.07. in `C:\Users\TobisPC\lucy-turncheck.log`) | offen |
|
||||
| **S4 „zuendung"** | Idle-Radar/Fehler→Auftrag (Traum-Funde + Journal-Muster → Queue-Kandidaten) · Großbau-Etappen-Regeln in Skills · Generalprobe ohne Claude | offen |
|
||||
|
||||
## Scan-Restposten (10.07., in die Sessions eingeplant)
|
||||
|
||||
Lucy-Repo-Hygiene (untracked venvs/Datasets, 2 tote Branches) · C13/0f Runbook/First-Run-Wizard ·
|
||||
C14 stale v1-Unit · D16 c (System-Logs) / e (Mem0-Dubletten automatisch) / f (Politur) ·
|
||||
Voice-Sidecar-Diät (Faden 6). **Watchdog = bewusst NICHT wiederherstellen.**
|
||||
Reference in New Issue
Block a user