プロンプティングのベストプラクティス
Claudeの最新モデル向けのプロンプトエンジニアリング手法に関する包括的なガイド。明確さ、例、XML構造化、思考、エージェントシステムを扱います。
これは、Claude Fable 5.1、Claude Mythos 5.1、Claude Fable 5、Claude Mythos 5、Claude Opus 5、Claude Opus 4.8、Claude Opus 4.7、Claude Opus 4.6、Claude Sonnet 5、Claude Sonnet 4.6、Claude Haiku 4.5を含む現行のClaudeモデルを対象としたプロンプトエンジニアリングのリファレンスです。このページは3つのパートで構成されています。
- モデル固有のガイダンス が最初です。特定のモデルが異なる挙動を示す箇所と、プロンプトで何を変更すべきかを説明します。
- すべての現行モデル向けの手法 がその次です。一般原則、出力とフォーマット、ツール使用、思考、エージェントシステムを扱います。
- 移行に関する考慮事項 が最後です。以前の世代から移行するプロンプト向けです。
モデル固有のガイダンス
これらのモデルにはそれぞれ専用のプロンプティングページがあります。まずご利用のモデルのページを読み、その後に続く手法を読んでください。
| モデル | ガイド | 異なる点 |
|---|---|---|
| Claude Fable 5.1およびClaude Mythos 5.1 | Claude Fable 5.1のプロンプティング | Claude Fable 5との違い:effortレベル、長いタスクの完遂、ユーザー向けの進捗更新、thinkingブロックを変更せずに返すこと、エージェントループにおけるツール呼び出しのバッチ化、低effortでの検索トリガー、フォーマット、文章の密度。 |
| Claude Fable 5およびClaude Mythos 5 | Claude Fable 5のプロンプティング | Claude Opus 4.8との違い:effortレベル、指示への追従、長時間実行時の進捗に関する主張、メモリシステム、reasoning_extraction拒否カテゴリ。 |
| Claude Sonnet 5 | Claude Sonnet 5のプロンプティング | Claude Sonnet 4.6との違い:応答の長さ、effortと思考の深さの調整、ツール使用のトリガー、文字通りの指示追従、デザインとフロントエンドのデフォルト。 |
| Claude Opus 5 | Claude Opus 5のプロンプティング | 以前のOpusモデルとの違い:応答の長さと冗長さ、ユーザー向けの進捗更新、文書成果物の長さ、タスクの範囲と過剰な検証、サブエージェントの制御、自己修正。 |
| Claude Opus 4.8 | Claude Opus 4.8のプロンプティング | 応答の長さ、effortと思考の深さの調整、ツール使用のトリガー、文字通りの指示追従、サブエージェントの制御、デザインとフロントエンドのデフォルト。 |
一般原則
このセクションおよび以降のセクションの手法は、Claude Fable 5.1、Claude Mythos 5.1、Claude Fable 5、Claude Mythos 5を含む現行のClaudeモデルに適用されます。手法が特定のモデル名を挙げている場合は、そのモデルで測定されたものとして扱い、別のモデルに適用する前にご自身の評価で再確認してください。
明確かつ直接的に
Claudeは明確で明示的な指示によく応答します。望む出力について具体的に示すことで、結果を向上させることができます。「期待以上」の振る舞いを望む場合は、曖昧なプロンプトからモデルが推測することに頼るのではなく、明示的に要求してください。
Claudeを、優秀だがあなたの規範やワークフローに関するコンテキストを持たない新入社員だと考えてください。望むことをより正確に説明するほど、結果は良くなります。
黄金律: タスクに関するコンテキストが最小限の同僚にプロンプトを見せ、それに従うよう頼んでみてください。同僚が混乱するなら、Claudeも混乱します。
- 望む出力形式と制約について具体的に示してください。
- 手順の順序や完全性が重要な場合は、番号付きリストや箇条書きを使って指示を順序立てたステップとして提供してください。
効果が低い例:
Create an analytics dashboardより効果的な例:
Create an analytics dashboard. Include as many relevant features and interactions as possible. Go beyond the basics to create a fully-featured implementation.パフォーマンス向上のためにコンテキストを追加する
指示の背景にあるコンテキストや動機を提供すること、たとえばそのような振る舞いがなぜ重要なのかをClaudeに説明することで、Claudeがあなたの目標をよりよく理解し、より的を射た応答を提供できるようになります。
効果が低い例:
NEVER use ellipsesより効果的な例:
Your response will be read aloud by a text-to-speech engine, so never use ellipses since the text-to-speech engine will not know how to pronounce them.Claudeは説明から一般化できるほど賢明です。
例を効果的に使う
例は、Claudeの出力形式、トーン、構造を誘導する最も信頼性の高い方法の1つです。よく練られた少数の例(few-shotまたはmultishotプロンプティングとして知られています)は、精度と一貫性を向上させます。
例を追加する際は、次のようにしてください。
- 関連性がある: 実際のユースケースを忠実に反映させます。
- 多様である: エッジケースをカバーし、Claudeが意図しないパターンを拾わないよう十分に変化をつけます。
- 構造化されている: Claudeが指示と区別できるよう、例を
<example>タグで囲みます(複数の例は<examples>タグで囲みます)。
XMLタグでプロンプトを構造化する
XMLタグは、特にプロンプトに指示、コンテキスト、例、可変入力が混在している場合に、Claudeが複雑なプロンプトを曖昧さなく解析するのに役立ちます。各種類のコンテンツをそれぞれのタグ(たとえば<instructions>、<context>、<input>)で囲むことで、誤解を減らせます。
ベストプラクティス:
- プロンプト全体で一貫した説明的なタグ名を使用します。
- コンテンツに自然な階層がある場合はタグをネストします(ドキュメントは
<documents>内に、それぞれを<document index="n">内に)。
Claudeに役割を与える
システムプロンプトで役割を設定すると、ユースケースに合わせてClaudeの振る舞いとトーンが絞り込まれます。たった1文でも違いが生まれます。
client = anthropic.Anthropic()
message = client.messages.create(
model="claude-opus-5",
max_tokens=1024,
system="You are a helpful coding assistant specializing in Python.",
messages=[
{"role": "user", "content": "How do I sort a list of dictionaries by key?"}
],
)
print(message.content)長文コンテキストのプロンプティング
大きなドキュメントやデータの多い入力(2万トークン以上)を扱う場合は、最良の結果を得るためにプロンプトを慎重に構造化してください。
-
長文データを先頭に置く: 長いドキュメントや入力は、クエリ、指示、例よりも上の、プロンプトの先頭付近に配置してください。これによりすべてのモデルでパフォーマンスが向上します。
-
ドキュメントのコンテンツとメタデータをXMLタグで構造化する: 複数のドキュメントを使用する場合は、明確にするために各ドキュメントを
<document>タグで囲み、<document_content>および<source>(およびその他のメタデータ)のサブタグを付けてください。<documents> <document index="1"> <source>annual_report_2023.pdf</source> <document_content> {{ANNUAL_REPORT}} </document_content> </document> <document index="2"> <source>competitor_analysis_q2.xlsx</source> <document_content> {{COMPETITOR_ANALYSIS}} </document_content> </document> </documents> Analyze the annual report and competitor analysis. Identify strategic advantages and recommend Q3 focus areas. -
応答を引用に基づかせる: 長いドキュメントのタスクでは、タスクを実行する前にまずドキュメントの関連部分を引用するようClaudeに依頼してください。これによりClaudeは関連するコンテンツに集中し、ドキュメントの残りの部分を無視できます。
You are an AI physician's assistant. Your task is to help doctors diagnose possible patient illnesses. <documents> <document index="1"> <source>patient_symptoms.txt</source> <document_content> {{PATIENT_SYMPTOMS}} </document_content> </document> <document index="2"> <source>patient_records.txt</source> <document_content> {{PATIENT_RECORDS}} </document_content> </document> <document index="3"> <source>patient01_appt_history.txt</source> <document_content> {{PATIENT01_APPOINTMENT_HISTORY}} </document_content> </document> </documents> Find quotes from the patient records and appointment history that are relevant to diagnosing the patient's reported symptoms. Place these in <quotes> tags. Then, based on these quotes, list all information that would help the doctor diagnose the patient's symptoms. Place your diagnostic information in <info> tags.
モデルの自己認識
アプリケーション内でClaudeに自身を正しく識別させたい場合、または特定のAPI文字列を使用させたい場合:
The assistant is Claude, created by Anthropic. The current model is Claude Opus 5.モデル文字列を指定する必要があるLLM搭載アプリの場合:
When an LLM is needed, please default to Claude Opus 5 unless the user requests
otherwise. The exact model string for Claude Opus 5 is claude-opus-5.出力とフォーマット
コミュニケーションスタイルと冗長さ
Claudeの最新モデルは、以前のモデルと比べてより簡潔で自然なコミュニケーションスタイルを持っています。
- より直接的で根拠に基づく: 自己賛美的な更新ではなく、事実に基づいた進捗報告を提供します
- より会話的: やや流暢で口語的になり、機械的な印象が薄れています
- 冗長さが少ない: 特に指示がない限り、効率のために詳細な要約を省略することがあります
これは、Claudeがツール呼び出し後の言葉による要約を省略し、次のアクションに直接移ることがあることを意味します。推論の可視性を高めたい場合:
After completing a task that involves tool use, provide a quick summary of the work you've done.Claude Opus 5は冗長さに関して例外です。デフォルトのユーザー向け応答は以前のモデルよりも長くなり、effortを上げ下げしても目に見える応答の長さは確実には変わりません。代わりに簡潔さを明示的にプロンプトで指示してください。サンプルの指示についてはClaude Opus 5のプロンプティングを参照してください。Claude Fable 5.1はエージェント作業中に逆の傾向を示します。ツール呼び出しの間に書くユーザー向けの更新が少なくなります。進捗テキストを明示的に求め、そのテキストを短く保つよう指示している記述はすべて削除してください。ユーザー向けの進捗更新を求めるを参照してください。
応答の形式を制御する
出力フォーマットを誘導するうえで特に効果的な方法がいくつかあります。
-
何をしないかではなく、何をするかをClaudeに伝える
- 代わりに:「応答にmarkdownを使用しないでください」
- 試す:「応答は滑らかに流れる散文の段落で構成してください。」
-
XML形式インジケーターを使用する
- 試す:「応答の散文部分を<smoothly_flowing_prose_paragraphs>タグ内に書いてください。」
-
プロンプトのスタイルを望む出力に合わせる
プロンプトで使用されているフォーマットスタイルは、Claudeの応答スタイルに影響を与える可能性があります。出力フォーマットの誘導性に依然として問題がある場合は、プロンプトのスタイルを望む出力スタイルにできるだけ近づけてみてください。たとえば、プロンプトからmarkdownを取り除くと、出力内のmarkdownの量を減らせます。
-
特定のフォーマットの好みには詳細なプロンプトを使用する
markdownとフォーマットの使用をより細かく制御するには、明示的なガイダンスを提供してください。
<avoid_excessive_markdown_and_bullet_points>
When writing reports, documents, technical explanations, analyses, or any long-form
content, write in clear, flowing prose using complete paragraphs and sentences. Use
standard paragraph breaks for organization and reserve markdown primarily for `inline
code`, code blocks (```...```), and simple headings (## and ###). Avoid using **bold**
and *italics*.
DO NOT use ordered lists (1. ...) or unordered lists (*) unless: a) you're presenting
truly discrete items where a list format is the best option, or b) the user explicitly
requests a list or ranking
Instead of listing items with bullets or numbers, incorporate them naturally into
sentences. This guidance applies especially to technical writing. Using prose instead of
excessive formatting will improve user satisfaction. NEVER output a series of overly
short bullet points.
Your goal is readable, flowing text that guides the reader naturally through ideas
rather than fragmenting information into isolated points.
</avoid_excessive_markdown_and_bullet_points>Claude Fable 5.1はすでに以前のモデルよりもフォーマットを控えめにするため、このモデルではこのようなブロックがコンテンツに必要な構造を抑制してしまう可能性があります。削除するか、チャットでのフォーマットにあるより短いルールに置き換えてください。
LaTeX出力
Claudeの最新モデルは、数式、方程式、技術的な説明にデフォルトでLaTeXを使用します。プレーンテキストを好む場合は、次の指示をプロンプトに追加してください。
Format your response in plain text only. Do not use LaTeX, MathJax, or any markup
notation such as \( \), $, or \frac{}{}. Write all math expressions using standard text
characters (e.g., "/" for division, "*" for multiplication, and "^" for exponents).ドキュメント作成
Claudeの最新モデルは、強力な指示追従でプレゼンテーション、アニメーション、ビジュアルドキュメントを作成し、通常は最初の試行で使用可能な出力を生成します。
ドキュメント作成で最良の結果を得るには:
Create a professional presentation on [topic]. Include thoughtful design elements,
visual hierarchy, and engaging animations where appropriate.プリフィル応答からの移行
Claude 4.6モデルおよびClaude Mythos Preview以降、最後のアシスタントターンでのプリフィル応答(Claudeが続きを書くための部分的なアシスタントメッセージを提供すること)はサポートされなくなりました。これらのモデルに対してプリフィルされたアシスタントメッセージを含むリクエストは400エラーを返します。モデルの知能と指示追従が進歩したため、プリフィルのほとんどのユースケースではもはやプリフィルが必要ありません。以前のモデルは引き続きプリフィルをサポートしており、会話の他の場所にアシスタントメッセージを追加することには影響しません。
以下は一般的なプリフィルのシナリオと、それらから移行する方法です。
プリフィルは、JSON/YAML、分類、および同様のパターンなど、プリフィルがClaudeを特定の構造に制約する特定の出力形式を強制するために使用されてきました。
移行: 構造化出力機能は、Claudeの応答を所定のスキーマに従うよう制約するために特別に設計されています。まずはモデルに出力構造に従うよう依頼してみてください。新しいモデルは、特にリトライを実装している場合、指示されれば複雑なスキーマに確実に一致させることができます。分類タスクには、有効なラベルを含むenumフィールドを持つツール、または構造化出力のいずれかを使用してください。
Here is the requested summary:\nのようなプリフィルは、導入テキストをスキップするために使用されていました。
移行: システムプロンプトで直接的な指示を使用してください:「前置きなしで直接応答してください。'Here is...'、'Based on...'などのフレーズで始めないでください。」あるいは、XMLタグ内に出力するようモデルに指示するか、構造化出力を使用するか、ツール呼び出しを使用してください。時折前置きが紛れ込む場合は、後処理で取り除いてください。
プリフィルは不必要な拒否を回避するために使用されていました。
移行: Claudeは現在、適切な拒否がはるかに上手になっています。プリフィルなしでuserメッセージ内に明確なプロンプトを記述すれば十分なはずです。
プリフィルは、部分的な補完を継続したり、中断された応答を再開したり、前回の生成が終わったところから再開したりするために使用されていました。
移行: 継続をユーザーメッセージに移し、中断された応答の最後のテキストを含めてください:「前回の応答は中断され、`[previous_response]`で終わりました。中断したところから続けてください。」これがエラー処理または不完全な応答の処理の一部であり、UX上のペナルティがない場合は、リクエストをリトライしてください。
プリフィルは、更新または注入されたコンテキストを定期的に確保するために使用されていました。
移行: 非常に長い会話では、以前はプリフィルされたアシスタントのリマインダーだったものをユーザーターンに注入してください。コンテキストのハイドレーションがより複雑なエージェントシステムの一部である場合は、ツールを通じたハイドレーション(ターン数などのヒューリスティックに基づいてコンテキストを含むツールを公開または使用を促す)、またはコンテキストコンパクション中のハイドレーションを検討してください。
ツール使用
ツールの利用
Claudeの最新モデルは正確な指示追従のために訓練されており、特定のツールを使用するよう明示的に指示することで恩恵を受けます。「いくつか変更を提案してもらえますか」と言うと、変更を加えることがあなたの意図であったとしても、Claudeは実装するのではなく提案を提供することがあります。ツールの定義方法とツールトリガーのトラブルシューティングについては、Claudeでのツール使用を参照してください。
Claudeにアクションを取らせるには、より明示的にしてください。
効果が低い例(Claudeは提案するだけ):
Can you suggest some changes to improve this function?より効果的な例(Claudeは変更を加える):
Change this function to improve its performance.または:
Make these edits to the authentication flow.Claudeがデフォルトでより積極的にアクションを取るようにするには、システムプロンプトに次を追加できます。
<default_to_action>
By default, implement changes rather than only suggesting them. If the user's intent is
unclear, infer the most useful likely action and proceed, using tools to discover any
missing details instead of guessing. Try to infer the user's intent about whether a tool
call (e.g., file edit or read) is intended or not, and act accordingly.
</default_to_action>一方、モデルをデフォルトでより慎重にし、すぐに実装に飛びつきにくくし、要求された場合にのみアクションを取るようにしたい場合は、次のようなプロンプトでこの振る舞いを誘導できます。
<do_not_act_before_instructions>
Do not jump into implementation or change files unless clearly instructed to make
changes. When the user's intent is ambiguous, default to providing information, doing
research, and providing recommendations rather than taking action. Only proceed with
edits, modifications, or implementations when the user explicitly requests them.
</do_not_act_before_instructions>Claude Opus 4.5とClaude Opus 4.6は、以前のモデルよりもシステムプロンプトへの反応性も高くなっています。ツールやスキルのトリガー不足を減らすようにプロンプトを設計していた場合、これらのモデルでは過剰にトリガーされる可能性があります。解決策は、強い言葉遣いを控えめにすることです。「CRITICAL: You MUST use this tool when...」と書いていたところは、「Use this tool when...」のようなより普通のプロンプトを使用できます。
並列ツール呼び出しの最適化
Claudeの最新モデルは独立したツール呼び出しを並列に実行します。これらのモデルは次のことを行います。
- リサーチ中に複数の推測的な検索を実行する
- コンテキストをより速く構築するために複数のファイルを一度に読む
- bashコマンドを並列に実行する(システムパフォーマンスのボトルネックになることさえあります)
この振る舞いは誘導可能です。モデルはプロンプトなしでも並列ツール呼び出しの成功率が高いですが、これを約100%に引き上げたり、積極性のレベルを調整したりできます。
<use_parallel_tool_calls>
If you intend to call multiple tools and there are no dependencies between the tool
calls, make all of the independent tool calls in parallel. Prioritize calling tools
simultaneously whenever the actions can be done in parallel rather than sequentially.
For example, when reading 3 files, run 3 tool calls in parallel to read all 3 files into
context at the same time. Maximize use of parallel tool calls where possible to increase
speed and efficiency. However, if some tool calls depend on previous calls to inform
dependent values like the parameters, do NOT call these tools in parallel and instead
call them sequentially. Never use placeholders or guess missing parameters in tool
calls.
</use_parallel_tool_calls>Execute operations sequentially with brief pauses between each step to ensure stability.長いエージェントループでClaude Fable 5.1を使用する場合は、各ラウンドのツール結果の後に、並列呼び出しの指示をターンスコープのシステムメッセージとして送信してください。エージェントループで独立したツール呼び出しをバッチ化するを参照してください。
思考と推論
考えすぎと過度な徹底性
Claude Opus 4.6は、特に高いeffort設定において、以前のモデルよりも多くの事前探索を行います。この初期作業は最終結果の最適化に役立つことが多いですが、モデルはプロンプトで指示されなくても広範なコンテキストを収集したり、複数のリサーチの筋を追求したりすることがあります。以前のプロンプトでモデルにより徹底的であるよう促していた場合は、Claude Opus 4.6向けにそのガイダンスを調整する必要があります。
- 包括的なデフォルトをより的を絞った指示に置き換える。 「デフォルトで[tool]を使用する」の代わりに、「問題の理解を深めるのに役立つ場合に[tool]を使用する」のようなガイダンスを追加してください。
- 過剰なプロンプトを削除する。 以前のモデルでトリガー不足だったツールは、現在は適切にトリガーされる可能性が高いです。「迷ったら[tool]を使用する」のような指示は過剰なトリガーを引き起こします。
- フォールバックとしてeffortを使用する。 Claudeが引き続き過度に積極的である場合は、
effortの設定を低くしてください。
場合によっては、Claude Opus 4.6は広範に思考することがあり、思考トークンが膨らんで応答が遅くなる可能性があります。この振る舞いが望ましくない場合は、推論を制約する明示的な指示を追加するか、effort設定を下げて全体的な思考とトークン使用量を減らすことができます。
When you're deciding how to approach a problem, choose an approach and commit to it.
Avoid revisiting decisions unless you encounter new information that directly
contradicts your reasoning. If you're weighing two approaches, pick one and see it
through. You can always course-correct later if the chosen approach fails.思考コストに厳格な上限が必要な場合、budget_tokensの上限を伴う拡張思考はOpus 4.6とSonnet 4.6では依然として機能しますが、非推奨です。Claude 4.7以降のモデルでは、budget_tokensを設定すると400エラーが返されます。effort設定を下げるか、アダプティブ思考でmax_tokensを厳格な制限として使用することを推奨します。
思考およびインターリーブ思考機能を活用する
Claudeの最新モデルは、ツール使用後の振り返りや複雑な多段階推論を伴うタスクに特に役立つ思考機能を提供します。より良い結果を得るために、初期思考またはインターリーブ思考を誘導できます。
Claude 4.6以降のモデルおよびClaude Mythos Previewはアダプティブ思考(thinking: {type: "adaptive"})を使用し、Claudeがいつどれだけ思考するかを動的に決定します。Claude Fable 5.1、Claude Mythos 5.1、Claude Fable 5、Claude Mythos 5では、思考は常にオンであり、アダプティブ思考が唯一のモードです。Claudeは2つの要因、すなわちeffortパラメータとクエリの複雑さに基づいて思考を調整します。effortが高いほど思考が多くなり、クエリが複雑なほど同様に思考が多くなります。思考を必要としない簡単なクエリでは、モデルは直接応答します。社内評価では、アダプティブ思考は拡張思考よりも確実に優れたパフォーマンスをもたらします。アダプティブ思考への移行を検討してください。
多段階のツール使用、複雑なコーディングタスク、長期的なエージェントループなど、エージェント的な振る舞いを必要とするワークロードにはアダプティブ思考を使用してください。古いモデルはbudget_tokensを伴う手動の拡張思考を使用します。各モデルがどの設定を受け入れるかについては、モデル別設定表を参照してください。
Claudeの思考の振る舞いを誘導できます。
After receiving tool results, carefully reflect on their quality and determine optimal
next steps before proceeding. Use your thinking to plan and iterate based on this new
information, and then take the best next action.アダプティブ思考のトリガー動作はプロンプトで制御可能です。大きなまたは複雑なシステムプロンプトで起こりうるように、モデルが望むよりも頻繁に思考していると感じる場合は、誘導するためのガイダンスを追加してください。
Thinking adds latency and should only be used when it will meaningfully improve
answer quality - typically for problems that require multistep reasoning. When in
doubt, respond directly.budget_tokensを伴う拡張思考から移行する場合は、思考設定を置き換え、予算の制御をeffortに移してください。次の例は、移行前と移行後の同じリクエストを示しています(利用可能なレベルとモデルごとの利用可否についてはeffortを参照してください)。
# 変更前: 手動バジェットを指定した拡張思考(旧モデル)
client.messages.create(
model="claude-sonnet-4-5-20250929",
max_tokens=16000,
thinking={"type": "enabled", "budget_tokens": 10000},
messages=[{"role": "user", "content": "..."}],
)
# 変更後: effortを指定したアダプティブ思考
client.messages.create(
model="claude-opus-4-8",
max_tokens=16000,
thinking={"type": "adaptive"},
output_config={"effort": "high"},
messages=[{"role": "user", "content": "..."}],
)拡張思考を使用していない場合、変更は必要ありません。Claude Opus 4.6からClaude Opus 4.8まで、およびClaude Sonnet 4.6では、thinkingパラメータを省略すると思考はオフになります。Claude Opus 5とClaude Sonnet 5では、thinkingパラメータを省略すると思考はデフォルトでオンになります。Claude Opus 5では、effortがhigh以下の場合にのみ無効にできます。Claude Fable 5.1、Claude Mythos 5.1、Claude Fable 5、Claude Mythos 5では、thinkingパラメータを設定するかどうかにかかわらず、思考は常にオンです。
- 規定的なステップよりも一般的な指示を優先する。 「徹底的に考えてください」のようなプロンプトは、手書きのステップバイステップの計画よりも優れた推論を生み出すことがよくあります。Claudeの推論は、人間が規定するものをしばしば上回ります。
- multishotの例は思考と併用できる。 few-shotの例の中で
<thinking>タグを使用して、Claudeに推論パターンを示してください。Claudeはそのスタイルを自身の拡張思考ブロックに一般化します。 - フォールバックとしての手動の思考連鎖(CoT)プロンプティング。 思考がオフの場合でも、Claudeに問題をじっくり考えるよう依頼することで、ステップバイステップの推論を促すことができます。
<thinking>や<answer>のような構造化タグを使用して、推論と最終出力をきれいに分離してください。Claude Opus 5では、代わりに低いeffortレベルで思考を有効にしたままにすることを推奨します。思考を無効にすると、モデルが内部XMLタグを目に見える出力に時折出力することがあるため、このパターンを適用する前に思考を無効にして実行するを参照してください。 - Claudeに自己チェックを依頼する。 「終える前に、[テスト基準]に照らして回答を検証してください」のような文を追加してください。これは特にコーディングと数学でエラーを確実に捕捉します。Claude Opus 5は例外です。明示的な指示なしでも自身の作業をよく検証し、以前のモデル向けに調整されたプロンプトから引き継がれた検証指示は過剰な検証を引き起こし、トークンとレイテンシを増加させる可能性があります。Claude Opus 5に移行する際は、これらの指示を書き直すのではなく削除してください。タスクの範囲と過剰な検証を参照してください。
エージェントシステム
長期的な推論と状態追跡
Claudeの最新モデルは、強力な状態追跡で長期的な推論タスクを処理します。Claudeは、一度にすべてを試みるのではなく、一度に少数のことに着実に取り組む漸進的な進捗に焦点を当てることで、長時間のセッションにわたって方向性を維持します。この能力は特に複数のコンテキストウィンドウやタスクの反復にわたって発揮され、Claudeは複雑なタスクに取り組み、状態を保存し、新しいコンテキストウィンドウで続行できます。
コンテキスト認識とマルチウィンドウワークフロー
Claude Sonnet 5、Claude Sonnet 4.6、Claude Sonnet 4.5、Claude Haiku 4.5はコンテキスト認識を備えており、モデルが会話全体を通じて残りのコンテキストウィンドウ(つまり「トークン予算」)を追跡できます。これにより、Claudeは作業に使えるスペースがどれだけあるかを理解することで、タスクの実行とコンテキストの管理をより効果的に行えます。
コンテキスト制限の管理:
コンテキストをコンパクションしたり、外部ファイルへのコンテキストの保存を許可したりするエージェントハーネス(Claude Codeなど)でClaudeを使用している場合は、Claudeがそれに応じて振る舞えるよう、この情報をプロンプトに追加することを検討してください。そうしないと、Claudeはコンテキスト制限に近づくにつれて自然に作業をまとめようとすることがあります。以下はプロンプトの例です。
Your context window will be automatically compacted as it approaches its limit, allowing
you to continue working indefinitely from where you left off. Therefore, do not stop
tasks early due to token budget concerns. As you approach your token budget limit, save
your current progress and state to memory before the context window refreshes. Always be
as persistent and autonomous as possible and complete tasks fully, even if the end of
your budget is approaching. Never artificially stop any task early regardless of the
context remaining.メモリツールは、コンテキストの移行を管理するうえでコンテキスト認識と相性が良いです。
複数のコンテキストウィンドウにわたるワークフロー
複数のコンテキストウィンドウにまたがるタスクの場合:
-
最初のコンテキストウィンドウには異なるプロンプトを使用する: 最初のコンテキストウィンドウを使ってフレームワークをセットアップし(テストの作成、セットアップスクリプトの作成)、その後のコンテキストウィンドウを使ってtodoリストを反復してください。
-
モデルに構造化された形式でテストを書かせる: 作業を開始する前にテストを作成し、構造化された形式(たとえば
tests.json)で追跡するようClaudeに依頼してください。これにより、長期的な反復能力が向上します。テストの重要性をClaudeに思い出させてください:「テストを削除または編集することは、機能の欠落やバグにつながる可能性があるため、許容されません。」 -
作業を快適にするツールをセットアップする: サーバーの起動、テストスイートやリンターの実行を円滑に行うためのセットアップスクリプト(たとえば
init.sh)を作成するようClaudeに促してください。これにより、新しいコンテキストウィンドウから続行する際の繰り返し作業を防げます。 -
新規開始とコンパクションの比較: コンテキストウィンドウがクリアされた場合、コンパクションを使用するのではなく、まったく新しいコンテキストウィンドウで開始することを検討してください。Claudeの最新モデルは、ローカルファイルシステムから状態を発見することに非常に優れています。場合によっては、コンパクションよりもこれを活用したいことがあるでしょう。どのように開始すべきかを規定的に示してください。
- 「pwdを呼び出してください。このディレクトリ内のファイルのみ読み書きできます。」
- 「progress.txt、tests.json、gitログを確認してください。」
- 「新機能の実装に移る前に、基本的な統合テストを手動で実行してください。」
-
検証ツールを提供する: 自律的なタスクの長さが増すにつれて、Claudeは継続的な人間のフィードバックなしに正しさを検証する必要があります。コンピュータ使用ツール、ブラウザ使用ツール、またはブラウザ自動化MCPサーバーなど、ClaudeがUI作業を検証できるツールが役立ちます。
-
コンテキストの完全な活用を促す: 次に進む前にコンポーネントを効率的に完成させるようClaudeにプロンプトで指示してください。
This is a very long task, so it may be beneficial to plan out your work clearly. It's
encouraged to spend your entire output context working on the task - just make sure you
don't run out of context with significant uncommitted work. Continue working
systematically until you have completed this task.状態管理のベストプラクティス
- 状態データには構造化された形式を使用する: 構造化された情報(テスト結果やタスクのステータスなど)を追跡する場合は、JSONまたはその他の構造化された形式を使用して、Claudeがスキーマ要件を理解できるようにしてください。
- 進捗メモには非構造化テキストを使用する: 自由形式の進捗メモは、全般的な進捗とコンテキストの追跡に適しています。
- 状態追跡にgitを使用する: gitは、実行された内容のログと復元可能なチェックポイントを提供します。Claudeの最新モデルは、複数のセッションにわたる状態追跡にgitを使用することに特に優れています。
- 漸進的な進捗を強調する: 進捗を追跡し、漸進的な作業に集中するようClaudeに明示的に依頼してください。
{
"tests": [
{ "id": 1, "name": "authentication_flow", "status": "passing" },
{ "id": 2, "name": "user_management", "status": "failing" },
{ "id": 3, "name": "api_endpoints", "status": "not_started" }
],
"total": 200,
"passing": 150,
"failing": 25,
"not_started": 25
}// Progress notes (progress.txt)
Session 3 progress:
- Fixed authentication token validation
- Updated user model to handle edge cases
- Next: investigate user_management test failures (test #2)
- Note: Do not remove tests as this could lead to missing functionality自律性と安全性のバランス
ガイダンスがない場合、Claude Opus 4.6は、ファイルの削除、強制プッシュ、外部サービスへの投稿など、元に戻すのが難しいアクションや共有システムに影響を与えるアクションを取ることがあります。潜在的にリスクのあるアクションを取る前にClaude Opus 4.6に確認させたい場合は、プロンプトにガイダンスを追加してください。
Consider the reversibility and potential impact of your actions. You are encouraged to
take local, reversible actions like editing files or running tests, but for actions that
are hard to reverse, affect shared systems, or could be destructive, ask the user before
proceeding.
Examples of actions that warrant confirmation:
- Destructive operations: deleting files or branches, dropping database tables, rm -rf
- Hard to reverse operations: git push --force, git reset --hard, amending published commits
- Operations visible to others: pushing code, commenting on PRs/issues, sending
messages, modifying shared infrastructure
When encountering obstacles, do not use destructive actions as a shortcut. For example,
don't bypass safety checks (e.g. --no-verify) or discard unfamiliar files that may be
in-progress work.リサーチと情報収集
Claudeの最新モデルは、複数のソースから情報を効果的に見つけて統合できます。最適なリサーチ結果を得るには:
-
明確な成功基準を提供する: リサーチの質問に対する成功した回答とは何かを定義してください。
-
ソースの検証を促す: 複数のソースにわたって情報を検証するようClaudeに依頼してください。
-
複雑なリサーチタスクには構造化されたアプローチを使用する:
Search for this information in a structured way. As you gather data, develop several
competing hypotheses. Track your confidence levels in your progress notes to improve
calibration. Regularly self-critique your approach and plan. Update a hypothesis tree or
research notes file to persist information and provide transparency. Break down this
complex research task systematically.この構造化されたアプローチは、Claudeが大規模なコーパスを体系的に処理し、発見を反復的に批評するのに役立ちます。
サブエージェントのオーケストレーション
Claudeの最新モデルはサブエージェントをネイティブにオーケストレーションします。これらのモデルは、タスクが専門のサブエージェントに作業を委任することで恩恵を受ける場合を認識し、明示的な指示を必要とせずに積極的にそうします。
この振る舞いを活用するには:
- 明確に定義されたサブエージェントツールを確保する: サブエージェントツールを利用可能にし、ツール定義で説明してください。
- Claudeに自然にオーケストレーションさせる: Claudeは明示的な指示なしに適切に委任します。
- 使いすぎに注意する: Claude Opus 4.6はサブエージェントを強く好む傾向があり、よりシンプルで直接的なアプローチで十分な状況でもサブエージェントを生成することがあります。たとえば、直接grepを呼び出す方が速くて十分な場合でも、コード探索のためにサブエージェントを生成することがあります。Claude Opus 5も以前のモデルよりも容易にサブエージェントに委任します。ガイダンスと抑制用のサンプルプロンプトについては、サブエージェント生成の制御を参照してください。
サブエージェントの過剰な使用が見られる場合は、サブエージェントが正当化される場合とされない場合について明示的なガイダンスを追加してください。
Use subagents when tasks can run in parallel, require isolated context, or involve
independent workstreams that don't need to share state. For simple tasks, sequential
operations, single-file edits, or tasks where you need to maintain context across steps,
work directly rather than delegating.複雑なプロンプトを連鎖させる
アダプティブ思考とサブエージェントのオーケストレーションにより、Claudeはほとんどの多段階推論を内部で処理します。明示的なプロンプトチェーン(タスクを連続したAPI呼び出しに分割すること)は、中間出力を検査したり、特定のパイプライン構造を強制したりする必要がある場合に依然として有用です。
最も一般的なチェーンパターンは自己修正です。ドラフトを生成 → Claudeに基準に照らしてレビューさせる → レビューに基づいてClaudeに改良させる。各ステップは個別のAPI呼び出しであるため、任意の時点でログ記録、評価、または分岐ができます。
エージェントコーディングでのファイル作成を減らす
Claudeの最新モデルは、特にコードを扱う際に、テストや反復の目的で新しいファイルを作成することがあります。このアプローチにより、Claudeは最終出力を保存する前に、ファイル、特にPythonスクリプトを「一時的なスクラッチパッド」として使用できます。一時ファイルの使用は、特にエージェントコーディングのユースケースで結果を改善できます。
新規ファイルの純増を最小限に抑えたい場合は、Claudeに後片付けをするよう指示できます。
If you create any temporary new files, scripts, or helper files for iteration, clean up
these files by removing them at the end of the task.過度な熱心さ
Claude Opus 4.5とClaude Opus 4.6は、余分なファイルを作成したり、不必要な抽象化を追加したり、要求されていない柔軟性を組み込んだりして、過剰に設計する傾向があります。この望ましくない振る舞いが見られる場合は、ソリューションを最小限に保つための具体的なガイダンスを追加してください。
たとえば:
Avoid over-engineering. Only make changes that are directly requested or clearly
necessary. Keep solutions simple and focused:
- Scope: Don't add features, refactor code, or make "improvements" beyond what was
asked. A bug fix doesn't need surrounding code cleaned up. A simple feature doesn't need
extra configurability.
- Documentation: Don't add docstrings, comments, or type annotations to code you didn't
change. Only add comments where the logic isn't self-evident.
- Defensive coding: Don't add error handling, fallbacks, or validation for scenarios
that can't happen. Trust internal code and framework guarantees. Only validate at system
boundaries (user input, external APIs).
- Abstractions: Don't create helpers, utilities, or abstractions for one-time
operations. Don't design for hypothetical future requirements. The right amount of
complexity is the minimum needed for the current task.テストの合格とハードコーディングへの集中を避ける
Claudeは、より一般的なソリューションを犠牲にしてテストを合格させることに過度に集中したり、複雑なリファクタリングに標準ツールを直接使用する代わりにヘルパースクリプトのような回避策を使用したりすることがあります。この振る舞いを防ぎ、一般化するソリューションを得るには:
Please write a high-quality, general-purpose solution using the standard tools
available. Do not create helper scripts or workarounds to accomplish the task more
efficiently. Implement a solution that works correctly for all valid inputs, not just
the test cases. Do not hard-code values or create solutions that only work for specific
test inputs. Instead, implement the actual logic that solves the problem generally.
Focus on understanding the problem requirements and implementing the correct algorithm.
Tests are there to verify correctness, not to define the solution. Provide a principled
implementation that follows best practices and software design principles.
If the task is unreasonable or infeasible, or if any of the tests are incorrect, please
inform me rather than working around them. The solution should be robust, maintainable,
and extendable.エージェントコーディングでのハルシネーションを最小限に抑える
Claudeの最新モデルはハルシネーションを起こしにくく、コードに基づいたより正確で根拠のある知的な回答を提供します。この振る舞いをさらに促し、ハルシネーションを最小限に抑えるには:
<investigate_before_answering>
Never speculate about code you have not opened. If the user references a specific file,
you MUST read the file before answering. Make sure to investigate and read relevant
files BEFORE answering questions about the codebase. Never make any claims about code
before investigating unless you are certain of the correct answer - give grounded and
hallucination-free answers.
</investigate_before_answering>機能固有のヒント
向上したビジョン機能
Claude Opus 4.5とClaude Opus 4.6は、以前のClaudeモデルと比べてビジョン機能が向上しています。特にコンテキスト内に複数の画像がある場合、画像処理とデータ抽出タスクでより優れたパフォーマンスを発揮します。これらの改善はコンピュータ使用にも引き継がれ、モデルはスクリーンショットやUI要素をより確実に解釈できます。また、動画をフレームに分割することで、これらのモデルを使用して動画を分析することもできます。
パフォーマンスをさらに向上させるのに効果的であることが証明されている手法の1つは、Claudeにクロップツールまたはエージェントスキルを与えることです。テストでは、Claudeが画像の関連領域に「ズーム」できる場合、画像評価で一貫した向上が示されています。Anthropicはクロップツールのレシピを作成しました。
フロントエンドデザイン
Claude Opus 4.5とClaude Opus 4.6は、優れたフロントエンドデザインを備えた複雑で実用的なWebアプリケーションを構築します。しかし、ガイダンスがない場合、モデルはユーザーが「AIスロップ」的な美観と呼ぶような汎用的なパターンにデフォルトで陥ることがあります。驚きと喜びをもたらす独創的でクリエイティブなフロントエンドを作成するには、以下を参考にしてください。
API以外でのフロントエンドデザイン作業には、Claude Designがキャンバスとデザインツールを提供しており、Claudeがインタラクティブにデザインを生成し、反復的に改善できます。
より優れたフロントエンドデザインを促すために使用できるシステムプロンプトのスニペットを以下に示します。
<frontend_aesthetics>
You tend to converge toward generic, "on distribution" outputs. In frontend design, this
creates what users call the "AI slop" aesthetic. Avoid this: make creative, distinctive
frontends that surprise and delight.
Focus on:
- Typography: Choose fonts that are beautiful, unique, and interesting. Avoid generic
fonts like Arial and Inter; opt instead for distinctive choices that elevate the
frontend's aesthetics.
- Color & Theme: Commit to a cohesive aesthetic. Use CSS variables for consistency.
Dominant colors with sharp accents outperform timid, evenly-distributed palettes. Draw
from IDE themes and cultural aesthetics for inspiration.
- Motion: Use animations for effects and micro-interactions. Prioritize CSS-only
solutions for HTML. Use Motion library for React when available. Focus on high-impact
moments: one well-orchestrated page load with staggered reveals (animation-delay)
creates more delight than scattered micro-interactions.
- Backgrounds: Create atmosphere and depth rather than defaulting to solid colors. Layer
CSS gradients, use geometric patterns, or add contextual effects that match the overall
aesthetic.
Avoid generic AI-generated aesthetics:
- Overused font families (Inter, Roboto, Arial, system fonts)
- Clichéd color schemes (particularly purple gradients on white backgrounds)
- Predictable layouts and component patterns
- Cookie-cutter design that lacks context-specific character
Interpret creatively and make unexpected choices that feel genuinely designed for the
context. Vary between light and dark themes, different fonts, different aesthetics. You
still tend to converge on common choices (Space Grotesk, for example) across
generations. Avoid this: it is critical that you think outside the box!
</frontend_aesthetics>完全なスキル定義も参照できます。
移行に関する考慮事項
以前の世代から現在のClaudeモデルに移行する場合:
-
望ましい動作を具体的に指定する: 出力に何を求めているかを正確に記述することを検討してください。
-
修飾語を使って指示を組み立てる: Claudeに出力の品質と詳細度を高めるよう促す修飾語を追加すると、Claudeのパフォーマンスをより適切に形作るのに役立ちます。たとえば、「分析ダッシュボードを作成してください」の代わりに、「分析ダッシュボードを作成してください。関連する機能とインタラクションをできるだけ多く含めてください。基本を超えて、完全な機能を備えた実装を作成してください。」を使用します。
-
特定の機能を明示的に要求する: アニメーションやインタラクティブな要素が必要な場合は、明示的に要求する必要があります。
-
思考設定を更新する: Claude 4.6モデルは、
budget_tokensを使用した手動思考の代わりに、adaptive thinking(適応型思考)(thinking: {type: "adaptive"})を使用します。思考の深さを制御するには、effortパラメータを使用してください。 -
事前入力された応答から移行する: 最後のアシスタントターンでの事前入力された応答は、Claude 4.6モデルおよびClaude Mythos Preview以降サポートされなくなりました。代替手段に関する詳細なガイダンスについては、事前入力された応答からの移行を参照してください。
-
怠惰防止プロンプトを調整する: 以前のプロンプトでモデルにより徹底的に作業させたり、ツールをより積極的に使用させたりしていた場合は、そのガイダンスを控えめにしてください。Claude 4.6モデルはより積極的であり、以前のモデルで必要だった指示に対して過剰に反応する可能性があります。
-
思考ブロックを変更せずにそのまま返し、履歴を追記専用に保つ: 各アシスタントターンを、思考ブロックを含めてAPIが返したとおりに正確に追記してください。Claude Fable 5.1では、思考ブロックより前の会話を変更するとエラーになるか、オプトインしている場合はそのブロックが削除されます。以前のメッセージの編集、
systemやtoolsの再構築、リクエスト間での古いターンのインプレース要約は、それ以降のすべての思考ブロックを無効にするため、これらの変更は会話途中のシステムメッセージやサーバーサイドのコンテキスト管理に移してください。会話履歴を追記専用に保つを参照してください。
詳細な移行手順については、移行ガイドを参照してください。
Claude Sonnet 4.5以前からClaude Sonnet 5への移行
移行ガイドのClaude Sonnet 4.5以前からClaude Sonnet 5への移行を参照してください。effortのデフォルト値の変更と、手動の拡張思考(budget_tokens)の削除について説明しています。
次のステップ
Claude Fable 5.1の動作の違いとプロンプティングパターン。effort、タスク完了、進捗更新、思考ブロック、ツール呼び出しのバッチ処理、文体について説明します。
Claude Fable 5およびClaude Mythos 5の動作の違いとプロンプティングパターン。effort、指示への追従、長時間実行、メモリ、スキャフォールディングの変更について説明します。
Claude Sonnet 5の動作の違いとプロンプティングパターン。effort、適応型思考のデフォルト、ツール使用、Claude Sonnet 4.6からの移行について説明します。
Claude Opus 5の動作の違いとプロンプティングパターン。応答の冗長性、エージェント的なナレーション、タスクのスコープ設定、サブエージェントへの委任、自己修正について説明します。
プロンプトエンジニアリングを使用すべき場面と、プロンプトを調整する前にアプローチを計画する方法。
Was this page helpful?