Cursor Composer stuck on Generating or Taking longer than expected?
Protect the files that already changed, identify whether the request, network path, index, or one conversation is stuck, then continue from a clean verified state.
git status --short and git diff --stat, save the Request ID from the chat menu, and note the last file Cursor changed. Do not delete Cursor data or edit its database to fix an active request.Wait, continue, or restart?
Output is still moving
Wait while tokens, terminal output, or file changes are still appearing. The status alone does not prove that the request is wedged.
The stream stopped mid-line
Send one short continue prompt. Cursor users have reported that this can release the known Taking longer than expected pause. Do not repeat it indefinitely.
Nothing changes
Preserve the Request ID and working tree, then test a fresh Composer chat with one tiny request. This separates a single broken conversation from a wider network or IDE problem.
Every new chat hangs
Run Cursor Network Diagnostics. Cursor support also recommends testing with HTTP/2 disabled and resyncing the codebase index.
Use the failure boundary to choose the fix.
"cursor.general.disableHttp2": true in User Settings JSON, restart Cursor, and repeat the same request. Treat this as a diagnostic experiment, not a universal fix; restore the previous setting if it does not help.In the February 2026 Cursor support discussion, support recommended network diagnostics and an HTTP/2 setting experiment, but users also reported that these steps did not resolve their stalls. Record your Cursor version, Request ID, diagnostic result, and whether a new empty-folder chat fails before escalating. Source reviewed September 5, 2026; this is not a locally reproduced fix.
If one old chat will not load.
A request stuck while streaming and a conversation stuck on Loading Chat are different failures. Cursor persists Composer history locally, but direct database editing is a high-risk troubleshooting step. Before any maintenance, fully close Cursor and copy the database to a separate backup location.
Windows: %APPDATA%\Cursor\User\globalStorage\state.vscdb
macOS: ~/Library/Application Support/Cursor/User/globalStorage/state.vscdb
Linux: ~/.config/Cursor/User/globalStorage/state.vscdb
Keep the original untouched. Start with Cursor's supported diagnostics and a fresh chat. Database repair instructions from forum posts may apply to a particular Cursor version or Loading Chat failure, but they should not be treated as the first fix for a normal Generating hang.
What ShardStitch can recover from Cursor.
ShardStitch reads persisted Cursor conversation state locally in read-only mode. It combines the recovered messages with repository evidence such as Git diff, changed files, recent commits, local notes, failed checks, and the next verification action. The continuation packet can return to a fresh Cursor chat or move to another supported coding tool.
Recoverable
Persisted conversation messages, files already written, repository changes, recent commits, local notes, and verification evidence.
Not recoverable
Tokens that never reached Cursor, streamed text that was never persisted, and unapplied code that does not exist in the database or working tree.
Trust boundary
Conversation text is context. Git state, file contents, command output, and tests are evidence. ShardStitch keeps those categories separate.
Give the fresh chat a bounded continuation.
Goal:
Files already changed:
Verified working behavior:
Exact Cursor failure and Request ID:
Attempts that did not work:
Next safe action:
Verification command:
Ask the new Composer to inspect the current diff before editing. This prevents a clean chat from repeating work that the stuck run already wrote.
If the terminal command is the blocker.
If Cursor is not just generating but waiting on a shell command, use the Cursor terminal command stuck guide. It covers interactive prompts, watchers, servers, hidden terminal output, and bounded retries.
Sources and verification.
Cursor staff describe Taking longer than expected as a known issue and recommend disabling HTTP/2, resyncing the project index, running Network Diagnostics, and preserving the Request ID. Older Cursor reports also show that opening a new Composer can isolate a conversation-specific hang. ShardStitch's read-only Cursor recovery path and role mapping are covered by the current product test suite.
- Cursor staff response: Taking longer than expected
- Cursor forum: Composer stuck on Generating
- Cursor forum: Loading Chat recovery pattern
FAQ.
What should I do when Cursor says Taking longer than expected?
Preserve the diff and Request ID. Try one short continue prompt. If it stays stuck, test a fresh chat, run Network Diagnostics, and use Cursor's HTTP/2 or index-resync workarounds when the evidence points to those layers.
Will restarting Cursor erase files already written?
Files already written normally remain on disk. Incomplete streamed output or unapplied edits may not. Inspect the working tree before another agent edits anything.
Can ShardStitch recover the conversation?
It can recover conversation messages that Cursor persisted locally and combine them with verified repository state. It cannot reconstruct output that was never saved.
Scope note: Cursor failure causes vary by version, model, network, extension state, and workspace. Diagnose the layer before changing local state.