[BUG] VSCode Extension UI freezes 26+ minutes on Remote SSH permission prompts
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?
When using Claude Code extension over VSCode Remote SSH (connecting to Linux server from Windows client), the UI
becomes completely unresponsive when Claude requests Bash permissions.
Symptoms:
- Working/spinner icon freezes completely (stops animating)
- Permission prompts take 30 seconds to 26+ minutes to appear
- When prompts finally appear, buttons are unresponsive and cannot be clicked
- Sometimes prompts never appear at all
- UI is completely frozen during this time - cannot interact with Claude
Evidence from logs:
Multiple instances of extreme delays between permission generation and UI display:
- 26 minutes 8 seconds: Permission generated at 14:55:28, UI shown at 15:21:36
- 8 minutes 30 seconds: Permission generated at 16:44:14, UI shown at 16:52:56
- 49 seconds: Permission generated at 14:43:55, UI shown at 14:44:44
Even after the 26-minute wait, the permission buttons could not be clicked.
What we've ruled out:
- API is fast (responds immediately, visible in logs)
- Network is fast (local network, low latency)
- Server has plenty of resources (high memory, SSD, low CPU usage)
- Client has no high CPU/memory usage during freezes
- IPv6 disabled and confirmed working
- Not affecting Claude Code CLI (works perfectly with same API key, same network)
Impact:
Extension is completely unusable over Remote SSH. Every permission request causes multi-minute UI freeze with no
way to interact or cancel.
What Should Happen?
When Claude requests permission to use Bash:
- Permission prompt should appear within 1-2 seconds of the request
- Working/spinner icon should animate smoothly while waiting for user response
- Permission buttons (Allow, Deny, View) should be immediately clickable and responsive
- UI should remain interactive - user can cancel, switch tabs, or interact with other VSCode features
- Overall experience should match local VSCode usage (no Remote SSH penalty)
Error Messages/Logs
No error messages appear, but logs show extreme delays between permission generation and UI display:
Example 1 - 26 minute 8 second delay:
2025-11-15 14:55:28.621 [info] From claude: [DEBUG] "Permission suggestions for Bash: [
{
"type": "addRules",
"rules": [
{
"toolName": "Bash",
"ruleContent": "env
MONGO_URI_GMAIL_SYNC=\"mongodb://appEmail:sageEmailUser@localhost:27017/email?authSource=email\" python3:*"
}
],
"behavior": "allow",
"destination": "localSettings"
}
]"
2025-11-15 15:21:36.444 [info] Received message from webview:
{"type":"request","requestId":"kdt46dez6k","request":{"type":"show_notification","message":"Claude is requesting
permission to use Bash","severity":"info","buttons":["View"],"onlyIfNotVisible":true}}
Example 2 - 8 minute 30 second delay:
2025-11-15 16:44:14.400 [info] From claude: [DEBUG] "Permission suggestions for Bash: [...]"
2025-11-15 16:52:56.888 [info] Received message from webview:
{"type":"request","requestId":"4nwjve34n13","request":{"type":"show_notification","message":"Claude is requesting
permission to use Bash","severity":"info","buttons":["View"],"onlyIfNotVisible":true}}
Example 3 - 49 second delay:
2025-11-15 14:43:55.358 [info] From claude: [DEBUG] "Permission suggestions for Bash: [...]"
2025-11-15 14:44:44.859 [info] Received message from webview:
{"type":"request","requestId":"roynhiudap","request":{"type":"show_notification","message":"Claude is requesting
permission to use Bash","severity":"info","buttons":["View"],"onlyIfNotVisible":true}}
Note: After the 26-minute delay, the permission buttons were still unresponsive and could not be clicked.
Steps to Reproduce
- Setup: Install VSCode on Windows client machine with Remote SSH extension
- Connect: Use Remote SSH to connect to a Linux Ubuntu 24.04 server on local network
- Install: Ensure Claude Code extension (v1.703.727) is installed on the remote server
- Open project: Open any project/folder on the remote Linux server
- Start Claude: Open Claude Code and start a new conversation
- Trigger permission request: Ask Claude to run any Bash command that requires permission (e.g., "run ls -la" or
"check the Python version")
- Observe:
- Check Output logs (Ctrl+Shift+U → select "Claude Code")
- Note timestamp when permission suggestion is generated
- Watch working/spinner icon freeze
- Wait for permission prompt to appear (may take 30 seconds to 26+ minutes)
- If prompt appears, attempt to click buttons (likely unresponsive)
Environment details:
- Client: Windows 10/11
- Server: Linux Ubuntu 24.04, high memory, SSD, local network
- VSCode: Remote SSH connection
- Claude Code Extension: v1.703.727
- Network: Local network (low latency, IPv6 disabled)
Note: Issue does NOT occur with Claude Code CLI using same API key on same network.
Claude Model
Sonnet (default)
Is this a regression?
I don't know
Last Working Version
_No response_
Claude Code Version
2.0.32
Platform
Anthropic API
Operating System
Windows
Terminal/Shell
VS Code integrated terminal
Additional Information
---
Troubleshooting performed:
- Verified IPv6 disabled on Linux server (was causing API connectivity issues, now resolved)
- Checked CPU/memory usage on both client and server during freezes - no high usage detected
- Tested API connectivity directly with curl - fast response times (<1 second)
- Restarted Extension Host - did not resolve issue
- Tested DNS resolution - fast (97ms)
- Verified network latency - local network, low ping times
- Checked VSCode Task Manager - no processes showing high resource usage during freezes
Comparison with Claude Code CLI:
- Same API key, same Windows machine, same network
- CLI responds instantly with no delays
- This confirms the issue is specific to VSCode extension over Remote SSH, not API or network
Server specifications:
- High memory availability
- SSD storage
- Low CPU utilization
- Local network connection (not VPN or internet-based)
Pattern observed:
- Issue is intermittent but frequent
- Specifically affects permission prompt rendering/display
- The extension generates permission suggestions immediately (visible in logs)
- The delay occurs between permission generation and webview UI display
- Suggests possible issue with webview communication or message serialization over Remote SSH
Suspected cause:
Performance bottleneck in webview communication between extension host and UI when running over Remote SSH
connection.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