CCDV-F 学習ノート

Claude Certified Developer – Foundations

出題範囲 2026年7月版 書き出し 2026-10-23

公式の出題範囲(2026年7月版)の全項目を網羅するノートとして執筆中です。章は試験ガイドの出題領域と、節はスキル(項目)と1対1で対応しています。 上から順に読み、各章末のチェック問題を解いたら、別ファイルの問題集で仕上げるのが最短ルートです。


⚠️ 試験範囲のバージョンについて(必読)

CCDV-F の試験ガイドは 2026年7月 に初版(Version 1.0)が公開されました。

横にスクロールできます →
項目 状況
試験ガイド(英語) Version 1.0(Effective July 2026)。変更履歴は初版の公開の1行だけ
日本語版の試験ガイド 認定資格の一覧のページでは見つかっていない(2026年10月23日時点)。日本語の対策コースはある

✅ 結論:このノートは Version 1.0(2026年7月版)に対応しています。試験ガイドは2026年7月時点の製品を前提にしているので、その後に変わった機能は、時点を添えて両方を書きます。


📋 試験の基本情報

横にスクロールできます →
項目 内容
正式名称 Claude Certified Developer – Foundations
試験コード CCDV-F
合格ライン スケールスコア 720(100〜1,000 の範囲)。合否は総合のスケールスコアで決まる。成績レポートには領域ごとの正答率も出るが、合否には使われない
問題数 53問
試験時間 120分
出題形式 単一選択(multiple-choice)と複数選択(multiple-response)。どちらも、選ぶ数が問題に書かれている
受験方法 Pearson VUE のオンライン監督試験、またはテストセンター
受験料 125 USD。パートナーのティアに応じた割引があれば、支払いのときに反映される
有効期限 認定から12か月。期限内なら、変更点を確認して無料・監督なしの評価を受けると更新できる。失効したら、受験料を払って試験を受け直す
再受験 不合格のあとの待機期間は、1回目が14日、2回目が30日、3回目が90日。12か月の間に4回まで。受験料は毎回かかる
前提条件 必須の前提条件やコースは無い。推奨の経験は、ソフトウェア開発が1〜5年、Claude などの LLM(大規模言語モデル)を使った開発が6か月以上
予約の変更 予約の24時間前までなら、変更・キャンセルできる。24時間を切ってからの変更や欠席は、受験料が戻らない
試験中のルール 机の上にメモ・本・スマホ・別のモニターを置かない。オンラインなら終始カメラに映る。試験の内容を記録・開示しない。使ってよいもの(監督者が渡すメモ用紙など)は Pearson VUE が指定する

📊 出題比率と時間配分

1問あたり約2分15秒(120分÷53問)。

横にスクロールできます →
領域 比率 優先度
1. Agents and Workflows 14.7% ★★★
2. Applications and Integration 33.1% ★★★
3. Claude Code 3.1% ★
4. Eval, Testing, and Debugging 2.6% ★
5. Model Selection and Optimization 16.8% ★★★
6. Prompt and Context Engineering 11.0% ★★
7. Security and Safety 8.1% ★★
8. Tools and MCPs 10.6% ★★

💡 比率の読み方:Claude Code の領域は3.1%ですが、CLAUDE.md、settings.json、hooks、Skills は、ほかの領域の項目(Configuration Management、Claude Hooks、Agentic Customization)にも出てきます。逆に、一般的なソフトウェア工学の4項目(Understanding Requirements、Systems Life Cycle、Software Engineering Foundations、Technical Fundamentals)が合わせて19.7%あります。


🗺 学習ロードマップ(目安:40時間)

横にスクロールできます →
ステップ 内容 目安時間
1 このノートを通読(用語の全体像をつかむ) 6h
2 比率の高い章(第2章・第5章・第1章)から精読+章末チェック 20h
3 直前まとめを反復 2h
4 問題集 → 間違えた問題をノートに戻って復習 12h

🔗 公式リソース

横にスクロールできます →

第1章Agents and Workflows(14.7%)

この章のゴールは、問題文の条件から、何を作るか、何で作るか、エージェントの中をどう組むかの3つを選べるようになることです。

横にスクロールできます →
節 答える問い 主な選択肢
1-1 何を作るか 単一の LLM 呼び出し/ワークフロー/エージェント/マルチエージェント
1-2 何で作るか 自作のエージェントループ/ツールランナー/Claude Agent SDK/Claude Managed Agents
1-3 エージェントの中をどう組むか ループの設計/サブエージェントへの委任/メモリ/コンテキストの管理/他社のフレームワーク

1-1. Agent Architecture(4.5%)

出題範囲:エージェントとワークフローのアーキテクチャの原則・パターン・トレードオフ。ワークフローとエージェントを使い分ける判断基準、マネージャー/スーパーバイザー型の階層の構造、タスクの実行を改善するサブエージェントの役割。

ワークフローとエージェントの違い

「エージェント」という言葉は、長時間自律して動くシステムにも、決めたワークフローに従うシステムにも使われます。Anthropic はこれらをまとめて「エージェント型システム(agentic systems)」と呼び、その中をワークフローとエージェントに分けています。分かれ目は、処理の道筋を誰が決めるかです。

横にスクロールできます →
観点 ワークフロー(Workflow) エージェント(Agent)
道筋の決め手 開発者が書いたコード。LLM とツールは、あらかじめ決めた経路で呼ばれる LLM 自身。手順とツールの使い方を、その場で決める
向くタスク 手順をはっきり定義できるタスク 必要な手順の数を予測しにくく、決まった経路を書けない、自由度の高い問題
得られるもの 予測しやすさと一貫性 柔軟性と、規模が大きくなってもモデルが判断を下せること

エージェントの実体は、多くの場合「環境からのフィードバックを受けながら、ループの中でツールを使う LLM」です。ツールの実行結果のような環境から返る事実を各ステップで受け取り、進み具合を判断しながら次の行動を決めます。自律して動くぶん、コストが高くなりやすく、誤りが積み重なるおそれもあります。そのため Anthropic は、サンドボックスでの十分なテストと、適切なガードレールを勧めています。

まず一番単純な方法から選ぶ

Anthropic の推奨は、できるだけ単純な方法から始め、必要なときだけ複雑にすることです。エージェント型システムは、レイテンシとコストを払ってタスクの性能を上げる仕組みなので、その交換に見合うときだけ使います。複雑さを足す順番は次のとおりです。

  1. 単一の LLM 呼び出し:検索で情報を足し、プロンプトに例を入れて最適化する。多くのアプリはここで足りる
  2. ワークフロー:手順を定義できるタスクで、予測しやすさと一貫性が要るとき
  3. エージェント:手順を事前に決められず、柔軟性とモデルの判断が要るとき

📌 試験ポイント:「手順が決まっている」「毎回同じ処理」「一貫性が要る」はワークフロー、「何ステップかかるか分からない」「決まった経路を書けない」はエージェント。「まず」「最小限で」と問われたら、単純な構成(単一の呼び出し、ワークフロー)で足りるかを先に検討するのが、Anthropic の推奨に沿った答え。

ワークフローの5つの型

エージェント型システムの基本の部品は「拡張された LLM(augmented LLM)」です。検索、ツール、メモリなどで拡張した LLM の呼び出しを1つの部品と考え、ワークフローではそれを次の型で組み合わせます。型の名前には公式の日本語訳が無いので、英語を併記します。

横にスクロールできます →
型 仕組み 向く場面 例
プロンプトチェーン(Prompt chaining) 決まった手順に分け、各呼び出しが前の出力を処理する。途中にプログラムのチェック(ゲート)を置ける 決まったサブタスクに分けられる。レイテンシと引き換えに精度を上げたい 広告文を書いてから訳す
ルーティング(Routing) 入力を分類し、専用の後続処理に振り分ける カテゴリがはっきり分かれ、分類を正確にできる 問い合わせを種類ごとに振り分ける。易しい質問は安いモデル、難しい質問は高性能なモデルへ
並列化(Parallelization) 複数の呼び出しを同時に動かし、結果を集める。独立したサブタスクに分ける「セクショニング(Sectioning)」と、同じタスクを何度も実行する「投票(Voting)」がある 速さが欲しい。または、複数の視点や試行で確信度を上げたい セクショニング:回答と、不適切な依頼のチェックを分ける。投票:複数のプロンプトで脆弱性を調べる
オーケストレーター・ワーカー(Orchestrator-workers) 中心の LLM がタスクを動的に分解してワーカーに任せ、結果をまとめる 必要なサブタスクを事前に予測できない 毎回いくつものファイルを変えるコーディング
評価者・最適化者(Evaluator-optimizer) 一方が回答を作り、もう一方が評価して返す。これを繰り返す 評価の基準がはっきりしていて、繰り返すと測れるほど質が上がる 文芸翻訳

⚠️ 並列化とオーケストレーター・ワーカーの違い:どちらも複数の LLM に仕事を分けるので、形は似ています。違いはサブタスクの決まり方です。並列化はあらかじめ決めたサブタスクを同時に動かし、オーケストレーター・ワーカーは入力を見てオーケストレーターがその場でサブタスクを決めます。

📌 試験ポイント:「カテゴリごとに専用のプロンプトやモデルを使い分ける」「易しい質問は安いモデルへ」はルーティング。「サブタスクが事前に分からない」はオーケストレーター・ワーカー。「基準がはっきりしていて、評価と修正を繰り返す」は評価者・最適化者。「同じ処理を複数回実行して結果を比べる」は並列化の投票。

マネージャー(スーパーバイザー)型の階層

上位のエージェントが全体の計画を立て、サブタスクを下位のエージェントに任せ、戻ってきた結果をまとめる構造です。上位の呼び名は資料によって違い(マネージャー、スーパーバイザー、リードエージェント、オーケストレーター)、下位はサブエージェントやワーカーと呼ばれます。ワークフローの型のオーケストレーター・ワーカーを、エージェントどうしで組んだ形です。

