Some checks failed
Build AppImage / build (push) Failing after 14s
Quick-Actions Palette mit VS-Code-artigem UI: Suche, Kategorien (Build/Git/Session/Navigation/Voice/Tools), Keyboard-Navigation. Nix-Wrapper enthält jetzt GStreamer + PipeWire für Mikrofon-Support. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
134 lines
5.3 KiB
Markdown
134 lines
5.3 KiB
Markdown
# Claude Desktop — Roadmap
|
|
|
|
Stand: 21.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) | Status |
|
|
|---------|-----------|--------|
|
|
| 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 | `QuickActions.svelte`, `ChatPanel.svelte` | Ctrl+K Palette: Deploy, Build, Test, Commit, Git, Navigation |
|
|
| ✅ Voice-Conversation | `voice.rs`, `VoicePanel.svelte` | Lokales Whisper STT + Piper TTS, VAD, Gespraechsmodus |
|
|
| ✅ Settings-Panel | `SettingsPanel.svelte` | VS-Code-artiges Layout mit Suche, Kategorien, Commands, Hooks |
|
|
| ✅ Chat-Detach | `chat_window.rs`, `+page.svelte` | Chat in separates Fenster herausloesen/zurueckholen |
|
|
| ✅ Aktivitaets-Phasen | `events.ts`, `ChatPanel.svelte` | 4 Phasen: Denkt/Streamt/Tool/Subagent statt nur "Denkt nach" |
|
|
|
|
---
|
|
|
|
## Phase 5: Lokale KI + Offline
|
|
|
|
**Ziel:** Unabhaengig von Cloud fuer Routine-Tasks.
|
|
|
|
| Feature | Datei(en) | Status |
|
|
|---------|-----------|--------|
|
|
| ✅ Whisper.cpp lokal | `voice.rs` | whisper-cli STT, Thorsten-DE Modell, kein OpenAI noetig |
|
|
| ✅ Piper-TTS lokal | `voice.rs` | piper-tts mit thorsten_emotional (high), 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
|
|
```
|