🗺️ Masterplan — Workflow & Infrastruktur

Gottfried Media · 10.06.2026 · 6 Planungs-Agents + Konsistenz-Kritiker · ergänzt den Cleanup-Report
6Bereiche
47Schritte
7Deine Entscheide
12Konflikte gelöst
1Akut gefixt
✅ Heute Morgen schon gefixt: Deine Telegram-Bots waren latent kaputt — bot_runner.py zeigte auf das gestern entfernte /usr/bin/claude (Version-Drift-Scar, zweiter Einschlag). Gefixt auf ~/.local/bin/claude, zusammen mit der wartenden refresh_token.py committed (935fb1d), Service neu gestartet — alle 10 Bots laufen wieder. Der Commit wartet mit 6 weiteren auf dein Push-OK.

🌊 Die Reihenfolge (gemergt aus allen 6 Plänen)

Reihenfolge ist nicht verhandelbar wo Abhängigkeiten bestehen — der Kritiker hat 11 Vorher-Nachher-Zwänge identifiziert. Grün = Claude macht's, Orange = du.

Welle 0 — Sofort

heute · ~1h
  • CLAUDE_BIN-Hotfix bot_runner.py + refresh_token.py, Bots laufen erledigt
  • Auto-Memory-Backup — liegt jetzt versioniert + gepusht in claude-brain/backups/ erledigt
  • work-queue PATH-Fix — ~/.local/bin in der Unit ergänzt, daemon-reload erledigt
  • Backup-Passphrasen off-server (Vault-Backup openssl-Passphrase ×2) → dein Handy-Passwort-Manager Julien

Welle 1 — Fundament: Telegram + Vault

1–2 Tage
  • Push-OK erteilt — 7 Commits auf telegram-team.git gesichert erledigt
  • Monorepo-Merge — team/ ist regulärer Teil von telegram-stack (Commit 6a2c03e), null Downtime, altes .git in _archive erledigt
  • claude-sessions → telegram-stack/tools/ — Symlink umgebogen, Smoke-Test grün, Duplikat + Alt-Dir weg erledigt
  • Sammel-Commit — tote bridge/crm-Fork/lisa-customer-Refs raus, README neu, Zombie-Units (bridge, clara) gelöscht, Restart: 10 Bots laufen erledigt
  • rbw Auto-Unlock via systemd-creds + Reboot-Drill — beweisen dass Claude nach Reboot ohne dich an Secrets kommt Claude
  • secrets-CLI auf rbw portieren (Vault→.env-Renderer), team/.env + supabase-.env ins Vault Claude

Welle 2 — Konsolidierung: Brain + Sharing + Konnektoren + Rotation

2–3 Tage
  • Hippocampus-Stack stilllegen (6 Hooks, daimon, REM-Cron) → ~0,5 s schnellere Prompts; data.json + cerebellum.db aus Git Claude
  • Auto-Memory → claude-brain (Symlink, sync-github sichert alle 15 min mit), indexes/ werden Referenz-Memories Claude
  • Brain-Viz umbelegen: Strukturen zeigen echten Server-Zustand (Memory, Queue, Sessions, Last) statt Zombie-Status Claude
  • gm-share-Umbau in einem Zug: Galerie/Multi-File aus share.py + Secrets via rbw Claude
  • video-upload → R2 (env-Flip, Code existiert), rclone-Check der Archive, DANN B2-Exit Claude
  • 7 Konnektoren trennen + CLI-Leichen (flyctl, netlify ×2, vercel, twilio-cli, rpx) Julien: Liste abnicken
  • Key-Rotation aller 62 geleakten Keys — Geld-APIs zuerst (Twilio, Anthropic, Supabase-Service) gemeinsam, ~1h

Welle 3 — Ausbau: Auslastung + Cockpit

danach
  • work-queue reaktivieren: existiert schon komplett! Nur Load-Gate (/proc), batch.slice (CPUWeight), RunPod-Budget-Gate (5 $/Tag) fehlen Claude
  • Viktor-Bot → Queue fixen (GITHUB_TOKEN fehlt in team/.env — dein Handy-Weg in die Job-Queue) Claude
  • Cockpit Phase 1: /brain-Route (Viz einbetten), Server-Last-Widget (netdata-Proxy), Session-Liste (sessions --json) Claude
  • Tony-Stark-Grid (Phase 2) erst nach 2 Wochen echter Nutzung von Phase 1 später entscheiden

🧭 Deine 7 Entscheide

Alles andere läuft mit den Empfehlungen der Agents (im Bereich unten nachlesbar). Veto jederzeit.