Anthropic の調査機能(Research)は、この構造を次の流れで動かしています。

  1. リードエージェントが、ユーザーの質問を分析して調べ方を決め、計画をコンテキストの外に保存する。コンテキストウィンドウがあふれても計画を失わないためである
  2. リードエージェントが、調べる観点ごとにサブエージェントを起動する。サブエージェントは並列に動く
  3. 各サブエージェントが、検索ツールを繰り返し使って情報を集め、見つけたことをリードエージェントに返す
  4. リードエージェントが結果をまとめ、調査が足りるかを判断する。足りなければサブエージェントを追加するか、調べ方を見直して、2に戻る

エージェントを1つで済ませるか、複数に分けるかは、次の観点で決めます。

横にスクロールできます →
観点 単一のエージェント マルチエージェント(リード+サブエージェント)
コンテキスト 調べた内容が、1つのコンテキストウィンドウにたまっていく サブエージェントごとに別のウィンドウを持ち、リードには要点だけが戻る
進め方 1つずつ順に調べる 独立した方向を並列に調べる
トークンの量(Anthropic の測定) チャットの約4倍 チャットの約15倍
合うタスク マルチエージェントに向かないタスク。全員が同じ文脈を共有するものや、エージェントどうしの依存が多いもの 価値が高く、並列に分けやすいタスク。1つのウィンドウに収まらない情報や、多数の複雑なツールを扱うタスク

Anthropic は、多くのコーディングタスクは調査ほど並列に分けられないとしています。

📌 試験ポイント:「幅広い観点を同時に調べる」「1つのコンテキストに収まらない量の情報」はマルチエージェント。「同じ文脈を共有する」「サブタスクの依存が多い」「コストを抑えたい」は単一のエージェントのほうが合う。マルチエージェントはトークンを多く使うので、タスクの価値がそのコストに見合うことが前提になる。

サブエージェントの役割

サブエージェントは、メインのエージェントが、絞り込んだサブタスクのために起動する別のエージェントのインスタンスです。Claude Code のエージェントをライブラリとして使える Claude Agent SDK のドキュメントは、サブエージェントに任せることで得られる利点を4つ挙げています。

横にスクロールできます →
利点 中身 例
コンテキストの分離 サブエージェントは自分の会話の中で動き、途中のツール呼び出しと結果はそこにとどまる。親に戻るのは最後のメッセージだけ 何十ものファイルを調べても、親の会話には要約だけが入る
並列化 独立したサブタスクなら同時に進められ、全体の時間は、合計ではなく一番遅いサブタスクの時間で済む コードレビューで、スタイル、セキュリティ、テストの網羅性を、別々のサブエージェントが同時に見る
専門の指示 サブエージェントごとに専用のシステムプロンプトを持てる。メインの指示に、その作業でしか使わない知識を混ぜずに済む データベースのマイグレーション専門のサブエージェントに、ロールバックの手順を持たせる
ツールの制限 使えるツールを絞り、意図しない操作のリスクを下げる ドキュメントをレビューするサブエージェントには、読み取りと検索のツールだけを渡す

⚠️ サブエージェントにもコストがかかる:サブエージェントも自分でモデルにリクエストを送るので、使うトークンは増えます。Anthropic の調査機能の初期には、簡単な質問に50ものサブエージェントを起動する失敗もありました。コンテキストを分けたいときや並列にしたいときに使い、小さな作業まで細かく分けすぎないようにします。

📌 試験ポイント:「メインの会話を検索結果やログで埋めたくない」はコンテキストの分離、「同時に進めて時間を縮めたい」は並列化、「読み取りしかさせたくない」はツールの制限が、サブエージェントを使う理由になる。

1-2. Agent Construction with Claude(5.3%)

出題範囲:Claude のエージェントを作る方法・ツール・プラットフォーム。Claude Agent SDK、自作のエージェントループとハーネス、マネージドなエージェントのデプロイモデル(セルフホストと Anthropic のホスト)、決定的な動作のためのフック。

エージェントを動かすには、モデルの外側に仕組みが要ります。モデルの呼び出しとツールの実行を繰り返すエージェントループ、ツールを実行する環境、コンテキストの管理などで、これらをまとめて「ハーネス(harness)」と呼びます。Claude でエージェントを作る方法は、このハーネスを誰が用意し、どこで動かすかで分かれます。

横にスクロールできます →
作り方 ループを回すもの 用意されているもの 動く場所 向く場面
自作のエージェントループ 自分のコード。Messages API を直接呼ぶ なし。ツールの定義も実行も自分で書く 自分のインフラ ループのすべてを自分で制御したいとき
ツールランナー(ベータ) Client SDK(Anthropic の API を呼ぶ各言語の SDK)の補助機能 ループ、ツールの実行、会話の状態の管理、型の検証 自分のインフラ 自分で定義したツールを使うエージェントを、ループを書かずに作りたいとき
Claude Agent SDK ライブラリ。Claude Code と同じエージェントループを使う Claude Code の組み込みツール、権限、セッション、フック、サブエージェント、MCP、コンテキストの管理 自分のインフラ Claude Code のエージェントを、自分の Python や TypeScript のアプリに組み込みたいとき
Claude Managed Agents(ベータ) Anthropic ハーネスと実行環境。サンドボックス、組み込みツール、プロンプトキャッシング、コンパクションを含む ループは Anthropic。ツールは、Anthropic のクラウドか自社のインフラのサンドボックスで動く 数分から数時間かかる処理、非同期の作業、インフラを持ちたくないとき

自作のエージェントループ

モデルはアプリのコードを実行できません。そのため、アプリの中で実行するツールを使うときは、ツールを呼ぶたびに「モデルが頼み、アプリが実行し、結果を返す」往復が起きます。この往復を、stop_reason が "tool_use" である限り繰り返す while ループが、自作のエージェントループの基本形です。1回の往復は次のとおりです。

  1. アプリが、ツールの定義(tools)とユーザーのメッセージを付けて、リクエストを送る
  2. Claude が、stop_reason: "tool_use" と、1つ以上の tool_use ブロックを返す
  3. アプリが各ツールを実行し、結果を tool_result ブロックにまとめる
  4. アプリが、それまでのメッセージ、Claude の応答、tool_result を入れたユーザーのメッセージを付けて、次のリクエストを送る。ここで2に戻る

stop_reason が "tool_use" 以外("end_turn"、"max_tokens"、"stop_sequence"、"refusal")になったら、ループを抜けます。最終的な答えが出たか、アプリが別に扱うべき理由で止まったかのどちらかです。

ツールランナーは、この往復を代わりに回す Client SDK の機能(ベータ)です。ツールの実行、リクエストと応答のやり取り、会話の状態の管理、型の検証を自動で行います。ただし公式ドキュメントは、人の承認を挟む、独自のログを取る、条件によって実行を変える、といった制御が要るときは、手書きのループを使うよう勧めています。

📌 試験ポイント:自作のループの終わりの判定は stop_reason。"tool_use" ならツールを実行して tool_result を返し、それ以外なら抜ける。ツールランナーと手書きのループの比較では、「人の承認」「独自のログ」「条件付きの実行」が要るなら手書きのループを選ぶ。

Claude Agent SDK

Claude Agent SDK は、Claude Code を動かしているのと同じツール、エージェントループ、コンテキストの管理を、Python と TypeScript から使えるライブラリです。中では Claude Code の本体を動かしていて、query() にプロンプトとオプションを渡すと、ループを最後まで回します。Claude Code の機能のうち、次のものが SDK でも使えます。

横にスクロールできます →
機能 何をするか
組み込みツール ファイルの読み書きと編集、コマンドの実行、Web の検索
フック エージェントのライフサイクルの決まった時点で、自分のコードを動かす
サブエージェント 絞り込んだサブタスクのために、専門のエージェントを起動する
MCP MCP で外部のツールやデータソースにつなぐ
権限 どのツールを自動で実行し、どれに承認を求めるかを決める
セッション やり取りをまたいでコンテキストを保ち、後で再開したり分岐したりする
Skills、コマンド、メモリ プロジェクトの .claude/ と ~/.claude/ から、Claude Code と同じように読み込む
プラグイン Skills、エージェント、フック、MCP サーバーをまとめたものを、ローカルのパスから読み込む

Agent SDK を自分でホストするときは、状態を持たない API のラッパーとは考え方が違います。SDK は、シェル、作業ディレクトリ、ディスク上のセッションのファイルを持つ claude CLI の子プロセスを起動して監視するので、動いているエージェントの1つ1つが、ローカルの状態と結びついた長く動くプロセスになります。そのため、コンテナで動かし、セッションの寿命に合わせて次の型から選びます。

横にスクロールできます →
型 コンテナの使い方 向く場面
エフェメラルセッション タスクごとにコンテナを作り、終わったら壊す 1回で終わるタスク
長時間実行セッション 常駐するコンテナで、続けて来る仕事をさばく 自律して動くエージェント、大量のメッセージの処理(メールの仕分け、チャットボットなど)
ハイブリッドセッション アイドル中はコンテナを止め、起動するときに、保存しておいた会話の記録を戻す 何度もやり取りするが、間が空くセッション
マルチエージェントコンテナ 1つのコンテナで、複数の SDK のプロセスを動かす 同じ環境で密に協力するエージェント(エージェントどうしが関わり合うシミュレーションなど)

📌 試験ポイント:「Claude Code と同じ組み込みツールやフックを、自社のアプリに組み込む」は Agent SDK。Agent SDK は自分でホストするもので、長く動くプロセスとしてコンテナで運用する。ループそのものを自社で動かす必要がなければ、Managed Agents が候補になる。

Claude Managed Agents

Claude Managed Agents(ベータ)は、Anthropic が用意したハーネスを、Anthropic が管理するインフラで動かすサービスです。エージェントループ、ツールの実行、実行環境を自分で作らなくても、Claude がファイルを読み、コマンドを実行し、Web を調べ、コードを動かせる環境を使えます。次の4つの概念でできています。

