>
Tech News

Claude works better as a sparring partner than an oracle

Most prompt engineering advice is built on a hidden assumption that quietly wrecks the kind of work where you do not yet know the right answer. The assumption is that the AI behaves like an employee waiting for clear instructions, and that better instructions automatically buy better output. That contract holds for execution work. It actively flattens the work that needs exploration.

I spent the better part of a year tightening my prompts and getting cleaner responses from Claude, and the cleaner responses were uniformly less interesting. Polished, well-formatted, easy to forget. The shift that actually moved the work forward was not a cleverer prompt. It was giving up on the hunt for a perfect answer and inviting the model to argue, including arguing against me. What follows is what that pattern looks like in practice, why it works on any chatbot trained to be agreeable, and the parts of the workflow that matter when you want a model that pushes back.

The polite convergence problem

The default response from Claude to “give me your best idea” is a tidy list of safe options. Each one is structured, each one is plausible, and none of them are surprising. The model is not malfunctioning. It is doing what it was trained to do, which is to be helpful, harmless, and honest, and to validate the framing the user brings to the conversation.

This shows up most clearly in ideation work. You ask for business ideas, you get ten listicle-style entries that all sound interchangeable. You ask for names, you get a row of safe compound words that nobody will love or hate. You ask for positioning, you get a paragraph that confirms whatever you walked in with. None of that is broken. None of it advances the work.

The trap is that the model has technically answered your question, so it feels rude to push back. But the answer is the same one the next person gets, and the one after that. Asking for “the best answer” is asking the model to converge on a single point, and the single point is almost always the median of the training data. You can do better than the median, but not by asking for it.

  • Default behavior is to validate whatever the user suggests
  • A model trained to be helpful and honest will default to the median under tight prompts
  • Asking for “the best answer” asks the model to converge on a single safe point
  • The polite response is not bad, but it does not move the work forward
  • The trap is that the answer feels complete, so it is hard to notice you have been flattened

Reframe the prompt to widen the search space

The fix is not a cleverer prompt. The fix is a different shape of prompt. Instead of asking for the best answer, ask for a wide range of answers, including ones that look bad on first read, and tell the model that you would rather see a bad first answer you can react to than a polished final answer you cannot.

A prompt shape that has worked for me is roughly this: “I am working on [topic]. Give me ten different directions, including ones that look impractical, expensive, weird, or commercially questionable. Do not rank them. I will pick the one I want to push back on.”

The three load-bearing pieces are the request for ten (which forces the model off the median and into the long tail), the explicit invitation of impractical or weird (which gives the model permission to surface options you would not have pre-written), and the explicit framing that you will pick the one you want to push back on (which tells the model that the output is raw material, not a deliverable).

What you get back is a list that ranges from a safe option at one end to a genuinely strange one at the other, with several in between that are useful precisely because you would not have named them yourself. None of them are shippable. All of them are starting points for the next conversation.

  • Ask for ten directions, not the best one, and force the model off the median
  • Explicitly invite impractical, weird, or commercially questionable options
  • Tell the model you will pick the one you want to push back on, framing the output as raw material
  • The result is a long tail, with the useful options being the ones you did not pre-write
  • None of the answers are shippable; all of them are starting points

Pick the answer you hate most and push back on it

Once you have the list, the next move is to pick the one that bothers you most. Not the one that looks promising. The one that made you roll your eyes, or the one that felt too obvious, or the one you are already too attached to and want validated. That is the one you can argue with for the next few minutes.

Tell the model you are not sure the answer is good and you want help figuring out if you are wrong. Tell it to defend the idea, attack it, or play a critic who is not trying to be helpful. Give it permission to break character and tell you the idea is bad. Without that permission, the model will drift back to validation within a few turns, because politeness is the default behavior.

This is where the conversation becomes useful. You are no longer issuing one-shot prompts at a chatbot. You are working through a structured back-and-forth with a model that has no personal stake in being right. Some of the best ideas I have ever surfaced showed up three or four messages into the argument, in a response to a critique I did not see coming. The opening answer was just the door. The argument that follows is the room.

The reason this works is that disagreement is generative in a way agreement is not. When the model agrees with you, you have to do the work of coming up with the next move. When the model disagrees, the next move is sitting right there, and you can accept it, rebut it, or refine it. All three outcomes move the idea forward.

  • Pick the answer you hate most, not the one that looks promising
  • Explicitly invite critique and tell the model you would rather hear a hard truth than a polite yes
  • The model will drift back to validation by default; re-issue the permission every few turns
  • The argument after the first answer is where the good ideas show up
  • Treat disagreement as a starting move, not as an endpoint

What this pattern is bad at

The argument pattern is not for everything. Skip it when you already know the answer. If you have a specific question with a verifiable answer, give the model the question and the constraints and let it work. Save the argument for the work that does not have a known answer.

The pattern also costs more effort than the polite default. You have to read the responses carefully, push back when you disagree, and stay engaged through several rounds. If you want a vending-machine answer, you will get one and you will forget it. If you stay engaged through the argument, the output is much more likely to be useful. That tradeoff is worth making for exploration work. It is not worth making for execution work.

  • Skip the pattern for tasks with a verifiable known answer
  • Use it for brainstorming, naming, positioning, and side-hustle ideas
  • The pattern costs more effort than the polite default; the difference is meaningful
  • Ten focused minutes of argument beats thirty passive minutes of polite listicle
  • Re-issue the permission to push back every few turns, because the model drifts

Trade-offs

The sparring-partner pattern trades effort for output quality. You spend more time, you stay engaged, and you re-issue the permission to push back every few turns. In return you get past the polite median and into the long tail where the interesting options live. The pattern works on any chat model trained to be agreeable, because the underlying mechanism is the same. Politeness flattens exploration. Invited disagreement widens it.

The right move is to stop asking for the best answer and start asking for sparring. The opening answer is just the door. The argument through it is the room, and the room is where the interesting ideas are.

Leave a comment