OpenAIのAgents APIがエージェントの行動をレビューできるように。ただしデフォルトはオフ、予算もデフォルトでは無制限

2026年11月1日
7 min read

2026年11月1日
7 min read
OpenAIがエージェントに合意済みのスコープ内にとどまるよう求めるModel Specを公開した2日後、同社のPython SDKは、その仕事の一部をプラットフォーム側に移す設定をリリースしました。2026年10月31日公開のバージョン3.42.0では、Agents APIでエージェントの行動の自動レビューを有効にできます。エージェントのコンテキストをどう圧縮するかも選べるようになり、実験的な時間の感覚も与えられます。どれもニュースにはなりませんでした。しかし、このAPI上でエージェントを動かしている創業者にとって最も役立つのは新機能そのものではなく、それぞれを省略したときに何が起きるかをリファレンスがはっきり書いている点です。
本記事は、openai-python 3.42.0のリリースと、それに同梱されたAPIリファレンスのうちAgents APIのセッション設定とエージェント設定の部分を全文読んだうえで書いており、引用はそのリファレンスからです。Agents APIはベータ版です。第3節以降の解釈は筆者によるものです。
リリースノートには10の新機能が並んでいます。そのうち3つが、エージェントのセッションの振る舞いを変えます。
reviewが加わり、値はnoneとauto_reviewの2つです。compactionが加わり、バックグラウンド圧縮とブロッキング圧縮を選べます。experimental.time_awarenessが加わり、モデルに「現在時刻の定期的なリマインダー」を与えます。同じリリースでは、組織単位の外部キー管理と、APIキーをリクエストごとに分離する変更も入りました。セキュリティチームには重要ですが、エージェントの振る舞いは変わりません。ここで関係する4つ目の設定は以前からあるspend_controlで、セッションごとの支出上限を米ドルのセント単位で指定します。
リファレンスは各レビューモードを1行で説明しています。noneは「自動の行動レビューなしで、既存の実行動作を維持する」。auto_reviewは「対象となる行動を自動でレビューし」、「手動承認へのフォールバックを拒否する」。
重要な点が3つあります。第一に、フィールドを省略するとnoneになります。第二に、セッションのレビューモードは後から変更できますが、その変更は「新しいルートターン」に対するデフォルトのレビューです。既存のターンとそのサブエージェントは元のモードを維持します。すでに実行中のターンも、それが起動したサブエージェントも、そのまま動き続けます。第三に、セッションオブジェクトはモードを返しますが、モードがnoneのときはそのフィールドを省略します。
リファレンスは、どの行動が「対象」なのか、レビュー担当が何に照らして確認するのか、どのモデルがレビューするのか、レビューに費用がかかるのかを書いていません。現時点で、セッションがアプリケーションに返せる承認リクエストは、ブラウザに新しいオリジンを開かせる、あるいはログインさせるといったコンピューター操作のリクエストだけです。筆者は「手動承認へのフォールバックを拒否する」を、auto_reviewを有効にすると、本来ならアプリケーションの承認を待つはずだった行動が拒否される、という意味だと読んでいます。無人で動くエージェントにとっては妥当な設定です。同時に、ユーザーが気づく振る舞いの変化でもあるので、頼る前にテストしてください。
新しい設定は、エージェントの行動を誰がレビューするかを決めます。省略しても決まります。自社のコード以外、誰もレビューしないということに。
長時間のエージェント実行は、いずれコンテキストウィンドウを超え、ハーネスは古いコンテキストを要約して処理を続けます。9月には、モデルがその要約に指示を書き込んでいた件を取り上げました。今回から、その要約をいつ行うかを選べるようになりました。
デフォルトはバックグラウンド圧縮で、リファレンスは一つだけ注意書きを添えています。バックグラウンド圧縮は「トークン使用量を増やす可能性がある」。asyncをfalseにすると、圧縮はブロッキングになります。追加トークンの量は示されていません。顧客にタスク単位で課金している場合や利益率が薄い場合は、デフォルトを受け入れる前に自社のワークロードで測定してください。
時間認識はデフォルトでオフで、実験的機能とされています。これらの機能は「変更される可能性がある」とのことです。それでも、これは実際の問題に対応しています。何時間も動き続けているエージェントや翌日に再開されたエージェントは、誰かが教えない限り、どれだけ時間が経ったかを知りません。エージェントが期限や営業時間、スコープ内のlatest_timeを扱うなら、このフラグは試す価値があります。実験的な扱いが外れるまでは、自社のコードでも期限をチェックし続けてください。
4つの設定すべてで手順は同じです。セッション作成時に各値を明示的に指定し、セッションオブジェクトから実際に有効な値を読み戻して、実行記録と一緒にログに残します。以下のフィールド名はすべて3.42.0のリファレンスからのもので、モデル名と指示は仮のものです。
from openai import OpenAI
client = OpenAI()
session = client.beta.agents.sessions.create(
environment={"type": "none"},
agent={
"model": "YOUR_MODEL",
"instructions": "Chase overdue invoices. Never change payment details.",
"compaction": {"async_": False},
"experimental": {"time_awareness": True},
},
review="auto_review",
spend_control={"limit": 500}, # USD cents
metadata={"workflow": "invoice-chasing"},
input="Chase this week's overdue invoices.",
)
effective = {
"review": session.review or "none",
"spend_limit_cents": session.spend_control.limit if session.spend_control else None,
"compaction_async": session.agent.compaction.async_ if session.agent.compaction else None,
"time_awareness": session.agent.experimental.time_awareness if session.agent.experimental else None,
}
assert effective["review"] == "auto_review"
assert effective["spend_limit_cents"] == 500
省略したフィールドに頼らない。 リファレンスは明確です。reviewを省略すればnone、spend_controlを省略すればセッションは無制限になります。望む値がデフォルトと同じでも、両方をコードに書いてください。
セッションが返した値をログに残す。 重要なのは、送ったつもりの値ではなく、APIが有効だと返す値です。実行記録と一緒に保存しておけば、インシデントの振り返りを事実から始められます。
拒否を誰が扱うかを決める。 auto_reviewでは、一部の行動はあなたに回されず拒否されます。プロダクトには、ユーザーへの明確なメッセージと、人の承認を得てそのステップをやり直す手段が必要です。
設定はターンの合間に変える。 新しいレビューモードが適用されるのは新しいルートターンだけです。実行中のエージェントを締め直すには、ターンを止め、セッションを更新し、やり直してください。
筆者が最初に設定するなら支出上限です。Model Specの予算の例は、OpenAIが予算を上限として扱っていることを示しています。Agents APIにはそれを強制するフィールドがあり、省略すればセッションは無制限です。
関連する過去の記事
金曜日には、Model Specの「自律性のスコープ」を取り上げました。許可されたツール、期限、予算を、ハーネスで強制するという話です。9月には、Agents APIが代わりに実行してくれることと、してくれないことを、利用可能な地域も含めて解説しました。今回のリリースの設定は、そのスコープに対応する初めてのプラットフォーム側の制御です。
auto_reviewがエージェントを安全にする。 レビュー担当が何を確認するかは、リファレンスに書かれていません。ツール、宛先、金額に対する自社の上限の代わりではなく、追加の一層として扱ってください。
ブロッキング圧縮が常に優れた選択である。 明示されているトレードオフは、バックグラウンド圧縮が「トークン使用量を増やす可能性がある」ことだけです。デフォルトを変える前に測定してください。
時間認識が本番運用に耐える。 実験的機能とされており、リファレンスもこれらの機能は変更される可能性があると述べています。
これらの設定がAgents APIの外にも存在する。 これらはOpenAIが管理するエージェントセッションの機能で、まだベータ版です。別のAPIやモデルで自前のハーネスを動かしているなら、同じ制御は自分で構築する必要があります。
OpenAIのPython SDK 3.42.0は、Agents APIに3つの設定を加えました。手動承認へのフォールバックを拒否する自動アクションレビューモード、コンテキスト圧縮をバックグラウンドで行うかブロッキングで行うかの選択、そして実験的な時間認識フラグです。省略すると、自動レビューなし、トークンが増える可能性のあるバックグラウンド圧縮、時刻のリマインダーなしになります。加えて、以前からあるフィールドは、設定しない限り予算を無制限にします。
どれも隠されてはおらず、リファレンスははっきり書いています。リスクは、OpenAIが悪いデフォルトを選んだことではありません。これらのフィールドを一度も設定していないチームが、自社のエージェントに何が許されているのかを説明できないことです。
今週、エージェントのセッションを作成しているコードを開き、4つの設定をすべて明示的に書いてください。そのうえで、セッションが返す値をログに残し、自分が動かしているつもりだったものと照らし合わせてください。
出典:OpenAI、openai-python 3.42.0のリリースノート(2026年10月31日)。エージェントのコンテキスト圧縮設定、セッションレビューとツール設定、実験的な時間認識、組織の外部キー管理、リクエストごとのAPIキー分離を含む新機能の一覧。および、同リリースとともに公開されたAPIリファレンス。reviewの各モードとその説明、新しいレビューモードは新しいルートターンに適用されるという規則、compaction設定とトークン使用量に関する注意書き、experimental.time_awarenessフラグとそのデフォルト値、spend_controlのデフォルト(無制限のセッション)、コンピューター操作の承認リクエスト。第4節のコードは、そのリファレンスのフィールド名を使った筆者による例示であり、第3節から第5節の解釈は筆者によるものです。
IdeaToMVP Academy
4-week live cohort for founders. Learn to ship AI agents, scope MVPs, and automate your business — taught by the same team that writes these guides.