# Claude Desktop — Roadmap Stand: 20.04.2026 --- ## Ziel Claude Desktop soll **schneller und maechtiger** sein als Codium + Claude Code Extension. Kein Feature-Bloat — nur das was echten Geschwindigkeits- und Produktivitaetsvorteil bringt. --- ## Abgeschlossen (v0.1.0 — 14.04.2026) Alles aus Phase 1-16 ist implementiert und funktionsfaehig: - Tauri 2.0 + SvelteKit 5 + Claude Agent SDK - 4-Panel Layout mit 24 UI-Komponenten - Claude Bridge (Node.js, stdio JSON-Lines) - Guard-Rails System (Safe/Moderate/Critical/Blocked) - SQLite Persistierung + Session-Management - Claude-DB Integration (Wissensbasis durchsuchen/speichern) - 3-Schichten Context-Management (Sticky/Projekt/Hints) - Sprach-Interface (Whisper STT + OpenAI TTS) - Multi-Agent-Modi (Solo/Handlanger/Experten/Auto) - Hook-System (SessionStart, PreToolUse, PostToolUse) - VSCodium-Extension (WebSocket Port 7890) - Programm-Steuerung (D-Bus, Xvfb, Playwright-MCP) - Praesentations-/Schulungsmodus - System-Monitor + Performance-Metriken - Subagent-Hierarchie mit Baumansicht - Auto-Updater (Forgejo Package Registry) - Slash-Command Autocomplete - KB-Hints Injection + Proaktive Intelligenz - Error-Pattern Auto-Detection (3x → KB-Eintrag) --- ## Phase 3: Performance (naechster Schritt) **Ziel:** Erste Antwort in < 1s, Bridge immer warm, kein Warten. | Feature | Datei(en) | Status | |---------|-----------|--------| | ✅ KB-Cache (RAM) | `knowledge.rs` | 60s TTL, LRU, max 100 Entries | | ✅ Bridge Warm-Start | `lib.rs`, `claude.rs` | Start bei App-Launch, kein Cold-Start | | ✅ Lazy Panel-Load | `+page.svelte` | Dynamic Import mit Cache | | ✅ Session-Resume Fix | `claude-bridge.js` | Stale ID → auto-Retry neue Session | | ✅ Auto-Retry (Netzwerk) | `claude-bridge.js` | 3x Backoff bei Rate-Limit/5xx | | ✅ Bridge Heartbeat | `claude-bridge.js` | 30s Pulse an Rust | | ✅ FIFO Message Queue | `ChatPanel.svelte` | Mehrere Nachrichten queuen | | ⬜ Bridge-Daemon | `claude.rs`, `claude-bridge.js` | Bridge ueberlebt App-Neustart | | ⬜ Unix Socket IPC | `claude.rs`, `claude-bridge.js` | stdio → UDS (async, kein Block) | --- ## Phase 4: Codium-Killer Features **Ziel:** Dinge die Codium + Extension prinzipbedingt NICHT koennen. | Feature | Datei(en) | Beschreibung | |---------|-----------|--------------| | Projekt-Wechsel | `context.rs`, UI | Ein Klick wechselt Projekt (CWD, CLAUDE.md, Context, KB-Filter) | | MCP-Hub nativ | `claude-bridge.js` | Alle MCP-Server direkt nutzbar (Docker, Forgejo, DB) ohne CLI-Umweg | | Guard-Rails UI | `guard.rs`, `GuardPanel.svelte` | Live-Anzeige was Claude darf/nicht darf, Ein-Klick-Freigabe | | Persistent Memory | `memory.rs`, `db.rs` | Cross-Session Gedaechtnis — Claude erinnert sich an ALLES | | Quick-Actions | `CommandPalette.svelte` | Ctrl+K oeffnet Palette: Deploy, Build, Test, Commit — ein Tastendruck | | Voice-Conversation | `voice.rs`, `ChatPanel.svelte` | Hands-free Loop: Sprechen → Claude antwortet → TTS → warten auf naechste Eingabe | --- ## Phase 5: Lokale KI + Offline **Ziel:** Unabhaengig von Cloud fuer Routine-Tasks. | Feature | Datei(en) | Beschreibung | |---------|-----------|--------------| | Whisper.cpp lokal | `voice.rs` | STT ohne OpenAI-API, laeuft auf GPU | | Piper-TTS lokal | `voice.rs` | Deutsche Stimme offline | | Lokales Haiku-Equivalent | `claude-bridge.js` | Ollama/llama.cpp fuer simple Tasks (Commit-Messages, Uebersetzungen) | | Offline-Queue | `session.rs` | Nachrichten queuen wenn kein Netz, spaeter absenden | --- ## Phase 6: Desktop-Integration (Linux-Native) **Ziel:** Claude steuert den Desktop wie ein zweiter User. | Feature | Datei(en) | Beschreibung | |---------|-----------|--------------| | D-Bus Actions | `programs.rs` | Vordefinierte Aktionen: Dolphin oeffnen, Kate starten, Notifications | | Clipboard-Watch | neu: `clipboard.rs` | Claude reagiert auf Clipboard-Inhalt (Code-Snippet → erklaeren, URL → zusammenfassen) | | File-Drop | `ChatPanel.svelte` | Dateien auf Chat droppen → Claude analysiert/bearbeitet | | Screenshot-Analyse | `programs.rs` | Bildschirmbereich markieren → Claude beschreibt/debuggt UI | | Global Hotkey | `lib.rs` | Super+C oeffnet Claude-Eingabe von ueberall | --- ## Technische Schulden | Was | Prioritaet | |-----|-----------| | TypeScript strict mode | Niedrig | | E2E Tests (Playwright) | Mittel | | Cargo warnings eliminieren | Niedrig | | Dead Code in alten Panels | Niedrig | | Bridge Error-Handling verbessern | Mittel | --- ## Nicht geplant - Multi-User / Team-Features - Cloud-Sync - Plugin-System (overkill fuer 1-User-App) - Electron-Port (Tauri bleibt) --- ## Build & Entwicklung ```bash # Dev (Hot-Reload) cd "/mnt/17 - Entwicklungen/20 - Projekte/ClaudeDesktop" CARGO_TARGET_DIR=/tmp/claude-desktop-target nix-shell --run "npx tauri dev" # Produktion CARGO_TARGET_DIR=/tmp/claude-desktop-target nix-shell --run "npx tauri build -- --bundles appimage" # CI: Commit mit [appimage] → Forgejo Runner baut + uploaded ```