エージェントアーキテクチャ・Track 4 & 7

シンプルなループからマルチエージェントまで、本番運用可能なAIエージェントを構築する

シンプルなループから、ネットワーク化されたエージェントシステムへ。

AIエージェントとは、言語モデルが取るべき行動を決定し、ツールを使ってそれを実行し、結果を観察して反復するシステムであり、人間が各ステップを操作する必要はありません。Claudeの100万トークンのコンテキストウィンドウ、ネイティブなツール利用、そして信頼性の高い指示追従能力により、Claudeは現在利用可能な本番運用向けエージェントシステムの中でも最も強力な基盤の一つとなっています。

Claude AIエージェントとは、Claudeが最小限の人間の監視のもとで複数ステップのタスクを計画・実行・検証する自律型ワークフローです。Claude APIのツール利用機能を使って構築され、エージェントはWebを閲覧し、データベースに問い合わせ、コードを書いて実行し、複数のツールを連携させて複雑な目標を達成できます。

システムを「エージェント」にする要素とは?

エージェントを通常のLLM呼び出しと区別する3つの要素があります。

  1. 1
    自律的な意思決定: モデルは、次に何をすべきか、どのツールを呼ぶか、どのパラメータを使うか、継続するか停止するかを、人間が各アクションを指定することなく自ら決定します。
  2. 2
    ツールへのアクセスとアクションの実行: エージェントは実世界と相互作用できます。APIへの問い合わせ、ファイルの読み書き、メッセージの送信、コードの実行などです。アクションはテキスト生成を超えた実際の効果を持ちます。
  3. 3
    複数ステップの反復: エージェントは各アクションの結果を観察し、それを次の意思決定に反映させます。タスクが完了するまでループを続け、途中で発生する失敗にも対応します。

アーキテクチャパターン

シンプルから高度まで、6つのエージェントアーキテクチャ

ここから始める
シングルエージェントループ
一連のツールにアクセスできる単一のClaudeインスタンス。タスクを受け取り、必要に応じてツールを呼び出し、結果を読み取り、タスクが完了するか続行できないと判断するまでループを続けます。すべてのエージェントアーキテクチャの基盤です。
最も一般的
オーケストレーター+サブエージェント
オーケストレーター役のClaudeが複雑なタスクをサブタスクに分割し、それぞれを専門のサブエージェントに委任します。サブエージェントは自身のループを実行し、結果を報告し、オーケストレーターがそれらを統合します。並列化可能なステップを持つタスクにうまく対応できます。
高スループット
並列サブエージェント
オーケストレーターが同一または類似のタスクを複数のサブエージェントインスタンスに同時に分散させます。例えば10社の調査、7言語への翻訳、5つの実験の実行などです。結果はオーケストレーターに集約され、統合されます。
本番運用グレード
スペシャリストネットワーク
ルーターエージェントが入ってくるタスクを分類し、ドメイン特化型のエージェントに振り分けます。財務専門、コード専門、法務専門など、それぞれ別のエージェントです。各スペシャリストは独自のツールとシステムプロンプトを持ちます。単一のエージェントがすべてを担おうとはしません。
安全性を最優先
ヒューマン・イン・ザ・ループ
エージェントは定義されたチェックポイントで一時停止し、続行する前に人間に判断や承認を求めます。メール送信、コードのコミット、決済の実行など、リスクが高い、または取り消せないアクションには不可欠です。
非同期/自動化
イベント駆動パイプライン
ユーザーからの直接の入力ではなく、外部イベント(S3への新しいファイルの追加、Stripeからのwebhook、Slackメッセージなど)によって起動されるエージェント。エージェントは実行され、タスクを完了し、終了します。自動化やバックグラウンド処理に最適です。

メモリシステム

エージェントはどのように物事を記憶するか

インコンテキストメモリ

一時的で、セッション終了時に消去される

単一セッション内の会話履歴です。Claudeはこれまでに話されたすべての内容を参照できます。コンテキストウィンドウによって制限されますが(現行のClaudeモデルでは100万トークン)、外部ストレージは不要です。

外部メモリ(ベクトルストア)

検索の精度が有効性を左右する

関連するドキュメントや過去のやり取りをセマンティック検索で取得し、コンテキストウィンドウに注入します。セッションをまたいで、またコンテキストの限界を超えて拡張できるメモリを実現します。