横にスクロールできます →
概念 中身
エージェント(Agent) モデル、システムプロンプト、ツール、MCP サーバー、Skills の設定。一度作り、ID で参照して使い回す
環境(Environment) セッションを動かす場所の設定。Anthropic が管理するクラウドのサンドボックスか、自社のインフラに置くセルフホストのサンドボックス
セッション(Session) 環境の中で動くエージェントの実体。1つのタスクを進め、成果物を作る
イベント(Events) アプリとエージェントの間でやり取りするメッセージ。ユーザーの発言、ツールの結果、状態の更新があり、エージェントからは SSE(Server-Sent Events)でストリーミングされる

公式ドキュメントが挙げる向く場面は、数分から数時間かかる処理、安全なクラウドのサンドボックスが要る処理、コンプライアンスやデータの所在地の要件があるとき、インフラを最小限にしたいとき、ファイルシステムと会話の履歴をやり取りの間で保ちたいとき、cron による定期実行です。

ホストの形は、エージェントループとツールの実行をそれぞれどこで動かすかで整理できます。

横にスクロールできます →
構成 エージェントループ ツールの実行 選ぶ理由
Managed Agents(クラウドのサンドボックス) Anthropic Anthropic が管理するサンドボックス インフラを持たずに済ませたい
Managed Agents(セルフホストのサンドボックス) Anthropic 自社のインフラで動くワーカー ツールの実行、ファイル、ネットワークの出口を、自社のインフラに置きたい
Agent SDK を自分でホスト 自分のコンテナの中の SDK 自分のコンテナ ループそのものを、自社のインフラで動かしたい

⚠️ セルフホストのサンドボックスでも、ツールの入出力は Anthropic を通る:ツールを実行するのは自社のワーカーですが、ツールの入力と出力は Anthropic のコントロールプレーンを流れます。モデルが結果を受け取って、次の行動を決めるためです。

📌 試験ポイント:「ループやサンドボックスを自前で作りたくない」「長時間」「非同期」は Managed Agents。そのうえで「ツールの実行やファイルを自社のインフラに置く」ならセルフホストのサンドボックス。「ループそのものを自社で動かす」なら Agent SDK を自分でホストする。

フックで決定的な動作を加える

LLM への指示が守られるかどうかは、モデルの判断に左右されます。フックは、エージェントのライフサイクルの決まった時点で自分のコードを動かす仕組みで、LLM が実行を選ぶかどうかに頼らず、決めた動作を毎回起こせます。Claude Code のドキュメントは、これを「決定的な制御(deterministic control)」と呼んでいます。Agent SDK では、アプリのプロセスで動くコールバック関数として登録します。主なイベントは次のとおりです。

フックの動き方で押さえる点は3つです。

📌 試験ポイント:「毎回必ず実行したい」「LLM の判断に任せたくない」処理はフックで書く。ツールの実行前に止めるなら PreToolUse、実行後の監査なら PostToolUse。システムプロンプトに「〜しないで」と書くだけでは、守られる保証にならない。

1-3. Agent Patterns and Frameworks(4.9%)

出題範囲:よく使われるエージェントの設計パターン(ツール使用のループ、サブエージェント、メモリ、コンテキストウィンドウの管理)と、複数の段階からなるタスクのエージェントやワークフローを作るための抽象化フレームワーク(Strands、LangGraph、Pydantic AI など)。

ツール使用のループを設計する

エージェントは、ツールを使い、結果を見て、次の行動を決めるループを回し続けます。このループを安全に回し切るために、Anthropic の記事とドキュメントは次の点を挙げています。

横にスクロールできます →
設計の観点 中身
環境から事実を得る 各ステップで、ツールの結果やコードの実行結果のような、環境から返る事実を受け取り、進み具合を判断させる
止める条件を持つ タスクが終われば、Claude はツールを呼ばない応答を返して止まる。それに加えて、最大の繰り返し回数などの停止条件を置く。Agent SDK なら最大ターン数(max_turns)と予算の上限(max_budget_usd)で、どちらも既定は無制限。上限に達すると、結果のメッセージに error_max_turns や error_max_budget_usd が返る
人の確認 チェックポイントや、行き詰まったときに、人のフィードバックを待てるようにする
失敗をエージェントに伝える ツールが失敗していることをエージェントに知らせると、エージェントはやり方を変えられる。これを、リトライやチェックポイントのような決定的な安全策と組み合わせる
ツールを並列に呼ぶ 1回の応答で複数のツールを呼ばせると、1つずつ呼ぶより速く終わる。Anthropic の調査機能では、サブエージェントを並列に起動するのと合わせて、複雑な調査の時間が最大90%短くなった

📌 試験ポイント:エージェントのループには、タスクの完了とは別の停止条件(最大ターン数、予算の上限)を置く。止まらないループや費用の暴走を防ぐためで、問題文に「コストの上限」「ループが終わらない」が出たら停止条件を考える。

サブエージェントに任せる

Agent SDK では、サブエージェントを次の3つの方法で用意し、Claude は Agent ツールを通じて呼び出します。どのサブエージェントをいつ使うかは、定義の description を見て Claude が判断します。

任せ方の質で結果は大きく変わります。Anthropic は調査機能の開発で、次のことを学んだと書いています。

横にスクロールできます →
観点 中身
任せる内容をはっきり書く 各サブエージェントに、目的、出力の形式、使うツールと情報源、作業の範囲を渡す。「半導体不足を調べて」のような短い指示では、作業が重複したり、抜けが出たりした
手間を難しさに合わせる 単純な事実の確認は1つのエージェントで3〜10回のツール呼び出し、比較は2〜4のサブエージェント、複雑な調査は10を超えるサブエージェント、という目安をプロンプトに入れた
成果物は外に置く サブエージェントが成果物を外部の保存先に書き、リードには軽い参照だけを返す。伝言ゲームのような情報の欠落を防ぎ、大きな出力を会話の履歴で運ぶトークンも減らせる

📌 試験ポイント:サブエージェントへの指示には、目的、出力の形式、ツールと情報源、作業の範囲を入れる。サブエージェントどうしの作業の重複や抜けは、委任の指示があいまいなときに起きる。

メモリ

セッションをまたいで覚えておきたいことや、長い作業の途中で失いたくないことは、コンテキストウィンドウの外に置きます。Claude の API では、メモリツールがこの役割を持ちます。

Claude Code と Agent SDK では、CLAUDE.md も決まりの置き場になります。CLAUDE.md は毎回のリクエストに入り直すので、コンパクションで古い会話が要約されても消えません。守らせ続けたい決まりは、最初のプロンプトではなく CLAUDE.md に書きます。

⚠️ メモリとコンパクションは役割が違う:コンパクションは今の会話を小さく保つ仕組み、メモリは要約で消えては困る情報を残す仕組みです。長く動くエージェントでは、両方を組み合わせます。

コンテキストウィンドウの管理

エージェントのコンテキストには、システムプロンプト、ツールの定義、会話の履歴、ツールの入力と出力がたまり続けます。大きなファイルを読んだり、出力の多いコマンドを動かしたりすると、1回で数千トークンを使うこともあります。しかも、コンテキストのトークンが増えるほど、モデルがその中の情報を正確に思い出す力は落ちます。Anthropic はこれを「コンテキストの劣化(context rot)」と呼び、コンテキストを、入れるほど効き目が薄れる有限の資源として扱うよう勧めています。目指すのは、望む結果につながる情報の濃いトークンを、できるだけ少なく入れることです。

Anthropic の記事は、長時間のタスクのための手法を次のように整理しています。

横にスクロールできます →
手法 何をするか 向く場面 Claude の機能
コンパクション(Compaction) 上限に近づいた会話を要約し、要約から続ける やり取りの多い会話の流れを保つ API のコンパクション(ベータ)、Agent SDK の自動コンパクション
ツール結果のクリア 処理済みの古いツール結果を消す。最も安全で軽いコンパクションの1つ ツールを多く使い、古い結果が要らない コンテキスト編集(ベータ)。API が、Claude に渡す前にサーバー側で消す
構造化ノート(Structured note-taking) コンテキストの外にメモを書き、後で読み戻す。エージェント型のメモリとも呼ぶ 区切りのはっきりした反復的な開発 メモリツール
サブエージェント まっさらなコンテキストのサブエージェントに任せ、要約だけを受け取る。要約は多くの場合1,000〜2,000トークン 並列の探索が効く、複雑な調査や分析 Agent SDK や Claude Code のサブエージェント

📌 試験ポイント:「長いやり取りの流れを保つ」はコンパクション、「区切りのある開発をセッションをまたいで続ける」はメモリ(構造化ノート)、「並列に調べ、メインのコンテキストを汚さない」はサブエージェント、「古いツールの結果が場所を取る」はツール結果のクリア。

エージェントのフレームワーク

エージェントのフレームワークは、LLM の呼び出し、ツールの定義と解析、呼び出しの連結といった低レベルの作業を簡単にする、抽象化のライブラリです。試験ガイドは例として次の3つを挙げています。

横にスクロールできます →
フレームワーク 何か 特徴
Strands Agents AWS のオープンソースの SDK(Anthropic の記事での紹介)。公式サイトでの今の名前は Strands Harness SDK(2026年10月時点) モデルの提供元を差し替えられる(Amazon Bedrock、Anthropic、OpenAI など)。ループに、ツール、MCP、メモリ、セッション、フックを付けて組み立てる
LangGraph LangChain の、低レベルのオーケストレーションのフレームワーク兼ランタイム。長時間動き、状態を持つエージェント向け 決定的なステップと LLM のステップを1つのグラフに混ぜられる。永続的な実行(durable execution)、ストリーミング、人の介入(human-in-the-loop)
Pydantic AI Pydantic の、Python の AI SDK 型付きで拡張できるエージェントループ。モデルを文字列1つで差し替えられる

