Cursor 1.7 is here!

We are excited to ship Cursor 1.7, a release focused on smoother Agent flow, smarter inputs, and clearer visibility into what your Agents are doing.

Highlights

  • Hooks
    Use a simple hooks.json to apply custom logic to your Agent’s behavior and output.
    Great for adding counters to Agent‑written code, redacting or filtering output, and fine‑grained auto‑run permissions. Think of Hooks as “behavior shapers”, while Rules remain a way to add context.

  • Agent input autocomplete
    The Agent now autocompletes files, methods, and variables based on the context you’ve provided. Small boost, big flowstate improvement.

  • Image parsing in chat and tools
    Agents can now parse images directly via the read_file tool, not just when copy‑pasted.
    Easier multimodal debugging and explanation workflows.

  • Share prompts with deep links
    Create a link that opens a prompt directly in Cursor. Perfect for sharing common prompts and team workflows.

  • Menubar Agent monitor
    Keep an eye on running Agents from the system menubar. Quick status checks without leaving your flow.

Quality of life and fixes

  • Clearer chat context when you paste code from files or the terminal
  • Correct PowerShell handling for Windows users
  • Workspace trust confirmation is now consistently enforced

Why this matters

Cursor 1.7 tightens the loop between “describe” and “ship”. Hooks give you precise control when it counts, autocomplete reduces friction in high‑context moments, and deep links make it simple to standardize great prompts across your projects. Add in a glanceable Agent monitor and better multimodal support, and daily Agent work just feels snappier.

If you try Hooks or deep‑linking prompts, we would love to hear what workflows they unlock for you.

Detailed Changelog is available at Browser Controls, Plan Mode, and Hooks · Cursor

6 Likes

1 Like

I really think the afterFileEdit hook should also support output just like other hooks
// Output
{
“permission”: “allow” | “deny” | “ask”,
“userMessage”: “”,
“agentMessage”: “”
}

I was excited to use it to automatically feed in c# compiler errors after file modification but then i saw I can’t do that and now the whole hooks system feels anemic, it’s currently just for restricting file edits with extra rules, which you can already do with existing .cursorignore. I understand you probably rolled this out conservatively for now due to safety concerns but this is not the play imo, other coding agents have it and people will just look at hooks and be disappointed when they find out how limited they are. Add output to afterFileEdit.

3 Likes

I’m still on 1.2.4 because it has worked ok. I’m generally afraid to upgrade because I can’t afford to interrupt my workflow. Has anyone had success with 1.7 or are the bugs/breaks enough to wait for a newer version?

Working on this - great idea

1 Like

Hi do you need output on the afterFileEdit hook, or would it be enough to allow the stop hook to return a followup message. I think it would actually be more ergonomic that way as newer models often make many very small changes to a file, you’d be injecting compile errors into the loop before its even finished doing what it was trying to do

1 Like

I’ve experimented with this in other agents and it seems fine. I think if anything you should add support for both the “afterFileEdit” and “stop” hooks, otherwise you’re going to be getting user requests to add it to the one that lacks it forever. It also would make existing hooks people made for other agents much easier to port :slight_smile:

1 Like

plan tasks are not sync

1 Like

Gemini 2.5 PRO has gotten worse since the upgrade to the 1.7 version.

This has been really frustrating recently, as after every version upgrade, there are some bugs and inconsistencies between models’ capabilities. :frowning:

That’s great, but it currently works only at the level of completing file names and method names.
I’d like to see autocomplete that actually helps write common prompt patterns.

This could be based on parts of the chat context, rules, and hint-like hooks that the autocomplete system could read and apply automatically.

Is there any planned development for improving agent autocomplete?

@adamklepacz92 what part has become worse? Could you post a full separate Bug Report with more info Create Bug Report so we can check?

@Murgur we do not have a release timeline for these updates at the moment.

@andrewh

The automatically moving to the next change after pressing “Keep” was brought back, after it was disabled. I am in version 1.7.39

Often I will make some changes to a section of code while reviewing the diff and pressing “Keep” as I go along. Even if I make a change in some other part of the file while reviewing the changes, it will mark my change as a diff that needs to be accepted (“Keep”), since I just made the change I will press “Keep” but then it jumps me to another area of the file while I still wanted to review this area of code. This is completely unnecessary when there is already UI for going to the next diff. Please make this an optional setting. It basically requires me to accept all diffs, then start making my own changes, but then I lose track of what had changed and where I should be inspecting the code.

If Cursor wants to become a hands off tool, then people should just use the “Keep All” button. There is no benefit to remove the granular ability to intimately accept certain changes while making your changes when reviewing code. This is Cursor’s strength compared to competitors. Cursor allows you to still program without getting in the way, but this change is getting in the way of normal code review and updating behavior.

I see the advantage of having it jump to the next diff on accepting, but I think it should be a choice. I think I would prefer it sometimes based on if I intend to review more deeply the surrounding code.

Maybe if we press some modifier like Ctrl it could change the label behavior on click. Like from “Keep and Next” to “Keep” or “Keep and Stay”.

3 Likes

The general intelligence of the Gemini 2.5 PRo model worsened. I can’t describe it and provide reproduction steps, as I can’t go back to previous versions of the cursor, but the results for Gemini 2.5 PRO, which was my go-to model for the last 2 months, became much worse.

The model is losing the context, not fulfilling all the requirements from the prompt, cuts off more often, plans the work sometimes, but fails to execute the plan. And the overall code results that are based on the same prompt techniques and a very detailed context provided from my end are just noticeably worse.

The things that 2.5 PRO delivered in a one-shot detailed prompt previously now require me to iterate 5-6 times and guide the model to accomplish the task. Frustrating, I will probably stop updating the cursor after Gemini 2.5PRO gets fixed back to what it was.

1 Like

Is there any way to opt out of this feature in the meantime? Really disruptive to my workflow.

Edit, bug report here: Accepting diff regression: jumping again

There is a setting now.