構造化された状態(データベース)

明示的な状態スキーマの設計が必要

エージェントの状態はステップ間でデータベースに書き込まれます。エージェントは各ターンの開始時に自身の状態を読み取ります。中断や再起動を乗り越えられる複雑な複数ステップのワークフローを実現します。

エピソード要約

情報が失われ、細かな詳細が欠落する可能性がある

各セッションの終わりに、要約処理が会話をコンパクトなメモリエントリに圧縮します。将来のセッションでは、完全な履歴ではなく要約が読み込まれます。

コードパターン

Pythonによるエージェントループの実装

agent_loop.py
def run_agent(task: str, tools: list, max_turns: int = 10):
    messages = [{"role": "user", "content": task}]

    for turn in range(max_turns):
        response = client.messages.create(
            model="claude-opus-4-5",
            tools=tools,
            messages=messages,
        )

        # Task complete, no tool calls
        if response.stop_reason == "end_turn":
            return response.content[0].text

        # Execute tool calls and collect results
        tool_results = []
        for block in response.content:
            if block.type == "tool_use":
                result = execute_tool(block.name, block.input)
                tool_results.append({
                    "type": "tool_result",
                    "tool_use_id": block.id,
                    "content": json.dumps(result),
                })

        # Add assistant turn + tool results to history
        messages.append({"role": "assistant", "content": response.content})
        messages.append({"role": "user", "content": tool_results})

    raise RuntimeError(f"Agent did not complete in {max_turns} turns")

エージェントの安全性:最初に正しく押さえるべきこと

✓

すべてのエージェントループにmax_turnsの上限を設定し、無制限の反復を決して許可しない

✓

取り消せないアクション(メール送信、レコード削除、決済の実行)には人間の確認を必須にする

✓

すべてのツール呼び出しを入力と出力とともにログに記録する。完全なアクション履歴がなければエージェントのデバッグは困難

✓

最小限の権限モデルを使い、現在のタスクに必要なツールだけをエージェントに与える

✓

ツールからは例外ではなく構造化されたエラーを返し、エージェントがそれを読んで対応できるようにする

✓

本番システムに接続する前に、本番ツールのリスクが低いバリアントでテストする

よくある質問

Claude AIエージェントを構築する最良の方法は何ですか?

Claudeエージェントを構築する最良の方法は、Claude APIのツール利用機能とエージェントループパターンを組み合わせることです。ツールを定義し、Claudeに計画・実行させ、安全性のために人間による監視のチェックポイントを追加します。

Claudeエージェントは自律的ですか?

Claudeエージェントは定義された範囲内で自律的に動作できます。ツール、権限、監視ルールを設定するのはあなたです。エージェントはその制約の中で、タスクを独立して計画・実行・検証します。

Claudeエージェントとチャットボットの違いは何ですか?

チャットボットは個々のメッセージに応答します。エージェントは複数ステップのタスクを計画し、外部ツールを使い、判断を下し、自律的にアクションを実行します。エージェントは、各ステップでの人間の介入なしに調査・分析し、レポートを作成することもあります。

Claudeエージェントはどのようなツールを使用できますか?

Claudeエージェントは、APIのツール利用機能を通じて定義した任意のツールを使用できます。ファイルシステム操作、Webリクエスト、データベースへの問い合わせ、コード実行、独自のビジネスロジックなどです。Claude Codeでは、エージェントはbashコマンド、ファイル編集、外部連携のためのMCPサーバーにもアクセスできます。

Claudeエージェントに安全対策を追加するにはどうすればよいですか?

破壊的なアクションにはヒューマン・イン・ザ・ループのチェックポイントを実装し、ツール定義の中で明示的な権限の境界を定め、Claude Codeのフックで機密性の高い操作をゲートし、エージェントの実行ごとにトークン予算の上限を設定します。本番運用のエージェントには、必ずキルスイッチと監査ログを用意すべきです。

最初のClaudeエージェントを構築する

Track 4では、ツール利用、エージェントループ、複数ステップのワークフローを最初から最後まで扱います。

Nightschool AIは独立した学習プラットフォームであり、Anthropicとは提携・承認・後援関係にありません。ClaudeはAnthropic, PBCの商標です。 Anthropic公式のClaude Academyをお探しですか?academy.claude.comをご覧ください。