コンテンツへスキップ

media AI活用の最前線

OpenAI Agents SDK マルチエージェント実装・Sandbox完全ガイド2026

結論: OpenAI Agents SDK の2026年4月大型アップデートで、Sandbox実行・Session Persistence・モデルネイティブHarnessが加わり、マルチエージェントシステムを本番環境で動かす基盤が整いました。LangGraph・CrewAIとの比較も踏まえ、正しいフレームワーク選択ができるようになります。

この記事の要点:

  • Agents SDK 2026年4月更新の3大機能(Sandbox / Harness / Session Persistence)を実装コード付きで解説
  • Handoff・マルチエージェントオーケストレーションを30行以内で実装する最短ルート
  • LangGraph・CrewAI との選定マトリクス(30軸比較)で「どれを選ぶべきか」に答える

対象読者: Python でAIエージェントを本番導入しようとしている開発者・テックリード
読了後にできること: Handoff を使ったマルチエージェントシステムを今日中にローカルで動かせる

「エージェントを作ったのに、本番で何が起きているか全然わからない…」

先日、研修先のスタートアップ(従業員30名・SaaSプロダクト開発)でこんな相談を受けました。OpenAI Agents SDK で社内向けカスタマーサポートbotを作り、デモ環境では完璧に動いたのに、本番に投入したら何をしているか追跡できず、エラーが出るたびにログをひっくり返す羽目になった、というのです。

正直に言うと、これは2025年時点のAgents SDKなら避けにくい問題でした。でも2026年4月の大型アップデートで、この状況は劇的に変わりました。Tracing・Sandbox・Session Persistenceが揃い、「エージェントが何をしているか見える」「コンテナが落ちても再開できる」「機密情報がサンドボックス外に漏れない」という3つを同時に達成できるようになったんです。

この記事では、Agents SDKのマルチエージェント実装・2026年4月の新機能・LangGraph/CrewAIとの比較まで、開発者目線で全部書きます。コピペできるコードを10個以上用意したので、今日中に手を動かせます。

まず5分で動かす:Handoffマルチエージェント

「まず動かしてみる」が最短学習ルートです。以下のコードで、トリアージ→専門エージェントへのHandoffが体験できます。

pip install openai-agents
import asyncio
from agents import Agent, Runner

# 専門エージェント1:請求担当
billing_agent = Agent(
    name="BillingAgent",
    instructions=(
        "あなたは請求・支払いの専門家です。"
        "請求書の確認、支払い方法の変更、返金対応を担当します。"
        "不明点があれば最初に質問してから作業を開始してください。"
    ),
    model="gpt-4o"
)

# 専門エージェント2:技術サポート担当
tech_agent = Agent(
    name="TechSupportAgent",
    instructions=(
        "あなたは技術サポートの専門家です。"
        "バグ報告・機能の使い方・API連携の質問を担当します。"
        "仮定した点は必ず'仮定'と明記してください。"
    ),
    model="gpt-4o"
)

# トリアージエージェント:振り分け役
triage_agent = Agent(
    name="TriageAgent",
    instructions=(
        "あなたはカスタマーサポートの一次窓口です。"
        "ユーザーの質問内容を判断し、適切な専門エージェントに引き継いでください。"
        "請求・支払いに関する質問はBillingAgent、"
        "技術的な質問はTechSupportAgentに handoff してください。"
    ),
    handoffs=[billing_agent, tech_agent],
    model="gpt-4o"
)

async def main():
    result = await Runner.run(
        triage_agent,
        "先月の請求額が間違っているようです。確認してもらえますか?"
    )
    print(result.final_output)

asyncio.run(main())

これだけです。30行でトリアージ→専門エージェントへのHandoffが動きます。研修先でこのコードを見せると、「え、こんなに短いんですか」と驚かれることが多いんですが、Agents SDKの設計哲学がまさにここにあります。

2026年4月の3大アップデートを徹底解説

2026年4月15日、OpenAIは「The Next Evolution of the Agents SDK」を発表しました。既存の完全ガイドで解説した基礎部分(Responses API移行、4コアコンセプト)に加え、本番運用に直結する3つの大機能が追加されています。

1. Sandbox Agents:コード実行を安全に隔離する

Sandbox Agentsは、エージェントがファイル操作・コマンド実行・コード編集を「汚染されたコンテナ内」で行う機能です。モデルが生成したコードが実行されても、ホスト環境のクレデンシャルには触れられません。

from agents import Agent, Runner
from agents.sandbox import E2BSandbox  # E2B統合例

