diff --git a/Services/ClaudeCliService.cs b/Services/ClaudeCliService.cs index 3f7f3f1..3767feb 100644 --- a/Services/ClaudeCliService.cs +++ b/Services/ClaudeCliService.cs @@ -365,8 +365,14 @@ public class ClaudeCliService } else if (hasWorkspace) { - // Normaler Modus mit Workspace: alle File-Tools - tools.AddRange(new[] { "Bash(*)", "Read", "Write", "Edit", "Glob", "Grep" }); + // Normaler Modus mit Workspace: alle File-Tools. + // WICHTIG: Unter Windows bietet die Claude-CLI KEIN "Bash"-Tool an, sondern ein + // separates Shell-Tool namens "PowerShell" (userFacingName/interner Tool-Name + // "PowerShell", eigene Permission-Regel PowerShell(...)). Ohne PowerShell(*) fällt + // jeder Shell-Aufruf auf Windows headless auf "ask" → wird still abgelehnt + // ("keine Permissions"). Auf Linux/macOS ist PowerShell(*) harmlos (dort wird das + // Tool nie angeboten). Deshalb beide Shell-Tools freigeben. + tools.AddRange(new[] { "Bash(*)", "PowerShell(*)", "Read", "Write", "Edit", "Glob", "Grep" }); } else {