feat: Remote-Execute für Linux/Bash – OS-basierte Tool-Descriptions und remote.sh Script

Remote-Verbindungen erkennen jetzt das OS des Clients und passen die Tool-Description
dynamisch an (PowerShell für Windows, Bash für Linux). Neues remote.sh Script für
Linux/macOS-Clients mit embedded Python WebSocket-Client.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
MelekiandClaude Opus 4.6 committed 2026-04-16 09:31:56 +02:00
1 parent 1035066a39
commit 53cee67bef
11 files changed
+381 -27

No files matched your search

+17 -5
View File
@@ -21,22 +21,34 @@ SESSION_ID = os.environ.get("GOTT_SESSION_ID", "")
AUTH_TOKEN = os.environ.get("GOTT_AUTH_TOKEN", "")
AGENT_ID = os.environ.get("GOTT_AGENT_ID", "")
HAS_REMOTE = os.environ.get("GOTT_HAS_REMOTE", "false") == "true"
REMOTE_OS = os.environ.get("GOTT_REMOTE_OS", "").lower() # z.B. "windows", "linux"
TOOLS = []
# Remote-Execute Tool (nur wenn Remote-Verbindung vorhanden)
if HAS_REMOTE:
TOOLS.append({
"name": "remote_execute",
"description": (
if "linux" in REMOTE_OS:
_desc = (
"Führt einen Bash-Befehl auf der verbundenen Remote-Linux-Workstation aus. "
"Gibt stdout und stderr zurück. Nutze dies für Diagnose und Administration des Remote-PCs "
"(z.B. Netzwerk, Services, Logs, Pakete). Timeout: 180 Sekunden."
)
_cmd_desc = "Bash-Befehl zum Ausführen auf dem Remote-PC"
else:
_desc = (
"Führt einen PowerShell-Befehl auf der verbundenen Remote-Windows-Workstation aus. "
"Gibt stdout und stderr zurück. Nutze dies für Diagnose und Administration des Remote-PCs "
"(z.B. Druckerprobleme, Netzwerk, Services, Registry). Timeout: 180 Sekunden."
),
)
_cmd_desc = "PowerShell-Befehl zum Ausführen auf dem Remote-PC"
TOOLS.append({
"name": "remote_execute",
"description": _desc,
"inputSchema": {
"type": "object",
"properties": {
"command": {"type": "string", "description": "PowerShell-Befehl zum Ausführen auf dem Remote-PC"}
"command": {"type": "string", "description": _cmd_desc}
},
"required": ["command"]
}