claude-desktop/CHANGELOG.md
Eddy 87ba8f7bdf
All checks were successful
Build AppImage / build (push) Successful in 8m53s
feat: Global Hotkey (Super+C) + Clipboard-Watch + Desktop-Integration [appimage]
- Global Hotkey: Super+C öffnet Claude-Fenster und fokussiert Input von überall
- Clipboard-Watch: Erkennt Code/URLs/Fehler/Pfade in Zwischenablage, zeigt Vorschlag
- tauri-plugin-global-shortcut + tauri-plugin-dialog integriert
- focus-chat-input Event für Hotkey → Input-Fokus
- clipboard-changed Event für Watch → Chat-Vorschlag

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-21 11:50:56 +02:00

5.1 KiB

Changelog

Alle nennenswerten Änderungen an Claude Desktop werden hier dokumentiert.

Format angelehnt an Keep a Changelog.


[Unreleased] - 2026-04-21

Hinzugefügt

  • Projekt-Wechsel: Ein-Klick-Projektwechsel in der Sidebar — Dropdown mit Projektliste, Hinzufügen/Entfernen, Working-Dir + Sticky-Context wird automatisch umgeschaltet (SessionList.svelte, db.rs)
  • File-Drop auf Chat: Dateien per Drag & Drop auf den Chat ziehen — Text-Dateien als Code-Block, Bilder als Base64, Spracherkennung, 500KB-Limit (ChatPanel.svelte)
  • Persistent Memory: Auto-Load Memory-Einträge werden bei jeder Nachricht in den Claude-Context injiziert — Cross-Session Gedächtnis für Patterns, Zugänge, Präferenzen (memory.rs, claude.rs)
  • Memory CRUD-Commands: Speichern, Löschen, Auflisten, Auto-Load-Filter für Memory-Einträge als Tauri-Commands (memory.rs, lib.rs)
  • Global Hotkey (Super+C): Claude-Eingabe von überall öffnen — Fenster wird angezeigt, fokussiert, Input-Feld aktiviert (lib.rs, ChatPanel.svelte)
  • Clipboard-Watch: Überwacht Zwischenablage, erkennt Code/URLs/Fehler/Pfade, zeigt Vorschlag im Chat (clipboard.rs, ChatPanel.svelte)
  • File-Browser für Projekt-Wechsel: Nativer Verzeichnis-Dialog statt manuellem Pfad, Auto-Name aus Ordnername (SessionList.svelte, tauri-plugin-dialog)
  • Quick-Actions Palette (Ctrl+K): VS-Code-artige Kommandopalette mit Suche, Kategorien (Build, Git, Session, Navigation, Voice, Tools), Keyboard-Navigation (QuickActions.svelte)
  • Lokales Voice (Phase 2.2): whisper-cli STT + piper-tts TTS, komplett lokal ohne OpenAI-API (voice.rs, VoicePanel.svelte)
  • Chat-Detach: Chat in separates Fenster herauslösen, Platz für andere Panels, Zurückholen per Button (chat_window.rs, +page.svelte)
  • Aktivitäts-Phasen: 4 Zustände (Denkt nach/Streamt/Tool-Nutzung/Subagent) statt nur "Denkt nach..." (events.ts, ChatPanel.svelte)
  • Settings-Panel (VS Code Stil): Suchfeld, Kategorien-Sidebar, Commands/Hooks/Permissions-Verwaltung (SettingsPanel.svelte)
  • GStreamer im Nix-Wrapper: Mikrofon funktioniert jetzt auch in Produktion (PipeWire + gst-plugins) (nix/default.nix)
  • Slash-Command Autocomplete: /-Eingabe im Chat öffnet Dropdown mit allen Commands, Skills und Built-ins (commands.rs, CommandPalette.svelte)
  • KB-Hints Injection: Jede Nachricht an Claude bekommt automatisch relevante Wissensbasis-Einträge (claude.rs, knowledge.rs)
  • Voice-zu-Claude-Pipeline: Spracheingabe wird transkribiert, an Claude gesendet, Antwort per TTS vorgelesen (VoicePanel.svelte)
  • Pattern-Detektion: Tool-Fehler werden automatisch gegen bekannte Fehler-Patterns geprüft (events.ts)
  • Hook-Dispatch: SessionStart, PreToolUse, PostToolUse feuern echte Events ans Frontend (hooks.rs, events.ts)
  • Updater Lock-Datei System: PID-basiertes Locking verhindert parallele Update-Instanzen (update.rs)
  • Updater Bestätigungs-Dialog: User muss Update-Installation bestätigen statt Überraschungs-Restart (UpdateDialog.svelte)
  • Updater Graceful Shutdown: Frontend bekommt 2s Zeit zum State-Speichern vor Restart (update.rs, lib.rs)
  • Command-Registry: Scannt ~/.claude/commands/ und ~/.claude/skills/ für Autocomplete (commands.rs)

Geändert

  • SQL-Queries in knowledge.rs sortieren jetzt nach priority DESC (höchste Priorität zuerst)
  • get_tool_hints() korrigiert: War fälschlich priority ASC, jetzt DESC
  • search_knowledge() filtert jetzt auch nach status = 'active'
  • UpdateDialog.svelte auf Svelte 5 Runes migriert ($state, $effect, $derived)
  • lib.rs: App-Lifecycle erweitert um Lock-Datei create/remove bei Start/Exit

Behoben

  • Svelte 5 Event-Syntax: Alle on:clickonclick in SessionList.svelte (keine Mixed-Syntax mehr)
  • Mikrofon hängt: PipeWire-Fallback + 5s getUserMedia-Timeout wenn PipeWire nicht läuft (nix/default.nix, ChatPanel.svelte)
  • Update-Fortschrittsbalken: Erreicht jetzt visuell 100% vor der Bestätigungsmeldung (update.rs, UpdateDialog.svelte)
  • Mikrofon in Produktion: GStreamer + PipeWire-Plugins fehlten im Nix-Wrapper, WebKitGTK konnte getUserMedia nicht nutzen (nix/default.nix)
  • Updater konnte Binary ersetzen während App noch lief (kein Lock, kein Prozess-Check)

[0.1.0] - 2026-04-14

Erstveröffentlichung

Enthält Phase 1-16 der Roadmap:

  • Tauri 2.0 + SvelteKit 5 App-Grundgerüst
  • Claude Agent SDK Integration mit Live-Streaming
  • 4-Panel Layout mit 24 UI-Komponenten
  • SQLite Persistierung + Session-Management
  • Guard-Rails System für kontrollierte OS-Zugriffe
  • Claude-DB Integration (Wissensbasis durchsuchen/speichern)
  • Intelligentes Context-Management (3-Schichten-Gedächtnis)
  • Sprach-Interface (Whisper STT + OpenAI TTS)
  • Multi-Agent-Architektur (Solo/Handlanger/Experten-Modi)
  • Hook-System für Automatisierung
  • VSCodium-Integration (WebSocket-Bridge)
  • Programm-Steuerung (D-Bus, Xvfb, Playwright)
  • Präsentations- & Schulungsmodus
  • System-Monitor mit Performance-Metriken
  • Subagent-Hierarchie mit Baumansicht
  • CI/CD Pipeline (Forgejo Actions → AppImage)