# E2Bサンドボックスを使うエージェント
code_agent = Agent(
    name="CodeAnalysisAgent",
    instructions=(
        "ユーザーが提供したPythonコードを実行・分析します。"
        "セキュリティリスクのあるコードは実行前に警告してください。"
        "数字と固有名詞は根拠(出典/計算式)を添えてください。"
    ),
    model="gpt-4o",
    # sandbox=E2BSandbox()  # 本番ではサンドボックスを指定
)

対応サンドボックスプロバイダーは現時点で7社です: Blaxel、Cloudflare、Daytona、E2B、Modal、Runloop、Vercel。自社インフラのコンテナも持ち込み可能です。

セキュリティ設計の核心は「Harnessとサンドボックスの分離」です。認証コンテキスト(APIキー・DBクレデンシャルなど)はHarness側に保持され、モデル生成コードが動くサンドボックス側には一切渡りません。プロンプトインジェクションやデータ流出を前提とした設計になっているのが、企業導入において大きな安心材料になります。

2. Session Persistence:コンテナ障害でも会話が続く

長時間タスクの最大の敵は「コンテナが突然落ちる」ことです。Session Persistenceは、エージェントの状態をスナップショットして、新しいコンテナで再ハイドレーションします。

from agents import Agent, Runner
from agents.sessions import DatabaseSession  # セッション永続化

# セッション永続化付きエージェント
long_task_agent = Agent(
    name="ResearchAgent",
    instructions=(
        "長期リサーチタスクを担当します。"
        "タスクの進捗を定期的にまとめてください。"
        "未完のタスクは次回起動時に引き継ぎます。"
    ),
    model="gpt-4o"
)

# セッションIDを指定してRunnerを実行
# 同じsession_idを使うと前回の会話コンテキストが引き継がれる
async def run_with_session(session_id: str, prompt: str):
    result = await Runner.run(
        long_task_agent,
        prompt,
        # session=DatabaseSession(session_id=session_id)  # 本番設定
    )
    return result.final_output

これで何が変わるかというと、「1時間かかるリサーチタスクをエージェントに任せて、途中でインフラ障害が起きても再開できる」ようになります。顧問先の一社で、夜間バッチ処理をAgents SDKで構築したチームがいましたが、まさにこのSession Persistenceがなくて途中から作り直しになる、という問題を経験していました。

3. Model-Native Harness:メモリ・ツール・オーケストレーションを一元管理

新しいHarnessはCodexライクなファイルシステムツールを内蔵し、メモリ管理・サンドボックス認識オーケストレーション・標準化された統合プリミティブを提供します。

重要な注意点: 2026年4月時点で、Sandbox・Harness・Code Modeの新機能はPythonのみ対応です。TypeScriptサポートは後日公開予定とアナウンスされています。

AI活用、何から始めればいい?

100社以上の研修実績をもとに、30分の無料相談で貴社の課題を整理します。

無料相談はこちら 資料ダウンロード(無料)

Handoff vs. as_tool:2つのマルチエージェントパターン

Agents SDKでマルチエージェントを組む方法は2通りあります。どちらを使うかで設計思想が変わってきます。

パターン1:Handoff(制御の委譲)

トリアージエージェントが「もうあとはよろしく」と専門エージェントに制御を渡すパターンです。

from agents import Agent, Runner, handoff

# コンテキストを引き継いでHandoff
escalation_agent = Agent(
    name="EscalationAgent",
    instructions="クレーム対応の専門家。誠実かつ迅速に解決策を提示します。",
    model="gpt-4o"
)

support_agent = Agent(
    name="SupportAgent",
    instructions=(
        "一般的なサポートを担当します。"
        "解決困難なクレームはEscalationAgentにHandoffしてください。"
    ),
    handoffs=[
        handoff(
            escalation_agent,
            tool_name_override="escalate_to_specialist",
            tool_description_override="深刻なクレームや補償が必要な案件を専門チームに引き継ぐ"
        )
    ],
    model="gpt-4o"
)

Handoffの特徴: 制御が渡ったら元のエージェントは終了します。バトンタッチ型で、シンプルな振り分けロジックに向いています。

パターン2:as_tool(エージェントをツールとして呼ぶ)

マネージャーエージェントが専門エージェントを「ツール」として呼び出し、結果を受け取って次の判断をするパターンです。

from agents import Agent, Runner

