Activity is still moving
Wait when a terminal command is still producing output, Ollama is loading a model, or tokens and tool events are still appearing. Interrupting an active tool can leave its own operation half-finished.
That spinner can sit there forever while your half-finished task hangs in limbo. A stuck request usually comes down to a stalled connection, a provider limit, an oversized context, a local model that is not answering, or a wedged extension state.
Last verified: August 31, 2026 · Help first. Recovery bridge at the end.
Use the visible activity, not the spinner alone. Roo can legitimately wait on a long command, a local-model cold start, or a slow first token. A request is probably wedged when the task timeline, terminal, provider dashboard, and local server all stay unchanged.
Wait when a terminal command is still producing output, Ollama is loading a model, or tokens and tool events are still appearing. Interrupting an active tool can leave its own operation half-finished.
If there is no new output for two or three minutes and no tool is running, inspect the working tree, capture the error state, cancel once, and send one small verification request.
If a one-line task fails with the same provider profile but works with another model or endpoint, stop replaying the full task. Keep the smaller working profile and resume from preserved state.
roo-cline.apiRequestTimeout. You do not have to wait the full ten minutes when the request is visibly idle, but setting the timeout to 0 removes the safety limit and can create a truly endless wait.Use these in order. If one retry works but the next request hangs again, the repeated cause is usually provider pressure, context size, tool-call compatibility, or the transport underneath Roo Code.
Check git status --short and git diff --stat, then cancel. Retry with a tiny request such as “report the current task state without editing files.” Repeating the full prompt hides the real cause.
OpenRouter, Anthropic, OpenAI, and other providers can return billing, quota, capacity, or 429 errors. Check the exact provider profile and status page before changing Roo itself.
Conversation history, mentioned files, system instructions, and tool output all consume context. Remove broad file mentions and restart with only the goal, changed files, known failure, and next test.
For Ollama or LM Studio, confirm the server sees the request and the model answers outside Roo. Cold starts, insufficient memory, context settings, and an unloaded model can all resemble an extension hang.
Test the same small request with one different model or provider profile. For a custom base URL, proxy, SSH session, WSL window, or code-server setup, also test from ordinary local VS Code.
After preserving the working tree, update Roo Code and run Developer: Reload Window. Provider and native tool-call bugs have been fixed across releases, so an old build can preserve a failure that configuration changes cannot solve.
The message often tells you which layer failed. Capture the exact text before closing the task or reloading VS Code.
Re-select the intended API profile, then verify the key, organization or project access, and model permissions. Do not paste a replacement key into the chat.
Wait for the provider reset, reduce parallel requests, or switch to another configured model. A blind retry loop can extend the problem and spend more quota.
Start a fresh task with fewer file mentions. On OpenAI-compatible endpoints, also confirm that the selected model fully supports native tool calling.
Check the provider status page and retry one small request after a short pause. If another profile works immediately, the workspace is probably not the cause.
Open Roo Code output and the VS Code developer console. Record whether the provider received the request, whether streaming began, and whether a tool call stopped mid-event.
If the model emits tool JSON as text, returns empty tool calls, or loops at the same action, use a model and endpoint with complete native function-calling support.
Confirm credits, model availability, and the provider status behind the route. Then compare the same tiny prompt through a different model or first-party profile.
Confirm the base URL and model ID. Roo Code requires native tool calling for OpenAI-compatible providers; partial function-calling or malformed streamed tool events can stall a task.
Run ollama ps and ollama list. Preload the model, check available VRAM or RAM, and reduce the model's num_ctx if the first request dies during allocation.
Start LM Studio's local server, load the intended model, and verify Roo points to the configured host. Roo's documented default is http://localhost:1234.
If the failure occurs only through code-server, SSH, WSL, a container, VPN, or proxy, run the same provider profile and tiny prompt from local VS Code.
Use exact paths and one objective. Roo's own large-project guidance recommends smaller tasks, targeted context mentions, and re-including only the important state.
In VS Code, open View > Output and select Roo Code. Save the first error, provider name, model, and timestamp rather than only the final retry message.
Use Help > Toggle Developer Tools, then inspect the Console. Roo maintainers request this evidence for stuck requests because it can reveal stream and extension errors absent from chat.
Roo documents the roo-cline.debug setting for additional console output. Avoid Reset Settings as a first step: Roo warns that reset deletes profiles, secrets, custom modes, settings, and task history.
Canceling the request does not erase files already written, but the in-flight response is gone. Roo checkpoints can help restore workspace files, while your normal Git diff shows what is currently on disk. Check both before another agent edits anything.
Capture git status --short, git diff --stat, changed files, generated files, and any uncommitted configuration changes.
Keep the provider error, Roo output, failed command, tests already run, model and profile, and approaches that did not work.
Write one smallest verification step. Do not ask the next task to rediscover the entire project before it confirms the preserved state.
Goal: Changed files: What already works: Exact failure or last output: Attempts that failed: Next safe action: Verification command:
If Roo Code hangs repeatedly on the same project, the session may have become the liability: too long, too bloated, or too close to a provider limit. The practical fix is a fresh task. The expensive part is reconstructing the half-done work, decisions, failed attempts, and verification state.
This guide separates Roo's documented behavior from field reports. The timeout, debug, context, checkpoint, provider, Ollama, and LM Studio checks come from Roo Code's official documentation; the silent-spinner patterns are also reflected in Roo's public issue history.
Roo Code troubleshooting FAQ · API timeout and debug settings · large-project context guidance · checkpoint behavior · OpenAI-compatible requirements · Ollama setup and OOM fixes · LM Studio setup · stuck API request issue · code-server hang report
Wait while a command, local-model cold start, or streamed response is still producing activity. If nothing changes for two or three minutes and no tool is running, preserve the diff and cancel. Roo's documented default request timeout is 600 seconds.
Canceling stops the in-flight response but does not erase files already written. Inspect git status, git diff, and Roo checkpoints before sending another instruction.
Provider limits, transient gateway errors, streaming failures, and OpenAI-compatible tool-call problems can surface as retries or an unchanged spinner. Test one tiny request with another model or profile.
They can share the same causes. A failed request returned an error; a stuck request never completed. Preserve the same evidence for both: provider message, model, current diff, logs, and next verification step.
Common causes are a stopped server, cold or unloaded model, insufficient VRAM or RAM, an oversized num_ctx, or a model without reliable native tool calling. Test the model outside Roo first.
Check that LM Studio's local server is running, the intended model is loaded, Roo uses the correct host and port, and the model context length can hold the request.
Open View > Output and select Roo Code. For a silent hang, open Help > Toggle Developer Tools and inspect the Console.
No. The troubleshooting steps address the live request. ShardStitch protects the surrounding working state so a fresh Roo task or another tool can continue without re-explaining everything.