Agent commits on its own without my express instruction

Where does the bug appear (feature/product)?

Cursor IDE

Describe the Bug

This was occationally a problem in the past, it has become a SEVERE problem in recent weeks. I use the agent to commit, however I manually instruct the agent to commit. I have rules set up about how commit messages are to be formatted, how to handle commit prehook failures, etc. I ALSO have a rule that states the agent is NEVER to commit without my express authorization, that each and every authorization is for a SINGLE commit and not perpetual authorization for future commits.

The agent DOES NOT follow the last rule. It commits as it sees fit, and this has become a SEVERE problem in recent weeks. I just had the agent not only commit, but AMEND the previous commit, which was our main branch, and already deployed. I don’t know why the agent just suddenly committed, either, as we are not don with the work, it just suddenly did it and I wasn’t able to stop the darn thing before it was done.

This was very rarely a problem in the past, and seemed to be very much a fluke. But the last week in particular, but probably the last 2-3 weeks, this has been happening CONSTANTLY. Guys, I don’t know what’s changed, but I CANNOT have the agent automatically committing whenever the heck it feels like it, especially not right in the MIDDLE of ongoing work with incomplete changes, and VERY SPECIFICALLY NOT amending already released commits! This is nuts!!

Steps to Reproduce

Create a cursor rule clearly stating the agent is never to commit on its own, that when the dev authorizes a commit it a ONE-TIME authorization for a single commit, and not authorization for any future automatic commits.
Start chat to affect new work or changes.
Do not include any instructions about committing.
Progress with work, telling agent to continue when it reports progress.
Weep when a sudden, out of the blue commit happens on its own without your express authorization.

Expected Behavior

Agent should FOLLOW THE RULES SET FORTH and NEVER violate them. My rules are very clear that the agent should NEVER commit on its own, and if I authorize a commit is a ONE-TIME authorization and that the agent MUST ask again or wait for my additional subsequent authorization again for ALL subsequent commits.

Operating System

MacOS

Current Cursor Version (Menu → About Cursor → Copy)

Version: 2.2.36
VSCode Version: 1.105.1
Commit: 55c9bc11e99cedd1fb93fbb7996abf779c583150
Date: 2025-12-18T06:25:21.733Z
Electron: 37.7.0
Chromium: 138.0.7204.251
Node.js: 22.20.0
V8: 13.8.258.32-electron.0
OS: Darwin arm64 25.0.0

Does this stop you from using Cursor

No - Cursor works, but with this issue

Thanks for the report, which model was this?

It would be the Claude models, any of them, all of them. I don’t use Max (haven’t had a need yet anyway), but I have noted that I do seem to run into more quirky behavior with the Opus models than the Sonnet models, but it seems it can happen with any Claude model. I don’t know if it can happen with other models, however I do recall having Grok Code do the same thing in the past, which is probably my other most used model.