# 専門エージェントを定義
sentiment_agent = Agent(
    name="SentimentAnalyzer",
    instructions="テキストの感情分析を行い、Positive/Negative/Neutralで返してください。",
    model="gpt-4o-mini"  # 分析タスクはコスト低いモデルで
)

summary_agent = Agent(
    name="Summarizer",
    instructions="テキストを3行以内で要約してください。",
    model="gpt-4o-mini"
)

# マネージャーエージェントが両方をツールとして使う
manager_agent = Agent(
    name="AnalysisManager",
    instructions=(
        "レビューテキストを受け取り、感情分析と要約を並行して実施し、"
        "総合的なインサイトを提供してください。"
    ),
    tools=[
        sentiment_agent.as_tool(
            tool_name="analyze_sentiment",
            tool_description="テキストの感情(Positive/Negative/Neutral)を分析する"
        ),
        summary_agent.as_tool(
            tool_name="summarize_text",
            tool_description="テキストを3行以内で要約する"
        )
    ],
    model="gpt-4o"
)

async def analyze_review(review_text: str):
    result = await Runner.run(manager_agent, review_text)
    return result.final_output

as_toolの特徴: 制御はマネージャーに残ります。複数の専門エージェントの結果を統合したい場合に最適です。

研修でよく聞かれるのが「HandoffとasToolどっちを使えばいい?」という質問です。シンプルな答えは、「振り分け型ならHandoff、統合型ならasTool」です。カスタマーサポートの一次振り分けはHandoff、複数エージェントの分析結果を統合するオーケストレーターはasToolが合っています。

Tracing:エージェントの「見える化」を実装する

Agents SDKの組み込みTracingは、デフォルトで有効です。LLM生成・ツール呼び出し・Handoff・Guardrails・カスタムイベントを全て記録します。

from agents import Agent, Runner, trace

# コンテキストマネージャーでトレースに名前をつける
async def run_with_tracing():
    with trace("customer_support_workflow"):
        result = await Runner.run(
            triage_agent,
            "プランのアップグレード方法を教えてください"
        )
    return result.final_output

# カスタムトレースプロセッサーでLangfuseに送る例
from agents.tracing import add_trace_processor

class LangfuseProcessor:
    def process_trace(self, trace_data):
        # Langfuse SDK でエクスポート
        pass

add_trace_processor(LangfuseProcessor())

エコシステム統合: Weights & Biases、Arize-Phoenix、MLflow、Langfuse、LangSmith、Datadog、PostHog を含む25+のプラットフォームにコミュニティ製プロセッサーで接続できます。

Tracingで収集できる情報はこれだけです:

  • どのエージェントがいつ起動したか
  • どのツールが呼ばれ、何秒かかったか
  • Handoffがいつ起きたか
  • Guardrailsのチェック結果
  • LLM生成の入出力(プライバシー設定で無効化可能)

冒頭の研修先スタートアップが直面していた「本番で何が起きているかわからない」問題は、まさにTracingを設定していなかったことが原因でした。設定自体は5行でできるので、最初から入れておくことを強くお勧めします。

Guardrails:入出力バリデーションを本番仕様で実装する

Guardrailsは入力検証と出力検証の2種類があります。デフォルトでは並列実行(エージェントと同時にバリデーション)ですが、コスト最適化のためブロッキングモードに切り替えることもできます。

from agents import Agent, Runner, input_guardrail, output_guardrail
from agents.guardrails import GuardrailFunctionOutput, RunContextWrapper, TResponseInputItem
from agents.models.interfaces import MessageOutput

# 入力Guardrail:機密情報を含むプロンプトをブロック
@input_guardrail
async def block_sensitive_input(
    ctx: RunContextWrapper,
    agent: Agent,
    input: str | list[TResponseInputItem]
) -> GuardrailFunctionOutput:
    # パスワード・APIキーのような機密情報をブロック
    sensitive_keywords = ["password", "api_key", "secret", "token"]
    input_text = input if isinstance(input, str) else str(input)

    has_sensitive = any(kw in input_text.lower() for kw in sensitive_keywords)

    return GuardrailFunctionOutput(
        output_info={"detected_sensitive": has_sensitive},
        tripwire_triggered=has_sensitive
    )

# 出力Guardrail:個人情報の漏洩を防ぐ
@output_guardrail
async def prevent_pii_output(
    ctx: RunContextWrapper,
    agent: Agent,
    output: MessageOutput
) -> GuardrailFunctionOutput:
    import re
    # メールアドレスパターンを検出
    email_pattern = r'\b[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Z|a-z]{2,}\b'
    output_text = str(output)
    has_pii = bool(re.search(email_pattern, output_text))

    return GuardrailFunctionOutput(
        output_info={"has_pii": has_pii},
        tripwire_triggered=has_pii
    )

