モデル / データセット
openai/openai-agents-python avatar
openai/openai-agents-python

OpenAI Agents SDKは、エージェントの委譲と実行状態をPythonに組み込む

プロジェクト概要:マルチエージェント ワークフローのための軽量で強力なフレームワーク。 Windows では、代わりに openai-agents[docker] エクストラまたはホストされたサンドボックス クライアントとともに DockerSandboxClient を使用します。セットアップの詳細については、「サンドボックス クライアント」を参照してください。

スター 29,459フォーク 4,739PythonMIT

ひと目でわかる

これは何?
openai-agents-pythonのAgent、SandboxAgent、RealtimeAgent、VoicePipeline、ツール、ガードレール、セッション、TracingをREADMEの範囲で確認する。
誰に向いている?
OpenAI Agents SDKは、単一のチャット呼び出しから複数エージェントの委譲、ファイル操作を伴うサンドボックス、音声処理までをPythonの実行フローとして組み立てたい開発者に向きます。導入前には、モデル提供元の選択、サンドボックスの権限、WindowsでのDocker要件、ガードレールと人間承認をどこで強制するかを小さな検証で確かめてください。
商用利用できる?
できます。MIT は寛容なライセンスで、著作権表示とライセンス表示を残せば、使用・改変・販売が可能です。
今もメンテナンスされている?
されています。最後のコミットは 1 日前です。
何の言語で書かれている?
主に Python です(GitHub の言語統計による)。

回答はプロジェクトの GitHub データ(最終同期:2026年9月15日)と当サイトの分析に基づくもので、法的助言ではありません。

オープンソース詳細解説

軽量なSDKという位置づけの中身

openai/openai-agents-pythonのREADMEは、OpenAI Agents SDKをマルチエージェントワークフロー向けの軽量なPythonフレームワークと説明しています。OpenAI Responses APIとChat Completions APIに加え、100以上の他のLLMにも対応するプロバイダー非依存の設計が記載されています。JavaScriptとTypeScript版は別リポジトリへ案内されています。

中心となるAgentは、指示、ツール、ガードレール、ハンドオフを設定したLLMです。ほかに、コンテナで長時間の作業を行うSandboxAgent、WebSocketを使うRealtimeAgent、音声入出力をつなぐVoicePipelineがあります。機能名が多く見えても、すべてを一度に使う必要はありません。最初にテキストAgentだけで入力、ツール、最終出力の境界を確認し、必要な実行形態を後から足す方が追跡しやすくなります。

AgentsとHandoffsで役割を分ける

READMEのコア概念には、Agents as toolsとHandoffsが含まれます。前者は別のエージェントを特定タスクのツールとして呼び出す形、後者は処理の担当を別エージェントへ渡す形です。Toolsには通常の関数、MCP、ホスト型ツールが含まれ、エージェントが外部操作を実行する入口になります。

役割を分けると、調査、実行、確認の責務をコード上で区別できます。ただし、READMEの概念説明だけでは、ハンドオフ時にどの履歴や権限が渡るか、ツールの失敗を誰が処理するか、無限に委譲する場合をどう止めるかは分かりません。エージェントごとの利用可能なツール、最大実行時間、失敗時の終了条件を自分のワークフローに合わせて定義してください。

SandboxAgentは長い作業とファイル操作を担当する

SandboxAgentは、ファイルの調査、コマンド実行、パッチ適用、長いタスクの間のワークスペース保持が必要な場合に使うとREADMEは説明しています。サンプルではManifestにGitRepoを登録し、SandboxAgentを起動してリポジトリのREADMEを調べる指示を渡します。作業場所と対象リポジトリを実行設定の一部として扱える点が、通常のテキストAgentとの差です。

サンドボックスは権限を消す仕組みではありません。macOSとLinuxではUnixLocalSandboxClient、Windowsではopenai-agents[docker] extraを使うDockerSandboxClientまたはホスト型クライアントを選ぶようREADMEにあります。ネットワーク、ファイル、Git認証情報の範囲はクライアントごとに違うため、実行前にManifest、マウント、環境変数、外部接続を確認してください。

まずPython 3.10とAPIキーの境界を整える

導入にはPython 3.10以上が必要です。READMEの基本手順はpython -m venv .venv、環境の有効化、pip install openai-agentsです。uvを使う場合はuv initとuv add openai-agentsが示されています。音声機能はvoice extra、Redisによるセッションはredis extraを追加します。

エージェントを実行する前にOPENAI_API_KEY環境変数を設定します。テキストAgentの例は、Agentを作り、Runner.run_syncで短い入力を渡し、final_outputを読むだけの構成です。最初の検証では、APIキーの読み込み元、ログに残る入力、使用するモデル、例外時の出力を固定してください。READMEは各環境の秘密情報管理や組織単位の設定を細かく説明していません。

RealtimeとVoicePipelineは別の実行経路

RealtimeAgentは、サーバー側の音声とマルチモーダル体験をWebSocketで扱う低遅延の経路として説明されています。READMEの例ではgpt-realtime-2.1を使い、RealtimeRunnerでセッションを開始し、メッセージを送ってイベントを受け取ります。音声イベントが来たら、アプリ側でデータを転送または再生します。

VoicePipelineは、音声をテキストへ変換し、エージェントワークフローを通し、生成音声をストリームする経路です。AudioInputとSingleAgentVoiceWorkflowを組み合わせた例が示されています。音声認識、エージェント処理、音声合成を一つの呼び出しとみなさず、各段階の入力と出力、遅延、再試行、保存の有無を分けて監視することが必要です。

ガードレール、承認、セッション、Tracing

Guardrailsは入力と出力の検証を行う設定可能な安全チェック、Human in the loopは実行途中で人間を関与させる仕組みです。Sessionsは実行間の会話履歴を自動管理し、Tracingはエージェント実行を追跡して、ワークフローを表示、デバッグ、改善するための機能として並んでいます。

この四つは目的が違います。ガードレールは判定、承認は人間の意思決定、セッションは状態、Tracingは観測です。Tracingがあるから承認が済むわけではなく、セッションがあるから履歴を無期限に保存してよいわけでもありません。業務フローでは、拒否条件、承認者、履歴の保存期間、トレースのマスキングを個別に決める必要があります。

MITライセンスとSDK選定の確認点

READMEはexamplesディレクトリと公式ドキュメントを導入後の参照先として示しています。ライセンスはMITで、著作権表示とライセンス通知を残す条件で利用、変更、配布ができます。これはSDKのコードに関する条件であり、使用するモデル、ホスト型ツール、音声サービス、外部APIの規約を一つにまとめるものではありません。

メタデータではリポジトリはアーカイブされておらず、29,041スター、4,620フォーク、34件のオープンIssue、最新リリースv0.22.0が示されています。READMEは多くの概念と例を示しますが、全APIシグネチャ、性能基準、サポート保証を網羅する資料ではありません。導入判断は、実行形態ごとの権限とログを小さなサンプルで確認してから行うべきです。

編集部の結論

OpenAI Agents SDKは、単一のチャット呼び出しから複数エージェントの委譲、ファイル操作を伴うサンドボックス、音声処理までをPythonの実行フローとして組み立てたい開発者に向きます。導入前には、モデル提供元の選択、サンドボックスの権限、WindowsでのDocker要件、ガードレールと人間承認をどこで強制するかを小さな検証で確かめてください。

公式情報源

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
コミュニティノート

コミュニティノート