File size: 7,829 Bytes
3bc7cb3 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 | # Vergleich — Claude Code vs. Alternativen
## Feature-Matrix
| Aspekt | Claude Code | Codex | OpenCode | Hermes |
|--------|-------------|-------|----------|--------|
| **Hook-System** | Native (settings.json) | Keine | Keine (Plugin SDK geplant) | Keine |
| **MCP Support** | Ja (vollständig) | Nein | Ja (SDK) | Nein |
| **additionalContext** | Ja (5 Hook-Events) | Nein | Nein | Nein |
| **Tool Blocking** | PreToolUse deny | Sandbox only | Permissions | Tool Restrictions |
| **System Prompt** | --append-system-prompt | Hardcoded | Unbekannt | Bounded |
| **Startup Time** | ~100ms (native binary) | ~200ms (Node) | ~300ms | Variabel |
| **Binary Size** | ~300MB | ~50MB | ~148MB | Variabel |
| **Output Format** | JSONL + Text | JSONL | Likely JSONL | Variabel |
| **Memory** | Unbegrenzt wachsend | Unbekannt | Unbekannt | Hard Cap ~800 Tokens |
| **Skills** | On-Demand möglich (via Sidecar) | Skills System | Plugin SDK | On-Demand (native) |
| **Context Cap** | Kein Limit (CLI-kontrolliert) | Unbekannt | Unbekannt | 20.000 Zeichen |
| **Enforcement** | Soft-Constraints (CLAUDE.md) | Sandbox | Permissions | Sandboxing + Approval Gates |
| **Compression** | Automatisch (nicht steuerbar) | Unbekannt | Unbekannt | 85% Context Trigger |
| **Agent Mode** | Push (Hooks feuern Events) | Pull (File Watching, JSONL) | Hybrid (MCP + Polling) | TBD |
| **Kosten/1M Token** | $3 (SubAgents) / $15 (Opus) | Variabel | Variabel | $0 (lokal) |
---
## Claude Code Stärken
### 1. Hook-System — Einzigartiger Vorteil
Claude Code ist das einzige der verglichenen Tools mit einem nativen, synchronen Hook-System:
- **UserPromptSubmit:** Kontext VOR der Verarbeitung injizieren
- **PreToolUse:** Aktionen BLOCKIEREN oder MODIFIZIEREN
- **PostToolUse:** Async Analyse NACH Aktionen
- **SessionStart/Stop:** Lifecycle Management
Kein anderes Tool in dieser Übersicht bietet dieses Level an Kontrolle über den Agent-Loop.
### 2. additionalContext API
- Diskreter Kontext-Kanal — nicht als Message für den Nutzer sichtbar
- 3-in-1 bei PreToolUse: Permission + Input-Modifikation + Kontext gleichzeitig
- Ermöglicht Dual-Agent-Architektur (Sidecar-NG als Sidecar zum Haupt-Agent)
### 3. MCP Integration
- Flexibler als Codex Skills (statisch) oder Hermes (kein MCP)
- Gemini als Research-Backend einsetzbar
- OpenCode als Execution-Backend einsetzbar
- Erweiterbar für beliebige externe Tools
### 4. CLI Flags
- `--append-system-prompt` funktioniert und ist dokumentiert
- `--output-format json` für strukturiertes Parsing
- `--agent` für Agent-Switching
- Comprehensive Debug Logging verfügbar
### 5. Performance
- Schnellster Startup (~100ms, native binary)
- Direkte Hook-Unterstützung ohne Adapter
- Kein Post-Processor nötig
---
## Claude Code Schwächen
### 1. Kein Attention Budget Management
- System Prompts wachsen unbegrenzt — alle Skills gleichzeitig injiziert
- Keine situative Priorisierung (relevante Skills vs. irrelevante)
- Ergebnis: Regeln können sich gegenseitig auslöschen oder abschwächen
- Hermes löst das nativ durch On-Demand Skill-Loading
### 2. Fehlende Hook-Events
- Kein `SessionEnd` Hook — Cleanup und Session-Recap nicht erzwingbar
- Kein `PermissionRequest` Hook — Approval-Flow nicht steuerbar
- `Stop` Hook: kein `additionalContext` möglich
- Hooks sind eingefroren bei Session-Start — keine dynamische Registrierung
### 3. Memory ohne Grenzen
- `MEMORY.md` wächst ohne Limit
- Keine automatische Zusammenfassung oder Expiry für veraltete Einträge
- Vergleich: Hermes Hard Cap 800 Tokens MEMORY.md, 500 Tokens USER.md, automatische Kompression bei 85% Auslastung
### 4. Enforcement nur soft
- `CLAUDE.md` = Text-Appelle, keine technischen Gates
- Einziges echtes Enforcement: `PreToolUse deny` — muss extern gebaut werden (Sidecar)
- Kein natives Rule-Enforcement wie Hermes (Sandboxing + Approval Gates + Tool Restrictions)
### 5. Keine Cross-Session Awareness
- Jede Session startet ohne Wissen über vorherige Sessions
- Kein Drift-Detection Mechanismus eingebaut
- Session-Recaps nicht enforced — abhängig von externem Tooling
---
## Hermes als Referenz-Architektur
Hermes Agent (NousResearch) löst dasselbe Problem — ein LLM das sich nicht an Regeln hält — ohne zweiten Agenten. Stattdessen: harte strukturelle Grenzen.
| Feature | Hermes | Claude Code |
|---------|--------|-------------|
| Memory | Hard Cap ~800 Tokens MEMORY.md, ~500 Tokens USER.md | Unbegrenzt (12 KB+ MEMORY.md) |
| Skills | On-Demand: Agent lädt nur wenn nötig | Alle 40+ Skills immer injiziert |
| Context Cap | 20.000 Zeichen hard limit | Kein Limit |
| Enforcement | Sandboxing + Approval Gates + Tool Restrictions | Soft-Constraints (Text) |
| Compression | Automatisch bei 85% Context | Nicht steuerbar |
**Philosophie-Unterschied:** Hermes = weniger Intelligenz, mehr Struktur. Bounded memory statt unbegrenztem Wachstum. Approval prompts statt LLM-Judge. Tool restrictions statt Compliance-Monitoring.
**Implikation für Sidecar-NG:** Die Stärken von Hermes (Bounded Memory, On-Demand Skills) sind Ziele für Sidecar V8 — aber als Sidecar-Layer über Claude Code, nicht als Ersatz.
---
## OpenCode Integration — Status
**Getestet und dokumentiert:**
| Endpoint | Port | Ergebnis |
|----------|------|---------|
| /events | 3000 | Nur WebUI HTML — nutzlos für Sidecar |
| /global/event | 4096 | Nur Meta-Events (heartbeat, session.created) |
| REST API | — | 404 oder leere Listen |
| Message-Content | — | Im TUI-Bus gefangen, nicht extern zugänglich |
**Fazit:** Adapter-Code korrekt implementiert, aber OpenCode liefert die relevanten Daten nicht über externe APIs. Status: `enabled: false`. Wartet auf OpenCode API-Verbesserungen oder Plugin SDK Fertigstellung.
---
## Codex Integration — Status
**Architektur-Unterschied zu Claude Code:**
- Claude Code: Push-Mode — Agent feuert Events aktiv via Hooks
- Codex: Pull-Mode — File Watching, JSONL Events polling-basiert
- Kein direktes Hook-System — Adapter muss JSONL parsen
**Sidecar V8 Adapter-Roadmap:**
| Phase | Adapter | Methode |
|-------|---------|---------|
| Phase 1 | ClaudeCodeAdapter | Refactor bestehender Code |
| Phase 3 | CodexAdapter | JSONL-basiert (Pull) |
| Phase 4 | OpenCodeAdapter | MCP-Hybrid |
| Phase 5 | HermesAdapter | TBD |
**Entscheidung E2:** Reihenfolge Claude Code → Codex → OpenCode → Hermes. Kein Cursor.
---
## Kosten-Vergleich (Delegation)
| Methode | Kosten/1M Token | Quelle |
|---------|----------------|--------|
| Claude Opus (direkt) | ~$15 | Standard |
| Claude SubAgents (Sonnet) | ~$3 | Standard |
| /chef via OpenCode MCP | ~$3 | ORCHESTRATION_GUIDE |
| /crew via CrewAI (Gemini+MiniMax) | ~$0.60 | ORCHESTRATION_GUIDE |
| /langgraph Manager | ~$0.70 | ORCHESTRATION_GUIDE |
| Gemini MCP Research | ~$0.10 | ANALYSE_KOMPLETT |
| Haiku Background | ~$0.25 | CLAUDE.md |
**Einsparung durch Delegation:** /crew statt SubAgents = ~85% Kostenreduktion bei geeigneten Tasks.
**Empfehlung:** SubAgents (Sonnet) für Code-Qualität und Hook-Integration. /crew oder /langgraph für Recherche, Analyse, und parallele Batch-Tasks.
---
## Zusammenfassung
Claude Code ist das stärkste Tool für agentic Coding-Workflows mit externem Sidecar-System, primär wegen des Hook-Systems und der `additionalContext` API. Die Schwächen — unbegrenztes Memory-Wachstum, fehlende strukturelle Enforcement-Mechanismen, keine Cross-Session Awareness — sind bekannt und werden durch Sidecar-NG als externen Layer adressiert, nicht durch Tool-Wechsel.
Hermes bleibt als Referenz-Architektur relevant. Die Bounded-Memory- und On-Demand-Skills-Konzepte sind Ziele für Sidecar V8.
OpenCode und Codex sind als Sidecar-Targets (Adapter) geplant, nicht als Ersatz für Claude Code in der primären Workflow-Rolle.
|