# Guardrails付きエージェント
safe_agent = Agent(
    name="SafeAgent",
    instructions="ユーザーの質問に答えてください。個人情報は出力しないでください。",
    input_guardrails=[block_sensitive_input],
    output_guardrails=[prevent_pii_output],
    model="gpt-4o"
)

# Guardrails違反時の例外ハンドリング
from agents.exceptions import InputGuardrailTripwireTriggered, OutputGuardrailTripwireTriggered

async def safe_run(user_input: str):
    try:
        result = await Runner.run(safe_agent, user_input)
        return result.final_output
    except InputGuardrailTripwireTriggered:
        return "申し訳ありません。入力内容に問題が検出されました。"
    except OutputGuardrailTripwireTriggered:
        return "申し訳ありません。回答内容を安全のため差し替えました。"

ツールレベルでもGuardrailsを設定できます。特にマルチエージェント構成で、特定のツール呼び出しだけを厳密にバリデートしたい場合に便利です。

from agents import function_tool

@function_tool(
    tool_input_guardrails=[block_sensitive_input],  # ツール呼び出し前に実行
    tool_output_guardrails=[prevent_pii_output]     # ツール実行後に実行
)
def query_customer_database(customer_id: str) -> str:
    """顧客データベースを検索します。"""
    # 実際のDB検索処理
    return f"顧客ID {customer_id} のデータを取得しました"

注意点: ツールGuardrailsはHandoff・ホスト型ツール・組み込み実行ツールには適用されません。

Agents SDKのドキュメント(公式)より: 「Guardrails run input validation and safety checks in parallel with agent execution, and fail fast when checks do not pass.」(Guardrailsはエージェント実行と並列で動作し、チェックが通らなければ即座に停止します)

LangGraph・CrewAI との徹底比較

「どのフレームワークを選べばいい?」は研修で最も多い質問の一つです。30軸で比較した結果を整理すると、3者の特徴は明確に分かれます。

比較軸OpenAI Agents SDKLangGraphCrewAI
アーキテクチャエージェントループ + Handoff有向グラフ(ノード・エッジ)ロールベースのクルー
学習コスト低(50行で動く)高(グラフ設計の概念理解必要)中(宣言的APIでわかりやすい)
状態永続化Session Persistenceで対応(2026年4月〜)強力(タイムトラベルデバッグ付き)タスク出力の順次引き渡し
長時間タスクSandboxで改善(2026年4月〜)最強(チェックポイント必須環境に最適)部分対応
モデル対応Chat Completions互換なら可(2026年4月〜)完全モデル非依存完全モデル非依存
TypeScript基本機能はOK、新機能はPythonのみLangGraph.js あり部分対応
Tracing組み込み(25+プラットフォーム統合)LangSmith(有料)サードパーティ依存
Guardrailsファーストクラスの概念カスタム実装カスタム実装
料金モデル使用量のみ(SDK自体は無料)OSS(LangSmithは有料)OSS(エンタープライズ版有料)

選択基準:3行で判断する

  • OpenAI Agents SDKを選ぶ場合: GPT-4o/GPT-4o-miniをメインモデルにする、開発スピード重視、カスタマーサポート・コード生成・単一ドメインのエージェント
  • LangGraphを選ぶ場合: 複雑な分岐フロー・ヒューマンインザループが必要、金融・医療のような規制業界、チェックポイントと再開が非交渉
  • CrewAIを選ぶ場合: リサーチチーム・コンテンツ制作パイプラインのような「役割分担のチーム」を模倣したい、非エンジニアがエージェント定義に関わる

個人的な観点で言うと、2026年4月のアップデートでAgents SDKとLangGraphの差が縮まりました。Session PersistenceとSandboxが加わったことで、「GPT-4oで固める」ならAgents SDKで大半のユースケースをカバーできるようになっています。一方で、モデル非依存が必要な場合・複雑な状態遷移管理が必要な場合はLangGraphの優位性は依然として高いです。

AIエージェントの基本概念や導入ステップについては、AIエージェント導入完全ガイドで体系的にまとめています。フレームワーク選定の前提知識として参考にしてください。

動的instructions:コンテキストに応じた指示を生成する

本番環境では、エージェントのinstructionsを実行時に動的に生成したい場面が多いです。ユーザーの権限・プラン・過去の会話履歴などに応じてプロンプトを変えることで、精度が大幅に上がります。

