6 ms·
Ultrathink is a Claude Code magic word
- wpollock 2y agoNice to know, although I was taught that the magic word is "please".
- andrewfromx 2y agoI asked Claude if this was true, and Claude confirmed.
- deleted 2y ago[deleted]
- canadiantim 2y agoThat very very quickly moved from blog to twitter to blog to HN. Gotta love the velocity of information these days
- doubled112 2y agoLink first, ask questions later
- sauravt 2y agomegathink sounds better
- benatkin 2y agoAnd doublemegathink if you want it to do two megathinks in parallel
- Terr_ 2y agoNot to be confused with doublethink, a mode that is always active for LLMs.
- dghlsakjg 2y agoBut paradoxically only allocates 1/3 the tokens according to the code. Perhaps they should switch to the metric thinking system. Gigathinking, and Terathinking should be on the menu as well.
- sidgarimella 2y ago[flagged]
- deleted 2y ago[deleted]
- fragmede 2y agoCrazy that it's a key word that's implemented in the code that expands the context window, and that a light touch of reverse engineering was required to find it.
- dickfickling 2y agoIt’s described here: https://www.anthropic.com/engineering/claude-code-best-practices https://www.anthropic.com/engineering/claude-code-best-pract...
- fragmede 2y agoAh yes, the documentation. If everyone read documentation, we wouldn't need LLMs to read it for us!
- deleted 2y ago[deleted]
- zenkey 2y agoIt would be cool if these "secret keywords" were more directly exposed in the UI somehow, perhaps as a toggleable developer/experimental mode? I would have a lot of fun tinkering with them.
- refulgentis 2y agoIt's for Claude Code FWIW, just leaving a sigil here for fellow API implementers who are confused: your general point stands (though I wonder about UI affordances other than text given it's a CLI tool)
- m1keil 2y agoI hope we will exit this stage of magic spells and incantations sooner rather than later.
- Frummy 2y agoI hope we delve deeper into pentacles and rites in candlelit basements to appease black boxes of neural mimicries of canaanite archetypes
- timschmidt 2y agoSo long as we get to play weird science[1] during the montage. 1: https://www.youtube.com/watch?v=Jm-upHSP9KU https://www.youtube.com/watch?v=Jm-upHSP9KU
- patcon 2y agoSincerely, I respect your response to how arbitrary it seems in this form. But... I'd like you to take a moment and think really hard about whether this is truly novel behavior for LLMs, or rather something that has always been part of the interplay between inter-agent communication and intra-agent thought :)
- bee_rider 2y agoIt sounds like it is a “specific phrase mapped directly” based on another comment here? I guess that means hardcoded? Not completely sure, though.
- simonw 2y agoIt's hard-coded - this isn't a weird model thing, Claude Code detects the exact string "ultrathink" and sets the thinking token budget to 31999. I included that de-obfuscated code in my post: https://simonwillison.net/2025/Apr/19/claude-code-best-practices/ https://simonwillison.net/2025/Apr/19/claude-code-best-pract...
- 4b11b4 2y ago
- vunderba 2y ago@dickfickling beat me to it, but ultrathink is already explicitly called out in the public Anthropic documentation: "Ask Claude to make a plan for how to approach a specific problem. We recommend using the word "think" to trigger extended thinking mode, which gives Claude additional computation time to evaluate alternatives more thoroughly. These specific phrases are mapped directly to increasing levels of thinking budget in the system: "think" < "think hard" < "think harder" < "ultrathink." Each level allocates progressively more thinking budget for Claude to use." https://www.anthropic.com/engineering/claude-code-best-practices https://www.anthropic.com/engineering/claude-code-best-pract... I don't know what the max allowable "budget_tokens" is for Claude 3.7 Thinking mode, but the SDK shows an example of 32k which matches up with the article's findings.
- simonw 2y agoLooks like that documentation is incorrect. It suggests there are four levels - "think" < "think hard" < "think harder" < "ultrathink." - but if you look in the code there are actually only three.
- techjamie 2y agoPointed out elsewhere in this thread, but the docs call this phrase and others out as specific words to allocate a higher thinking budget.* I'm assuming it's to unify the experience between chat and API, and avoid switching models for it ala OAI. * https://www.anthropic.com/engineering/claude-code-best-practices https://www.anthropic.com/engineering/claude-code-best-pract...
- simonw 2y agoI quoted the documentation in my article.
- replwoacause 2y agoThis would be helpful information if I hadn’t already switched to Gemini 2.5 because it’s 96% cheaper
- user3939382 2y agoAfter stunts like Amp and Web Integrity (among others) I don’t care what they charge, I want nothing to do with Google.
- arresin 2y agoIt does feel like a Faustian bargain using it.
- esperent 2y agoI've had a frustrating time over the last couple of days with Gemini 2.5 Pro. First I asked it to help me reverse the direction of text on a circle in Photoshop. It gave me very specific instructions which don't work and continued to argue with me that I was doing something wrong - I did my own research and found it's not actually possible to do this in Photoshop, and the instructions it was giving me were for Illustrator. 30 minutes of my time wasted. This morning I asked it how to remove the axis lines from the orthographic view in Blender 4.3. I explained carefully that I know how to remove them in perspective view but that wasn't working for orthographic views. It over and over told me how to remove them from perspective views, telling me to use non existent UI elements, even drawing ASCII diagrams of how to find the nonexistent icons. When I said they didn't exist, it would circle back to telling me how to turn them off in the perspective view. It turns out, again, it's not possible to remove grid lines from orthographic views in Blender (at least without messing around with the theme settings, or turning off the grid entirely). In both cases it was incredibly persistent in stating the wrong way to do things, even when I was saying that it didn't work. I felt like it was gaslighting me, moreso than with any previous model I've used. I haven't yet used it for writing code but these two experiences don't make me feel hopeful. The worst part about dealing with AI is when they are confidently incorrect.
- 2y ago
- layer8 2y agoI think I'll wait for Hyperthink.
- namaria 2y agoI'm personally holding out for Ludicrousthink
- sn9 2y agoTengu think? As in Japanese Tengu?
- xrd 2y agoI'm scratching my head a bit at this one. I already assume that the models are shifting underneath me. It's very frustrating that most non-developers just think you can ask an LLM a question and it will respond accurately each time. They are designed to make creative output and even if you dial down the temperature they still can hallucinate. Why not be explicit about the thinking budget instead of aliasing it to a number with a term like ultrathink? It's a cute word, and fun to know is managed on the client side, but isn't it again more imprecision to tools the are already suffering from that?
- j_bum 2y ago> shifting underneath me I love that language. This is something that’s constantly bothered me from the get go. Maybe I’m just wearing a tinfoil hat, but I swear I’ve noticed variations in behavior and performance within models across time. This has been super annoying to me. I always use the chat interfaces (mostly Claude atm), so I guess that just puts me at the whim of which sub-version of model Anthropic is serving for the day. Or again, maybe I’m just hallucinating.
- seanhunter 2y agoIt’s fair to point out this is probably already evidence for AGI. Most days I personally am only able to infrathink at best.