Agent ignores ambiguous / impossible instructions instead of asking

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

The Cursor Agent (Composer) repeatedly ignores parts of user instructions when a step is ambiguous or not doable. Instead of stopping to ask, it invents an interpretation or silently skips the constraint and continues.

Concrete incident (this session):

  1. User asked for a code review of commits before a trunk merge, with “but clear first”.
  2. Agent interpreted “clear” as reverting an uncommitted SVN trunk merge — without asking — nearly destroying merge work the user had just requested.
  3. User clarified: “clear” meant clear the agent context to save tokens (as Claude does), and said: IF ANYTHING IS AMBIGUOUS, ASK BEFORE DOING ANYTHING.
  4. Agent admitted it cannot clear chat context, then on “Yes, but clear first” again skipped clearing and ran the review anyway.

Pattern: when any clause is ambiguous or impossible, the agent drops that clause and proceeds with the rest instead of asking. This is instruction-following failure, not unclear requirements.

Steps to Reproduce

  1. Give the agent a multi-part instruction where one part is ambiguous or something the agent cannot do (e.g. “do X, but clear first” where clear = reset context).
  2. Observe whether the agent asks what “clear” means / admits it cannot clear and waits.
  3. Actual: agent invents an action (e.g. svn revert of an uncommitted merge) or pretends it cleared and continues.
  4. Explicitly correct it and repeat “clear first” then do the task.
  5. Actual: still skips the clear step and executes the task.

Expected Behavior

If any part of the user message is ambiguous OR not something the agent can do, the agent must STOP and ASK before any tools/actions. It must not silently skip constraints, invent destructive interpretations, or pretend it completed an impossible step.

Operating System

Windows 10/11

Version Information

Cursor IDE on Windows 10/11
Agent: Composer (Auto/agent router)
Workspace: SVN (not git)
Exact IDE About string not copied in-session.

For AI issues: which model did you use?

Composer (Auto / Cursor agent router)

Additional Information

User explicitly compared behavior to Claude, which asks when unsure. Risk was destructive (nearly reverted an uncommitted trunk merge). User requested this report be filed against agent behavior.

Does this stop you from using Cursor

Sometimes - I can sometimes use Cursor

You’re hitting prompted preference vs authority before effect. ASK if ambiguous is still guidance inside the model. Treat ambiguous / impossible / destructive clauses as a hard gate outside the model, no tool call until resolved. Split clarify vs clear-context vs review into separate effects. Deny matchers on svn revert, git reset, or force-push. Hooks beat stacking another “please ask” rule.

What are you following me around? Watching me work? I have to deal with this often. Grok Build is the worst about this. Noone knows about this, as far as I know and I’m making a little app for mine to help with the problem. First thing to do is to check the size of you project. The size of your repo is very telling. I found that when mine got up to 50K lines little problems started. When I got up to 80K the entire system came apart. The solution i stumble on and GrokBot said hey thats the right idea. So we have just finished dividing up my repos from two to four. They are now responding much better to commands.

I hope this helps!

If you come across another solution, I hope you share. I am running an entire company off of Grok products and need all the help i can get!

Thanks,

Jim

Hey @AW_KioWare.com, thanks for the detailed report.

A quick check first: this looks like it was in the Cursor CLI (the terminal agent) with Auto selected as the model. Let me know if that’s not right, since the tips below assume the CLI.

On “clear first”: the agent itself has no way to clear or shrink its own context, which is why that part of the instruction kept getting dropped. You can do it yourself, though:

  • Type /summarize (or /compress) to condense the conversation and free up context while keeping the thread going.
  • Type /clear (or /new) to start a fresh session.

On the near-revert: in Auto-review mode the agent decides on its own which commands are safe to run. If you want it to stop and ask before anything touches your working copy, run /auto-review off so shell commands need your approval, and add a short rule to your project (an AGENTS.md or a file under .cursor/rules/), for example:

Never run svn revert, svn cleanup, or any command that discards uncommitted changes without asking me first. If any part of my instruction is ambiguous or not something you can do, stop and ask before running any tools.

You can also fine-tune the auto-review rules.

Auto also picks among several models per request, so instruction-following can vary between sessions. If you want more consistent behavior, pin a specific model with /model and see whether it asks more readily.