Commit Graph
6 Commits
Author SHA1 Message Date
MelekiandClaude Opus 4.6 55477742a9 fix: CLIXML-Fehler bei Remote-Tool-Ausführung auf Windows beheben
Statt powershell.exe als Kindprozess mit 2>&1 zu starten (was CLIXML-Parsing-Fehler
bei rohem stderr verursacht), wird System.Diagnostics.Process direkt verwendet.
Zusätzlich werden harmlose CLIXML-Progress-Meldungen aus stderr herausgefiltert.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-22 22:36:26 +01:00
Meleki a13355d7e9 Remote: Server-seitiger Heartbeat mit Timeout für tote WebSocket-Verbindungen
- Server sendet alle 30s Ping an Client, Client antwortet mit Pong
- LastActivityAt wird bei jeder empfangenen Nachricht aktualisiert
- Nach 90s Inaktivität wird Verbindung als tot erkannt und aufgeräumt
- HeartbeatLoop läuft parallel zum ReceiveLoop
- remote.ps1: ping-Handler hinzugefügt
2026-03-13 15:44:35 +01:00
Meleki dd0bc263e0 Fix: Remote Command Tool - EncodedCommand statt -Command für korrekte Anführungszeichen-Behandlung 2026-03-13 15:39:31 +01:00
Meleki 263f438501 Remote: Ctrl+C Handling im PS-Script + /remote Alias
- CancelKeyPress-Event registrieren → .Cancel() → ReceiveAsync bricht sauber ab
- catch [AggregateException] für CancellationToken in .GetAwaiter().GetResult()
- Event-Handler im finally-Block entfernen
- /remote als Alias für /remote.ps1
2026-03-11 08:12:56 +01:00
Meleki 0eb9022803 fix: Remote-Verbindungen – Reverse-Proxy-Support, Shutdown-Handling, Script-Stabilität
- X-Forwarded-Host/Proto Header für korrekte WebSocket-URL hinter Reverse-Proxy
- CancellationToken aus IHostApplicationLifetime für sauberen App-Shutdown
- WebSocket-Close mit 3s Timeout statt endlosem Warten
- PowerShell-Script: Synchroner Empfangs-Loop (Send/Receive-Funktionen)
- TLS 1.2 erzwungen für ältere Windows-Versionen
- remote_execute Tool auch ohne Workspace-Pfad verfügbar (includeRemote)
- Debug-Logs entfernt
2026-03-11 07:41:24 +01:00
Meleki 10da2bd964 feat: Remote-Verbindungen – Windows-Workstations per WebSocket steuern
- RemoteConnectionManager: Singleton-Service verwaltet WebSocket-Verbindungen
  mit Command-Execution (Send/Receive mit Timeout + SemaphoreSlim-Locking)
- RemoteEndpoint: WebSocket-Endpoint /api/remote (auth-frei), REST-APIs für
  Connections/Assign/Unassign, PowerShell-Script-Auslieferung mit dynamischer URL
- remote.ps1: PowerShell-Client für Windows – verbindet per WebSocket,
  sendet Hostname/User/OS, empfängt und führt Befehle aus, Heartbeat
- remote_execute Tool: Neues Agent-Tool, nur verfügbar wenn Session eine
  zugeordnete Remote-Verbindung hat, führt PowerShell-Befehle remote aus
- Frontend: Menüpunkt 'Remote-Verbindungen' im Chat-Dropdown, Modal zeigt
  alle aktiven WebSocket-Verbindungen (Hostname, User, OS, Verbindungszeit),
  Verbinden/Trennen-Buttons pro Verbindung und Session
- Auth: /api/remote und /remote.ps1 von Authentifizierung ausgenommen

Architektur: Windows-Client → WebSocket → GOTT-Server → Agent-Tool
Session-gebunden: Eine Verbindung wird einer Session zugeordnet
2026-03-11 07:04:24 +01:00