Claude Codeを使っていて「答えが浅いな」と感じたことはありませんか。私は何度もあります。設計を相談したのに表面的な案しか出てこない、複雑なバグの原因究明が雑、といった場面です。
調べていくうちに ultrathink という合言葉にたどり着きました。この記事は、その正体と使いどころを実際に試した記録です。
きっかけは「設計が浅い」と感じたこと
ある日、データの持ち方を相談した時のこと。「3つのテーブルに分けます」という回答が返ってきたのですが、どう考えても検討が足りない。同じ質問を人間のエンジニアにしたら、もっと前提を疑ってから答えるはずだ、と感じました。
応答は速い。でも速いということは、あまり考えていないということでもある。ここで「Claudeにもっと考えさせる方法はないのか」と探し始めました。
調べてわかった think 系の合言葉
行き着いた答えは拍子抜けするほど単純でした。プロンプトの中に「考えて」という意味の英単語を入れると、Claude Codeが回答前に使う「思考の時間」が増える、という仕組みです。
具体的には think think hard think harder ultrathink といった言葉。後ろにいくほど、考える量が増えます。ultrathink はその最上位で、いちばん長く考えてから答えを返す合言葉です。
仕組みとしては、これらの言葉がClaude内部の「思考にどれだけ手間をかけるか」の設定とひもづいています。呪文というより、考える深さのダイヤルを回しているイメージが近い。
think / think hard / ultrathink の段階
私の体感での段階を表にします。
合言葉 | 考える量 | 向く作業 |
|---|---|---|
(何も書かない) | 標準 | 単純な編集、短い質問 |
think | 少し増える | ちょっとした検討が要る作業 |
think hard | 中くらい | バグ調査、複数案の比較 |
ultrathink | 最大 | 設計判断、原因が読めない不具合 |
使い方は本当に書くだけです。たとえば「この機能の設計を ultrathink して提案して」のように、ふだんの指示文にまぜこむ。専用のコマンドを覚える必要はありません。
実際に効いた場面・効かなかった場面
最初の「テーブル設計が浅い」問題は、ultrathink を足したらはっきり変わりました。前提を疑う質問が返ってきて、そのうえで複数案を比べてくれた。考える時間を与えると回答の質が上がる、というのを体感した瞬間です。
一方で、効かない場面もあります。typoの修正やファイル名の変更みたいな単純作業に ultrathink を付けても、結果は変わりません。考える材料がそもそも無いからです。
私が学んだ線引きは、「人間でも一瞬迷う作業かどうか」。迷う作業なら効く、迷わない作業なら無意味、というシンプルな基準です。
使いすぎるとコストと時間が増える
便利なら全部に付ければいい、とはなりません。考える時間が増えるぶん、回答が返ってくるまで遅くなります。
さらに、APIキーの従量課金で使っている場合、思考に使ったぶんもトークンとして加算されます。軽い作業にまで ultrathink を付けて回すと、気づくと請求が膨らむ。モデルの選び方とあわせて意識したいところです。
ProプランやMaxプランの定額契約なら料金は気になりませんが、それでも待ち時間は発生します。乱用しない方が結局は快適です。
私の使いどころ
半年使ってみて、私が ultrathink を付けるのは次のような時です。
新しい機能の設計をゼロから相談する時、原因がまったく読めないバグを追う時、大きめのリファクタの段取りを考えてもらう時。どれも「ちょっと考えて即答」では足りない、腰を据えた検討が要る場面です。
逆に日常の8割の作業では何も付けません。標準の速さで十分だからです。ultrathink は常用する道具ではなく、ここ一番で引く切り札、という位置づけが私にはしっくりきています。
まとめ
- プロンプトに
ultrathinkと書くと、Claude Codeが長く考えてから答える - 段階は think → think hard → ultrathink の順で考える量が増える
- 設計判断や原因不明のバグなど「迷う作業」で効く
- 単純作業に付けても結果は変わらない
- 思考が増えるぶん、回答は遅くなり、従量課金ではコストも増える
- 常用せず、難しい場面の切り札として使うのがちょうどよい





