Anthropic 公式「プロンプトのベストプラクティス」完全ガイド — Claude 4.6 時代の「宝の山」を読み解く
Cursor Ambassador であり「Cursor完全ガイド」著者のKinopee(@kinopee_ai)氏のポストが注目を集めています。
XML云々の例は英語版のリンクだけど、日本語訳もある。「プロンプトのベストプラクティス」の章だけでも熟読をお勧めします。作りたいものをモデルに伝える大切なテクニック集、宝の山。 — Kinopee(@kinopee_ai)
67いいね、91ブックマークという反響は、AI コーディングツールを日常的に使う開発者がプロンプト設計の基礎に立ち返る必要性を感じていることを示しています。Kinopee氏が「宝の山」と表現する Anthropic 公式のプロンプトベストプラクティスは、Claude Opus 4.6、Claude Sonnet 4.6、Claude Haiku 4.5 に対応した包括的なガイドです。本記事ではその全体像を、実践的な視点で解説します。
ドキュメントの全体構成
公式ドキュメントは大きく6つのセクションで構成されています。
| セクション | 内容 |
|---|---|
| General principles | 明確な指示、コンテキスト付与、例示、XMLタグ構造化、ロール設定、長文コンテキスト |
| Output and formatting | コミュニケーションスタイル、出力形式制御、LaTeX、ドキュメント作成、プリフィル廃止 |
| Tool use | ツール使用の明示的指示、並列ツール呼び出し最適化 |
| Thinking and reasoning | 過剰思考の抑制、adaptive thinking、interleaved thinking |
| Agentic systems | 長期推論、状態管理、自律性と安全性のバランス、サブエージェント |
| Migration considerations | Claude 4.6 への移行ガイド、Sonnet 4.5 → 4.6 の effort 設定 |
API 開発者向けの内容ですが、Claude Code や Cursor などの AI コーディングツールを使う際にも、CLAUDE.md やシステムプロンプトの設計に直接応用できます。
最もインパクトの高い5つのスキル
公式ドキュメントが挙げる「最もインパクトの高い5つのスキル」は以下の通りです。
1. XML タグで構造化する
Claude にとって XML タグはプロンプトの文法です。指示、コンテキスト、例示、入力データが混在するプロンプトでは、各要素をタグで包むことで誤解を大幅に減らせます。
| |
ベストプラクティス:
- 一貫した命名: プロンプト全体で同じタグ名を使い、そのタグ名で内容を参照する
- 階層構造: コンテンツに自然な階層がある場合はタグをネストする
- 説明的なタグ名:
<instructions>,<context>,<input>など、内容を表す名前をつける
日本語版の公式ドキュメントでも詳しく解説されています。
2. 結論の前に根拠を求める
Claude に「まず関連する引用を抽出してから分析せよ」と指示すると、長文ドキュメントの処理精度が大幅に向上します。
| |
これは Chain of Thought(思考の連鎖)の実践的な応用です。
3. 具体的なロールを与える
システムプロンプトでロールを設定するだけで、Claude の振る舞いとトーンが劇的に変わります。
| |
一文のロール設定でも効果があります。Claude Code の CLAUDE.md に「セキュリティルール」や「コーディング規約」を記述するのも、このロール設定の延長です。
4. ステップバイステップの推論を求める
複雑な問題では、Claude に段階的な推論を明示的に求めることで精度が上がります。ただし Claude 4.6 では具体的な手順を指定するより、「徹底的に考えて」と一般的に指示する方が良い結果が出ることが多いとされています。
A prompt like “think thoroughly” often produces better reasoning than a hand-written step-by-step plan — Claude’s reasoning frequently exceeds what a human would prescribe.
5. 長い指示より例を見せる
例示(Few-shot / Multishot prompting)は、Claude の出力形式・トーン・構造を制御する最も信頼できる方法です。
| |
公式は3〜5個の例示を推奨しています。
Claude 4.6 で変わったこと
Claude 4.6 世代では、プロンプト設計のアプローチに重要な変更がいくつかあります。
プリフィルの廃止
Claude 4.6 以降、最後のアシスタントターンのプリフィル(事前入力)はサポートされなくなりました。以前は {"role": "assistant", "content": "Here is the JSON:"} のように出力形式を強制していましたが、モデルの指示追従能力が向上したため不要になりました。
| 以前のプリフィル用途 | 移行先 |
|---|---|
| JSON/YAML 形式の強制 | Structured Outputs またはツール呼び出し |
| 前置きの省略 | システムプロンプトで「前置きなしで直接応答せよ」 |
| 不要な拒否の回避 | Claude 4.6 は適切な拒否判断が改善済み |
| 中断された応答の継続 | ユーザーメッセージに前回の末尾を含めて継続を指示 |
Adaptive Thinking
Claude Opus 4.6 は Adaptive Thinking(thinking: {type: "adaptive"})を使い、クエリの複雑さに応じて動的に思考の深さを調整します。
| |
以前の budget_tokens による手動制御に代わり、effort パラメータ(low, medium, high, max)で制御します。内部評価では、Adaptive Thinking は Extended Thinking よりも一貫して高い性能を示しています。
過剰なプロンプトを抑える
Claude 4.6 は以前のモデルよりもはるかにプロアクティブです。以前のモデルで必要だった「CRITICAL: You MUST use this tool when…」のような強い指示は、過剰トリガーの原因になります。
| 以前(Claude 3.5 向け) | 現在(Claude 4.6 向け) |
|---|---|
CRITICAL: You MUST use this tool when... | Use this tool when... |
Default to using [tool] | Use [tool] when it would enhance your understanding |
If in doubt, use [tool] | 削除(適切にトリガーされる) |
エージェントシステムのための実践テクニック
Claude Code のようなエージェント環境で特に有用なテクニックを整理します。
行動 vs 提案の明示
Claude に「変更を提案して」と言うと、提案だけして実装しないことがあります。行動を求めるなら行動を明示します。
| |
並列ツール呼び出しの最適化
Claude 4.6 は並列ツール実行に優れています。以下のプロンプトで並列度を最大化できます。
| |
自律性と安全性のバランス
Claude Opus 4.6 は指示なしだと、ファイル削除や force-push のような不可逆な操作も実行してしまう可能性があります。公式が推奨するプロンプト:
| |
これは Claude Code のシステムプロンプトにも組み込まれている原則です。
過剰エンジニアリングの抑制
Claude Opus 4.6 は余計なファイル作成、不要な抽象化、求められていない機能追加をする傾向があります。
| |
ハルシネーションの最小化
| |
コンテキストウィンドウの活用
Claude 4.6 はコンテキスト認識(context awareness)機能を持ち、残りのコンテキストウィンドウ(トークン予算)を追跡できます。Claude Code のような長時間セッションでは、以下のプロンプトが有効です。
| |
マルチコンテキストウィンドウの状態管理
長時間のタスクでは、以下のベストプラクティスが推奨されています。
| テクニック | 説明 |
|---|---|
| テストを構造化形式で記録 | tests.json などで管理し、テストの削除・編集を禁止 |
| セットアップスクリプトの作成 | init.sh で環境構築を自動化し、再開時の手間を削減 |
| git で状態管理 | commit による進捗記録とチェックポイントの活用 |
| 進捗ノートの活用 | progress.txt にフリーテキストで進捗を記録 |
CLAUDE.md への応用
Kinopee氏が「宝の山」と表現したのは、これらのテクニックがAPI 開発だけでなく、Claude Code の日常使用に直接応用できるからです。
CLAUDE.md で使える XML タグ構造
| |
Claude Code スキル定義への応用
Claude Code のスキル(.claude/skills/)は、まさにこのベストプラクティスの実践の場です。
| |
学習リソース
Anthropic は公式チュートリアルも提供しています。
| リソース | 形式 | 特徴 |
|---|---|---|
| 公式ベストプラクティス(英語) | Web ドキュメント | Claude 4.6 対応の最新リファレンス |
| 日本語版 XML タグガイド | Web ドキュメント | XML タグの使い方を日本語で解説 |
| Interactive Tutorial(GitHub) | Jupyter Notebook | 手を動かしながら学べるチュートリアル |
| Google Sheets 版チュートリアル | Google Sheets | 非エンジニア向けの軽量版 |
| Claude Console のプロンプトツール | Web ツール | プロンプト生成器、テンプレート、改善ツール |
まとめ
- 「宝の山」は公式ドキュメントにある: Anthropic の Prompting Best Practices は Claude 4.6 対応の包括的なガイドで、API 開発者だけでなく Claude Code ユーザーにも直接役立つ
- 最もインパクトの高い5つのスキル: XMLタグ構造化、根拠先行、ロール設定、ステップバイステップ推論、例示。これらは CLAUDE.md やスキル定義にそのまま応用できる
- Claude 4.6 ではプロンプトを「緩める」: 以前のモデルで必要だった強い指示は過剰トリガーの原因になる。「CRITICAL: MUST」を「Use … when」に置き換える
- プリフィルは廃止: Structured Outputs やツール呼び出しに移行。モデルの指示追従能力が向上したため不要に
- Adaptive Thinking で思考を動的制御:
effortパラメータで思考の深さを調整。手動のbudget_tokensより一貫して高性能 - エージェント特有のテクニック: 行動の明示、並列ツール最適化、過剰エンジニアリング抑制、ハルシネーション最小化が Claude Code 環境で特に重要
- コンテキスト管理は状態ファイルと git:
tests.json+progress.txt+ git commit で長時間タスクの状態を永続化する
参考
- Kinopee(@kinopee_ai) — プロンプトベストプラクティス紹介ポスト
- Anthropic — Prompting best practices(公式、英語)
- Anthropic — Prompt engineering overview(公式)
- Anthropic — XML タグでプロンプトを構造化する(日本語)
- Anthropic — システムプロンプトでロールを与える(日本語)
- Anthropic — Prompt Engineering Interactive Tutorial(GitHub)
- Anthropic — Prompt engineering for business performance
- Qiita — Anthropic公式プロンプトエンジニアリングチュートリアル入門
- Zenn — OpenAI・Anthropic・Googleのプロンプトエンジニアリングガイドまとめ
- Zenn — Anthropicチュートリアルから学ぶプロンプト設計のノウハウ
- prompt-ya — 生成AI「Claude」のプロンプトエンジニアリング入門 XMLタグ編
- Claude prompt engineering guide — GitHub