Version 0.44.11 Stuck/Stalling?

I’ve been seeing a number of discussions about version 0.44.11 getting stuck or stalling, so I’d like to consolidate my thoughts and share a few ideas that have worked for me. I’ve noticed some very complex plans for setting up multiple files and rules, but that hasn’t worked for me. My goal is to keep things simple and modular, regardless of project complexity. Below are my key points and suggestions.


1. Use a Dedicated Notepad for Context

  • Notepad Name: I usually call mine “context.”
  • Frequency of Updates: I switch to a new notepad every 2–3 days.
  • Purpose: It stores information I want to keep persistent (e.g., current services, server access, deployment info, specific/important files, high-level project scope, etc).
    • Think of this notepad as capturing the “unchanging” or frequently referenced details.

2. Maintain Context Documents in the Codebase

  • Context Documents: I add .md files detailing the current project plan in a dedicated “notes” folder.
  • Automatic Updates: I often prompt Cursor to generate these docs, then do minor edits.
  • Modular Approach: Each context doc focuses on what you’re currently building. If you’re adding a feature, outline its parts in that doc.
  • Progress/Change Log: Use a prompt like:

    “As we progress through development, please keep a progress/change log. Track any major milestones, bugs, or issues, and note new progress on our plan.”

    • This ensures Cursor keeps a history of its actions. If you hit a “dead composer” or need a fresh one, you can refer to these documents in the new composer window and quickly get back on track.
    • Continually updating your history also helps avoid those “circular death” issues where Cursor might add a feature, then delete it three prompts later.

3. Handling the “Stuck Generating” Error

  • Check Your Last Command: If you’re stuck, repeating the last command usually won’t help.
  • Update Context Prompt: Try something like:

    “Can you make sure my context doc is fully updated with the current project status?”

    • Even if you were working on something else, once you hit “stuck,” it’s time to move on. The composer is essentially “dead.”
    • The main goal is to get your context doc updated, then switch to a new composer as soon as you get the first “stuck generating” error.
  • Revert if Needed: If your context doc isn’t updated yet, sometimes reverting one step above the stuck prompt can help. You can adjust the prompt there, trying again to update the doc.
    • Only revert if the doc isn’t up to date. If it is, no worries—just jump to a new composer.

4. Keep an Eye on Document Length

  • Document Size Matters: If your context doc exceeds ~500 lines, create a new one.
  • Consolidate: Ask Cursor to combine the important info into a fresh doc and generate a new plan.
  • Validate & Update: Make sure the new doc has all the crucial details before continuing development.

5. Tips for Ongoing Context Management

  • Watch for Overwrites: Cursor might delete or overwrite your history. Emphasize how important it is to preserve logs for reference and learning.
  • Composer Chats: Long composer chats can cause issues. Move important context into your notepad or .md logs so you don’t lose anything when starting a new composer.
  • Consistency: After each development step, update your context document (have the agent/composer do it). Within a number of your prompts, you will have to keep reminding the composer to update your document before continuing to the next step. Though with everything documented, switching composers (when one stalls) is seamless.

Key Points

  • You will run into the “stuck generating” error at some point—so let’s solve for that upfront by always keeping your context updated.
  • With this method, I rarely experience circular development or retraining issues. I can easily jump into a new composer and continue working.
  • The commonly referenced “1 step forward, 2 steps back” problem doesn’t happen anymore with this strategy.

Let’s Work Through It Together

If you’ve tried these steps and they still haven’t worked for you—or if you think I’m totally off-base—please share your thoughts, feedback, or questions below. If your feedback is “my project is too complex for this” I call—let’s go through it in detail here then. If this is helpful let me know I’m happy to share more, with more actual workflow and detail.

1 Like

I have implemented all of these previously as a process i’ve had to figure out in order to maintain context due to Cursor composer continually getting stuck on generating. The problem however seems to be getting worse over time. yesterday it happened about 15 times across a 12 hour session however today composer is getting stuck on generating after 5-10 minutes and has become virtually unusable as i spend more time reorienting and fixing issues than making any progress. failing a fix for this i’m going to have to find an alternative

2 Likes

A Few Quick Questions:

You mentioned “stuck generating” after 5–10 minutes:

  • Does this happen immediately after creating a fresh composer?
  • Can you share a sample prompt (or something similar) – just want an idea of what you are requesting
    • Anecdotally, I’ve noticed certain prompt styles are more prone to getting stuck—but usually deeper into a composer session

