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.