Workflow
Get Unstuck
Reset, simplify, and reframe when Claude loops or stalls.
Overview
Sometimes Claude gets stuck in loops, providing the same unhelpful suggestions repeatedly, or fails to make progress on a task. When this happens, continuing the conversation wastes time. This workflow helps you recognize stuck patterns early and apply proven recovery techniques: resetting context, simplifying the problem, providing concrete examples, or breaking the task into smaller pieces.
Use this workflow when Claude repeats the same response, misunderstands your request after multiple clarifications, produces code that doesn't work repeatedly, or seems unable to progress on a task.
Step-by-step process
Reset the thread when looping
If Claude gives the same response 2-3 times or you're going in circles, stop. Start a fresh thread with a concise summary of what you need, what hasn't worked, and what to avoid.
Simplify the task and solve in parts
If Claude struggles with a complex request, break it into the smallest possible piece. Get that working, then build up gradually.
Provide a concrete example
Abstract requests are harder to understand. Show exactly what you want with specific inputs and expected outputs.
Change your approach
If repeated attempts at the same approach aren't working, try something different: a different algorithm, library, or architecture. Sometimes the approach itself is the problem.
Example prompts
"You've suggested updating the cache configuration 3 times, but I've explained the cache is working correctly. The issue is elsewhere. Reset your thinking. The bug is: users see stale data after updates. Cache is ruled out. What else could cause this? Fresh analysis, please."
"Building a full OAuth system is too big. Let's start microscopic: Write one function that validates a JWT token string. Input: token string and secret key. Output: decoded payload or error. Nothing else. No database, no users, no sessions."
"This sorting algorithm has failed 4 times with different edge case bugs. Let's change strategy: Use the built-in Array.sort() with a custom comparator. Show me that first, get it working, then we can optimize if needed."
"Let me be extremely concrete. Input: array [3, 1, 4, 1, 5]. Expected output: array [1, 1, 3, 4, 5]. That's it. Make this exact test pass. Don't worry about other cases yet."
Expected outputs
Clearer direction
Resetting context and simplifying requests gives Claude a fresh start with focused, actionable goals
Faster progress
Breaking stuck patterns immediately rather than continuing ineffective approaches saves significant time
Less rework
Concrete examples and simplified scopes reduce misunderstandings that require later corrections
Better solutions
Changing approaches when stuck often reveals simpler, more effective solutions than forcing the original idea
Best practices
Common pitfalls
Repeating the same request hoping for different results
Solution: If twice didn't work, the problem is your request or the context, not Claude's randomness. Change something: reset context, simplify scope, or provide examples.
Not recognizing when the approach itself is wrong
Solution: If multiple attempts at the same solution fail, the solution might be wrong. Ask Claude: 'Is there a fundamentally different way to solve this?'
Providing vague instructions when stuck
Solution: Vagueness makes stuck situations worse. Get more concrete: show exact code, specific inputs/outputs, and clear success criteria.
Pro tips
Use the 'rubber duck' technique
""Let me explain the full problem from scratch as if you know nothing: [detailed explanation]. Now suggest a solution without any assumptions from previous messages.""
Ask for alternative approaches
""We're stuck on this approach. Propose 3 completely different ways to solve this problem, even if they seem unconventional. I'm open to any solution that works.""
Provide a working example to modify
""Here's code that works for case A. Modify this to also handle case B. Start with working code, not from scratch.""