Sorry to hear you’ve had increasing problems with this. I know the Cursor devs are working hard on tracking down ‘Stuck Generating’ issues right now.

If you’re seeing the problem frequently, your experience may be particularly valuable as it might help to pinpoint the elusive root cause. If you’re able to get a persistently stuck session, could you try this?

  • Temporarily switch off ‘Privacy’ mode if you have it on, otherwise they get almost no information about your requests at all
  • Enter a prompt and observe a ‘stuck’ generation attempt
  • In the editor, press Cmd+Shift+P (mac) or Ctrl+Shift+P (PC) for the command drop-down, and type Report AI Action. From there you can get the request ID for your prompt attempt
  • Share the request ID that failed and which LLM model you were using

Doing that for problem requests is really helpful, as it means they can track down what went wrong, whether it’s internal or in the conversation with the LLM.

Thanks and good luck!

1 Like

just pushed a speculative fix for this - please let me know if you are still seeing this issue! request ids and videos are very helpful!

1 Like

Where do I find the speculative fix to install?

you don’t need to do anything, was a backend change on our end!

Just had the lock now, but with an existing composer session & cursor session that was started hours ago. I assume you fix is for newly created cursors / session?

Hey @dugdathug,

Is your IDE still open? Are you able to run through the steps above to capture the request ID, just in case? :slight_smile:

today i’ve noticed that a fresh composer session lasts about 10-15 minutes max before getting stuck, but with increasing frequency i’m also getting the “Connect Failed” message which is now starting to happen more often than just the endless generating. Typically these new composer sessions are started with a request to review attached docs that i’ve been trying to keep updated between each session with key points as well as explicit safety protocols, however i find the safety protocols and rules i have in place are routinely completely ignored despite constant reminders…

1 Like

@itsKB I’m assuming you’re using multiple attached docs (3+)? Correct me if I’m wrong. How much info are you loading per doc (~total lines/doc)? Have you encountered the “context window reached” error? [its something like that~]

Just to clarify, I’m only sharing anecdotal info here, but your issue has me intrigued. I’ve hit similar issues to what you’re describing, but usually much later into my composer sessions. This makes me think your initial context input might be significantly larger than mine.

Also, are you using Notepad at all? It might seem trivial, but for me, having a Notepad with explicit rules and safety protocols has made a noticeable difference. From my experience, it’s typically referenced first by default.

Lastly, are you asking it to analyze multiple files in a single prompt?

1 Like

Thanks so much for your patience with this, and for continuing to share how you’re getting on. And sorry you’re having such difficulties with it right now, I know the devs are working really hard to figure out what’s happening with your sessions.

Have you been able to capture the request IDs yet, as above? That would make a world of difference to the debugging process.

Part of the difficulty is that the issue is hard to reproduce, but somehow (unluckily for you) it seems like you’ve hit the magic combination. Figuring out what’s different about your sessions would really help to nail this once and for all. Are there any other details you can share, e.g.,

  • What kind of size is the codebase?
  • Are you using screenshots / image attachments?
  • Do the sessions hang (concentrating on that failure mode first) when you’re in the same Cursor IDE process/session as when the Composers were created, or does it happen after a restart?
  • Do you have a .cursorrules, and if so what kind of size is it?

Plus @JPZv0’s questions and anything else you think might be insightful. The more information we can capture about this, the faster they’ll be able to get to the solution.

PS: If possible, don’t forget to turn ‘Privacy’ mode off for the requests where you capture the IDs, if it’s currently on. Don’t worry, it doesn’t mean folks will be browsing through your code :slight_smile: It’s just because when that’s on, there’s virtually nothing to go on except a one-liner ‘error’, so troubleshooting is way harder.

1 Like

one issue is that often a generation fails silently: after the “Generating…” hangs for a while, the UI bounces back to what it was before i submitted the prompt. There is no message about a failed generation or any ID @three

Thanks @TacoByte

You should be able to get the ID here:

  • In the editor, press Cmd+Shift+P (mac) or Ctrl+Shift+P (PC) for the command drop-down, and type Report AI Action. From there you can get the request ID for your prompt attempt

This should be available even if you don’t get an error message in the Composer pane itself.