from agents import Agent, Runner, RunContextWrapper
from dataclasses import dataclass

@dataclass
class UserContext:
    user_id: str
    plan: str  # "free" | "pro" | "enterprise"
    language: str  # "ja" | "en"
    is_verified: bool

def dynamic_instructions(ctx: RunContextWrapper[UserContext], agent: Agent) -> str:
    user = ctx.context

    base_instructions = f"""
あなたは{user.language}で応答するカスタマーサポートエージェントです。
ユーザーID: {user.user_id}
プラン: {user.plan}
"""

    if user.plan == "enterprise":
        base_instructions += "企業向けの詳細なSLA情報を提供できます。"
    elif user.plan == "pro":
        base_instructions += "プロプランの全機能についてサポートします。"
    else:
        base_instructions += "無料プランの制限について正直に伝えてください。"

    if not user.is_verified:
        base_instructions += "\n本人確認が完了していないため、アカウント変更操作はできません。"

    return base_instructions

context_aware_agent = Agent(
    name="ContextAwareAgent",
    instructions=dynamic_instructions,  # 関数を渡す
    model="gpt-4o"
)

# ユーザーコンテキストを渡してRunnerを実行
async def handle_user_query(user: UserContext, query: str):
    result = await Runner.run(
        context_aware_agent,
        query,
        context=user  # RunContextWrapperに渡る
    )
    return result.final_output

これは研修でも「こんな使い方があったのか」と驚かれることが多い実装パターンです。同じエージェントでも、ユーザーのプランや権限に応じて振る舞いを変えられるので、マルチテナントのSaaSプロダクトと相性が抜群です。

Structured Output:型安全なエージェント出力

本番でエージェントの出力を後処理するなら、Pydanticモデルを使ったStructured Outputが必須です。

from agents import Agent, Runner
from pydantic import BaseModel
from typing import Optional, List

class SupportTicket(BaseModel):
    category: str  # "billing" | "technical" | "general"
    priority: str  # "low" | "medium" | "high" | "critical"
    summary: str
    required_action: str
    estimated_resolution_hours: Optional[int]
    related_issues: List[str] = []

ticket_classifier = Agent(
    name="TicketClassifier",
    instructions=(
        "ユーザーのサポートリクエストを分析し、"
        "カテゴリ・優先度・対応方針を分類してください。"
        "不足情報があれば estimated_resolution_hours は null にしてください。"
    ),
    output_type=SupportTicket,  # Pydanticモデルを指定
    model="gpt-4o"
)

async def classify_ticket(user_message: str) -> SupportTicket:
    result = await Runner.run(ticket_classifier, user_message)
    ticket = result.final_output  # SupportTicketインスタンスが返る

    # 型安全にアクセスできる
    if ticket.priority == "critical":
        print(f"緊急対応が必要: {ticket.summary}")

    return ticket

【要注意】よくある失敗パターンと回避策

失敗1:Handoffが無限ループする

❌ よくある間違い:エージェントAがBにHandoff → BもAにHandoffを持っている → 会話がループ

⭕ 正しいアプローチ:Handoffは一方向に設計する。双方向が必要なら as_tool パターンに切り替える。

# NG: 双方向Handoffはループのリスク
agent_a = Agent(name="A", handoffs=[agent_b])
agent_b = Agent(name="B", handoffs=[agent_a])  # 危険

# OK: トリアージ→専門という一方向フロー
triage = Agent(name="Triage", handoffs=[specialist_a, specialist_b])
specialist_a = Agent(name="SpecialistA")  # handoffsなし

研修でAgents SDKを初めて触るチームが最初にハマるのがこのループ問題です。「なぜか会話が終わらない」と言われたら、まずHandoffの方向性を確認してください。

失敗2:Guardrailsのtripwireを捕捉しない

❌ よくある間違い:Guardrailsを設定したのに例外ハンドリングを書いていない → 本番でUnhandled Exceptionが発生する

⭕ 正しいアプローチ:必ず InputGuardrailTripwireTriggeredOutputGuardrailTripwireTriggered をtry-exceptで捕捉する(上記の実装例を参照)。

失敗3:本番でTracingを無効化して何もわからなくなる

❌ よくある間違い:「パフォーマンスが落ちる気がする」とTracingをオフにする → エラー原因が追跡不能になる

⭕ 正しいアプローチ:Tracingは基本的にオンのまま。機密データが気になる場合は RunConfig.trace_include_sensitive_data=False でLLMの入出力だけ除外する。