フレームワークを使うと始めるのは簡単になりますが、抽象化の層が重なり、実際に送られるプロンプトと応答が見えにくくなって、デバッグしにくくなります。単純な構成で足りるのに、複雑さを足したくなる誘惑も生まれます。Anthropic は、まず LLM の API を直接使うことを勧めています。多くのパターンは数行のコードで書けるからです。フレームワークを使うなら、中で何が起きているかを理解しておきます。中身についての思い込みは、よくある失敗の原因です。本番に近づいたら、抽象化の層を減らすことも勧めています。

📌 試験ポイント:「デバッグしにくい」「プロンプトが見えない」は、フレームワークの抽象化の弱点。「決定的なステップと LLM のステップを1つのグラフで組む」「永続的な実行」は LangGraph の特徴。どのフレームワークを使うときも、中で送られているプロンプトと応答を理解しておく。

✅ 第1章 チェック問題

Q1. 社内のヘルプデスクで、問い合わせを「パスワード」「経費」「その他」に分け、それぞれ専用のプロンプトとツールで答えたい。分類は高い精度でできる。合うワークフローの型はどれか。

答え

ルーティング。入力を分類して、専用の後続処理に振り分ける型です。カテゴリがはっきり分かれ、分類を正確にできることが条件で、問題文はどちらも満たしています。並列化(セクショニング)は、1つの入力を独立したサブタスクに分けて同時に処理する型なので、ここには合いません。

Q2. 依頼ごとに、変更するファイルの数も中身も違うリファクタリングを、複数の LLM に分担させたい。プロンプトチェーンとオーケストレーター・ワーカーのどちらが合うか。

答え

オーケストレーター・ワーカー。必要なサブタスクを事前に決められないので、中心の LLM が依頼を見てその場で分解し、ワーカーに任せる必要があります。プロンプトチェーンは、決まったサブタスクにきれいに分けられるときの型です。

Q3. Agent SDK で作ったエージェントに、rm -rf を含むコマンドを決して実行させたくない。システムプロンプトに禁止を書くより確実な方法は何か。

答え

PreToolUse のフックで、該当するコマンドを含むツールの呼び出しを拒否します。フックは LLM の判断に頼らず毎回動き、拒否されたツールは実行されません。システムプロンプトの指示が守られるかは、モデルの判断に左右されます。

Q4. エージェントループは自前で作りたくないが、規制のため、ツールの実行とファイルは自社のネットワークの中に置く必要がある。合う構成はどれか。また、この構成でツールの入力と出力はどこを通るか。

答え

Claude Managed Agents の、セルフホストのサンドボックスです。エージェントループは Anthropic が回し、ツールは自社のインフラのワーカーが実行します。ただし、ツールの入力と出力は Anthropic のコントロールプレーンを通ります。モデルが結果を受け取って、次の行動を決めるためです。

Q5. 数百の文献を調べて報告をまとめるエージェントで、検索結果がメインのコンテキストを埋めてしまい、後半の判断の質が落ちている。どう組み替えるとよいか。また、その代わりに増えるものは何か。

答え

調べる観点ごとにサブエージェントへ任せ、要点だけを返させます。検索の途中経過はサブエージェントのコンテキストにとどまるので、メインのコンテキストは要約だけで済みます。観点どうしが独立していれば、並列に進めて時間も縮められます。代わりにトークンの消費が増えます(Anthropic の測定で、マルチエージェントはチャットの約15倍)。タスクの価値がそのコストに見合うかを確かめます。

Q6. 何日もかけて段階ごとに機能を作るコーディングエージェントで、前のセッションで決めたことと残りの作業を、次のセッションに引き継ぎたい。合う手法はどれか。

答え

メモリツールを使った構造化ノートです。エージェントがコンテキストの外にメモを書き、次のセッションで読み戻します。Anthropic は、区切りのはっきりした反復的な開発に向く手法としています。コンパクションは1つの会話の中で流れを保つ手法で、セッションをまたいだ引き継ぎには向きません。


第2章Applications and Integration(33.1%)

この章のゴールは、Claude を組み込んだアプリケーションについて、要件から設計、実装、構成の管理まで、各段階で何を選ぶかを判断できるようになることです。試験の3分の1を占める最大の領域で、Claude に固有の節(2-3、2-5、2-6)と、一般的なソフトウェア工学の節(2-1、2-2、2-4)が混ざっています。一般的な節は、用語と判断基準に絞っています。

横にスクロールできます →
節 答える問い 主な中身
2-1 何を満たすか ビジネス要件、機能要件、非機能要件、インフラの要件
2-2 どう作り、動かし続けるか 開発の進め方のモデル、運用と保守、モデルの廃止への備え
2-3 Claude API はどう動くか メッセージ、ツール、ストリーミング、ビジョン、思考、キャッシュ、クラウド経由の利用、データの渡し方、バッチ処理
2-4 土台の技術は何か REST、JSON、非同期プログラミング、バージョン管理、開発の流れへの組み込み、コードレビュー、リファクタリング
2-5 Claude のアプリをどう設計するか インターフェースごとの指示の受け取り方、コンテンツの境界、スキーマ、セッションの衛生管理、プラグインの管理
2-6 構成をどう管理するか settings.json、CLAUDE.md、モデルの固定、プロンプトの版、プラグインの依存関係

2-1. Understanding Requirements(3.4%)

出題範囲:ビジネス要件とソリューションアーキテクチャに基づく、機能要件とインフラの要件。

要件は、上から順に具体的にしていきます。まず事業として何を達成したいか(ビジネス要件)を決め、それを満たすためにシステムが何をするか(機能要件)と、どんな条件で動くか(非機能要件、インフラの要件)に分けます。ソリューションアーキテクチャは、ビジネス要件を満たすための構成の全体像です。機能要件とインフラの要件は、この全体像と行き来しながら固まります。

次の表は、社内の規程集に答えるアシスタントを作る場合の例です(説明のための例)。

横にスクロールできます →
要件の種類 何を決めるか 例
ビジネス要件 事業の目標 総務への問い合わせの対応時間を半分にする
機能要件 システムが何をするか 社員の質問に、規程集の該当箇所を示して答える
非機能要件 どれだけうまく動くか(性能、可用性、セキュリティ、コスト) 回答の表示を2秒以内に始める。月の費用を予算内に収める
インフラの要件 動かす場所と基盤 既存の AWS の契約の中で動かす。推論を米国内で行う

要件を扱うときの判断基準は、次の3つです。

📌 試験ポイント:問題文の条件を、ビジネス要件、機能要件、非機能要件、インフラの要件に仕分ける。「翌朝まででよい」「コストを最優先」「推論を米国内に限る」のような非機能要件とインフラの要件の言葉が、選ぶ API やプラットフォームを絞ることが多い。

2-2. Systems Life Cycle(2.8%)

出題範囲:IT システムの開発・導入・運用・保守に使う、システムのライフサイクル管理の概念とフレームワーク。

システムのライフサイクルは、システムを計画してから廃止するまでの段階の流れです。各段階で何をするかを決めておくための考え方で、そのうちソフトウェアを開発する部分を SDLC(ソフトウェア開発ライフサイクル)と呼びます。段階は次のとおりで、反復型やアジャイルの進め方では、この流れを短い周期で何度も繰り返します。

  1. 計画:目的、範囲、予算を決める
  2. 要件定義:何を満たすかを決める
  3. 設計:構成と方式を決める
  4. 実装:作る
  5. テスト:要件を満たすかを確かめる
  6. 導入:本番の環境に出す(デプロイ)
  7. 運用・保守:動かし続け、直し、変化に合わせる
  8. 廃止:使うのをやめ、データを移すか消す

開発の進め方には、次のモデルがあります。

運用の枠組みとしては、ITIL(もとは IT Infrastructure Library の略)が広く使われています。ITIL 4 からは、止まったサービスを早く戻すインシデント管理、インシデントの根本原因を突き止めて再発を防ぐ問題管理、変更のリスクを評価して承認してから入れる変更実現(change enablement。旧版では変更管理)などを、プラクティスとして定めています。保守は、目的で4つに分けます(ISO/IEC 14764 の分類)。

LLM を使うアプリでは、2つの段階に固有の作業が加わります。

横にスクロールできます →
状態 意味
Active 完全にサポートされ、推奨される
Legacy 更新されなくなり、将来 Deprecated になるかもしれない
Deprecated 非推奨。まだ動くが、推奨されない。代わりのモデルと、提供終了の日が示される
Retired 提供終了。使えない。リクエストは失敗する

Anthropic は、一般に公開したモデルの提供終了の少なくとも60日前に、そのモデルを使っている顧客に知らせます。この日程は、Claude API、Claude Platform on AWS、Microsoft Foundry など、Anthropic が運用するプラットフォームのものです。Amazon Bedrock のようなパートナーが運用するプラットフォームは、独自の日程を決めます。Claude Console の使用量のページから、API キーとモデルごとの使用状況を書き出せるので、古いモデルを使っている箇所を探せます。

📌 試験ポイント:Deprecated のモデルは、提供終了の日までに、代わりのモデルでアプリを十分にテストしてから移す。提供終了の後のリクエストは失敗する。モデルの移行は、変わった環境に合わせる adaptive(適応)の保守にあたる。

2-3. Claude API Mechanics(6.8%)

出題範囲:Claude API の動作と仕組み。メッセージ、ツール、ストリーミング、画像の入力(vision)、思考(thinking)、キャッシュ、他社のベンダー経由での Claude の呼び出し、Messages API のデータアクセスのパターン、バッチ API の使い方、リアルタイムとバッチの API の選び方のトレードオフ。

この節は、Messages API のリクエストと応答の形から始め、ツールの渡し方、応答の受け取り方(ストリーミング)、画像と PDF の入力、思考、キャッシュ、クラウド経由の呼び出し、データの渡し方、まとめて処理するバッチの順に扱います。

Messages API の基本

