Hello Cursor Team,
First, thank you for creating such a powerful and innovative tool. I’ve been using it extensively and it has significantly improved my workflow.
I am writing to report an issue and request an enhancement for the Cursor Remote-SSH extension (anysphere.remote-ssh-1.0.8) when connecting to servers in an air-gapped or offline network environment.
The Problem
I am trying to connect to a remote Windows server that is on a secured internal network with no external internet access.
To be clear, this issue is specific to the Cursor extension. I can connect to the very same server without any problems using the standard Remote - SSH extension provided by VS Code. The VS Code extension works because it correctly detects the manually pre-installed server on the remote machine and does not try to force a new download.
In contrast, the Cursor Remote-SSH extension fails to connect. From my analysis of the connection logs, the issue stems from the installation script that runs on the remote server:
Deletes Existing Installation: It forcefully removes the entire server directory (C:\Users\InnoQAS_ARG.cursor-server\bin) at the beginning of every connection attempt.
Attempts to Download: It then tries to download the remote server package (vscode-reh-win32-x64.tar.gz) from a public URL (https://cursor.blob.core.windows.net/…).
Because my remote server has no internet access, the download times out, and the connection fails. My attempts to manually place the server files in the directory are useless, as the script wipes them clean every time I try to connect.
Proposed Solution / Feature Request
Could the installation script be modified to support offline environments, similar to how the standard VS Code extension handles it?
Log Details for Reference
Below is the log output from a failed connection attempt. It shows the script removing existing installations and then failing with a timeout during the download phase.
2025-06-09 17:57:10.178 [info] (ssh_tunnel) stdout: >> if ($true) {
Write-Host “Removing all existing Cursor installations”
Remove-Item -Path “$SERVER_DATA_DIR/bin” -Recurse -Force -ErrorAction SilentlyContinue
Remove-Item -Path “$SERVER_DATA_DIR/.log" -Force -ErrorAction SilentlyContinue
Remove-Item -Path "$SERVER_DATA_DIR/.token” -Force -ErrorAction SilentlyContinue
Remove-Item -Path “$SERVER_DATA_DIR/.installation_lock” -Force -ErrorAction SilentlyContinue
}
Removing all existing Cursor installations
…
2025-06-09 17:57:10.406 [info] (ssh_tunnel) stdout: Downloading server from https://cursor.blob.core.windows.net/remote-releases/53b99ce608cba35127ae3a050c1738a959750860/vscode-reh-win32-x64.tar.gz
…
2025-06-09 17:57:30.473 [info] (ssh_tunnel) stderr: Invoke-RestMethod : The operation has timed out.
위치 줄:20 문자:1
- Invoke-RestMethod @REQUEST_ARGUMENTS
-
+ CategoryInfo : InvalidOperation: (System.Net.HttpWebRequest:HttpWebRequest) [Invoke-RestMethod], WebExc eption + FullyQualifiedErrorId : WebCmdletWebResponseException,Microsoft.PowerShell.Commands.InvokeRestMethodCommand
…
2025-06-09 17:57:30.491 [error] Error installing server: Couldn’t install Cursor Server, install script returned non-zero exit status: Error server log file not found C:\Users\InnoQAS_ARG.cursor-server.53b99ce608cba35127ae3a050c1738a959750860.log
2025-06-09 17:57:30.564 [info] (ssh_tunnel): exit: code=1 signal=null