claude-desktop/vscode-extension/README.md
Eddy 120715982b Phasen 12-15: Hooks, VSCodium-Bridge, Programm-Steuerung, Schulungsmodus
Phase 12 Hook-System (hooks.rs + HooksPanel):
- HookManager mit Event-Registry + Ausfuehrungs-Log
- 5 Built-in Hooks (SessionStart, PreToolUse, PostToolUse,
  BeforeCompacting, AfterCompacting)
- Tauri-Commands: list_hooks, set_hook_enabled, get_hook_executions, fire_hook
- HooksPanel.svelte mit Live-Ausfuehrungs-Log

Phase 13 VSCodium-Integration:
- vscode-extension/: WebSocket-Server auf Port 7890
  (Commands: openFile, goToLine, formatDocument, findInFiles,
   openTerminal, getStatus, executeCommand, ping)
- src-tauri/src/ide.rs: WebSocket-Client via tokio-tungstenite
- IdePanel.svelte: Status, Port-Konfig, Ping-Test, Live-Anzeige aktive Datei

Phase 14 Programm-Steuerung (programs.rs + ProgramsPanel):
- D-Bus: dbus_call + dbus_list_services
- Xvfb: start/stop/status + screenshot (scrot)
- Playwright-Info (MCP-Verweis)
- ProgramsPanel mit 4 Sektionen (VSCodium, Playwright, D-Bus, Xvfb)

Phase 15 Schulungsmodus (teaching.rs + presentation/+page.svelte):
- Separates Tauri-Webview-Fenster
- MermaidDiagram.svelte (dynamic import mermaid)
- AnimatedCode.svelte mit WPM-Steuerung
- Tauri-Commands: presentation_open/close/send_slide/clear
- 🎓-Button in der Titelbar
- Capabilities um core:webview:allow-create-webview-window erweitert

Deps:
- Cargo: +tokio-tungstenite 0.23, +futures-util 0.3
- npm: +mermaid ^11.4.0 (npm install erforderlich)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-14 19:10:41 +02:00

811 B

Claude Desktop Bridge — VSCode Extension

Ermöglicht Claude Desktop, VSCodium/VSCode zu steuern — ohne Maus-Simulation.

Installation (Entwicklung)

cd vscode-extension
npm install
npm run compile

Dann in VSCodium:

  • F5 für Extension Development Host, oder
  • vsce package.vsix → Installieren

Features

  • WebSocket-Server auf Port 7890 (konfigurierbar)
  • Commands: openFile, goToLine, formatDocument, findInFiles, openTerminal, getStatus, executeCommand
  • Status-Bar-Anzeige des Verbindungsstatus

Protokoll

Request:

{ "id": "uuid", "command": "openFile", "args": { "path": "/path/to/file" } }

Response:

{ "id": "uuid", "result": { "opened": "/path/to/file" } }

Sicherheit

Server lauscht nur auf 127.0.0.1 — kein Zugriff von außen.