この章は「最初に全部読む」章ではない。環境構築(STEP 1〜4)だけ先に済ませ、ことば図鑑は学習中に知らないことばが出てきたら戻ってくる辞書として使う。全部覚えてから進もうとするのが一番の遠回り。
第1章のコード演習で使う道具は3つだけ。ターミナル(パソコンに文字で命令する窓)、Python(プログラムを動かすエンジン)、APIキー(Claudeに接続するための鍵)。料理でいえば、コンロ・鍋・食材の調達先を最初に揃えるのと同じで、ここさえ済めば以降は書いて動かすだけになる。
Macなら「アプリケーション → ユーティリティ → ターミナル」(Spotlightで「ターミナル」と検索でもよい)。黒い画面に % や $ が出ていれば準備OK。この記号は「命令をどうぞ」の合図で、プロンプトと呼ぶ(AIに送る指示文のプロンプトと同名だが別物)。
ターミナルに次を打って Enter:
python3 --version
Python 3.10.x のような番号が出れば入っている。3.9以上ならそのまま進んでよい。「command not found」と出たら python.org から最新版をインストールする。
python3 -m pip install anthropic
pip はPythonの部品屋さん(ライブラリを取り寄せる道具)。anthropic はAnthropic公式の接続部品で、これを入れると自分のコードからClaudeを呼べるようになる。pip3 install … と教える記事も多いが、パソコンに複数のPythonが入っていると「インストールした先」と「実行するPython」がずれる事故が起きるため、python3 -m pip(いま使っているPython自身に部品を入れさせる書き方)が確実。
sk-ant-… で始まる文字列がAPIキー。この画面でしか表示されないのでコピーしておくecho 'export ANTHROPIC_API_KEY="sk-ant-ここに自分のキー"' >> ~/.zshrc
source ~/.zshrc
APIキーはクレジットカード番号と同じ扱いにする。コードに直接書かない・人に見せない・チャットに貼らない。キーを環境変数に置くのは、D2で学ぶ「シークレットをコードから分離する」思想の最初の実践でもある。
次の5行を hello.py という名前で保存して(デスクトップでよい)、ターミナルで python3 ~/Desktop/hello.py を実行:
from anthropic import Anthropic # 接続部品を読み込む
client = Anthropic() # 環境変数のキーを自動で使う
res = client.messages.create(
model="claude-sonnet-5", max_tokens=100,
messages=[{"role": "user", "content": "こんにちは!一言返して"}])
print(res.content[0].text)
Claudeからの返事が表示されたら環境構築は完了。いまあなたは第1章で解剖する「エージェントの心臓部」の最小形をすでに動かしたことになる(第1章はこの5行に「ツールを使わせる」「ループさせる」を足していくだけ)。
echo $ANTHROPIC_API_KEY を実行して自分のキーが表示されるか確認。空ならSTEP1-④の2行をやり直してターミナルを開き直すpython3 -m pip install anthropic をやり直す(pip3 単体で入れた場合、別のPythonに入ってしまうことがある)python3 -m pip install --user anthropic(自分専用の棚に入れる指定)で回避できる3分悩んだら、エラーメッセージ全文をコピーしてClaudeに「これどういう意味?」と貼るのが最速。エラー文を読んで原因を切り分ける行為自体が、D5で学ぶ「エラーの種類を区別して扱う」感覚の練習になる。
各レッスンで説明なしに登場する基礎用語を、非エンジニア向けにここへ集めた。通読不要。「知らないことばに出会う → ここで引く → レッスンに戻る」の往復で使う(各ドメイン固有の専門用語は、従来どおり各ページ末尾の用語ミニ辞書にある)。
パソコンに文字で命令する窓(ターミナル)と、その命令を解釈して実行する通訳係(シェル)。マウス操作の代わりに文字で指示する。Claude Codeが裏で使っているのもこれで、試験では「Bashツール」として登場する。
ターミナルに打ち込む1行の命令。python3 --version なら「python3さん、バージョンを名乗って」という意味。「コマンドを実行する」=この1行を打ってEnterを押すこと。
パソコンに貼っておく「名前付きの付箋」。ANTHROPIC_API_KEY という付箋にキーを書いておけば、どのプログラムも付箋名で中身を参照できる。秘密の値をコードに直書きせず済むのが最大の利点で、試験でもD2(.mcp.json の ${API_TOKEN} 展開)で正解の根拠になる。
ディレクトリ=フォルダのこと。パス=ファイルの住所(例: ~/Desktop/hello.py)。~ は自分のホームフォルダの略記。試験ではCLAUDE.mdの階層(D3)が「どの住所に置いた設定がどこまで効くか」という話として出る。
コマンドが終わる時に残す「成否の番号」。0=成功、それ以外=失敗。人間には見えないが、プログラム同士はこの番号で会話する。Claude Codeのhook(D1)は「exit 2 を返すと操作をブロックできる」という形でこの仕組みを使っている。
プログラムが残す活動記録。「いつ・何をして・何が起きたか」の日誌。エラー調査は基本的にログを読む作業で、D5のエラー伝播(何を上に報告するか)はこの日誌に何を書くべきかという話でもある。
データを「名前: 値」のペアで書く世界共通の記法。{"name": "田中", "age": 30} のような形。人間にも読めて機械にも解釈できるのが強み。試験全域(ツールの入出力・構造化抽出・設定ファイル)でこの形が前提になる。
JSONの「記入例つき申込用紙」。どの欄(フィールド)が必須で、それぞれ数値か文字かを事前に決めた設計図。Claudeにツールを渡す時の入力定義や、構造化出力の型強制(D4)はすべてJSONスキーマで書く。「用紙の形式は保証できるが、記入内容の正しさまでは保証しない」という限界とセットで覚える。
JSONと同じ「名前: 値」を、括弧なし・インデント(字下げ)で書く記法。人間が手で書く設定ファイルに好まれる。paths: ["**/*.test.*"] のようなルール設定(D3)で登場する。
文書ファイルの冒頭に --- で挟んで書くYAML形式の自己紹介欄。「このファイルは何者で、いつ使われるべきか」のメタ情報。スキルの発動条件(context: fork)やルールの適用範囲(paths:)はここに書く。D3頻出。
# で見出し、- で箇条書きにする軽量文書記法。CLAUDE.md・SKILL.md の「.md」はMarkdownの略。設定ファイルというより「AIに読ませる説明書」をこの記法で書く。
他人が作ってくれた部品集(ライブラリ)と、特定サービス公式の部品一式(SDK = Software Development Kit)。pip3 install anthropic で入れたのはAnthropic公式SDK。「車輪の再発明をせず部品を組む」のが現代の開発で、コミュニティMCPサーバー優先(D2)も同じ思想。
関数の直下に書く説明文。単なるメモではなく、プログラムから読み取れる公式説明として扱われる。FastMCPではdocstringがそのままツールの説明文としてAIに渡るため、「説明文の品質=ツール選択の精度」(D2.1)に直結する。
Pythonで関数の上に付ける @mcp.tool() のような飾り。「この関数に追加の役割を与える」という宣言で、FastMCPでは「この関数をMCPツールとして公開する」の意味になる。仕組みの深追いは不要、「@=役割付与のシール」で足りる。
「相手は前回のやりとりを覚えていない」という性質。Claude APIは毎回記憶ゼロの相手に手紙を送る方式なので、続き物の会話をするには履歴を毎回全部同封する。第1章のエージェントループが「履歴に追記して送り直す」構造なのはこのため。コンテキスト管理(D5)の出発点。
「できましたか?」を定期的に聞きに行く方式。Batches API(D4)は依頼を預けたら後でポーリングして結果を回収する。対義語は「できたら連絡ください」のWebhook/コールバック方式。
git=ファイルの変更履歴を全部残す台帳システム。コミット=「ここまでを1版として記録」する行為。PR(プルリクエスト)=「私の変更を本体に取り込んでください」という申請書で、他人のレビューを受ける場。試験では「CLAUDE.mdをgitで共有する」(D3)「PRに自動レビューコメントを付ける」(CI統合)の形で登場する。
コードが変更されるたびに、テスト・チェック・配備を自動で走らせる工場ライン。人間が「テスト実行ボタン」を押さなくても、PRを出した瞬間に検査が始まる仕組み。Claude Codeをこのラインに組み込む(-p フラグでの非対話実行)のがD3.6の主題。
「画面なし・対話なし」でプログラムを走らせるモード。CI/CDの中では人間が質問に答えられないので、Claude Codeも聞き返しなしの一発実行(claude -p "指示")で使う。
ファイル名の「あいまい検索記法」。* が「任意の文字列」、** が「どの階層でも」。**/*.test.* なら「どこのフォルダにあっても、名前に .test. を含むファイル全部」。パス限定ルール(D3.3)とGlobツール(D2.5)の中核記法。
エラーが起きた時に出る「事故現場までの足取り一覧」。どの関数がどの関数を呼んだ先で失敗したかが新しい順に並ぶ。全文を読まなくても、最後の数行に事故の直接原因が書いてあることが多い。
本番=実際のユーザー・実データが動いている場所。開発環境=壊しても誰も困らない練習場。「本番に影響する操作ほど強い保証(hook・承認ゲート)が要る」という感覚は、正解の哲学①の土台になっている。