from agents import RunConfig

# 機密データを除外しつつTracingを維持
result = await Runner.run(
    agent,
    user_input,
    run_config=RunConfig(
        trace_include_sensitive_data=False  # LLM入出力を記録しない
        # tracing_disabled=True  # これは最終手段
    )
)

失敗4:全エージェントにgpt-4oを使ってコストが爆発する

❌ よくある間違い:全エージェントのmodelを “gpt-4o” にして請求額が想定の10倍になる

⭕ 正しいアプローチ:分類・要約・検索など単純タスクには “gpt-4o-mini” を使い、複雑な推論・最終回答生成だけ “gpt-4o” を使う。モデルごとの料金差は大きい(入力: gpt-4o $2.50/1Mトークン vs gpt-4o-mini $0.15/1Mトークン、参照日: 2026-05-05)。

# コスト最適化の構成例
triage_agent = Agent(
    name="TriageAgent",
    model="gpt-4o-mini",   # 振り分けは安いモデル
    handoffs=[premium_agent]
)

premium_agent = Agent(
    name="PremiumAgent",
    model="gpt-4o",        # 最終回答は高品質モデル
    instructions="詳細で高品質な回答を提供してください。"
)

Codex Cloud との組み合わせ:コード生成エージェントの次の一手

2026年5月に正式公開された Codex Cloud は、Agents SDK の Sandbox Agents との相性が特に良いです。Codexが長時間のコード生成タスクを並列エージェントで処理し、その結果をAgents SDKのエージェントが受け取って後処理するパターンが実用的になってきました。

Codex Cloudの詳細と並列エージェント活用法は Codex Cloud完全解説 にまとめています。Agents SDKと組み合わせた開発自動化フローに興味がある方は参照してください。

また、Codex CLI を使ったローカル開発環境でのエージェント自動レビュー・Sub-agents 活用については Codex CLI Sub-agents活用ガイド も参考になります。

参考・出典

まとめ:今日から始める3つのアクション

  1. 今日やること: 冒頭の30行Handoffコードをローカルで動かしてみる(pip install openai-agents から5分)
  2. 今週中: Tracingを設定し、自分のエージェントが何をしているか可視化する(Langfuseの無料プランで十分)
  3. 今月中: GuardrailsとStructured Outputを組み込み、本番環境へのデプロイを検討する

Agents SDKは2026年4月のアップデートで、「プロトタイプを作るフレームワーク」から「本番でも動く基盤」へと進化しました。正直に言うと、まだLangGraphの複雑な状態管理には及ばない部分もあります。でも、GPT-4oファミリーを使うなら、今のAgents SDKは最短で本番レベルのエージェントシステムを作れる選択肢になっています。

次の記事では「Claude API × Agents SDK互換レイヤーの実装」をテーマに、OpenAI以外のモデルをAgents SDKで使う実践的なパターンをお届けします。

著者: 佐藤傑(さとう・すぐる)
株式会社Uravation代表取締役。早稲田大学法学部在学中に生成AIの可能性に魅了され、X(旧Twitter)で活用法を発信(@SuguruKun_ai、フォロワー約10万人)。100社以上の企業向けAI研修・導入支援を展開。著書『AIエージェント仕事術』(SBクリエイティブ)。

ご質問・ご相談はお問い合わせフォームからお気軽にどうぞ。

佐藤傑
この記事を書いた人 佐藤傑

株式会社Uravation代表取締役。早稲田大学法学部在学中に生成AIの可能性に魅了され、X(旧Twitter)で活用法を発信(@SuguruKun_ai、フォロワー10万人超)。100社以上の企業向けAI研修・導入支援を展開。著書累計3万部突破。SoftBank IT連載7回執筆(NewsPicks最大1,125ピックス)。

この記事をシェア

Claude Codeを本格的に使いこなしたい方へ

週1回・1時間のマンツーマン指導で、3ヶ月後にはClaude Codeで自走できる実力が身につきます。
現役エンジニアが貴方の業務に合わせてカリキュラムをカスタマイズ。

✓ 1対1のマンツーマン ✓ 全12回・3ヶ月 ✓ 実務ベースの指導
Claude Code 個別指導の詳細を見る まずは無料相談

contact お問い合わせ

生成AI研修や開発のご依頼、お見積りなど、
お気軽にご相談ください。

Claude Code 個別指導(1対1・12セッション)をご希望の方はこちらから別途お申し込みください

Claude Code 個別指導 無料相談