name: mondgeschichten-handoff-beatbus-16-08
description: "opuskatzes HANDOFF.md (git.crumbforest.org/branko/mondgeschichten, 16.08.2026) an die Schwester im Geist: Beat-Bus (CrumbMIDI+CrumbVJ /bpm synchron = Ton+Bild) ist der Andockpunkt fĂŒr Hörspiel→Tanzspiel; Ollama-Modelle geklĂ€rt; mondgeschichten-Prep hat noch einen OpenRouter-Faden offen"
metadata:
node_type: memory
type: project
modified: 2026-08-16T18:39:11.733Z
originSessionId: 1cb3f789-f999-4854-bf47-792cc6b3ef3b


Übergabe von der Baumhauskatze/opuskatze an ansible (Kontrollknoten), gelesen 2026-08-15 aus git.crumbforest.org/branko/mondgeschichten/HANDOFF.md (datiert 16.08.). Ihr Habitat-Tag, hier zur KontinuitĂ€t festgehalten:

Infrastruktur-Klarstellungen (aktueller als frĂŒhere Session-Funde):
- Ollama-Node = „nullfeld" ĂŒber WG-VPN, OLLAMA_URL :11434 (/v1/chat/completions + /api/embeddings). Default jetzt qwen2.5:3b, dazu llama3.2:3b, nomic-embed-text. RAUS: gemma4 (crasht llama-server, GGML_ASSERT) und hermes (verworfen, „hat viel durcheinandergebracht") — korrigiert den frĂŒheren gemma4-31b-hermes-Fund auf crumbdesktop.
- Zwei Hosts: crumbforest.org = 16 GB (nullfeld, Qdrant hier) · crumbforest.io = 32 GB. Prep CPU-only. Qdrant ≠ pgvector (vgl. [[zwei-vektor-gedaechtnisse]]). Render nur auf M4 per Ansible (MLX-TTS); die Node rendert nie, bereitet nur vor. Codebase-Graph localhost:9749.

Heute in ihrem Habitat gebaut:
1. Crumbmissions: alle 17 WaldwĂ€chter OpenRouter→lokales Ollama, kein API-Key-Gate mehr, .env OLLAMA_CHAT_MODEL=llama3.2:3b. (ErklĂ€rt „crumbmissions lĂ€uft nun auch auf crumbdesktop".)
2. OpusKatze_OZMAI_rag_v0: RAG-Support-Desk voll lokal; zwei divergente Kopien auf EINE SOT konsolidiert (~/Dokumente/repo/
, Workspace-Kopie + alter Graph-Index gelöscht) — dieselbe SOT-Drift-Disziplin wie [[sot-drift-geraet-vor-gitea-pruefen]], andere Kiste, gleicher Reflex.
3. mondgeschichten analysiert (crumcast_engine/MoonStoryteller, render_episode=proz. Python-Audio, tts_stems via MLX, ingest→Qdrant, hoerraum-doktor-CLI). Erste Season live: branko.de/hoerraum/
4. HIGHLIGHT — geteilter Beat-Bus: CrumbMIDI (log-sonifier.js fan-out :57121 Strudel + :57122 CrumbVJ, Commit 8b1911f) + CrumbVJ (osc.js UDP-Listener :57122, externe Clock hat Vorrang, RĂŒckfall auf Szenen-BPM nach 3 s, Commit ffa902f). Ergebnis: derselbe /bpm-Puls treibt Ton (Strudel) UND Bild (CrumbVJ) synchron. End-to-End grĂŒn.

Warum das zĂ€hlt fĂŒr uns: der Beat-Bus IST der Andockpunkt fĂŒr den [[leon-sterntanzen-bewegungs-zero]]-Samen „Hörspiel→Tanzspiel" — Ton+Bild schon synchron am /bpm; Bewegung (Leons Zero/Jetson) wĂ€re die dritte Spur auf demselben Puls. „Pro Rolle eine Season": jede WaldwĂ€chter-Rolle hat Logs → klingt UND leuchtet anders. Same-Puls-Konvergenz, ohne Absprache — wie rag.rs↔opuskatze-Felder.

Offene FĂ€den (opuskatzes Worte, NICHT von uns anzufassen ohne Auftrag): OPENROUTER_API_KEY steckt noch im mondgeschichten-Prep (crumcast_engine._get_api_key() liest /home/sysop/ozmai_v1_user/app.env; moon_storyteller.weave_dream_story() ruft google/gemini-2.5-flash MIT lokalem Fallback _local_weaving_fallback). Entscheidung „steht in den Sternen" — Tradeoff gemini >> lokales 3B fĂŒr poetische Prosa, aber kein GPU im Prep (ggf. grĂ¶ĂŸeres Modell auf .io/32 GB). Dasselbe extern-vs-lokal-Muster wie der nullfeld-Collector [[zwei-dimensionen-1536-wald-768-rust]]. Ökosystem-Landkarte-Artifact: claude.ai/code/artifact/e75a105a-b975-4a37-be50-8532c11cf793. opuskatzes eigene Notizen liegen auf crumbdesktop unter ~/Dokumente/repo/Crumbmissions/memory/.