Claude API は https://api.anthropic.com の REST API で、Claude との会話には Messages API(POST /v1/messages)を使います。リクエストには、認証(API キーなど)、API のバージョン(anthropic-version)、content-type: application/json のヘッダーが要ります。Client SDK を使えば、これらは自動で付きます。API のバージョンは、2026年10月21日に 2026-10-21 が出ました。それまでの最新は 2023-06-01 で、試験ガイドはその時点の製品を前提にしています。新しい版の Client SDK は、既定で 2026-10-21 を送ります。

横にスクロールできます →
リクエストの主な項目 中身
model 使うモデルの ID
max_tokens 出力の上限のトークン数。達すると、stop_reason が "max_tokens" で止まる
messages user と assistant の発言の配列。各発言の content は、テキスト、画像、文書、ツールの結果などのブロックの配列にできる
system システムプロンプト。最初から会話全体に効く指示
tools、tool_choice Claude に使わせるツールの定義と、使わせ方

応答は、content(テキスト、tool_use、思考などのブロックの配列)、止まった理由の stop_reason、使ったトークン数の usage を持ちます。

Messages API は状態を持ちません(ステートレス)。サーバーは前の発言を覚えていないので、会話を続けるたびに、それまでの全履歴を messages に入れて送ります。履歴はアプリが組み立てるので、途中の assistant の発言をアプリが書いたものにすることもできます。

⚠️ プリフィルは新しいモデルでは使えない:最後に assistant の発言を置いて、応答の書き出しを決める手法をプリフィルと呼びます。Claude 4.6 以降のモデルでは、プリフィルを含むリクエストは 400 エラーになります。出力の形を決めたいなら、構造化出力(応答を JSON のスキーマに必ず合わせる機能)か、システムプロンプトの指示を使います。

📌 試験ポイント:Messages API はステートレスなので、会話を続けるには毎回それまでの履歴を送る。「Claude が前の発言を覚えていない」は、履歴を送っていないことが原因。

ツールの定義と使わせ方

Claude にツールを使わせるには、リクエストの tools にツールを定義します。

API は、ツールの定義からツール使用のためのシステムプロンプトを組み立て、指定されたシステムプロンプトと合わせます。そのため、ツールの定義も入力トークンとして数えられます。ツールの呼び出しは、stop_reason が "tool_use" の応答を受けてアプリがツールを実行し、結果を tool_result で返す往復で進みます。

tool_choice は、ツールを使わせるかどうかを決めます。

横にスクロールできます →
値 動き
auto 使うかどうかを Claude が決める。tools があるときの既定
any 用意したツールのどれかを必ず使う
tool 指定した1つのツールを必ず使う
none ツールを使わない。tools が無いときの既定

any と tool は、ツールの使用を強制します。強制すると、Claude は tool_use の前に説明の文を書かず、思考もしません。手動の拡張思考(thinking: {type: "enabled"})と組み合わせると、エラーになります。

⚠️ 一部の新しいモデルでは強制できない(2026年10月時点):Claude Opus 5.5、Sonnet 5.5、Fable 5.1、Mythos 5.1 では、any と tool は 400 エラーになります(Opus 5 や Haiku 5.5 は受け付けます)。ツールの入力を確実にスキーマどおりにしたいなら、auto と厳密なツール使用(ツールの入力をスキーマに必ず合わせる strict: true)を組み合わせます。

📌 試験ポイント:「特定のツールを必ず呼ばせる」は tool_choice の tool、「ツールを使わせない」は none。強制すると、ツールの前の説明文も思考も出ない。説明させたいなら、auto のままプロンプトで頼む。

ストリーミング

"stream": true を付けると、応答が SSE で少しずつ届きます。届くイベントは次の順で、2〜4 は内容のブロックの数だけ繰り返します。

  1. message_start:中身が空の Message オブジェクト
  2. content_block_start:ブロック(テキスト、tool_use、思考など)の始まり
  3. content_block_delta:ブロックの中身の差分。1つのブロックで何回も届く
  4. content_block_stop:ブロックの終わり
  5. message_delta:stop_reason など、メッセージ全体の変更
  6. message_stop:終わり

このほか、ping と error のイベントが届くことがあります。たとえば混雑時の overloaded_error は、ストリーミングでなければ HTTP 529 にあたるエラーです。API のバージョンの方針で新しい種類のイベントが足されることがあるので、知らない種類のイベントは読み飛ばすように書きます。

差分(delta)には次の種類があります。

message_delta の usage のトークン数は、それまでの累計です。

ストリーミングを使う理由は2つです。1つは、生成された分から表示して、利用者の待ち時間を短くするため。もう1つは、長い応答で HTTP の接続がタイムアウトしないようにするためです。SDK は、ストリーミングしないと約10分を超えると見込まれるリクエストをエラーにして、ストリーミングを求めます(思考のページの説明では、max_tokens が 21,333 を超えるとき)。途中の表示が要らなければ、SDK の .stream() と、最終メッセージを組み立てるヘルパー(Python では get_final_message())を使います。完成した Message を、ストリーミングしないときと同じ形で受け取れます。

接続が途中で切れたら、受け取った分を保存し、続きを頼みます。Claude 4.6 以降のモデルではプリフィルが使えないので、受け取った途中までの文を入れた user の発言で、続きから書くよう指示します。tool_use と思考のブロックは、途中からは再開できません。

📌 試験ポイント:「最初の文字を早く表示したい」「長い出力でタイムアウトする」はストリーミング。ツールの入力の差分は JSON の断片なので、ブロックが終わるまで貯めてからパースする。

ビジョン(画像の入力)

画像は、messages の中の image ブロックで渡します。渡し方は3つです。

横にスクロールできます →
渡し方 中身 向く場面
base64 画像をエンコードして、リクエストに埋め込む 手元の画像を1回だけ使う
URL ネットに公開された画像の URL を渡す 公開済みの画像
ファイル 先に Files API でアップロードし、返った file_id で参照する 同じ画像を何度も使う。枚数が多い

Amazon Bedrock と Google Cloud の Vertex AI では、base64 だけが使えます。

形式は image/jpeg、image/png、image/gif、image/webp で、アニメーションは最初のコマだけが使われます。2026年10月時点の主な上限は次のとおりです。

画像は、質問の文より前に置くと結果が良くなります。後ろに置いても十分に動きますが、選べるなら画像を先にします。

画像の読み取りには、次の限界があります。

PDF は document ブロックで渡します。各ページを画像に変換し、抜き出したテキストと合わせて Claude に渡すので、図や表も読めます。1回のリクエストで600ページまで(コンテキストウィンドウが100万トークン未満のときは100ページ)で、トークンは、テキストの分(1ページあたり、おおよそ 1,500〜3,000)と、ページの画像の分の両方がかかります。

📌 試験ポイント:「同じ画像や文書を何度も使う」は Files API の file_id で参照する。人物の特定は断られ、AI が生成した画像かどうかの判定はできない。PDF の図や表は、ページを画像としても読むので扱える。

思考(thinking)

思考を使うと、Claude は答える前に、問題を言い直し、やり方を試し、途中の結果を確かめます。思考の内容は、応答の text ブロックの前に、思考ブロック(thinking)で返ります。数学、コーディング、分析、長いエージェントの作業のように、途中の作業が答えの質を左右するタスクで効きます。

思考の有無と深さは、thinking パラメータで決めます。適応型思考は、type を "adaptive" にして、いつ・どれだけ考えるかを Claude にリクエストに応じて決めさせます。拡張思考は、type を "enabled" にして、思考に使うトークンの予算を budget_tokens で自分で決めます。どちらを受け付けるか、既定で思考がオンかは、モデルで違います。API での扱いで押さえる点は次のとおりです。

⚠️ 思考ブロックを捨てるコードは壊れる:ツール使用の往復で、応答のブロックを種類で絞って履歴に戻すとき、text と tool_use だけを残すと思考ブロックが落ちます。thinking だけを足しても、redacted_thinking が落ちます。前の応答の content を、そのまま assistant の発言として戻すのが確実です。

📌 試験ポイント:思考のトークンは出力トークンとして課金され、max_tokens に含まれる。表示を省いても速くなるだけで、費用は下がらない。ツール使用のターンでは、思考ブロックを手を加えずに返す。

プロンプトキャッシング

プロンプトキャッシングは、前のリクエストで処理したプロンプトの先頭部分(プレフィックス)を再利用して、処理時間と費用を減らす機能です。長いシステムプロンプト、たくさんの例、長い文書、長い会話のように、同じ先頭部分を何度も送るときに効きます。

キャッシュは tools → system → messages の階層になっていて、ある階層を変えると、その階層と後ろの階層が無効になります。

先頭に近いところに毎回変わる値(現在の時刻など)を置くと、その後ろは毎回別のプレフィックスになり、キャッシュが当たりません。毎回変わる値は、キャッシュしたい部分の後ろに置きます。

キャッシュの効き方は、応答の usage の3つの項目で確かめます。入力の合計は、この3つの和です。

📌 試験ポイント:「同じ長い指示や文書を何度も送る」はプロンプトキャッシング。キャッシュが当たらないときは、先頭に毎回変わる値が無いか、最小のトークン数に足りているか、5分の寿命が切れていないか、ツールの定義を変えていないかを見る。

クラウドのプラットフォーム経由で呼ぶ

Claude は、Anthropic の Claude API のほかに、クラウドのプラットフォームからも使えます。クラウドの請求と IAM(Identity and Access Management)にまとめられるのが利点で、既存のクラウドの契約やコンプライアンスの要件があるときに選びます。2026年10月時点の提供形態は次のとおりです。

Google Cloud の Vertex AI での提供は、2026年10月時点のドキュメントでは Claude Models on Google Cloud(Google managed)と呼ばれ、Google Cloud の Agent Platform の一部とされています(SDK のクライアント名などには Vertex の名前が残っています)。2026年10月22日には、Anthropic が運用する形(Anthropic managed)も加わりました。

