Where does the bug appear (feature/product)?
Cursor IDE
Describe the Bug
In a Remote SSH workspace, when multiple Cursor Agents perform broad code search/indexing while another Agent executes short shell commands, the Shell tool sometimes remains pending even though the command has already completed.
Observed evidence:
- Shell command printed DONE and end_ts within milliseconds.
- The command PID disappeared on the remote server.
- ptyHost stayed alive and no child process remained.
- /dev/pts count was stable, no PTY leak observed.
- Cursor extensionHost stayed alive but was under rg/indexing load.
- remoteagent.log repeatedly showed:
RequestStore#acceptReply was called without receiving a matching request
Confirmed samples:
- IDE_MIXED_DIRECT_011: pid=1997257, ppid=1154183, process exited but Shell tool did not complete.
- IDE_BROAD_SEARCH_DIRECT_002: pid=2019808, ppid=1154183, process exited but Shell tool did not complete.
This suggests the issue is not the shell command, bash, .bashrc, SSH, or PTY process leakage, but likely a Cursor remote/IDE Shell tool completion request-reply mismatch under concurrent search/indexing pressure.
Steps to Reproduce
Steps to Reproduce
-
Open Cursor on macOS and connect to a large remote Linux workspace via Remote SSH.
-
Start a server-side observer on the remote machine to monitor:
- Cursor extensionHost / node processes
- ptyHost process
- /dev/pts count
- short-lived shell command PIDs
- remoteagent.log
- indexing / retrieval logs
-
In Cursor, start multiple Agents that perform broad code searches across a large repository.
Example workload:- Search large source directories with many rg/file-read operations.
- Trigger indexing/retrieval/git-status activity.
- Run at least 3-4 Agents concurrently.
-
At the same time, start another Agent that repeatedly executes short shell commands through the Agent Shell tool.
Example command:printf 'case_id=IDE_BROAD_SEARCH_DIRECT_002\n' printf 'type=broad_search_direct\n' printf 'pid=%s\n' "$$" printf 'ppid=%s\n' "$PPID" printf 'pwd=%s\n' "$PWD" printf 'start_ts=%s\n' "$(date -Ins)" ls -ld /tmp date -Ins printf 'DONE marker\n' printf 'end_ts=%s\n' "$(date -Ins)"
Operating System
MacOS
Version Information
Version: 3.4.20
VSCode Version: 1.105.1
Commit: 0cf8b06883f54e26bb4f0fb8647c9500ccb43310
Date: 2026-05-15T02:26:10.351Z
Layout: editor
Build Type: Stable
Release Track: Default
Electron: 39.8.1
Chromium: 142.0.7444.265
Node.js: 22.22.1
V8: 14.2.231.22-electron.0
OS: Darwin arm64 24.6.0
Does this stop you from using Cursor
Sometimes - I can sometimes use Cursor