[BUG] Native UI mode hangs on shell snapshot creation with SIGTERM timeout on Windows
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
Environment:
- OS: Windows (with WSL installed)
- Claude Code version: 2.0.75
- VS Code version: [your version]
- Git Bash installed at: C:\Program Files\Git\bin\bash.exe
Issue Description:
Claude Code native UI mode hangs for 30+ seconds when attempting to respond to any prompt. The extension eventually crashes with shell snapshot creation errors. Terminal mode works perfectly fine.
Error Logs:
Using bash path: "C:\Program Files\Git\bin\bash.exe"
Shell snapshot creation failed
Error signal: SIGTERM
Error killed: true
When Git Bash is unavailable (renamed), Claude Code crashes immediately with:
Claude Code was unable to find CLAUDE_CODE_GIT_BASH_PATH path "C:\Program Files\Git\bin\bash.exe"
Error: Claude Code process exited with code 1
Steps to Reproduce:
- Open Claude Code in native UI mode (panel/editor view, not terminal)
- Send any message
- Wait 30+ seconds
- Extension hangs and fails with SIGTERM timeout
Expected Behavior:
Claude Code should respond quickly without shell snapshot timeouts.
Current Workaround:
Terminal mode (claudeCode.useTerminal: true) works fine without any delays.
What I've Tried (None worked):
- Setting claudeCode.shell.path to PowerShell in VS Code settings
- Setting VS Code default terminal to PowerShell
- Running wsl --update (issue started after WSL update prompt appeared)
- Reinstalling Claude Code extension
- Clearing C:\Users\[username]\.claude\shell-snapshots\ folder
- Renaming bash.exe (causes immediate crash instead)
Configuration:
VS Code settings.json:
{
"claudeCode.shell.path": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"claudeCode.shell.args": ["-NoProfile", "-NoLogo"],
"terminal.integrated.defaultProfile.windows": "PowerShell",
"claudeCode.useTerminal": true // Current workaround
}
Key Observations:
- Claude Code appears to ignore claudeCode.shell.path setting and forces Git Bash usage
- There seems to be a hardcoded CLAUDE_CODE_GIT_BASH_PATH that overrides user settings
- Shell snapshot creation consistently times out with Git Bash on this system
- Terminal mode has no issues whatsoever
- Issue potentially started after a recent WSL update
What Should Happen?
- Allow users to completely disable Git Bash and force PowerShell usage in native UI mode
- OR fix the shell snapshot timeout issue with Git Bash
- OR make native UI mode work without shell snapshots (like terminal mode does)
Error Messages/Logs
Using bash path: "C:\Program Files\Git\bin\bash.exe"
Shell snapshot creation failed
Error signal: SIGTERM
Error killed: true
Steps to Reproduce
- Install Claude Code extension on Windows with Git Bash and WSL installed
- Configure VS Code settings to use PowerShell (though Claude Code ignores this):
```json
{
"claudeCode.shell.path": "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\powershell.exe",
"claudeCode.useTerminal": false
}
- Open any folder in VS Code
- Open Claude Code in native UI mode (panel or editor view, NOT terminal mode)
- Type any simple message like "hello" and press enter
- Observe: Claude Code hangs for 30+ seconds with no response
- Check the Output panel (View → Output → Select "Claude Code" from dropdown)
- See errors about shell snapshot creation failing with SIGTERM
Expected: Claude responds immediately
Actual: 30+ second hang, then crash with shell snapshot timeout
Note: Setting "claudeCode.useTerminal": true makes it work fine (workaround
Claude Model
Sonnet (default)
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.0.75
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
VS Code integrated terminal
Additional Information
_No response_
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