PowerShell tool waits a constant ~112-115s before every command runs (Windows 11, 2.1.291); Bash tool and powershell.exe launched from Bash are instant
What's wrong
On one Windows machine, the PowerShell tool intermittently waits about two minutes before the command starts. The command itself then runs in well under a second. While the condition is active, EVERY PowerShell call stalls; Bash calls in the same session are fast.
Environment
- Claude Code 2.1.291 (CLI), Windows 11 Home 10.0.26300, Windows PowerShell 5.1 (powershell.exe)
- Hooks in ~/.claude/settings.json: PreToolUse and PostToolUse (all tools) that append one timestamped line to a log (python one-liner), plus a few older hooks
- Real-time antivirus active (F-Secure); its processes were idle during the test (8 s total CPU)
Evidence (timestamps from the hook log and from the command itself)
Each call was "PSn start " + (Get-Date -Format 'HH:mm:ss.fff'). The PRE line is written by the PreToolUse hook when it runs; "command start" is the time printed by the command.
| Call | PRE hook line | Command start | Wait |
|---|---|---|---|
| PowerShell 1 | 10:03:46.048 | 10:05:38.559 | 112.5 s |
| PowerShell 2 | 10:05:40.079 | 10:07:31.918 | 111.8 s |
| PowerShell 3 | 10:07:33.475 | 10:09:27.490 | 114.0 s |
| Bash 1 | 10:09:29.100 | 10:09:29.207 | 0.11 s |
| Bash 2 | 10:09:30.638 | 10:09:30.743 | 0.11 s |
| Bash 3 | 10:09:33.198 | 10:09:33.335 | 0.14 s |
From inside Bash, powershell.exe -NoProfile -Command "Get-Date" launched and finished in 0.28 s. So powershell.exe itself starts instantly; the delay is in how the PowerShell tool launches or reaches it.
Observations
- The wait is nearly constant (111.8 to 114.0 s), which looks like a timeout or retry, not load.
- It comes and goes. Earlier, in 2026-08, the same delay (110-280 s) hit PowerShell for 17 of 17 calls over about 14 hours and then stopped by itself. On another day (2026-08-31, a different tool) Bash stalled for exactly 120.1 s twice, the default tool timeout, while PowerShell was fast; that condition also cleared on its own.
- I have not measured the same gap on Linux yet, so this report makes no claim about other platforms.
- The same 112 s gap exists with the hooks installed; the stall was also seen before any timing hook existed, so the hooks are not the cause.
- Related but different: #95354 (tool never dispatches after a PreToolUse hook returns). Ours does dispatch, after a fixed delay.
Expected
PowerShell tool commands start within about a second, like Bash.
Steps to reproduce
Not deterministic: the condition appears for hours at a time. While it is active, any PowerShell tool call reproduces it.
This issue has 1 comment on GitHub. Read the full discussion on GitHub ↗