1 · Push-OK für die Sammel-Session

7 telegram-team-Commits, danach Monorepo-Merge-Commit, später die ~8 neuen privaten Repos aus dem Cleanup-Report (runpod-toolkit, portfolio, influencer-cut/dashboard, …).

Empfehlung: einmal pauschal „Ja für alle privaten Repos in dieser Liste" — dann fragt Claude nicht 15×.

2 · Vault-Tradeoff akzeptieren?

Passwortloser Zugriff heißt: wer den Server kompromittiert, hat den Maschinen-Vault offen. Heute ist das de facto schon so (Agent seit 15.05. dauer-unlocked) — nur ohne Reboot-Festigkeit. Plan: systemd-creds Auto-Unlock + sauberer Schnitt: Maschinen-Secrets in eigenem Vault-Account, deine privaten Passwörter getrennt.

Empfehlung: akzeptieren mit Konten-Trennung. Wichtigste Frage an dich: liegt die Vault-Backup-Passphrase schon irgendwo bei dir privat? Auf dem Server ist sie nirgends notiert — ohne sie ist das Backup im Ernstfall wertlos.

3 · B2 komplett kündigen?

B2 hat genau zwei aktive Nutzer (alte share-CLI, video-upload) — beide werden auf R2/Supabase umgestellt. Achtung Kritiker-Fund: Bucket „Claude21420" existiert auf B2 UND R2 — der R2-Zwilling trägt die Vault-Backups, Lösch-Aktionen nur mit Endpoint-Check.

Empfehlung: Ja, Exit. Nach Migration + rclone-Verify B2-Keys deaktivieren, Konto kündigen. Alte backblazeb2.com-Links in Chats sterben lassen (R&D-Phase, keine Kunden dran).

4 · Konnektoren-Trennliste

Trennen (8): Netlify, PayPal, Google Drive, PDF Viewer, Stripe-MCP, Twilio-MCP, Supabase-Cloud-MCP + Shopify (LOP abgegeben, Julien 10.06.). Bleiben (3): Google Calendar, Gmail, Airtable — Achtung: NICHT auf Supabase migriert, der live avatar-dist-Service pollt Airtable aktiv für Content-Freigaben. Migration auf self-hosted Supabase = optionaler Welle-3-Schritt, danach fliegt auch Airtable.

Empfehlung: Liste komplett umsetzen — alles reversibel in 2 Minuten. Überraschung aus der Recherche: hostinger-cli bleibt — Hostinger ist dein Registrar für .ch-Domains (Cloudflare Registrar kann kein .ch), kein Policy-Verstoß. Nur der geleakte Key wird rotiert.

5 · Brain-Endzustand

Auto-Memory wird Master (per Symlink ins claude-brain → 15-min-Auto-Backup geschenkt), Hippocampus-Stack (tot seit 16.05.) wird stillgelegt, Auto-Scar-Hook gestrichen (Scars entstehen eh manuell), sunrise-Agent zeigt aufs neue Master-Memory. Brain-Viz bleibt — bekommt aber echte Daten (jede Hirn-Struktur = ein echtes Server-System).

Empfehlung: genau so. Deine geliebte Viz wird vom Zombie-Anzeiger zum echten Server-Hirn.

6 · Auslastungs-Limits

Der Idle-Scheduler existiert schon (claude-work-queue.timer + run-queue.sh seit Mai!) — er braucht nur Gates: Load-Gate aus /proc, batch.slice (drosselt nur bei Konkurrenz, Idle wird voll genutzt), RunPod-Tagesbudget.

Empfehlung: RP_DAILY_CAP = 5 $/Tag als Start, pro Queue-Task eigenes budget_usd. Lisa-Schutz: batch.slice reicht vorerst (CPUWeight 20 nimmt einem Voice-Call faktisch nichts weg).

7 · telegram-team.git nach dem Merge

Nach dem Monorepo-Merge ist das alte GitHub-Repo telegram-team.git der History-Anker.

✓ Erledigt: telegram-team.git ist archiviert (read-only, Description verweist auf telegram-stack).

📂 Die 6 Bereiche im Detail

Volle Recherche-Ergebnisse: Ist-Zustand, Probleme, Schritte, Entscheidungen je Bereich.

⚖️ Konflikte & Querschnitts-Regeln

Was der Konsistenz-Kritiker zwischen den Teilplänen gefunden hat — und was gestrichen wurde.

12 gelöste Konflikte

Harte Reihenfolge-Regeln

Gestrichen (Overengineering, Solo-Setup)