どのプラットフォームでも共通して押さえる点は、次のとおりです。

📌 試験ポイント:「既存のクラウドの契約、請求、IAM にまとめたい」はクラウドのプラットフォーム経由。「最新の機能やベータをすぐ使いたい」は Claude API か、Anthropic が運用するプラットフォーム。ある機能がプラットフォームで使えないのは、機能の提供がプラットフォームごとに違うため。

データを Claude に渡す方法

試験ガイドの「Messages API data access patterns」には、中身の説明がありません。このノートでは、Messages API で扱うデータをどう Claude に届けるか、と解釈して整理します。

横にスクロールできます →
渡し方 中身 向く場面
会話の履歴を毎回送る Messages API は状態を持たないので、続きのリクエストに全履歴を入れる 普通の会話
リクエストに埋め込む テキストや、base64 の画像・PDF を、ブロックとして入れる 1回だけ使うデータ
URL で渡す 公開された画像や PDF の URL を渡す 公開済みのデータ
Files API で参照する 先にアップロードし、file_id で何度も参照する 同じファイルを繰り返し使う。大きなファイル
実行中に取りに行く ツールを使い、必要になったデータを Claude に取りに行かせる データが大きい、常に変わる、全部は要らない

Files API は、ファイルを一度アップロードして、何度も参照する API です。

⚠️ Files API のファイルは、ワークスペース全体から使える:ワークスペースは、Claude Console で API キーや使用量を分ける単位です。アップロードしたファイルは、そのワークスペースのどの API キーからも使え、利用者や会話ごとには分かれません。マルチテナントのアプリでは、テナントごとにワークスペースを分けます。信頼できない相手から受け取った file_id は使いません。

📌 試験ポイント:「同じ大きなファイルを何度も使う」は Files API。「テナントのデータを分けたい」はテナントごとのワークスペース。

バッチ処理(Message Batches API)

Message Batches API は、たくさんの Messages API のリクエストをまとめて送り、非同期に処理させる API です。料金は通常の50%です。

  1. アプリが、リクエストの一覧を送ってバッチを作る。各リクエストは、一意の custom_id と、Messages API と同じパラメータ(params)を持つ
  2. バッチは非同期に処理され、各リクエストは独立に扱われる。アプリは、バッチの processing_status が ended になるまで、状態を確かめる(ポーリング)
  3. アプリが結果を受け取る。結果は1行に1件の JSON(.jsonl の形式)で、順番はリクエストの順とは限らないので、custom_id で対応づける

制限と動きは次のとおりです。

リアルタイムとバッチの選び方

横にスクロールできます →
観点 Messages API(リアルタイム) Message Batches API
応答の速さ すぐ返る。ストリーミングもできる 多くは1時間以内、最長24時間
料金 通常 通常の50%
向く場面 利用者が結果を待っている(チャット、対話型の画面) 結果を急がない大量の処理(評価、コンテンツの審査、データの分析、文章の一括生成)

決め手は、結果を待っている人がいるかどうかです。待てるなら、処理が多いほどバッチの割引が効きます。同期のリクエストを並列に送っても、速く終わるだけで、トークンあたりの料金は下がりません。

📌 試験ポイント:「急がない」「大量」「コストを抑えたい」は Message Batches API。「利用者が待っている」「すぐ表示したい」は Messages API(必要ならストリーミング)。バッチの結果は順不同なので、custom_id で対応づける。

2-4. Software Engineering Foundations(7.4%)

出題範囲:ソフトウェア工学の基本の原則と実践。REST API、JSON、非同期プログラミング、バージョン管理、SDLC(ソフトウェア開発ライフサイクル)への組み込み、コードレビュー、小規模・大規模なリファクタリング。

この節は、一般的なソフトウェア工学の基礎です。用語と判断基準に絞り、Claude での開発に関わるところを添えます。

REST API

REST は、URL で表したリソースを、HTTP のメソッドで操作する API の設計のスタイルです。各リクエストは処理に要る情報をすべて自分で持ち、サーバーはリクエストの間で、クライアントとのやり取りの状態(セッションの状態)を持たない前提です。

横にスクロールできます →
メソッド 用途 安全(状態を変えない) 冪等(何回送っても結果が同じ)
GET 取得 ○ ○
POST 作成、処理の実行 × ×
PUT 置き換え × ○
PATCH 一部の更新 × 作り方による
DELETE 削除 × ○

冪等なリクエストは、失敗したときに安全に送り直せます。ステータスコードは、2xx が成功、4xx が呼び出し側の誤り(400 不正なリクエスト、401 認証の失敗、403 権限なし、404 見つからない、429 リクエストが多すぎる)、5xx がサーバー側の誤りです。

📌 試験ポイント:「安全に再送できる」は冪等なメソッド(GET、PUT、DELETE)。POST は冪等ではないので、再送すると二重に作られることがある。4xx は呼び出し側、5xx はサーバー側の誤り。

JSON

JSON は、オブジェクト({})、配列([])、文字列、数値、真偽値、null でデータを表すテキストの形式です。JSON Schema は、JSON の形(どの項目があり、どの型で、どれが必須か)を書くための仕様で、Claude ではツールの引数(input_schema)と構造化出力のスキーマに使います。

非同期プログラミング

API の呼び出しのように、時間の大半がネットワークの応答待ちになる処理では、待っている間に別の処理を進める非同期プログラミングが効きます。Python の async/await や JavaScript の Promise がその仕組みで、イベントループが、待ちに入った処理を切り替えながら進めます。Anthropic の Python の SDK には、非同期のクライアント(AsyncAnthropic)があります。

たくさんのリクエストを並列に送るときは、同時に送る数に上限を設けます。Claude API にはレート制限があり、超えると 429 が返るためです。

バージョン管理

Git では、変更をコミットで記録し、ブランチで並行して作業します。GitHub などのホスティングのサービスでは、プルリクエストでレビューしてから統合します。ブランチの運用には、次の型があります。

リリースには、セマンティックバージョニング(メジャー.マイナー.パッチの3つの番号)で版を付けることが多く、互換性を壊す変更でメジャー、互換性のある機能の追加でマイナー、修正でパッチを上げます。依存する側は、この番号の範囲で互換性を判断します。

開発の流れへの組み込み(SDLC integration)

Claude は、SDLC の各段階に組み込めます。

横にスクロールできます →
段階 Claude の使い方
設計・計画 Claude Code の plan モードで、コードを変えずに調べさせ、実装の計画を作らせる
実装 Claude Code で書かせる。テストやスクリプトのような、結果を確かめる手段を渡す
レビュー Code Review か /code-review で、変更を見させる
CI CI(継続的インテグレーション)では、Claude Code GitHub Actions で、プルリクエストや Issue のコメントの @claude に応えさせたり、GitHub のイベントをきっかけに決まった作業をさせたりする

Claude Code GitHub Actions は、Claude Code をリポジトリのワークフローの中で動かす GitHub Action で、Agent SDK の上に作られています。Claude Code で /install-github-app を実行すると、GitHub App のインストール、認証情報のリポジトリのシークレットへの登録、ワークフローのファイルを入れるプルリクエストの準備まで進みます。

コードレビュー

コードレビューは、変更をマージする前に、別の人(や別のエージェント)が確かめる工程です。正しさ、セキュリティ、テスト、読みやすさを見ます。変更を小さく保ち、目的を説明に書くと、見落としが減ります。Claude にレビューさせる形は2つです。

横にスクロールできます →
形 中身
Code Review(Team と Enterprise のプラン) GitHub のプルリクエストを、複数のエージェントが周りのコードと合わせて読み、検証の段階で誤検知を落としてから、行ごとのコメントで指摘する。承認もブロックもしないので、マージの判断はチームに残る
/code-review Claude Code のセッションで、今の差分を、新しいサブエージェントのコンテキストで見させる。どのプランでも使える

書いた本人と同じコンテキストで見させると、自分が書いたコードに引きずられます。新しいコンテキストで見させるのは、そのためです。また、粗を探すよう頼まれたレビュアーは、問題が無くても何かを挙げがちです。指摘に全部従うと作り込みすぎるので、正しさや要件に関わる指摘だけを挙げさせます。

📌 試験ポイント:AI のレビューは人の判断の代わりではない。Code Review は承認もブロックもせず、マージの判断はチームに残る。レビューは、書いたときとは別の新しいコンテキストで行わせる。

リファクタリング

リファクタリングは、外から見た振る舞いを変えずに、コードの構造を良くすることです。振る舞いが変わっていないことを確かめるために、先にテストをそろえます。

対象のファイルが多い大規模な変更は、並列に分けます。Claude Code の /batch は、作業を5〜30の単位に分けた計画を示し、承認すると、単位ごとに別の worktree でサブエージェントを動かします。自分のスクリプトで claude -p をファイルごとに呼ぶこともでき、そのときは最初の2〜3件で指示を直してから全体に広げます。

📌 試験ポイント:計画を立てる価値があるのは、やり方が決まっていない、複数のファイルを変える、よく知らないコードを変える、のどれかのとき。大規模なリファクタリングは、テストをそろえ、小さな単位で進める。

2-5. Claude Application Design(8.6%)

出題範囲:Claude のアプリケーションを作るときの設計上の考慮点。インターフェース(Claude Code、Desktop、claude.ai、API、SDK)ごとに Claude が指示をどう解釈するか、コンテンツの境界、スキーマの設計、セッションの衛生管理(session hygiene)、プラグインの管理。

インターフェースごとの指示の受け取り方

同じモデルでも、どのインターフェースから使うかで、Claude が受け取る指示の組み合わせが変わります。

Claude Desktop(デスクトップアプリ)は、チャットのほかに、Claude Code を動かす Code タブを持っています。Code タブは、ターミナルの Claude Code と同じ設定ファイルを読みます。

インターフェースをまたいで設計するときに、押さえる点は3つです。

