Error and bugs in connection SSH from linux to window

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

My development server runs on Windows, while my laptop uses Linux. I connect to the Windows development server via Cursor Remote SSH.

However, in this setup, several errors and unexpected behaviors occur.

When the Agent edits files, I can briefly see in the Agent context log (which disappears quickly) that it attempts to explore and modify files. However, the final result often suggests that the files are already in the desired state, as if there is nothing left for the Agent to modify — even though those changes were actually made by the Agent itself earlier in the session.

This leads to excessive token usage and wasted time, because the Agent repeatedly reads and re-reads the same files while attempting to determine their state.

In reality, the files were modified by the Agent during the same workflow. However, it appears that the Agent fails to correctly recognize its own previous edits.

Additionally, when I was developing directly on Windows, I could clearly see the Agent modifying files through the visual editing interface in the Agent panel. However, in the current Remote SSH environment, it seems that the Agent frequently relies on tools such as string-replacement utilities (e.g., str_replace) and performs modifications through terminal commands instead of the visual editing interface. This difference in behavior may be contributing to the inconsistency and state recognition issues.

My suspicion is that during these tool-based edits, errors may occur — possibly due to path inconsistencies, line-ending differences (CRLF vs LF), encoding mismatches, or SSH-related file synchronization issues — which cause the Agent to misinterpret the file state.

As a result, the Agent appears unable to accurately track its own modifications, leading to redundant operations, unnecessary token consumption, and reduced efficiency.

Are there any Cursor settings or Cursor rules that I should configure to prevent this issue?

Steps to Reproduce

every day

Operating System

Linux

Version Information

Version: 2.5.20
VSCode Version: 1.105.1
Commit: 511523af765daeb1fa69500ab0df5b6524424610
Date: 2026-02-19T20:41:31.942Z
Build Type: Stable
Release Track: Default
Electron: 39.4.0
Chromium: 142.0.7444.265
Node.js: 22.22.0
V8: 14.2.231.22-electron.0
OS: Linux x64 6.17.0-14-generic

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey, thanks for the detailed report.

A couple of questions to narrow this down:

  1. Which SSH extension are you using, Anysphere Remote SSH or something else? (Check the Extensions panel)
  2. What Windows version is installed on the remote server?
  3. Can you grab a Request ID from one of the broken sessions? (Click the context menu icon in the top right of the chat panel, then choose “Copy Request ID”.)
  4. When the Agent uses str_replace via the terminal instead of the visual editor, does that happen every time or only sometimes?

In the meantime, you can try this:

  • Make sure you’re using the Anysphere Remote SSH extension (not Microsoft). If you have Microsoft Remote SSH installed, uninstall it and restart Cursor.
  • Try adding a rule to your .cursorrules or project rules that files should use LF line endings. This can help if the issue is caused by CRLF vs LF.

Let me know how it goes, and share those Request IDs when you can. That’ll help us investigate on the backend.

7db7a877-b52a-4aef-816c-5e7bfb224c30

My remote server is on Windows 10, used to work flawlessly until some Cursor update. Using Anysphere Remote SSH as well.

1 Like