openai-agents-jsがAI SDK 7に対応、モデル・ツールのログが既定オフに──v0.14.0を読む
OpenAIのTypeScript向けエージェントSDK「openai-agents-js」v0.14.0(2026年7月28日公開)は、Vercel AI SDK 7の`LanguageModelV4`対応、Programmatic Tool Calling対応、そしてモデル・ツールデータのログ出力を既定で無効化する変更を同時に含んでいた。リリースノート本文と主要PRの記述から、この1バージョンで何が変わったのかを確認する。

目次
OpenAIのTypeScript向けエージェント構築SDK「openai-agents-js」のv0.14.0が2026年7月28日に公開された。リリースノートを確認すると、Vercel AI SDKの最新版(AI SDK 7、LanguageModelV4)への対応と、モデルへ生成させたJavaScriptでツール呼び出しを束ねる「Programmatic Tool Calling」対応が同じバージョンに同時収録されており、あわせてログ出力のデフォルト挙動を安全側に倒す変更も含まれていた。
3行まとめ
- openai-agents-js v0.14.0で、AI SDKアダプタが
LanguageModelV4(AI SDK 7)に対応。既存のv2・v3との互換性も維持- 同じバージョンでProgrammatic Tool Calling(モデルが生成したJavaScriptでツール呼び出しを束ねる機能)にも対応
- モデル・ツールのデータログは、これまでデフォルトで記録されていたが、v0.14.0から明示的に有効化しない限り記録されなくなった
AI SDK 7対応——LanguageModelV4をサポート
リリースノートは簡潔にこう述べている。
The AI SDK adapter now supports
LanguageModelV4models and AI SDK 7 while preserving existing v2 and v3 compatibility.
(AI SDKアダプタは、既存のv2・v3との互換性を維持しながら、LanguageModelV4モデルとAI SDK 7に対応するようになった)
「What's Changed」欄を見ると、この対応に関連する変更として、v0.14.0のリリース以前の段階で既に「fix(extensions): support AI SDK v4 models」(#1500、新規コントリビューターのakim136氏による)というPRが取り込まれており、AI SDK側のバージョン追従が段階的に行われてきたことがうかがえる。
Programmatic Tool Calling対応
もう1つの大きな変更が、Programmatic Tool Callingへの対応だ。
The SDK now supports Programmatic Tool Calling, allowing supported models to generate hosted JavaScript that coordinates eligible tools and reduces their intermediate results. Program calls are preserved across streaming, sessions, replay, and serialized
RunState.
(SDKは現在Programmatic Tool Callingに対応しており、対応モデルがホスト型のJavaScriptを生成して対象ツールを調整し、中間結果を縮約できるようになった。プログラムの呼び出しは、ストリーミング・セッション・リプレイ・シリアライズされたRunStateをまたいで保持される)
この機能はOpenAIのResponses API側の新機能であり、同SDKがそのクライアントとして早い段階で対応した形になる。実装したPR「feat: add Programmatic Tool Calling support」(#1472)はseratch氏によるもので、PR本文を確認すると「9つの読み取り専用の構造化呼び出しを、1つのホスト型JavaScriptプログラムで束ね、Promise.allで1つの結果に縮約する」補充計画(replenishment-planning)のサンプルが追加されたと説明されている。差分は30ファイル・agents-core内部のrunState.ts(200行追加)を含む実装で、リリースノートの一文だけでは分からない規模の変更だった。
公式サンプルコード(examples/docs/tools/programmaticToolCalling.ts)を確認すると、Programmatic Tool Calling対応にあたって、既存のtool()定義にallowedCallers: ['programmatic'](そのツールをプログラム経由で呼べることを明示する)とoutputSchema(ツールの戻り値の型をZodスキーマで宣言する)という2つの新しいオプションが追加されていた。サンプルのモデル指定はgpt-5.6だった。
実際の効果——「無効化していても漏れていた」バグを修正するPRも同時収録
npm Registry APIで確認すると、@openai/agentsパッケージの週間ダウンロード数は159万8,363件(2026年8月22日〜28日の1週間)だった。TypeScript向けエージェントSDKとして、相応の実利用規模があることがうかがえる。
| PR | 内容 |
|---|---|
| #1500(fix, akim136氏) | AI SDK v4モデルへの対応(新規コントリビューター) |
| #1472(feat, seratch氏) | Programmatic Tool Calling対応。30ファイル変更、allowedCallers/outputSchemaを追加 |
| #1516(fix) | ランタイムの複数経路でsensitive loggingフラグを正しく尊重するよう修正 |
| #1512(fix) | エラーログから機密なツール・モデルデータをredact(黒塗り) |
このうち#1512のPR本文を確認すると、単なる予防的措置ではなく、実際のバグ修正であったことが分かる。PR本文にはこう書かれていた。
"This pull request fixes logging paths that exposed raw exception messages, stacks, tool arguments, and Realtime event payloads even when sensitive-data logging was disabled."
(訳:このプルリクエストは、センシティブなデータのログ記録が無効化されていても、生の例外メッセージ・スタックトレース・ツールの引数・Realtimeイベントのペイロードが露出していたロギング経路を修正する)
つまり、v0.14.0で「モデル・ツールのデータログをデフォルトで無効化する」という変更は、単に既定値を安全側に振っただけでなく、「無効化の設定が入っていてもエラーログ経由で実際には漏れていた」という既存のバグを塞ぐ修正も同時に含んでいたことになる。
センシティブなログ出力がデフォルトで無効化
セキュリティ上の変更として注目されるのが、ログ出力のデフォルト挙動の変更だ。
Model and tool data is no longer logged unless explicitly enabled. Use
setSensitiveDataLoggingEnabled(true)to opt in programmatically, or set the correspondingOPENAI_AGENTS_DONT_LOG_*environment variables to0orfalse.
(モデルとツールのデータは、明示的に有効化しない限りログに記録されなくなった。プログラム的にオプトインするにはsetSensitiveDataLoggingEnabled(true)を使うか、対応するOPENAI_AGENTS_DONT_LOG_*環境変数を0またはfalseに設定する)
これまでデフォルトで記録されていたモデル・ツールのやり取りが、v0.14.0からは明示的な許可なしには記録されなくなったことを意味する。関連して「fix: honor sensitive logging flags across runtime paths」(#1516)「fix: redact sensitive tool and model data from error logs」(#1512)という修正PRも同じリリースに含まれており、エラーログ経由での意図しないデータ漏洩を塞ぐ対応が複数行われたことがうかがえる。
そのほかの変更——キャンセル伝播とタスク/ターンのトレーシング
実行のキャンセルが、ストリーミング・非ストリーミングを問わず関数ツールやMCPツールのリクエストにまで伝播するようになった。
Cancellation signals now reach streaming and non-streaming function tools as well as MCP tool requests. Stream completion also waits for background work and cleanup to settle before resolving.
(キャンセル信号は、ストリーミング・非ストリーミングを問わず関数ツールとMCPツールのリクエストに到達するようになった。ストリームの完了は、バックグラウンド処理とクリーンアップが完全に終わるまで待ってから解決されるようになった)
また、タスクとターンのトレーシングがデフォルトで有効になり、includeTaskAndTurnSpansをfalseに設定することでオプトアウトできるようになった。Vercelサンドボックス向けには、Mountpoint for Amazon S3を使ってS3バケットをマウントできるVercelCloudBucketMountStrategyという新機能も追加されている。
AI SDK 7自体の仕様、そして実際のコード動作は確認できていない
この記事はGitHubの公式リリースノート本文と、#1472・#1512のPR本文・変更ファイル一覧、公式サンプルコードをもとに書いている。ただし、それ以外のPR(#1500、#1516、#1517など)については本文まで踏み込んでおらず、リリースノートの要約文をそのまま紹介している。「AI SDK 7」自体の仕様変更点(LanguageModelV4とv2・v3との具体的な差分)についても、Vercel AI SDK側の一次資料は本記事では確認していない。
この記事を書いている自分自身は、openai-agents-jsやVercel AI SDKを使ったプロダクトを実務で構築した経験がなく、実際にこのバージョンへアップグレードしてサンプルコードを動かし、Programmatic Tool Callingやログ抑制の挙動を手元で確認したわけではない。紹介した内容は公式リポジトリのコードとドキュメントの記述をそのまま伝えるものにとどまる。
関連記事: AIエージェントとは?仕組みと活用事例
感想・指摘はコメント欄へ。
出典・参照資料
AIニュースの解説を動画でも
YouTubeでは注目ニュースの背景を解説し、Xでは新着記事をお知らせしています。
コメント
まだコメントはありません。最初のコメントを書いてみませんか?
AIについて聞きたいことはありますか?
質問箱で無料で受け付けています。回答は公開され、他の方の参考にもなります。
質問箱を見る →新しい記事をメールで受け取る
AIの新しい発表を、出典付きで整理して届けます。