Endless loop correcting, never seeking user input

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

Repeated attempts to correct an issue that were never going to work.

Steps to Reproduce

Create a windows batch file that has enough code so that the fault location is not super obvious, pass the powershell message as the input. Watch numerous attempts to fix the fault, eventually, ask Cursor - as I did - the likelihood of ever succeeding.

Expected Behavior

Confirm the fault. Identify an approach. Seek feedback before proceeding with an approach. Don’t go into some death spiral.

Screenshots / Screen Recordings

dev.zip (1.81 KB)

Operating System

Windows 10/11

Current Cursor Version (Menu → About Cursor → Copy)

Version: 2.1.50 (user setup)
VSCode Version: 1.105.1
Commit: 56f0a83df8e9eb48585fcc4858a9440db4cc7770
Date: 2025-12-06T23:39:52.834Z
Electron: 37.7.0
Chromium: 138.0.7204.251
Node.js: 22.20.0
V8: 13.8.258.32-electron.0
OS: Windows_NT x64 10.0.26100

Additional Information

@echo off
setlocal enabledelayedexpansion

REM Check if dev.ini exists
if not exist “dev.ini” (
echo Error: dev.ini file not found.
pause
exit /b
)

REM Process each section to collect information
set “current_section=”
set “section_name=”
set “desc=”
set “ip_address=”
set “forward=”

for /f “usebackq delims=” %%a in (“dev.ini”) do (
set “line=%%a”
if “!line:~0,1!”==“[” (
REM Process previous section if it exists
if “!current_section!” neq “” (
call :print_section
)
REM Start new section
set “current_section=!line!”
set “section_name=!line:~1,-1!”
set “desc=”
set “ip_address=”
set “forward=”
REM Clear user and role variables
for /l %%i in (1,1,10) do (
set “user%%i=”
set “role%%i=”
)
) else if “!current_section!” neq “” (
REM Skip empty lines
if not “!line!”==“” (
REM Use tokens=1* to get key and everything after first = as value
for /f “tokens=1* delims==” %%b in (“!line!”) do (
set “key=%%b”
set “value=%%c”
REM Remove quotes from value if present
if “!value:~0,1!”==“^”" (
set “value=!value:~1,-1!”
)
if “!key!”==“desc” set “desc=!value!”
if “!key!”==“ip_address” set “ip_address=!value!”
if “!key!”==“forward” set “forward=!value!”
REM Handle user and role pairs
if “!key:~0,4!”==“user” (
set “user_num=!key:~4!”
set “user!user_num!=!value!”
)
if “!key:~0,4!”==“role” (
set “role_num=!key:~4!”
set “role!role_num!=!value!”
)
)
)
)
)

REM Process last section
if “!current_section!” neq “” (
call :print_section
)

echo.
echo Information collection complete.
pause
exit /b

:print_section
echo.
echo Section: !section_name!
if “!desc!” neq “” echo Description: !desc!
if “!ip_address!” neq “” echo IP Address: !ip_address!
if “!forward!” neq “” echo Forward: !forward!
echo Users:
set “has_users=0”
for /l %%i in (1,1,10) do (
set “u=!user%%i!”
set “r=!role%%i!”
if “!u!” neq “” (
set “has_users=1”
echo - !u! ^(!r!^)
)
)
if “!has_users!”==“0” echo (none)
exit /b

Does this stop you from using Cursor

No - Cursor works, but with this issue

Hey Phillip,

Thanks for sharing the files. I tested them in Composer, which resolved the issue right away without entering a “death spiral.”

You make a fair point that not all models will behave this way, and we should work to prevent them from going down an endless rabbit hole.

Could you share a Request ID from the chat where this occurred? It would be even more helpful if you could share one with privacy mode turned off.

Hi,

Privacy mode is Share Data, I assume that’s the right place. Request ID is …

bb458429-b0d2-439e-822d-90901981517d

Unclear to me why however I’ve struck it several times where cursor goes into a self-revision loop.

I think this will sometimes come down to a matter of preference.

Some users want the agent to keep trying autonomously, others prefer a more back-and-forth debugging workflow.

You could shape this with a Rule, something like “When debugging, propose your hypothesis and wait for confirmation before attempting fixes. Limit to 3 attempts before asking for guidance.”

Varying the model you use or trying out other modes (Ask, Debug (new!), or Plan) might also help. Plan mode in particular encourages that “confirm approach first” workflow you’re describing.

I can’t help but feel you didn’t really read the issue. Sitting on my hands, watching software go into a loop of mistake after mistake (6 times) is a severe downgrade on earlier performance. If you like watching windmills this is perhaps satisfying, however for production, unacceptable.

Don’t bother replying, just mark this down as a fail.

This topic was automatically closed 22 days after the last reply. New replies are no longer allowed.