📌 試験ポイント:「Agent SDK で Claude Code と同じ振る舞いにしたい」は claude_code のプリセット。「CLAUDE.md の指示が守られない」は、指示を具体的にし、矛盾を消す。必ず守らせたいならフック。「claude.ai と API で振る舞いが違う」は、claude.ai のシステムプロンプトが API には入らないため。

コンテンツの境界

試験ガイドの「content boundaries」にも、中身の説明はありません。このノートでは、Claude がどこまでの内容を見られるかと、指示とデータをどう分けるか、の2つとして整理します。

Claude が見るのは、そのリクエストのコンテキストに入れたものだけです。

プロンプトに、指示、背景の情報、例、利用者の入力が混ざると、Claude がどれを指示として扱うかがあいまいになります。種類ごとに XML タグで囲む(<instructions>、<context>、<input> など)と、取り違えが減ります。タグの名前は、プロンプトの間でそろえます。文書が複数あるなら、<documents> の中に <document index="n"> を並べ、出典などの情報も子のタグに入れます。

利用者がアップロードした文書、Web のページ、ツールの結果のように、外から来た内容はデータとして扱い、信頼できる指示とは分けて置きます。外から来た内容に指示が紛れ込んでいても、それに従って重要な操作をさせないためです。

📌 試験ポイント:「指示と入力を取り違える」は、XML タグで種類ごとに分ける。「Claude が前の会話や別の資料を知らない」は、コンテキストに入れていないため。外から来た内容は、信頼できる指示と分けて扱う。

スキーマの設計

Claude の入出力の形は、JSON Schema で決めます。スキーマを使う場所は3つです。

構造化出力と厳密なツール使用は、制約付きのデコーディング(スキーマに合わないトークンを選ばせない生成の方式)で、スキーマどおりの出力を保証します。プロンプトで頼むだけだと起きる、JSON の構文の崩れ、必須の項目の欠け、型の違いを防げます。スキーマを設計するときの注意点は、次のとおりです(2026年10月時点)。

📌 試験ポイント:「JSON のパースエラーや必須項目の欠けを無くしたい」は、応答なら構造化出力、ツールの引数なら厳密なツール使用。「スキーマが複雑すぎる」という 400 エラーは、省略できる引数を減らし、入れ子を浅くする。

セッションの衛生管理(session hygiene)

Claude のコンテキストは、関係の無い会話、ファイルの中身、コマンドの出力でも埋まっていき、埋まるほど性能が落ちます。セッションの衛生管理は、今のタスクに要るものだけがコンテキストに残るように、セッションを区切り、整理することです。Claude Code のベストプラクティスは、次のやり方を勧めています。

API で自作のアプリを作るときも、考え方は同じです。Messages API に毎回送る履歴はアプリが選ぶので、今のタスクに関係の無い古いやり取りは送りません。

📌 試験ポイント:「関係の無いタスクに移る」は /clear。「何度直しても同じ誤りに戻る」は、/clear してプロンプトを書き直す。「調べ物でメインのコンテキストを汚したくない」はサブエージェント。

プラグインの管理

Claude Code のプラグインは、Skills、サブエージェント、フック、MCP サーバーなどをまとめ、1つの単位としてインストールして読み込むディレクトリです。名前やバージョンを書いたマニフェスト(.claude-plugin/plugin.json)を持ちます。多くは、プラグインの一覧と取得元を載せたカタログであるマーケットプレイスからインストールします。

インストールするときは、スコープを選びます。

同じプラグインが複数のスコープにあれば、ローカル、プロジェクト、ユーザーの順に優先されます。

インストール、有効・無効の切り替え、更新、アンインストールは、/plugin の画面(Discover、Installed、Marketplaces のタブ)か、シェルの claude plugin のコマンドで行います。変更は /reload-plugins で、今のセッションに反映されます。

マーケットプレイスの自動更新がオンなら、セッションが始まった後に新しい版を取ってきます。claude-plugins-official をはじめとする Anthropic の公式のマーケットプレイスの多くは既定でオン、コミュニティ、他社、ローカルのマーケットプレイスは既定でオフです。動いているセッションは読み込んだ版を使い続け、次のセッションか /reload-plugins で新しい版に替わります。

入れる前に知っておくことは、次の3つです。

📌 試験ポイント:「チームの全員に同じプラグインを使わせる」はプロジェクトのスコープ(.claude/settings.json をコミット)、「組織で必須にする」は管理設定。「使っていないのにコンテキストが減る」は、有効なプラグインの説明が毎ターン入るためで、要らないものは無効にする。

2-6. Configuration Management(4.1%)

出題範囲:Claude のシステムの構成要素の構成管理。CLAUDE.md、settings.json、モデルのバージョンの固定、プロンプトのバージョン管理、プラグインの依存関係。

Claude を組み込んだシステムでは、コードのほかに、設定ファイル、指示のファイル、モデルの ID、プロンプト、プラグインも、振る舞いを決める構成要素です。どれもバージョン管理し、誰に効くかと、いつ変わるかを管理します。

settings.json のスコープと優先順位

Claude Code の設定(使うモデル、確認なしで実行してよいこと、読ませないファイルなど)は、JSON の設定ファイルに書きます。どのファイルに書くかで、誰に効くかが決まります。

同じキーが複数の場所にあれば、優先順位の高いほうの値が使われます。高い順に、管理、コマンドライン(起動時の --settings。そのセッションだけ)、プロジェクトローカル、共有プロジェクト、ユーザーです。このほか、次の点を押さえます。

📌 試験ポイント:「チームで共有する」は .claude/settings.json をコミット、「自分だけ変える」は .claude/settings.local.json、「組織で強制する」は管理設定(最優先で、利用者は上書きできない)。

CLAUDE.md の置き場所と管理

CLAUDE.md は、セッションの始めに Claude が読む指示のファイルです。置き場所で、共有の範囲が決まります。

構成として管理するときの決まりは、次のとおりです。

📌 試験ポイント:「チームの規約」はプロジェクトの CLAUDE.md(コミットする)、「自分だけの指示」は CLAUDE.local.md か ~/.claude/CLAUDE.md。「長すぎて守られない」は、削る、Skills や rules に分ける、フックに移す。

モデルのバージョンを固定する

モデルが変わると、同じプロンプトでも出力が変わります。本番では使うモデルを固定し、新しいモデルはテストしてから、自分の都合で移ります。Claude API のモデルの ID は、次のように扱います。

Claude Code では、opus、sonnet、haiku のような別名が、そのときの推奨の版を指し、時とともに変わります。固定するなら、完全なモデルの名前(例:claude-opus-5-5)を指定するか、ANTHROPIC_DEFAULT_OPUS_MODEL のような環境変数で、別名が指す ID を決めます。Amazon Bedrock などのクラウドのプラットフォーム経由で展開するときは、利用者に配る前に固定します。固定しないと、別名がプラットフォームごとの既定の ID に解決され、それが最新の版より古かったり、利用者のアカウントで有効になっていなかったりします。

📌 試験ポイント:別名は指す先が変わるので、固定には完全なモデルの ID を使う。Claude 4.6 以降の日付の無い ID は、それ自体が固定された版。同じ ID でも、周りの基盤の更新で振る舞いがわずかに変わることがある。

プロンプトのバージョンを管理する

プロンプトも、振る舞いを決めるコードの一部です。Git でアプリのコードと一緒に管理し、変えるたびに評価を回して、どの版のプロンプトとどのモデルの ID の組み合わせで、どんな結果だったかを残します。問題が出たら、前の版に戻せるようにしておきます。

Claude Managed Agents では、エージェント(モデル、システムプロンプト、ツール、MCP サーバー、Skills をまとめた設定)そのものが版を持ちます。

📌 試験ポイント:プロンプトは、モデルの ID と組にして版を管理し、変えるたびに評価する。「エージェントの設定の変更を段階的に広げたい」は、Managed Agents でセッションを版に固定する。

プラグインの依存関係

プラグインは、ほかのプラグイン(その MCP サーバーや Skills を呼ぶものなど)に依存できます。依存は、plugin.json の dependencies に書きます。

📌 試験ポイント:「依存先の更新で壊れた」は、バージョン制約を付けて、テストした範囲の版だけを使う。「チームに決まったプラグインの組を配りたい」は、依存だけを並べたプラグインを作る。

✅ 第2章 チェック問題

Q1. 毎週日曜の夜に、過去1週間の問い合わせのログ5万件をカテゴリに分け、月曜の朝の会議で使う。費用を抑えたい。Messages API を並列に呼ぶのと、Message Batches API のどちらが合うか。また、結果とリクエストはどう対応づけるか。

答え

Message Batches API です。料金は通常の50%で、多くは1時間以内に終わるので、月曜の朝に間に合います。24時間以内に処理されなかったリクエストは期限切れになるので、結果の種類も確かめます。5万件なら、1つのバッチの上限(10万件か 256 MB)にも収まります。Messages API を並列に呼んでも速く終わるだけで、トークンあたりの料金は下がりません。結果はリクエストの順に返るとは限らないので、各リクエストに付けた custom_id で対応づけます。

Q2. 思考を使うツール使用のエージェントで、tool_result を返すときに、前の応答の content から text と tool_use のブロックだけを取り出して履歴に入れている。何が問題か。

答え

思考ブロックを返していないことです。ツール使用のターンでは、前の応答の思考ブロックを、tool_use ブロックと一緒に、手を加えずに返す必要があります。Claude は、ツールの結果を受け取った後も同じ応答の続きを組み立てるので、それまでの思考が要るためです。安全のために伏せられた redacted_thinking ブロックも同じように返します。前の応答の content を、そのまま assistant の発言として戻すのが確実です。

Q3. システムプロンプトの先頭に「現在時刻:2026年10月23日 10:15:32」を入れ、その後に3万トークンの社内規程を置き、規程の最後に cache_control を付けた。キャッシュがまったく当たらない。なぜか。どう直すか。

答え

