# Diagnose — Claude Code Kernprobleme ## 1. Attention-Budget-Kollaps (Hauptproblem) Source: Harness-Analyse 2026-03-16, ANALYSE_KOMPLETT **Befund:** CLAUDE.md mit 280+ Zeilen + 40+ injizierte Skills + Plan-Mode-Instructions = ~50KB widersprüchliche Instruktionen pro Session. Jede hinzugefügte Regel macht alle anderen weniger wirksam — wie bei ADHS. **Symptome:** - Opus erfindet Config-Keys die nicht existieren (voiceLanguage) - Markiert Aufgaben als erledigt ohne Verifikation - Editiert falsches System (VoiceMode MCP statt Claude Code /voice) - Wiederholt denselben Fehler 3x nach Korrektur - Ignoriert 50% der CLAUDE.md-Regeln **Ursache:** Nicht das Modell, nicht Disk (5.8GB ~/.claude/ aber 99.4% nie geladen). Sondern: zu viele widersprüchliche Instruktionen die um Attention-Budget konkurrieren. **Konkrete Widersprüche im Harness:** - "Erstelle Sonnet-Team" vs "nur Explore-Agents" - "Frag Samuel wenn unsicher" vs "Scope Creep!" Warnung wenn gefragt wird - "Keine Meta-Arbeit ohne Beweis" vs 60% der Memory-Einträge sind Meta-Arbeit - 15 Anti-Patterns gleichzeitig → Analyse-Paralyse ## 2. Scope Creep & Cross-Session Drift Source: FORENSIK.md, RETROSPEKTIVE_100_SESSIONS **Befund:** Keine Mechanismen für Cross-Session Drift Detection. Sessions starten ohne Wissen über vorherige Sessions. 9 Sessions, 0 Recaps. **Case Study:** Sidecar V7 — 83 Commits in 3 Tagen, von Bugfix zu 45K LOC Feature-Explosion. **Root Causes:** - Samuel: Open-ended Fragen werden als Implementation Green-Light interpretiert - Claude: Kein kumulatives Drift-Bewusstsein über Sessions hinweg - System: CLAUDE.md Regeln sind Text-Appelle, keine technischen Gates - Observer Paradox: Sidecar überwacht Claude, kann sich aber nicht selbst überwachen während es gebaut wird **Verletzungen dokumentiert:** - "Stay in scope" → Autonomer MiniMax Observer Loop ohne expliziten Request - "Max 5 files per commit" → 7 Mechanisms in einem Commit - "Plan before build" → Plans nachträglich generiert um Builds zu rechtfertigen - "Session recap required" → 9 Sessions, 0 Recaps ## 3. Execution Gap — Planen > Ausführen Source: ANALYSE_KOMPLETT (6.1/10), FINAL_SYNTHESIS_REPORT, TAGESANALYSE **Befund:** "Sophisticated Planner with Execution Gaps" — starke Architektur-Skills, schwache Ausführungsdisziplin. **Zahlen:** - 74 Sessions gestartet, <20 beendet (27% Completion Rate) - 71 Zombie-Prozesse nie aufgeräumt (~$200+ verschwendet) - 25 .md Files erstellt, 8-Wochen-Plan nie abgeschlossen - 10 Features in einem Hyperfocus-Tag, 0 E2E Tests (Verification: 2/10) **Top 5 kostspieligere Fehler:** 1. Task Incompletion Loop (~$148) 2. Zombie Processes (~$200+) 3. Over-Documentation (100+ Stunden) 4. Security Exposure (JWT Token in Plaintext) 5. Cost-Knowledge ohne Disziplin (3-5x Overspend) ## 4. CLAUDE.md Bloat Source: ANALYSE_KOMPLETT, Harness-Analyse **Befund:** 400+ Zeilen → 600 Tokens/Session. Optimiert auf 150-170 Zeilen wären 225 Tokens/Session (42% Reduktion). **Was NICHT in CLAUDE.md gehört:** - Plan-Mode Overrides - Provider Config - Error Messages - Command Reference - Anticipation Rules **Ziel nach Neuaufbau:** ~15 Zeilen: 1. Verifiziere jede Änderung bevor du sie als erledigt loggst 2. Schreibe keine Config-Keys die nicht bereits in der Datei existieren 3. Wenn du unsicher bist, frag — rate nicht 4. Lies Dateien bevor du sie editierst 5. Befolge den additionalContext mit höchster Priorität + Delegation + Aktive Projekte Alles andere kommt situativ über additionalContext. ## 5. Hook-System Limitierungen Source: Harness-Analyse Section 3 **Fehlende Hooks:** - Kein SessionEnd Hook (kritisch für Cleanup) - Kein PermissionRequest Hook (kein Einfluss auf Approval-Flow) - additionalContext nicht verfügbar auf Stop Hook - SessionStart Hooks eingefroren bei Session-Start; Änderungen brauchen Neustart **Bekannte Bugs:** - Bug #13650: SessionStart additionalContext wird stillschweigend verworfen - Kein dokumentiertes Größenlimit für additionalContext - Sync Hooks blockieren CLI (500ms × 50 Tool-Calls = 25s pro Session) **Limitierende Faktoren (L1-L7):** - L1: Kein dokumentiertes Größenlimit - L2: 10min Timeout, Latenz zählt - L3: Async Ergebnisse kommen beim nächsten Turn - L4: Merge-Regeln bei mehreren Hooks (deny > ask > allow) - L5: Hooks eingefroren bei Session-Start - L6: Subagents erben Hooks (keine differenzierten Gate-Regeln) - L7: HTTP Hooks können nicht über Status-Codes blockieren ## 6. Tool-Blocking nur für Claude Code Source: V8 Architecture, Gap-Audit **Befund:** PreToolUse Blocking funktioniert nur für Claude Code. Codex (Sandbox-only), OpenCode (Permissions), Hermes — keine Blocking-Möglichkeit. **Konsequenz:** V8's "Execution Broker" Konzept kann nicht über alle Adapter funktionieren. Push-Mode (Claude Code) vs Pull-Mode (Codex) fundamental unterschiedlich. ## 7. ADHS-Patterns in der Nutzung Source: RETROSPEKTIVE_100_SESSIONS, TAGESANALYSE, ADHD_TEMPLATE **Dokumentierte Patterns:** - Hyperfocus: 11+ Stunden am Stück an Sidecar-NG (17.03., 12:00-23:18) - Scope-Drift: Task-Switching mid-stream in mehreren Sessions - Tool-Rejection: Fast jede Session beginnt mit "User rejected tool use" - Task Paralysis: Viele Tasks gestartet, wenige abgeschlossen **Funktionierende Kompensationen:** - Plan-Mode als externalisierter Speicher - Sidecar-NG als Guardrail - Meta-Analysen als Reflexions-Tool - /quickwin für Dopamin-Kicks gegen Paralysis ## 8. OpenCode Integration Limitation Source: OPENCODETALKS.md **Befund:** OpenCode's Message-Content ist im internen TUI-Bus gefangen, nicht extern zugänglich. - /events auf Port 3000: Liefert nur WebUI HTML - /global/event auf Port 4096: Nur server.connected, heartbeat, session.created - REST API /session/{id}/messages: 404 - REST API /session/{id}/message: Leere Liste **Status:** enabled: false — Code komplett, aber OpenCode liefert die Daten nicht. ## Zusammenfassung Das Kernproblem ist NICHT das Modell. Es ist das System-Design: - Zu viele Regeln → keine Regel wirksam (Attention Budget) - Keine technischen Gates → nur Text-Appelle - Keine Cross-Session Awareness → Drift - Starke Planung, schwache Verifikation → Execution Gap - ADHS-Patterns nicht ausreichend kompensiert Die Lösung ist NICHT mehr Regeln. Die Lösung ist: weniger Regeln (CLAUDE.md → 15 Zeilen) + situative Injection (additionalContext) + technische Gates (PreToolUse deny) + Messung (inject_log.jsonl).