コンテンツにスキップ

PM · Claude Code + Agent SDK 基礎

ターミナル中心。会場のすべてのエンジニアが本日、自身のノートPCで動くエージェントを構築します。これは午前セッションのハンズオン続編です。

何を行うか

ブロック所要時間内容
セットアップ確認15分すべてのノートPCでClaude Code + GCP Vertexの動作確認
ビルディングブロック130分Hello world エージェント — シングルエージェント構成、ツール利用、マルチターン
ビルディングブロック230分エージェント・ループ — Claude Codeが実際にどう「思考→行動→思考」するか
休憩15分
ビルディングブロック330分マルチエージェント構成 — サブエージェントの起動、協調
ビルディングブロック430分重要なツール — ファイルI/O · Web検索 · スクリプト実行
ビルディングブロック545分失敗モードのストーリー — 2エージェントを20にスケールすると何が壊れるか(Day 2への橋渡し)

合計: セットアップと休憩を含めて約3.5時間。対象: エンジニア、対面のみ。

午後に行わないこと

すべてのノートPCへのLIFEOSAIインストールは行いません。LIFEOSAIの公開はDay 2です。Day 1午後はよりシンプルな入り口 — ターミナル上のエージェント、GUIインストール不要、失敗の余地が少ない構成です。

前提条件

セッション開始前に以下を確認してください。

  • Node 22以上がインストール済み
  • claudeコマンドがインストール済み(npm install -g @anthropic-ai/claude-code)
  • GCP Vertex認証が動作(セットアップを参照)
  • 作業ディレクトリの準備: mkdir agent-workshop && cd agent-workshop

いずれかが整っていない場合は、ランチ前にお知らせください。

ビルディングブロック1 — 5分で最初のエージェント

クイックスタートは5分の最短ルートです。手順を順番に実行してください。

Terminal window
# Create the agent's home
mkdir -p .claude/agents
# Write its SOUL
cat > .claude/agents/file-reader.md <<'EOF'
---
agent_id: file-reader
model: claude-sonnet-4-6
---
# Identity
I am a file-reader. I read files in the working directory and summarise them.
# Workflow
When invoked:
1. List files in the current directory
2. Read the most recent .md or .txt file
3. Print a 3-line summary
4. Exit
EOF
# Drop a file to read
echo "# Hello World\n\nThis is my first file." > sample.md
# Invoke
claude --agent file-reader

実行結果: エージェントがファイル一覧を表示し、sample.mdを読み、3行の要約を出力します。

これが動作するエージェントです。同じパターンが、明日の9エージェント版ガードレール・ラボへとそのままスケールします。

ビルディングブロック2 — エージェント・ループ

claudeと入力してEnterを押すと何が起こるか。

  1. Claude CodeがエージェントのSOUL(.mdファイル)をロード
  2. SOULがシステムプロンプトとなる
  3. Claude(LLM)が思考 → ツール呼び出しを生成(例: 「ファイル一覧」)
  4. Claude Codeがツール呼び出しを実行
  5. 結果が会話へ戻る
  6. Claudeが再び思考 → 次のツール呼び出し → 次の結果
  7. Claudeが完了と判断するまでループ継続

これがエージェント・ループです。 あらゆるコーディングエージェント(Claude Code、Pi Coding Agent、Codex 他)で同じループが動いています。ランタイムによって実装は異なりますが、形は同じです。

ビルディングブロック3 — マルチエージェント

シングルエージェントは役に立ちます。2つ以上のエージェントが協調すると、さらに役に立ちます。Claude Codeのサブエージェント機能により、あるエージェントが別のエージェントを起動できます。

例: アナリスト・エージェントが5つの専門アナライザーを並列起動し、それぞれが同じ入力を異なるレンズから読み、最後に統合する。これが明日プロダクションで見ていただくマルチパースペクティブ・パターンです。

Terminal window
# This pattern works today in Claude Code. We'll walk through it live.

ビルディングブロック4 — 重要なツール

エージェントの「手」です。3つのツールが実務の80%をカバーします。

ツール機能有効化方法
file I/O作業ディレクトリ内のファイルの読み書き・検索Claude Code標準搭載
web searchURL取得、Web検索WebSearchツールで標準搭載
bashシェルコマンド、スクリプト、テストの実行Bashツールで標準搭載

さらに多くのツールを必要とする場合: MCPサーバー(Model Context Protocol — System · Connectorsを参照)、またはSkills(エージェントが呼び出せる指示+スクリプト)。いずれもエージェント本体を変更せずに能力を追加できます。

ビルディングブロック5 — 失敗モード(Day 2への橋渡し)

30分の締めくくり。2エージェントを20にスケールすると、何が壊れるか?

失敗何が起こるか必要なもの
コンテキスト爆発20セッション、共有メモリなしオフィスライブラリ
エージェントが干渉する同じファイルに2つのライター課題単位のロック
監査証跡なし「エージェントは本当にメールを送ったか?」runs / wakeupsログ
コスト暴騰あらゆるタスクにOpusエージェント単位のモデル選択+予算
承認の抜け穴送金エージェントが暴走アクション・ポリシー+承認キュー

これらはそれぞれ、Day 2で歩くLIFEOSAIの構成要素にマッピングされます。失敗モードこそがアーキテクチャの仕様書です。

資料

持ち帰ってください。 本日午後の内容はすべて、皆様のターミナル上にあります。Claude Codeのインストールと.claude/agents/*ファイルはワークショップ後も残ります。引き続き構築してください。週を通じて会場におりますので、詰まったらお声かけください。

次に読む

次へ: Day 2 — リビールへ →