キャッシュされるのは、プロンプトの先頭からブレークポイントまでのプレフィックスです。先頭の時刻が毎回変わるので、プレフィックスも毎回別のものになり、当たりません。変わらない規程を前に置いてその最後にブレークポイントを付け、毎回変わる時刻はブレークポイントより後ろに置きます。

Q4. 複数の顧客企業(テナント)の契約書を Files API にアップロードして要約するアプリを、1つのワークスペースで動かしている。何が問題で、どう分けるべきか。

答え

Files API のファイルは、アップロードしたワークスペースのどの API キーからも使えます。利用者や会話ごとには分かれないので、あるテナントのファイルを、別のテナントの処理から参照できてしまいます。テナントごとにワークスペースを分け、そのワークスペースに絞った API キーで扱います。信頼できない相手から受け取った file_id も使いません。

Q5. チームの全員に同じフックと権限のルールを使わせたい。ただし、1人だけ、自分の環境のこのプロジェクトでだけ既定のモデルを変えたい。それぞれどのファイルに書くか。また、組織として誰にも変えさせたくない設定は、どこに書くか。

答え

チームの全員に効かせる設定は、.claude/settings.json に書いてコミットします。1人だけの上書きは、その人の .claude/settings.local.json に書きます(Git に入れない)。プロジェクトローカルは共有プロジェクトより優先されるので、その人のセッションだけが変わります。誰にも変えさせたくない設定は管理設定に書きます。管理設定は最も優先され、利用者のファイルでも --settings でも上書きできません。

Q6. Agent SDK で作ったエージェントが、Claude Code の CLI で動かしたときと振る舞いが違い、安全の指示も効いていないように見える。何が違い、どうすれば合わせられるか。

答え

システムプロンプトが違います。Agent SDK は、システムプロンプトを指定しないと、ツールの呼び出しだけを扱う最小のプロンプトを使い、Claude Code の安全の指示は入りません。claude_code のプリセットを指定すると、Claude Code と同じシステムプロンプトになります。製品に固有の指示は、append で足します。

Q7. Claude Code を Amazon Bedrock 経由で社内に展開する。設定の model に別名の sonnet を書いて配ろうとしている。何が問題か。どうすべきか。

答え

別名は、プラットフォームごとの既定のモデルの ID に解決されます。その ID は最新の版より古かったり、利用者のアカウントで有効になっていなかったりします。また、別名が指す先は時とともに変わるので、いつ新しいモデルに移るかを自分で決められません。配る前に、ANTHROPIC_DEFAULT_SONNET_MODEL などの環境変数か完全なモデルの ID で、使う版を固定します。

Q8. 自作のプラグインが、別のプラグインの MCP サーバーのツールを呼んでいる。依存先の新しい版でツールの名前が変わり、更新した利用者の環境で動かなくなった。再発を防ぐにはどうするか。

答え

plugin.json の dependencies で、依存先にバージョン制約(例:~2.1.0)を付けます。制約を付けると、範囲内の版だけが使われ、依存先が互換性の無い版を出しても移りません。新しい版は自分でテストしてから、制約を広げた版のプラグインを出します。制約は依存先のプラグインを置いているリポジトリの Git のタグで解決されるので、リリースにタグが付いている必要があります。

Q9. Claude Code で、同じ不具合の修正を3回頼み直したが、毎回同じ誤ったやり方に戻ってしまう。どうするのがよいか。

答え

/clear でコンテキストを空にし、わかったこと(避けるべきやり方、正しく直ったかの確かめ方)を入れた、より具体的なプロンプトで始め直します。何度も直したセッションには、失敗したやり方がコンテキストに残っていて、Claude がそれに引きずられます。Claude Code のベストプラクティスは、2回直しても直らなければ始め直すよう勧めています。


第3章Claude Code(3.1%)

(未執筆)

3-1. Claude Code Operation(3.1%)

出題範囲:Claude Code の中核の構成要素(Rules、Skills、Commands、Agents、Agent Memory)、機能(セッション管理、組み込みとカスタムのスラッシュコマンド、ヘッドレスモード、ストリーミングモード、auto モード)、CLAUDE.md の階層、リポジトリの初期化、settings.json の設定。

(本文は未執筆)

✅ 第3章 チェック問題

(章を書き終えたら作る)


第4章Eval, Testing, and Debugging(2.6%)

(未執筆)

4-1. Debugging and Error Handling(2.6%)

出題範囲:Claude のアプリケーションのデバッグとエラー処理。エラーの種類の特定、回復の方針の選択、トレースの分析による失敗のパターンの特定、問題の原因が統合のレイヤーとモデルの出力のどちらにあるかの切り分け。

(本文は未執筆)

✅ 第4章 チェック問題

(章を書き終えたら作る)


第5章Model Selection and Optimization(16.8%)

(未執筆)

5-1. LLM Fundamentals(5.2%)

出題範囲:LLM の基本(トークン、コンテキストウィンドウ、サンプリング、非決定性、次のトークンの生成)、モデルのオプション(fast mode、拡張思考(extended thinking)、適応型思考(adaptive thinking)、effort レベル)、基本のプロンプト手法(zero-shot、single-shot、multi-shot)。

(本文は未執筆)

5-2. Technical Fundamentals(6.1%)

出題範囲:AI アプリケーションの開発を支える技術の基礎。基本的なエンジニアリングの実践(REST API をラップする SDK との連携、WebSocket)。

(本文は未執筆)

5-3. Model Selection and Tradeoffs(2.7%)

出題範囲:Claude のモデルの能力(Opus・Sonnet・Haiku の使いどころ、adaptive thinking への対応)、品質・レイテンシ・コストのトレードオフ、タスクに合うモデルを選ぶときの、モデルのリリースをまたぐ破壊的な動作の変更。

(本文は未執筆)

5-4. Cost and Token Management(2.8%)

出題範囲:Claude のアプリケーションのトークンの予算とコストの管理。トークンの使用量の追跡、コストの見積もり、コストを下げるキャッシュの手法(プロンプトキャッシング、キャッシュのチェックポイント)。

(本文は未執筆)

✅ 第5章 チェック問題

(章を書き終えたら作る)


第6章Prompt and Context Engineering(11.0%)

(未執筆)

6-1. Context Engineering(3.8%)

出題範囲:Claude のアプリケーションのコンテキストとメモリの管理。コンテキストウィンドウの管理、コンテキストのドリフトと肥大化の防止(ツールの出力の刈り込み、コンパクション)、サブエージェントや複数の段階からなるエージェントのワークフローによるコンテキストの分離。

(本文は未執筆)

6-2. Prompt Engineering(4.6%)

出題範囲:プロンプトエンジニアリングの原則と方法。指示の明確さ、few-shot の例、system と user のどちらに置くか、出力の制約、構成要素をまたぐプロンプトと指示の配置、反復による改善、プロンプトの調整、入力のサニタイズ。

(本文は未執筆)

6-3. Output Handling(2.6%)

出題範囲:Claude の出力を作る・検証する・使うための確立したパターンと手法。構造化出力のパターン、応答の検証、防御的なパース、自信のある出力を鵜呑みにしないこと。

(本文は未執筆)

✅ 第6章 チェック問題

(章を書き終えたら作る)


第7章Security and Safety(8.1%)

(未執筆)

7-1. AI Application Security(3.2%)

出題範囲:データのプライバシーとセキュリティのベストプラクティス。プロンプトインジェクションの認識と緩和、ジェイルブレイクの防御、信頼できない入力の扱い、データ漏えいの防止、PII(個人を特定できる情報)の扱い、認証・認可・機密性・プライバシー・完全性の確保。

(本文は未執筆)

7-2. Guardrails and Safe Deployment(2.3%)

出題範囲:安全で責任あるデプロイの実践(コンテンツポリシー、ガードレールの多層化)と、セキュア・バイ・デザインの原則(プライバシー、ID とアクセスの管理、最小権限)。

(本文は未執筆)

7-3. Claude Hooks(1.0%)

出題範囲:Claude のアプリケーションで、破壊的な操作を防ぐガードレールと安全の制御にフックを使う。

(本文は未執筆)

7-4. Identity, Secrets, and Key Management(1.6%)

出題範囲:Claude の開発環境と本番環境をまたぐ、シークレット・資格情報・API キーの管理。ID の検証と認証、アクセスの承認と権限レベルの確認、許可されたアクセスの監視。

(本文は未執筆)

✅ 第7章 チェック問題

(章を書き終えたら作る)


第8章Tools and MCPs(10.6%)

(未執筆)

8-1. Tool Implementation(4.4%)

出題範囲:Claude のアプリケーションのツールの実装。ツール使用と関数呼び出し、外部システムとやり取りするための設定、ツールの説明の書き方、エラー処理、ツールの使い方のパターン(エージェントのハーネスによるディスパッチ、クライアント側とサーバー側のツール、承認のパターン)、ツール群の組み立て方のベストプラクティス。

(本文は未執筆)

8-2. MCP Server Development(2.1%)

出題範囲:MCP サーバーの開発。サーバーの作成、デプロイ、Claude のアプリケーションとの統合、MCP のリソース・ツール・プロンプト、通信のパターン(stdio、ソケット、クライアントとサーバー)。

(本文は未執筆)

8-3. Agentic Customization(4.1%)

出題範囲:組み込みのツール、カスタムのツール、Skills、MCP のトレードオフと、ユースケースに合うやり方の選び方。

(本文は未執筆)

✅ 第8章 チェック問題

(章を書き終えたら作る)


第9章直前まとめ

(本編を書き終えたら作る)

9-1. 早見表

横にスクロールできます →
用語 一言でいうと 章

9-2. 逆引き「〜したいときは何を使う?」

横にスクロールできます →
やりたいこと 答え

9-3. 紛らわしいペア比較

横にスクロールできます →
比較 違いの核心

9-4. 数字・固有名詞の暗記リスト

(本編を書き終えたら作る)