openai 0.89.0 → 0.91.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (607) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/README.md +1 -1
  4. data/examples/realtime/README.md +8 -0
  5. data/examples/realtime/browser/README.md +167 -0
  6. data/examples/realtime/browser/index.html +19 -0
  7. data/examples/realtime/browser/page.js +21 -0
  8. data/examples/realtime/browser/peer.js +180 -0
  9. data/examples/realtime/browser/server.rb +281 -0
  10. data/examples/responses/websocket_workflows.rb +66 -6
  11. data/lib/openai/auth/workload_identity.rb +5 -1
  12. data/lib/openai/auth/workload_identity_auth.rb +2 -2
  13. data/lib/openai/auth/x509_token_exchange.rb +1 -1
  14. data/lib/openai/helpers/agents/message.rb +20 -0
  15. data/lib/openai/helpers/agents/session_stream.rb +168 -0
  16. data/lib/openai/helpers/agents/tools.rb +65 -0
  17. data/lib/openai/helpers/local_audio/process.rb +1 -1
  18. data/lib/openai/helpers/responses_websocket/connection.rb +2 -1
  19. data/lib/openai/helpers/responses_websocket/session.rb +551 -0
  20. data/lib/openai/helpers/responses_websocket.rb +1 -0
  21. data/lib/openai/helpers/sorbet.rb +1 -1
  22. data/lib/openai/helpers/websocket/async_websocket_transport.rb +6 -1
  23. data/lib/openai/internal/poller.rb +2 -2
  24. data/lib/openai/internal/token_page.rb +91 -0
  25. data/lib/openai/internal/transport/base_client.rb +1 -1
  26. data/lib/openai/internal/util.rb +1 -1
  27. data/lib/openai/models/beta/agent.rb +148 -0
  28. data/lib/openai/models/beta/agent_close_subagent_call_item.rb +66 -0
  29. data/lib/openai/models/beta/agent_command_execution_item.rb +93 -0
  30. data/lib/openai/models/beta/agent_content.rb +46 -0
  31. data/lib/openai/models/beta/agent_create_params.rb +128 -0
  32. data/lib/openai/models/beta/agent_create_subagent_call_item.rb +84 -0
  33. data/lib/openai/models/beta/agent_delete_params.rb +22 -0
  34. data/lib/openai/models/beta/agent_deleted.rb +40 -0
  35. data/lib/openai/models/beta/agent_function_call_item.rb +75 -0
  36. data/lib/openai/models/beta/agent_function_call_output.rb +22 -0
  37. data/lib/openai/models/beta/agent_function_call_output_param.rb +22 -0
  38. data/lib/openai/models/beta/agent_function_call_status.rb +27 -0
  39. data/lib/openai/models/beta/agent_interrupt_subagent_call_item.rb +67 -0
  40. data/lib/openai/models/beta/agent_list_params.rb +57 -0
  41. data/lib/openai/models/beta/agent_mcp_call_item.rb +93 -0
  42. data/lib/openai/models/beta/agent_output_command_execution_output_delta_event.rb +75 -0
  43. data/lib/openai/models/beta/agent_output_item.rb +53 -0
  44. data/lib/openai/models/beta/agent_output_item_status.rb +24 -0
  45. data/lib/openai/models/beta/agent_reasoning.rb +67 -0
  46. data/lib/openai/models/beta/agent_reasoning_item.rb +57 -0
  47. data/lib/openai/models/beta/agent_reasoning_param.rb +67 -0
  48. data/lib/openai/models/beta/agent_resume_subagent_call_item.rb +66 -0
  49. data/lib/openai/models/beta/agent_retrieve_params.rb +22 -0
  50. data/lib/openai/models/beta/agent_send_subagent_input_call_item.rb +75 -0
  51. data/lib/openai/models/beta/agent_session.rb +339 -0
  52. data/lib/openai/models/beta/agent_session_assistant_message.rb +91 -0
  53. data/lib/openai/models/beta/agent_session_created_event.rb +39 -0
  54. data/lib/openai/models/beta/agent_session_deleted.rb +42 -0
  55. data/lib/openai/models/beta/agent_session_environment_connected_event.rb +57 -0
  56. data/lib/openai/models/beta/agent_session_environment_disconnected_event.rb +57 -0
  57. data/lib/openai/models/beta/agent_session_environment_failed_event.rb +57 -0
  58. data/lib/openai/models/beta/agent_session_environment_pending_event.rb +57 -0
  59. data/lib/openai/models/beta/agent_session_environment_ready_event.rb +57 -0
  60. data/lib/openai/models/beta/agent_session_environment_state.rb +106 -0
  61. data/lib/openai/models/beta/agent_session_error_event.rb +48 -0
  62. data/lib/openai/models/beta/agent_session_event.rb +128 -0
  63. data/lib/openai/models/beta/agent_session_failed_event.rb +39 -0
  64. data/lib/openai/models/beta/agent_session_idle_event.rb +39 -0
  65. data/lib/openai/models/beta/agent_session_in_progress_event.rb +39 -0
  66. data/lib/openai/models/beta/agent_session_input_message_param.rb +51 -0
  67. data/lib/openai/models/beta/agent_session_input_param.rb +131 -0
  68. data/lib/openai/models/beta/agent_session_item.rb +186 -0
  69. data/lib/openai/models/beta/agent_session_message.rb +106 -0
  70. data/lib/openai/models/beta/agent_session_message_content.rb +97 -0
  71. data/lib/openai/models/beta/agent_session_requires_action_event.rb +39 -0
  72. data/lib/openai/models/beta/agent_session_subagent_active_event.rb +39 -0
  73. data/lib/openai/models/beta/agent_session_subagent_closed_event.rb +39 -0
  74. data/lib/openai/models/beta/agent_session_subagent_created_event.rb +39 -0
  75. data/lib/openai/models/beta/agent_session_turn_cancelled_event.rb +66 -0
  76. data/lib/openai/models/beta/agent_session_turn_completed_event.rb +66 -0
  77. data/lib/openai/models/beta/agent_session_turn_content_part_added_event.rb +84 -0
  78. data/lib/openai/models/beta/agent_session_turn_content_part_done_event.rb +84 -0
  79. data/lib/openai/models/beta/agent_session_turn_created_event.rb +57 -0
  80. data/lib/openai/models/beta/agent_session_turn_failed_event.rb +66 -0
  81. data/lib/openai/models/beta/agent_session_turn_in_progress_event.rb +57 -0
  82. data/lib/openai/models/beta/agent_session_turn_item_added_event.rb +66 -0
  83. data/lib/openai/models/beta/agent_session_turn_item_done_event.rb +66 -0
  84. data/lib/openai/models/beta/agent_session_turn_output_text_delta_event.rb +84 -0
  85. data/lib/openai/models/beta/agent_session_turn_output_text_done_event.rb +84 -0
  86. data/lib/openai/models/beta/agent_session_turn_reasoning_summary_part_added_event.rb +86 -0
  87. data/lib/openai/models/beta/agent_session_turn_reasoning_summary_part_done_event.rb +93 -0
  88. data/lib/openai/models/beta/agent_session_turn_reasoning_summary_text_delta_event.rb +86 -0
  89. data/lib/openai/models/beta/agent_session_turn_reasoning_summary_text_done_event.rb +84 -0
  90. data/lib/openai/models/beta/agent_text.rb +44 -0
  91. data/lib/openai/models/beta/agent_text_param.rb +49 -0
  92. data/lib/openai/models/beta/agent_tool.rb +314 -0
  93. data/lib/openai/models/beta/agent_tool_param.rb +359 -0
  94. data/lib/openai/models/beta/agent_update_params.rb +137 -0
  95. data/lib/openai/models/beta/agent_wait_for_subagents_call_item.rb +66 -0
  96. data/lib/openai/models/beta/agent_web_search_call_item.rb +57 -0
  97. data/lib/openai/models/beta/agents/environment_info.rb +107 -0
  98. data/lib/openai/models/beta/agents/environment_retrieve_params.rb +24 -0
  99. data/lib/openai/models/beta/agents/environments/environment_file.rb +55 -0
  100. data/lib/openai/models/beta/agents/environments/environment_template.rb +368 -0
  101. data/lib/openai/models/beta/agents/environments/environment_template_deleted.rb +46 -0
  102. data/lib/openai/models/beta/agents/environments/file_create_params.rb +26 -0
  103. data/lib/openai/models/beta/agents/environments/file_list_params.rb +77 -0
  104. data/lib/openai/models/beta/agents/environments/template_create_params.rb +209 -0
  105. data/lib/openai/models/beta/agents/environments/template_delete_params.rb +26 -0
  106. data/lib/openai/models/beta/agents/environments/template_list_params.rb +61 -0
  107. data/lib/openai/models/beta/agents/environments/template_retrieve_params.rb +26 -0
  108. data/lib/openai/models/beta/agents/environments/template_update_params.rb +212 -0
  109. data/lib/openai/models/beta/agents/session_create_params.rb +203 -0
  110. data/lib/openai/models/beta/agents/session_delete_params.rb +24 -0
  111. data/lib/openai/models/beta/agents/session_list_params.rb +73 -0
  112. data/lib/openai/models/beta/agents/session_retrieve_params.rb +24 -0
  113. data/lib/openai/models/beta/agents/session_update_params.rb +145 -0
  114. data/lib/openai/models/beta/agents/sessions/artifact_content_params.rb +32 -0
  115. data/lib/openai/models/beta/agents/sessions/artifact_delete_params.rb +32 -0
  116. data/lib/openai/models/beta/agents/sessions/artifact_list_params.rb +77 -0
  117. data/lib/openai/models/beta/agents/sessions/artifact_retrieve_params.rb +32 -0
  118. data/lib/openai/models/beta/agents/sessions/event_create_params.rb +43 -0
  119. data/lib/openai/models/beta/agents/sessions/event_stream_params.rb +26 -0
  120. data/lib/openai/models/beta/agents/sessions/item_list_params.rb +68 -0
  121. data/lib/openai/models/beta/agents/sessions/session_artifact.rb +91 -0
  122. data/lib/openai/models/beta/agents/sessions/session_artifact_deleted.rb +46 -0
  123. data/lib/openai/models/beta/agents/sessions/subagent_list_params.rb +68 -0
  124. data/lib/openai/models/beta/agents/sessions/subagent_retrieve_params.rb +32 -0
  125. data/lib/openai/models/beta/agents/sessions/subagents/item_list_params.rb +77 -0
  126. data/lib/openai/models/beta/agents/sessions/subagents/turn_list_params.rb +77 -0
  127. data/lib/openai/models/beta/agents/sessions/subagents/turn_retrieve_params.rb +40 -0
  128. data/lib/openai/models/beta/agents/sessions/subagents/turns/item_list_params.rb +86 -0
  129. data/lib/openai/models/beta/agents/sessions/turn.rb +148 -0
  130. data/lib/openai/models/beta/agents/sessions/turn_list_params.rb +68 -0
  131. data/lib/openai/models/beta/agents/sessions/turn_retrieve_params.rb +32 -0
  132. data/lib/openai/models/beta/agents/vault.rb +63 -0
  133. data/lib/openai/models/beta/agents/vault_create_params.rb +40 -0
  134. data/lib/openai/models/beta/agents/vault_delete_params.rb +24 -0
  135. data/lib/openai/models/beta/agents/vault_deleted.rb +42 -0
  136. data/lib/openai/models/beta/agents/vault_list_params.rb +75 -0
  137. data/lib/openai/models/beta/agents/vault_retrieve_params.rb +24 -0
  138. data/lib/openai/models/beta/agents/vault_status.rb +20 -0
  139. data/lib/openai/models/beta/agents/vault_status_filter.rb +27 -0
  140. data/lib/openai/models/beta/agents/vaults/credential.rb +80 -0
  141. data/lib/openai/models/beta/agents/vaults/credential_auth.rb +155 -0
  142. data/lib/openai/models/beta/agents/vaults/credential_auth_create_param.rb +184 -0
  143. data/lib/openai/models/beta/agents/vaults/credential_auth_rotate_param.rb +147 -0
  144. data/lib/openai/models/beta/agents/vaults/credential_create_params.rb +47 -0
  145. data/lib/openai/models/beta/agents/vaults/credential_delete_params.rb +32 -0
  146. data/lib/openai/models/beta/agents/vaults/credential_deleted.rb +44 -0
  147. data/lib/openai/models/beta/agents/vaults/credential_list_params.rb +84 -0
  148. data/lib/openai/models/beta/agents/vaults/credential_retrieve_params.rb +32 -0
  149. data/lib/openai/models/beta/agents/vaults/credential_update_params.rb +43 -0
  150. data/lib/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth.rb +78 -0
  151. data/lib/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_create_param.rb +96 -0
  152. data/lib/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_rotate_param.rb +84 -0
  153. data/lib/openai/models/beta/beta_response.rb +9 -3
  154. data/lib/openai/models/beta/beta_response_compaction_compacting_event.rb +75 -0
  155. data/lib/openai/models/beta/beta_response_stream_event.rb +4 -1
  156. data/lib/openai/models/beta/beta_responses_client_event.rb +25 -4
  157. data/lib/openai/models/beta/beta_responses_server_event.rb +39 -1
  158. data/lib/openai/models/beta/environment.rb +246 -0
  159. data/lib/openai/models/beta/environment_param.rb +269 -0
  160. data/lib/openai/models/beta/hosted_environment_file.rb +64 -0
  161. data/lib/openai/models/beta/hosted_environment_file_id.rb +57 -0
  162. data/lib/openai/models/beta/hosted_environment_file_param.rb +87 -0
  163. data/lib/openai/models/beta/hosted_plugin.rb +39 -0
  164. data/lib/openai/models/beta/hosted_plugin_param.rb +48 -0
  165. data/lib/openai/models/beta/hosted_skill.rb +55 -0
  166. data/lib/openai/models/beta/hosted_skill_param.rb +96 -0
  167. data/lib/openai/models/beta/hosted_skill_reference.rb +57 -0
  168. data/lib/openai/models/beta/inline_capability_source_param.rb +39 -0
  169. data/lib/openai/models/beta/input_content.rb +71 -0
  170. data/lib/openai/models/beta/input_content_param.rb +69 -0
  171. data/lib/openai/models/beta/mcp_transport.rb +96 -0
  172. data/lib/openai/models/beta/mcp_transport_param.rb +123 -0
  173. data/lib/openai/models/beta/multi_agent_config.rb +32 -0
  174. data/lib/openai/models/beta/multi_agent_config_param.rb +30 -0
  175. data/lib/openai/models/beta/output_text.rb +30 -0
  176. data/lib/openai/models/beta/persisted_agent_tool.rb +329 -0
  177. data/lib/openai/models/beta/persisted_agent_tool_param.rb +355 -0
  178. data/lib/openai/models/beta/persisted_mcp_transport.rb +105 -0
  179. data/lib/openai/models/beta/persisted_mcp_transport_param.rb +105 -0
  180. data/lib/openai/models/beta/response_compact_params.rb +9 -3
  181. data/lib/openai/models/beta/response_create_params.rb +21 -4
  182. data/lib/openai/models/beta/session_error.rb +48 -0
  183. data/lib/openai/models/beta/session_turn_error.rb +91 -0
  184. data/lib/openai/models/beta/setup_command_param.rb +30 -0
  185. data/lib/openai/models/beta/subagent.rb +121 -0
  186. data/lib/openai/models/beta/summary_text.rb +30 -0
  187. data/lib/openai/models/beta/text_format.rb +60 -0
  188. data/lib/openai/models/beta/text_format_param.rb +60 -0
  189. data/lib/openai/models/beta/token_usage.rb +87 -0
  190. data/lib/openai/models/beta/web_search_action.rb +130 -0
  191. data/lib/openai/models/chat/completion_create_params.rb +1 -1
  192. data/lib/openai/models/chat_model.rb +3 -1
  193. data/lib/openai/models/responses/response_compact_params.rb +9 -3
  194. data/lib/openai/models/responses/response_compaction_compacting_event.rb +49 -0
  195. data/lib/openai/models/responses/response_create_params.rb +12 -1
  196. data/lib/openai/models/responses/response_stream_event.rb +4 -1
  197. data/lib/openai/models/responses/responses_client_event.rb +12 -1
  198. data/lib/openai/models/responses/responses_server_event.rb +36 -1
  199. data/lib/openai/models/webhooks/realtime_call_incoming_webhook_event.rb +6 -8
  200. data/lib/openai/resources/beta/agents/environments/files.rb +89 -0
  201. data/lib/openai/resources/beta/agents/environments/templates.rb +206 -0
  202. data/lib/openai/resources/beta/agents/environments.rb +50 -0
  203. data/lib/openai/resources/beta/agents/sessions/artifacts.rb +155 -0
  204. data/lib/openai/resources/beta/agents/sessions/events.rb +80 -0
  205. data/lib/openai/resources/beta/agents/sessions/items.rb +57 -0
  206. data/lib/openai/resources/beta/agents/sessions/subagents/items.rb +66 -0
  207. data/lib/openai/resources/beta/agents/sessions/subagents/turns/items.rb +82 -0
  208. data/lib/openai/resources/beta/agents/sessions/subagents/turns.rb +108 -0
  209. data/lib/openai/resources/beta/agents/sessions/subagents.rb +95 -0
  210. data/lib/openai/resources/beta/agents/sessions/turns.rb +89 -0
  211. data/lib/openai/resources/beta/agents/sessions.rb +298 -0
  212. data/lib/openai/resources/beta/agents/vaults/credentials.rb +195 -0
  213. data/lib/openai/resources/beta/agents/vaults.rb +137 -0
  214. data/lib/openai/resources/beta/agents.rb +213 -0
  215. data/lib/openai/resources/beta/responses.rb +2 -2
  216. data/lib/openai/resources/beta.rb +4 -0
  217. data/lib/openai/resources/live/sessions.rb +10 -4
  218. data/lib/openai/resources/responses.rb +2 -2
  219. data/lib/openai/version.rb +1 -1
  220. data/lib/openai.rb +178 -0
  221. data/rbi/openai/helpers/agents.rbi +71 -0
  222. data/rbi/openai/helpers/responses_websocket/connection.rbi +5 -0
  223. data/rbi/openai/helpers/responses_websocket/session.rbi +206 -0
  224. data/rbi/openai/internal/token_page.rbi +25 -0
  225. data/rbi/openai/models/beta/agent.rbi +209 -0
  226. data/rbi/openai/models/beta/agent_close_subagent_call_item.rbi +102 -0
  227. data/rbi/openai/models/beta/agent_command_execution_item.rbi +132 -0
  228. data/rbi/openai/models/beta/agent_content.rbi +75 -0
  229. data/rbi/openai/models/beta/agent_create_params.rbi +212 -0
  230. data/rbi/openai/models/beta/agent_create_subagent_call_item.rbi +124 -0
  231. data/rbi/openai/models/beta/agent_delete_params.rbi +53 -0
  232. data/rbi/openai/models/beta/agent_deleted.rbi +68 -0
  233. data/rbi/openai/models/beta/agent_function_call_item.rbi +112 -0
  234. data/rbi/openai/models/beta/agent_function_call_output.rbi +33 -0
  235. data/rbi/openai/models/beta/agent_function_call_output_param.rbi +33 -0
  236. data/rbi/openai/models/beta/agent_function_call_status.rbi +35 -0
  237. data/rbi/openai/models/beta/agent_interrupt_subagent_call_item.rbi +103 -0
  238. data/rbi/openai/models/beta/agent_list_params.rbi +102 -0
  239. data/rbi/openai/models/beta/agent_mcp_call_item.rbi +132 -0
  240. data/rbi/openai/models/beta/agent_output_command_execution_output_delta_event.rbi +112 -0
  241. data/rbi/openai/models/beta/agent_output_item.rbi +38 -0
  242. data/rbi/openai/models/beta/agent_output_item_status.rbi +32 -0
  243. data/rbi/openai/models/beta/agent_reasoning.rbi +103 -0
  244. data/rbi/openai/models/beta/agent_reasoning_item.rbi +92 -0
  245. data/rbi/openai/models/beta/agent_reasoning_param.rbi +103 -0
  246. data/rbi/openai/models/beta/agent_resume_subagent_call_item.rbi +102 -0
  247. data/rbi/openai/models/beta/agent_retrieve_params.rbi +53 -0
  248. data/rbi/openai/models/beta/agent_send_subagent_input_call_item.rbi +114 -0
  249. data/rbi/openai/models/beta/agent_session.rbi +494 -0
  250. data/rbi/openai/models/beta/agent_session_assistant_message.rbi +130 -0
  251. data/rbi/openai/models/beta/agent_session_created_event.rbi +71 -0
  252. data/rbi/openai/models/beta/agent_session_deleted.rbi +71 -0
  253. data/rbi/openai/models/beta/agent_session_environment_connected_event.rbi +95 -0
  254. data/rbi/openai/models/beta/agent_session_environment_disconnected_event.rbi +95 -0
  255. data/rbi/openai/models/beta/agent_session_environment_failed_event.rbi +95 -0
  256. data/rbi/openai/models/beta/agent_session_environment_pending_event.rbi +95 -0
  257. data/rbi/openai/models/beta/agent_session_environment_ready_event.rbi +95 -0
  258. data/rbi/openai/models/beta/agent_session_environment_state.rbi +168 -0
  259. data/rbi/openai/models/beta/agent_session_error_event.rbi +80 -0
  260. data/rbi/openai/models/beta/agent_session_event.rbi +56 -0
  261. data/rbi/openai/models/beta/agent_session_failed_event.rbi +71 -0
  262. data/rbi/openai/models/beta/agent_session_idle_event.rbi +71 -0
  263. data/rbi/openai/models/beta/agent_session_in_progress_event.rbi +71 -0
  264. data/rbi/openai/models/beta/agent_session_input_message_param.rbi +100 -0
  265. data/rbi/openai/models/beta/agent_session_input_param.rbi +232 -0
  266. data/rbi/openai/models/beta/agent_session_item.rbi +239 -0
  267. data/rbi/openai/models/beta/agent_session_message.rbi +153 -0
  268. data/rbi/openai/models/beta/agent_session_message_content.rbi +172 -0
  269. data/rbi/openai/models/beta/agent_session_requires_action_event.rbi +71 -0
  270. data/rbi/openai/models/beta/agent_session_subagent_active_event.rbi +71 -0
  271. data/rbi/openai/models/beta/agent_session_subagent_closed_event.rbi +71 -0
  272. data/rbi/openai/models/beta/agent_session_subagent_created_event.rbi +71 -0
  273. data/rbi/openai/models/beta/agent_session_turn_cancelled_event.rbi +108 -0
  274. data/rbi/openai/models/beta/agent_session_turn_completed_event.rbi +108 -0
  275. data/rbi/openai/models/beta/agent_session_turn_content_part_added_event.rbi +125 -0
  276. data/rbi/openai/models/beta/agent_session_turn_content_part_done_event.rbi +125 -0
  277. data/rbi/openai/models/beta/agent_session_turn_created_event.rbi +95 -0
  278. data/rbi/openai/models/beta/agent_session_turn_failed_event.rbi +108 -0
  279. data/rbi/openai/models/beta/agent_session_turn_in_progress_event.rbi +95 -0
  280. data/rbi/openai/models/beta/agent_session_turn_item_added_event.rbi +117 -0
  281. data/rbi/openai/models/beta/agent_session_turn_item_done_event.rbi +115 -0
  282. data/rbi/openai/models/beta/agent_session_turn_output_text_delta_event.rbi +122 -0
  283. data/rbi/openai/models/beta/agent_session_turn_output_text_done_event.rbi +122 -0
  284. data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_part_added_event.rbi +127 -0
  285. data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_part_done_event.rbi +135 -0
  286. data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_text_delta_event.rbi +124 -0
  287. data/rbi/openai/models/beta/agent_session_turn_reasoning_summary_text_done_event.rbi +122 -0
  288. data/rbi/openai/models/beta/agent_text.rbi +75 -0
  289. data/rbi/openai/models/beta/agent_text_param.rbi +87 -0
  290. data/rbi/openai/models/beta/agent_tool.rbi +467 -0
  291. data/rbi/openai/models/beta/agent_tool_param.rbi +530 -0
  292. data/rbi/openai/models/beta/agent_update_params.rbi +225 -0
  293. data/rbi/openai/models/beta/agent_wait_for_subagents_call_item.rbi +102 -0
  294. data/rbi/openai/models/beta/agent_web_search_call_item.rbi +99 -0
  295. data/rbi/openai/models/beta/agents/environment_info.rbi +156 -0
  296. data/rbi/openai/models/beta/agents/environment_retrieve_params.rbi +57 -0
  297. data/rbi/openai/models/beta/agents/environments/environment_file.rbi +87 -0
  298. data/rbi/openai/models/beta/agents/environments/environment_template.rbi +582 -0
  299. data/rbi/openai/models/beta/agents/environments/environment_template_deleted.rbi +78 -0
  300. data/rbi/openai/models/beta/agents/environments/file_create_params.rbi +61 -0
  301. data/rbi/openai/models/beta/agents/environments/file_list_params.rbi +130 -0
  302. data/rbi/openai/models/beta/agents/environments/template_create_params.rbi +350 -0
  303. data/rbi/openai/models/beta/agents/environments/template_delete_params.rbi +61 -0
  304. data/rbi/openai/models/beta/agents/environments/template_list_params.rbi +117 -0
  305. data/rbi/openai/models/beta/agents/environments/template_retrieve_params.rbi +61 -0
  306. data/rbi/openai/models/beta/agents/environments/template_update_params.rbi +354 -0
  307. data/rbi/openai/models/beta/agents/session_create_params.rbi +336 -0
  308. data/rbi/openai/models/beta/agents/session_delete_params.rbi +57 -0
  309. data/rbi/openai/models/beta/agents/session_list_params.rbi +124 -0
  310. data/rbi/openai/models/beta/agents/session_retrieve_params.rbi +57 -0
  311. data/rbi/openai/models/beta/agents/session_update_params.rbi +252 -0
  312. data/rbi/openai/models/beta/agents/sessions/artifact_content_params.rbi +68 -0
  313. data/rbi/openai/models/beta/agents/sessions/artifact_delete_params.rbi +68 -0
  314. data/rbi/openai/models/beta/agents/sessions/artifact_list_params.rbi +127 -0
  315. data/rbi/openai/models/beta/agents/sessions/artifact_retrieve_params.rbi +68 -0
  316. data/rbi/openai/models/beta/agents/sessions/event_create_params.rbi +107 -0
  317. data/rbi/openai/models/beta/agents/sessions/event_stream_params.rbi +61 -0
  318. data/rbi/openai/models/beta/agents/sessions/item_list_params.rbi +121 -0
  319. data/rbi/openai/models/beta/agents/sessions/session_artifact.rbi +132 -0
  320. data/rbi/openai/models/beta/agents/sessions/session_artifact_deleted.rbi +78 -0
  321. data/rbi/openai/models/beta/agents/sessions/subagent_list_params.rbi +123 -0
  322. data/rbi/openai/models/beta/agents/sessions/subagent_retrieve_params.rbi +68 -0
  323. data/rbi/openai/models/beta/agents/sessions/subagents/item_list_params.rbi +139 -0
  324. data/rbi/openai/models/beta/agents/sessions/subagents/turn_list_params.rbi +139 -0
  325. data/rbi/openai/models/beta/agents/sessions/subagents/turn_retrieve_params.rbi +79 -0
  326. data/rbi/openai/models/beta/agents/sessions/subagents/turns/item_list_params.rbi +161 -0
  327. data/rbi/openai/models/beta/agents/sessions/turn.rbi +200 -0
  328. data/rbi/openai/models/beta/agents/sessions/turn_list_params.rbi +121 -0
  329. data/rbi/openai/models/beta/agents/sessions/turn_retrieve_params.rbi +68 -0
  330. data/rbi/openai/models/beta/agents/vault.rbi +99 -0
  331. data/rbi/openai/models/beta/agents/vault_create_params.rbi +75 -0
  332. data/rbi/openai/models/beta/agents/vault_delete_params.rbi +57 -0
  333. data/rbi/openai/models/beta/agents/vault_deleted.rbi +72 -0
  334. data/rbi/openai/models/beta/agents/vault_list_params.rbi +149 -0
  335. data/rbi/openai/models/beta/agents/vault_retrieve_params.rbi +57 -0
  336. data/rbi/openai/models/beta/agents/vault_status.rbi +30 -0
  337. data/rbi/openai/models/beta/agents/vault_status_filter.rbi +39 -0
  338. data/rbi/openai/models/beta/agents/vaults/credential.rbi +123 -0
  339. data/rbi/openai/models/beta/agents/vaults/credential_auth.rbi +248 -0
  340. data/rbi/openai/models/beta/agents/vaults/credential_auth_create_param.rbi +293 -0
  341. data/rbi/openai/models/beta/agents/vaults/credential_auth_rotate_param.rbi +252 -0
  342. data/rbi/openai/models/beta/agents/vaults/credential_create_params.rbi +99 -0
  343. data/rbi/openai/models/beta/agents/vaults/credential_delete_params.rbi +68 -0
  344. data/rbi/openai/models/beta/agents/vaults/credential_deleted.rbi +76 -0
  345. data/rbi/openai/models/beta/agents/vaults/credential_list_params.rbi +163 -0
  346. data/rbi/openai/models/beta/agents/vaults/credential_retrieve_params.rbi +68 -0
  347. data/rbi/openai/models/beta/agents/vaults/credential_update_params.rbi +95 -0
  348. data/rbi/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth.rbi +151 -0
  349. data/rbi/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_create_param.rbi +171 -0
  350. data/rbi/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_rotate_param.rbi +137 -0
  351. data/rbi/openai/models/beta/beta_response.rbi +6 -1
  352. data/rbi/openai/models/beta/beta_response_compaction_compacting_event.rbi +136 -0
  353. data/rbi/openai/models/beta/beta_response_stream_event.rbi +1 -0
  354. data/rbi/openai/models/beta/beta_responses_client_event.rbi +27 -4
  355. data/rbi/openai/models/beta/beta_responses_server_event.rbi +77 -0
  356. data/rbi/openai/models/beta/environment.rbi +400 -0
  357. data/rbi/openai/models/beta/environment_param.rbi +448 -0
  358. data/rbi/openai/models/beta/hosted_environment_file.rbi +93 -0
  359. data/rbi/openai/models/beta/hosted_environment_file_id.rbi +86 -0
  360. data/rbi/openai/models/beta/hosted_environment_file_param.rbi +140 -0
  361. data/rbi/openai/models/beta/hosted_plugin.rbi +68 -0
  362. data/rbi/openai/models/beta/hosted_plugin_param.rbi +80 -0
  363. data/rbi/openai/models/beta/hosted_skill.rbi +84 -0
  364. data/rbi/openai/models/beta/hosted_skill_param.rbi +152 -0
  365. data/rbi/openai/models/beta/hosted_skill_reference.rbi +86 -0
  366. data/rbi/openai/models/beta/inline_capability_source_param.rbi +68 -0
  367. data/rbi/openai/models/beta/input_content.rbi +124 -0
  368. data/rbi/openai/models/beta/input_content_param.rbi +122 -0
  369. data/rbi/openai/models/beta/mcp_transport.rbi +149 -0
  370. data/rbi/openai/models/beta/mcp_transport_param.rbi +188 -0
  371. data/rbi/openai/models/beta/multi_agent_config.rbi +61 -0
  372. data/rbi/openai/models/beta/multi_agent_config_param.rbi +62 -0
  373. data/rbi/openai/models/beta/output_text.rbi +59 -0
  374. data/rbi/openai/models/beta/persisted_agent_tool.rbi +507 -0
  375. data/rbi/openai/models/beta/persisted_agent_tool_param.rbi +546 -0
  376. data/rbi/openai/models/beta/persisted_mcp_transport.rbi +158 -0
  377. data/rbi/openai/models/beta/persisted_mcp_transport_param.rbi +164 -0
  378. data/rbi/openai/models/beta/response_compact_params.rbi +6 -1
  379. data/rbi/openai/models/beta/response_create_params.rbi +21 -1
  380. data/rbi/openai/models/beta/session_error.rbi +77 -0
  381. data/rbi/openai/models/beta/session_turn_error.rbi +131 -0
  382. data/rbi/openai/models/beta/setup_command_param.rbi +59 -0
  383. data/rbi/openai/models/beta/subagent.rbi +158 -0
  384. data/rbi/openai/models/beta/summary_text.rbi +59 -0
  385. data/rbi/openai/models/beta/text_format.rbi +113 -0
  386. data/rbi/openai/models/beta/text_format_param.rbi +113 -0
  387. data/rbi/openai/models/beta/token_usage.rbi +174 -0
  388. data/rbi/openai/models/beta/web_search_action.rbi +227 -0
  389. data/rbi/openai/models/chat_model.rbi +3 -1
  390. data/rbi/openai/models/responses/response_compact_params.rbi +6 -1
  391. data/rbi/openai/models/responses/response_compaction_compacting_event.rbi +78 -0
  392. data/rbi/openai/models/responses/response_create_params.rbi +15 -0
  393. data/rbi/openai/models/responses/response_stream_event.rbi +1 -0
  394. data/rbi/openai/models/responses/responses_client_event.rbi +15 -0
  395. data/rbi/openai/models/responses/responses_server_event.rbi +71 -0
  396. data/rbi/openai/models/webhooks/realtime_call_incoming_webhook_event.rbi +6 -8
  397. data/rbi/openai/resources/beta/agents/environments/files.rbi +79 -0
  398. data/rbi/openai/resources/beta/agents/environments/templates.rbi +194 -0
  399. data/rbi/openai/resources/beta/agents/environments.rbi +44 -0
  400. data/rbi/openai/resources/beta/agents/sessions/artifacts.rbi +105 -0
  401. data/rbi/openai/resources/beta/agents/sessions/events.rbi +71 -0
  402. data/rbi/openai/resources/beta/agents/sessions/items.rbi +53 -0
  403. data/rbi/openai/resources/beta/agents/sessions/subagents/items.rbi +60 -0
  404. data/rbi/openai/resources/beta/agents/sessions/subagents/turns/items.rbi +67 -0
  405. data/rbi/openai/resources/beta/agents/sessions/subagents/turns.rbi +85 -0
  406. data/rbi/openai/resources/beta/agents/sessions/subagents.rbi +74 -0
  407. data/rbi/openai/resources/beta/agents/sessions/turns.rbi +70 -0
  408. data/rbi/openai/resources/beta/agents/sessions.rbi +212 -0
  409. data/rbi/openai/resources/beta/agents/vaults/credentials.rbi +148 -0
  410. data/rbi/openai/resources/beta/agents/vaults.rbi +106 -0
  411. data/rbi/openai/resources/beta/agents.rbi +180 -0
  412. data/rbi/openai/resources/beta.rbi +3 -0
  413. data/rbi/openai/resources/live/sessions.rbi +10 -4
  414. data/rbi/openai/resources/responses.rbi +8 -8
  415. data/responses-websocket.md +117 -10
  416. data/sig/openai/helpers/agents.rbs +50 -0
  417. data/sig/openai/helpers/responses_websocket/connection.rbs +5 -0
  418. data/sig/openai/helpers/responses_websocket/session.rbs +123 -0
  419. data/sig/openai/internal/token_page.rbs +15 -0
  420. data/sig/openai/models/beta/agent.rbs +96 -0
  421. data/sig/openai/models/beta/agent_close_subagent_call_item.rbs +47 -0
  422. data/sig/openai/models/beta/agent_command_execution_item.rbs +62 -0
  423. data/sig/openai/models/beta/agent_content.rbs +33 -0
  424. data/sig/openai/models/beta/agent_create_params.rbs +91 -0
  425. data/sig/openai/models/beta/agent_create_subagent_call_item.rbs +57 -0
  426. data/sig/openai/models/beta/agent_delete_params.rbs +25 -0
  427. data/sig/openai/models/beta/agent_deleted.rbs +24 -0
  428. data/sig/openai/models/beta/agent_function_call_item.rbs +52 -0
  429. data/sig/openai/models/beta/agent_function_call_output.rbs +16 -0
  430. data/sig/openai/models/beta/agent_function_call_output_param.rbs +16 -0
  431. data/sig/openai/models/beta/agent_function_call_status.rbs +26 -0
  432. data/sig/openai/models/beta/agent_interrupt_subagent_call_item.rbs +47 -0
  433. data/sig/openai/models/beta/agent_list_params.rbs +58 -0
  434. data/sig/openai/models/beta/agent_mcp_call_item.rbs +62 -0
  435. data/sig/openai/models/beta/agent_output_command_execution_output_delta_event.rbs +52 -0
  436. data/sig/openai/models/beta/agent_output_item.rbs +25 -0
  437. data/sig/openai/models/beta/agent_output_item_status.rbs +22 -0
  438. data/sig/openai/models/beta/agent_reasoning.rbs +60 -0
  439. data/sig/openai/models/beta/agent_reasoning_item.rbs +42 -0
  440. data/sig/openai/models/beta/agent_reasoning_param.rbs +60 -0
  441. data/sig/openai/models/beta/agent_resume_subagent_call_item.rbs +47 -0
  442. data/sig/openai/models/beta/agent_retrieve_params.rbs +25 -0
  443. data/sig/openai/models/beta/agent_send_subagent_input_call_item.rbs +52 -0
  444. data/sig/openai/models/beta/agent_session.rbs +234 -0
  445. data/sig/openai/models/beta/agent_session_assistant_message.rbs +66 -0
  446. data/sig/openai/models/beta/agent_session_created_event.rbs +32 -0
  447. data/sig/openai/models/beta/agent_session_deleted.rbs +28 -0
  448. data/sig/openai/models/beta/agent_session_environment_connected_event.rbs +42 -0
  449. data/sig/openai/models/beta/agent_session_environment_disconnected_event.rbs +42 -0
  450. data/sig/openai/models/beta/agent_session_environment_failed_event.rbs +42 -0
  451. data/sig/openai/models/beta/agent_session_environment_pending_event.rbs +42 -0
  452. data/sig/openai/models/beta/agent_session_environment_ready_event.rbs +42 -0
  453. data/sig/openai/models/beta/agent_session_environment_state.rbs +74 -0
  454. data/sig/openai/models/beta/agent_session_error_event.rbs +37 -0
  455. data/sig/openai/models/beta/agent_session_event.rbs +43 -0
  456. data/sig/openai/models/beta/agent_session_failed_event.rbs +32 -0
  457. data/sig/openai/models/beta/agent_session_idle_event.rbs +32 -0
  458. data/sig/openai/models/beta/agent_session_in_progress_event.rbs +32 -0
  459. data/sig/openai/models/beta/agent_session_input_message_param.rbs +46 -0
  460. data/sig/openai/models/beta/agent_session_input_param.rbs +91 -0
  461. data/sig/openai/models/beta/agent_session_item.rbs +116 -0
  462. data/sig/openai/models/beta/agent_session_message.rbs +77 -0
  463. data/sig/openai/models/beta/agent_session_message_content.rbs +52 -0
  464. data/sig/openai/models/beta/agent_session_requires_action_event.rbs +32 -0
  465. data/sig/openai/models/beta/agent_session_subagent_active_event.rbs +32 -0
  466. data/sig/openai/models/beta/agent_session_subagent_closed_event.rbs +32 -0
  467. data/sig/openai/models/beta/agent_session_subagent_created_event.rbs +32 -0
  468. data/sig/openai/models/beta/agent_session_turn_cancelled_event.rbs +47 -0
  469. data/sig/openai/models/beta/agent_session_turn_completed_event.rbs +47 -0
  470. data/sig/openai/models/beta/agent_session_turn_content_part_added_event.rbs +57 -0
  471. data/sig/openai/models/beta/agent_session_turn_content_part_done_event.rbs +57 -0
  472. data/sig/openai/models/beta/agent_session_turn_created_event.rbs +42 -0
  473. data/sig/openai/models/beta/agent_session_turn_failed_event.rbs +47 -0
  474. data/sig/openai/models/beta/agent_session_turn_in_progress_event.rbs +42 -0
  475. data/sig/openai/models/beta/agent_session_turn_item_added_event.rbs +47 -0
  476. data/sig/openai/models/beta/agent_session_turn_item_done_event.rbs +47 -0
  477. data/sig/openai/models/beta/agent_session_turn_output_text_delta_event.rbs +57 -0
  478. data/sig/openai/models/beta/agent_session_turn_output_text_done_event.rbs +57 -0
  479. data/sig/openai/models/beta/agent_session_turn_reasoning_summary_part_added_event.rbs +57 -0
  480. data/sig/openai/models/beta/agent_session_turn_reasoning_summary_part_done_event.rbs +64 -0
  481. data/sig/openai/models/beta/agent_session_turn_reasoning_summary_text_delta_event.rbs +57 -0
  482. data/sig/openai/models/beta/agent_session_turn_reasoning_summary_text_done_event.rbs +57 -0
  483. data/sig/openai/models/beta/agent_text.rbs +39 -0
  484. data/sig/openai/models/beta/agent_text_param.rbs +44 -0
  485. data/sig/openai/models/beta/agent_tool.rbs +226 -0
  486. data/sig/openai/models/beta/agent_tool_param.rbs +251 -0
  487. data/sig/openai/models/beta/agent_update_params.rbs +98 -0
  488. data/sig/openai/models/beta/agent_wait_for_subagents_call_item.rbs +47 -0
  489. data/sig/openai/models/beta/agent_web_search_call_item.rbs +42 -0
  490. data/sig/openai/models/beta/agents/environment_info.rbs +80 -0
  491. data/sig/openai/models/beta/agents/environment_retrieve_params.rbs +27 -0
  492. data/sig/openai/models/beta/agents/environments/environment_file.rbs +43 -0
  493. data/sig/openai/models/beta/agents/environments/environment_template.rbs +255 -0
  494. data/sig/openai/models/beta/agents/environments/environment_template_deleted.rbs +38 -0
  495. data/sig/openai/models/beta/agents/environments/file_create_params.rbs +29 -0
  496. data/sig/openai/models/beta/agents/environments/file_list_params.rbs +72 -0
  497. data/sig/openai/models/beta/agents/environments/template_create_params.rbs +138 -0
  498. data/sig/openai/models/beta/agents/environments/template_delete_params.rbs +32 -0
  499. data/sig/openai/models/beta/agents/environments/template_list_params.rbs +64 -0
  500. data/sig/openai/models/beta/agents/environments/template_retrieve_params.rbs +32 -0
  501. data/sig/openai/models/beta/agents/environments/template_update_params.rbs +143 -0
  502. data/sig/openai/models/beta/agents/session_create_params.rbs +144 -0
  503. data/sig/openai/models/beta/agents/session_delete_params.rbs +27 -0
  504. data/sig/openai/models/beta/agents/session_list_params.rbs +67 -0
  505. data/sig/openai/models/beta/agents/session_retrieve_params.rbs +27 -0
  506. data/sig/openai/models/beta/agents/session_update_params.rbs +134 -0
  507. data/sig/openai/models/beta/agents/sessions/artifact_content_params.rbs +37 -0
  508. data/sig/openai/models/beta/agents/sessions/artifact_delete_params.rbs +37 -0
  509. data/sig/openai/models/beta/agents/sessions/artifact_list_params.rbs +70 -0
  510. data/sig/openai/models/beta/agents/sessions/artifact_retrieve_params.rbs +37 -0
  511. data/sig/openai/models/beta/agents/sessions/event_create_params.rbs +44 -0
  512. data/sig/openai/models/beta/agents/sessions/event_stream_params.rbs +29 -0
  513. data/sig/openai/models/beta/agents/sessions/item_list_params.rbs +69 -0
  514. data/sig/openai/models/beta/agents/sessions/session_artifact.rbs +63 -0
  515. data/sig/openai/models/beta/agents/sessions/session_artifact_deleted.rbs +38 -0
  516. data/sig/openai/models/beta/agents/sessions/subagent_list_params.rbs +69 -0
  517. data/sig/openai/models/beta/agents/sessions/subagent_retrieve_params.rbs +37 -0
  518. data/sig/openai/models/beta/agents/sessions/subagents/item_list_params.rbs +76 -0
  519. data/sig/openai/models/beta/agents/sessions/subagents/turn_list_params.rbs +76 -0
  520. data/sig/openai/models/beta/agents/sessions/subagents/turn_retrieve_params.rbs +44 -0
  521. data/sig/openai/models/beta/agents/sessions/subagents/turns/item_list_params.rbs +83 -0
  522. data/sig/openai/models/beta/agents/sessions/turn.rbs +108 -0
  523. data/sig/openai/models/beta/agents/sessions/turn_list_params.rbs +69 -0
  524. data/sig/openai/models/beta/agents/sessions/turn_retrieve_params.rbs +37 -0
  525. data/sig/openai/models/beta/agents/vault.rbs +44 -0
  526. data/sig/openai/models/beta/agents/vault_create_params.rbs +37 -0
  527. data/sig/openai/models/beta/agents/vault_delete_params.rbs +27 -0
  528. data/sig/openai/models/beta/agents/vault_deleted.rbs +30 -0
  529. data/sig/openai/models/beta/agents/vault_list_params.rbs +69 -0
  530. data/sig/openai/models/beta/agents/vault_retrieve_params.rbs +27 -0
  531. data/sig/openai/models/beta/agents/vault_status.rbs +18 -0
  532. data/sig/openai/models/beta/agents/vault_status_filter.rbs +19 -0
  533. data/sig/openai/models/beta/agents/vaults/credential.rbs +56 -0
  534. data/sig/openai/models/beta/agents/vaults/credential_auth.rbs +104 -0
  535. data/sig/openai/models/beta/agents/vaults/credential_auth_create_param.rbs +121 -0
  536. data/sig/openai/models/beta/agents/vaults/credential_auth_rotate_param.rbs +90 -0
  537. data/sig/openai/models/beta/agents/vaults/credential_create_params.rbs +42 -0
  538. data/sig/openai/models/beta/agents/vaults/credential_delete_params.rbs +37 -0
  539. data/sig/openai/models/beta/agents/vaults/credential_deleted.rbs +32 -0
  540. data/sig/openai/models/beta/agents/vaults/credential_list_params.rbs +76 -0
  541. data/sig/openai/models/beta/agents/vaults/credential_retrieve_params.rbs +37 -0
  542. data/sig/openai/models/beta/agents/vaults/credential_update_params.rbs +42 -0
  543. data/sig/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth.rbs +50 -0
  544. data/sig/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_create_param.rbs +68 -0
  545. data/sig/openai/models/beta/agents/vaults/mcp_oauth_token_endpoint_auth_rotate_param.rbs +57 -0
  546. data/sig/openai/models/beta/beta_response.rbs +6 -2
  547. data/sig/openai/models/beta/beta_response_compaction_compacting_event.rbs +58 -0
  548. data/sig/openai/models/beta/beta_response_stream_event.rbs +1 -0
  549. data/sig/openai/models/beta/beta_responses_client_event.rbs +13 -2
  550. data/sig/openai/models/beta/beta_responses_server_event.rbs +35 -0
  551. data/sig/openai/models/beta/environment.rbs +181 -0
  552. data/sig/openai/models/beta/environment_param.rbs +183 -0
  553. data/sig/openai/models/beta/hosted_environment_file.rbs +42 -0
  554. data/sig/openai/models/beta/hosted_environment_file_id.rbs +42 -0
  555. data/sig/openai/models/beta/hosted_environment_file_param.rbs +47 -0
  556. data/sig/openai/models/beta/hosted_plugin.rbs +23 -0
  557. data/sig/openai/models/beta/hosted_plugin_param.rbs +37 -0
  558. data/sig/openai/models/beta/hosted_skill.rbs +32 -0
  559. data/sig/openai/models/beta/hosted_skill_param.rbs +70 -0
  560. data/sig/openai/models/beta/hosted_skill_reference.rbs +42 -0
  561. data/sig/openai/models/beta/inline_capability_source_param.rbs +28 -0
  562. data/sig/openai/models/beta/input_content.rbs +39 -0
  563. data/sig/openai/models/beta/input_content_param.rbs +39 -0
  564. data/sig/openai/models/beta/mcp_transport.rbs +63 -0
  565. data/sig/openai/models/beta/mcp_transport_param.rbs +89 -0
  566. data/sig/openai/models/beta/multi_agent_config.rbs +21 -0
  567. data/sig/openai/models/beta/multi_agent_config_param.rbs +23 -0
  568. data/sig/openai/models/beta/output_text.rbs +17 -0
  569. data/sig/openai/models/beta/persisted_agent_tool.rbs +237 -0
  570. data/sig/openai/models/beta/persisted_agent_tool_param.rbs +251 -0
  571. data/sig/openai/models/beta/persisted_mcp_transport.rbs +75 -0
  572. data/sig/openai/models/beta/persisted_mcp_transport_param.rbs +79 -0
  573. data/sig/openai/models/beta/response_compact_params.rbs +6 -2
  574. data/sig/openai/models/beta/response_create_params.rbs +13 -2
  575. data/sig/openai/models/beta/session_error.rbs +32 -0
  576. data/sig/openai/models/beta/session_turn_error.rbs +100 -0
  577. data/sig/openai/models/beta/setup_command_param.rbs +17 -0
  578. data/sig/openai/models/beta/subagent.rbs +76 -0
  579. data/sig/openai/models/beta/summary_text.rbs +17 -0
  580. data/sig/openai/models/beta/text_format.rbs +39 -0
  581. data/sig/openai/models/beta/text_format_param.rbs +40 -0
  582. data/sig/openai/models/beta/token_usage.rbs +62 -0
  583. data/sig/openai/models/beta/web_search_action.rbs +85 -0
  584. data/sig/openai/models/chat_model.rbs +6 -2
  585. data/sig/openai/models/responses/response_compact_params.rbs +6 -2
  586. data/sig/openai/models/responses/response_compaction_compacting_event.rbs +37 -0
  587. data/sig/openai/models/responses/response_create_params.rbs +7 -0
  588. data/sig/openai/models/responses/response_stream_event.rbs +1 -0
  589. data/sig/openai/models/responses/responses_client_event.rbs +7 -0
  590. data/sig/openai/models/responses/responses_server_event.rbs +32 -0
  591. data/sig/openai/resources/beta/agents/environments/files.rbs +28 -0
  592. data/sig/openai/resources/beta/agents/environments/templates.rbs +57 -0
  593. data/sig/openai/resources/beta/agents/environments.rbs +20 -0
  594. data/sig/openai/resources/beta/agents/sessions/artifacts.rbs +40 -0
  595. data/sig/openai/resources/beta/agents/sessions/events.rbs +25 -0
  596. data/sig/openai/resources/beta/agents/sessions/items.rbs +21 -0
  597. data/sig/openai/resources/beta/agents/sessions/subagents/items.rbs +24 -0
  598. data/sig/openai/resources/beta/agents/sessions/subagents/turns/items.rbs +27 -0
  599. data/sig/openai/resources/beta/agents/sessions/subagents/turns.rbs +33 -0
  600. data/sig/openai/resources/beta/agents/sessions/subagents.rbs +31 -0
  601. data/sig/openai/resources/beta/agents/sessions/turns.rbs +27 -0
  602. data/sig/openai/resources/beta/agents/sessions.rbs +66 -0
  603. data/sig/openai/resources/beta/agents/vaults/credentials.rbs +48 -0
  604. data/sig/openai/resources/beta/agents/vaults.rbs +37 -0
  605. data/sig/openai/resources/beta/agents.rbs +59 -0
  606. data/sig/openai/resources/beta.rbs +2 -0
  607. metadata +540 -2
@@ -0,0 +1,130 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ # An action performed by the web search tool.
7
+ module WebSearchAction
8
+ extend OpenAI::Internal::Type::Union
9
+
10
+ discriminator :type
11
+
12
+ # A search query or group of search queries.
13
+ variant :search, -> { OpenAI::Beta::WebSearchAction::Search }
14
+
15
+ # Opens a web page.
16
+ variant :open_page, -> { OpenAI::Beta::WebSearchAction::OpenPage }
17
+
18
+ # Finds text within a web page.
19
+ variant :find_in_page, -> { OpenAI::Beta::WebSearchAction::FindInPage }
20
+
21
+ # Another web search action.
22
+ variant :other, -> { OpenAI::Beta::WebSearchAction::Other }
23
+
24
+ class Search < OpenAI::Internal::Type::BaseModel
25
+ # @!attribute queries
26
+ # The search queries, when multiple queries were used.
27
+ #
28
+ # @return [Array<String>, nil]
29
+ required :queries, OpenAI::Internal::Type::ArrayOf[String], nil?: true
30
+
31
+ # @!attribute query
32
+ # The search query, when a single query was used.
33
+ #
34
+ # @return [String, nil]
35
+ required :query, String, nil?: true
36
+
37
+ # @!attribute type
38
+ # The type of the object. Always `search`.
39
+ #
40
+ # @return [Symbol, :search]
41
+ required :type, const: :search
42
+
43
+ # @!method initialize(queries:, query:, type: :search)
44
+ # A search query or group of search queries.
45
+ #
46
+ # @param queries [Array<String>, nil]
47
+ # The search queries, when multiple queries were used.
48
+ #
49
+ # @param query [String, nil]
50
+ # The search query, when a single query was used.
51
+ #
52
+ # @param type [Symbol, :search]
53
+ # The type of the object. Always `search`.
54
+ end
55
+
56
+ class OpenPage < OpenAI::Internal::Type::BaseModel
57
+ # @!attribute type
58
+ # The type of the object. Always `open_page`.
59
+ #
60
+ # @return [Symbol, :open_page]
61
+ required :type, const: :open_page
62
+
63
+ # @!attribute url
64
+ # The URL of the page that was opened.
65
+ #
66
+ # @return [String, nil]
67
+ required :url, String, nil?: true
68
+
69
+ # @!method initialize(url:, type: :open_page)
70
+ # Opens a web page.
71
+ #
72
+ # @param url [String, nil]
73
+ # The URL of the page that was opened.
74
+ #
75
+ # @param type [Symbol, :open_page]
76
+ # The type of the object. Always `open_page`.
77
+ end
78
+
79
+ class FindInPage < OpenAI::Internal::Type::BaseModel
80
+ # @!attribute pattern
81
+ # The text pattern that was searched for.
82
+ #
83
+ # @return [String, nil]
84
+ required :pattern, String, nil?: true
85
+
86
+ # @!attribute type
87
+ # The type of the object. Always `find_in_page`.
88
+ #
89
+ # @return [Symbol, :find_in_page]
90
+ required :type, const: :find_in_page
91
+
92
+ # @!attribute url
93
+ # The URL of the page that was searched.
94
+ #
95
+ # @return [String, nil]
96
+ required :url, String, nil?: true
97
+
98
+ # @!method initialize(pattern:, url:, type: :find_in_page)
99
+ # Finds text within a web page.
100
+ #
101
+ # @param pattern [String, nil]
102
+ # The text pattern that was searched for.
103
+ #
104
+ # @param url [String, nil]
105
+ # The URL of the page that was searched.
106
+ #
107
+ # @param type [Symbol, :find_in_page]
108
+ # The type of the object. Always `find_in_page`.
109
+ end
110
+
111
+ class Other < OpenAI::Internal::Type::BaseModel
112
+ # @!attribute type
113
+ # The type of the object. Always `other`.
114
+ #
115
+ # @return [Symbol, :other]
116
+ required :type, const: :other
117
+
118
+ # @!method initialize(type: :other)
119
+ # Another web search action.
120
+ #
121
+ # @param type [Symbol, :other]
122
+ # The type of the object. Always `other`.
123
+ end
124
+
125
+ # @!method self.variants
126
+ # @return [Array(OpenAI::Models::Beta::WebSearchAction::Search, OpenAI::Models::Beta::WebSearchAction::OpenPage, OpenAI::Models::Beta::WebSearchAction::FindInPage, OpenAI::Models::Beta::WebSearchAction::Other)]
127
+ end
128
+ end
129
+ end
130
+ end
@@ -1080,7 +1080,7 @@ module OpenAI
1080
1080
  # An {OpenAI::BaseModel} can be provided and implicitly converted into {OpenAI::Models::ResponseFormatJSONSchema}.
1081
1081
  # See examples for more details.
1082
1082
  #
1083
- # Learn more about [Structured Outputs](https://platform.openai.com/docs/guides/structured-outputs).
1083
+ # Learn more about [Structured Outputs](https://developers.openai.com/api/docs/guides/structured-outputs).
1084
1084
  variant -> { OpenAI::StructuredOutput::JsonSchemaConverter }
1085
1085
 
1086
1086
  # JSON object response format. An older method of generating JSON responses.
@@ -25,7 +25,6 @@ module OpenAI
25
25
  GPT_5_1 = :"gpt-5.1"
26
26
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
27
27
  GPT_5_1_CODEX = :"gpt-5.1-codex"
28
- GPT_5_1_MINI = :"gpt-5.1-mini"
29
28
  GPT_5_1_CHAT_LATEST = :"gpt-5.1-chat-latest"
30
29
  GPT_5 = :"gpt-5"
31
30
  GPT_5_MINI = :"gpt-5-mini"
@@ -56,6 +55,8 @@ module OpenAI
56
55
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
57
56
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
58
57
  GPT_4O_2024_05_13 = :"gpt-4o-2024-05-13"
58
+ GPT_AUDIO_MINI = :"gpt-audio-mini"
59
+ GPT_AUDIO_MINI_2025_12_15 = :"gpt-audio-mini-2025-12-15"
59
60
  GPT_4O_AUDIO_PREVIEW = :"gpt-4o-audio-preview"
60
61
  GPT_4O_AUDIO_PREVIEW_2024_10_01 = :"gpt-4o-audio-preview-2024-10-01"
61
62
  GPT_4O_AUDIO_PREVIEW_2024_12_17 = :"gpt-4o-audio-preview-2024-12-17"
@@ -89,6 +90,7 @@ module OpenAI
89
90
  GPT_3_5_TURBO_1106 = :"gpt-3.5-turbo-1106"
90
91
  GPT_3_5_TURBO_0125 = :"gpt-3.5-turbo-0125"
91
92
  GPT_3_5_TURBO_16K_0613 = :"gpt-3.5-turbo-16k-0613"
93
+ GPT_5_1_MINI = :"gpt-5.1-mini"
92
94
 
93
95
  # @!method self.values
94
96
  # @return [Array<Symbol>]
@@ -207,8 +207,6 @@ module OpenAI
207
207
 
208
208
  variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_5_1_CODEX }
209
209
 
210
- variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_5_1_MINI }
211
-
212
210
  variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_5_1_CHAT_LATEST }
213
211
 
214
212
  variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_5 }
@@ -269,6 +267,10 @@ module OpenAI
269
267
 
270
268
  variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_4O_2024_05_13 }
271
269
 
270
+ variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_AUDIO_MINI }
271
+
272
+ variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_AUDIO_MINI_2025_12_15 }
273
+
272
274
  variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_4O_AUDIO_PREVIEW }
273
275
 
274
276
  variant(
@@ -349,6 +351,8 @@ module OpenAI
349
351
 
350
352
  variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_3_5_TURBO_16K_0613 }
351
353
 
354
+ variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::GPT_5_1_MINI }
355
+
352
356
  variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::O1_PRO }
353
357
 
354
358
  variant const: -> { OpenAI::Models::Responses::ResponseCompactParams::Model::O1_PRO_2025_03_19 }
@@ -422,7 +426,6 @@ module OpenAI
422
426
  GPT_5_1 = :"gpt-5.1"
423
427
  GPT_5_1_2025_11_13 = :"gpt-5.1-2025-11-13"
424
428
  GPT_5_1_CODEX = :"gpt-5.1-codex"
425
- GPT_5_1_MINI = :"gpt-5.1-mini"
426
429
  GPT_5_1_CHAT_LATEST = :"gpt-5.1-chat-latest"
427
430
  GPT_5 = :"gpt-5"
428
431
  GPT_5_MINI = :"gpt-5-mini"
@@ -453,6 +456,8 @@ module OpenAI
453
456
  GPT_4O_2024_11_20 = :"gpt-4o-2024-11-20"
454
457
  GPT_4O_2024_08_06 = :"gpt-4o-2024-08-06"
455
458
  GPT_4O_2024_05_13 = :"gpt-4o-2024-05-13"
459
+ GPT_AUDIO_MINI = :"gpt-audio-mini"
460
+ GPT_AUDIO_MINI_2025_12_15 = :"gpt-audio-mini-2025-12-15"
456
461
  GPT_4O_AUDIO_PREVIEW = :"gpt-4o-audio-preview"
457
462
  GPT_4O_AUDIO_PREVIEW_2024_10_01 = :"gpt-4o-audio-preview-2024-10-01"
458
463
  GPT_4O_AUDIO_PREVIEW_2024_12_17 = :"gpt-4o-audio-preview-2024-12-17"
@@ -486,6 +491,7 @@ module OpenAI
486
491
  GPT_3_5_TURBO_1106 = :"gpt-3.5-turbo-1106"
487
492
  GPT_3_5_TURBO_0125 = :"gpt-3.5-turbo-0125"
488
493
  GPT_3_5_TURBO_16K_0613 = :"gpt-3.5-turbo-16k-0613"
494
+ GPT_5_1_MINI = :"gpt-5.1-mini"
489
495
  O1_PRO = :"o1-pro"
490
496
  O1_PRO_2025_03_19 = :"o1-pro-2025-03-19"
491
497
  O3_PRO = :"o3-pro"
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Responses
6
+ class ResponseCompactionCompactingEvent < OpenAI::Internal::Type::BaseModel
7
+ # @!attribute item_id
8
+ # The ID of the compaction output item.
9
+ #
10
+ # @return [String]
11
+ required :item_id, String
12
+
13
+ # @!attribute output_index
14
+ # The index of the compaction output item.
15
+ #
16
+ # @return [Integer]
17
+ required :output_index, Integer
18
+
19
+ # @!attribute sequence_number
20
+ # The sequence number of the event that was emitted.
21
+ #
22
+ # @return [Integer]
23
+ required :sequence_number, Integer
24
+
25
+ # @!attribute type
26
+ # The type of the event, always `response.compaction.compacting`.
27
+ #
28
+ # @return [Symbol, :"response.compaction.compacting"]
29
+ required :type, const: :"response.compaction.compacting"
30
+
31
+ # @!method initialize(item_id:, output_index:, sequence_number:, type: :"response.compaction.compacting")
32
+ # Emitted when new summary content is sampled for a compaction trigger. Contains
33
+ # no summary content.
34
+ #
35
+ # @param item_id [String]
36
+ # The ID of the compaction output item.
37
+ #
38
+ # @param output_index [Integer]
39
+ # The index of the compaction output item.
40
+ #
41
+ # @param sequence_number [Integer]
42
+ # The sequence number of the event that was emitted.
43
+ #
44
+ # @param type [Symbol, :"response.compaction.compacting"]
45
+ # The type of the event, always `response.compaction.compacting`.
46
+ end
47
+ end
48
+ end
49
+ end
@@ -817,6 +817,13 @@ module OpenAI
817
817
  # @return [Symbol, OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::Mode, nil]
818
818
  optional :mode, enum: -> { OpenAI::Responses::ResponseCreateParams::PromptCacheOptions::Mode }
819
819
 
820
+ # @!attribute prewarm
821
+ # Prepares the prompt cache without generating output. Defaults to `false`. When
822
+ # set to `true`, overrides the `generate` field to `false`.
823
+ #
824
+ # @return [Boolean, nil]
825
+ optional :prewarm, OpenAI::Internal::Type::Boolean
826
+
820
827
  # @!attribute ttl
821
828
  # The minimum lifetime applied to every implicit and explicit cache breakpoint
822
829
  # written by the request. Defaults to `30m`, which is currently the only supported
@@ -825,7 +832,7 @@ module OpenAI
825
832
  # @return [Symbol, OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::Ttl, nil]
826
833
  optional :ttl, enum: -> { OpenAI::Responses::ResponseCreateParams::PromptCacheOptions::Ttl }
827
834
 
828
- # @!method initialize(comparison_response_id: nil, mode: nil, ttl: nil)
835
+ # @!method initialize(comparison_response_id: nil, mode: nil, prewarm: nil, ttl: nil)
829
836
  # Options for prompt caching. Supported for `gpt-5.6` and later models. By
830
837
  # default, OpenAI automatically chooses one implicit cache breakpoint. You can add
831
838
  # explicit breakpoints to content blocks with `prompt_cache_breakpoint`. Each
@@ -848,6 +855,10 @@ module OpenAI
848
855
  # latest four explicit breakpoints. If there are no explicit breakpoints, the
849
856
  # request does not use prompt caching.
850
857
  #
858
+ # @param prewarm [Boolean]
859
+ # Prepares the prompt cache without generating output. Defaults to `false`. When
860
+ # set to `true`, overrides the `generate` field to `false`.
861
+ #
851
862
  # @param ttl [Symbol, OpenAI::Models::Responses::ResponseCreateParams::PromptCacheOptions::Ttl]
852
863
  # The minimum lifetime applied to every implicit and explicit cache breakpoint
853
864
  # written by the request. Defaults to `30m`, which is currently the only supported
@@ -51,6 +51,9 @@ module OpenAI
51
51
  -> { OpenAI::Responses::ResponseCodeInterpreterCallInterpretingEvent }
52
52
  )
53
53
 
54
+ # Emitted when new summary content is sampled for a compaction trigger. Contains no summary content.
55
+ variant :"response.compaction.compacting", -> { OpenAI::Responses::ResponseCompactionCompactingEvent }
56
+
54
57
  # Emitted when the model response is complete.
55
58
  variant :"response.completed", -> { OpenAI::Responses::ResponseCompletedEvent }
56
59
 
@@ -269,7 +272,7 @@ module OpenAI
269
272
  )
270
273
 
271
274
  # @!method self.variants
272
- # @return [Array(OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseShellCallCommandAddedEvent, OpenAI::Models::Responses::ResponseShellCallCommandDeltaEvent, OpenAI::Models::Responses::ResponseShellCallCommandDoneEvent, OpenAI::Models::Responses::ResponseShellCallOutputContentDeltaEvent, OpenAI::Models::Responses::ResponseShellCallOutputContentDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseReasoningTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseImageGenCallCompletedEvent, OpenAI::Models::Responses::ResponseImageGenCallGeneratingEvent, OpenAI::Models::Responses::ResponseImageGenCallInProgressEvent, OpenAI::Models::Responses::ResponseImageGenCallPartialImageEvent, OpenAI::Models::Responses::ResponseMcpCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseMcpCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseMcpCallCompletedEvent, OpenAI::Models::Responses::ResponseMcpCallFailedEvent, OpenAI::Models::Responses::ResponseMcpCallInProgressEvent, OpenAI::Models::Responses::ResponseMcpListToolsCompletedEvent, OpenAI::Models::Responses::ResponseMcpListToolsFailedEvent, OpenAI::Models::Responses::ResponseMcpListToolsInProgressEvent, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent, OpenAI::Models::Responses::ResponseQueuedEvent, OpenAI::Models::Responses::ResponseCustomToolCallInputDeltaEvent, OpenAI::Models::Responses::ResponseCustomToolCallInputDoneEvent)]
275
+ # @return [Array(OpenAI::Models::Responses::ResponseAudioDeltaEvent, OpenAI::Models::Responses::ResponseAudioDoneEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDeltaEvent, OpenAI::Models::Responses::ResponseAudioTranscriptDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDeltaEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCodeDoneEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallCompletedEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInProgressEvent, OpenAI::Models::Responses::ResponseCodeInterpreterCallInterpretingEvent, OpenAI::Models::Responses::ResponseCompactionCompactingEvent, OpenAI::Models::Responses::ResponseCompletedEvent, OpenAI::Models::Responses::ResponseContentPartAddedEvent, OpenAI::Models::Responses::ResponseContentPartDoneEvent, OpenAI::Models::Responses::ResponseCreatedEvent, OpenAI::Models::Responses::ResponseErrorEvent, OpenAI::Models::Responses::ResponseFileSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseFileSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseFileSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseFunctionCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseShellCallCommandAddedEvent, OpenAI::Models::Responses::ResponseShellCallCommandDeltaEvent, OpenAI::Models::Responses::ResponseShellCallCommandDoneEvent, OpenAI::Models::Responses::ResponseShellCallOutputContentDeltaEvent, OpenAI::Models::Responses::ResponseShellCallOutputContentDoneEvent, OpenAI::Models::Responses::ResponseInProgressEvent, OpenAI::Models::Responses::ResponseFailedEvent, OpenAI::Models::Responses::ResponseIncompleteEvent, OpenAI::Models::Responses::ResponseOutputItemAddedEvent, OpenAI::Models::Responses::ResponseOutputItemDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartAddedEvent, OpenAI::Models::Responses::ResponseReasoningSummaryPartDoneEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningSummaryTextDoneEvent, OpenAI::Models::Responses::ResponseReasoningTextDeltaEvent, OpenAI::Models::Responses::ResponseReasoningTextDoneEvent, OpenAI::Models::Responses::ResponseRefusalDeltaEvent, OpenAI::Models::Responses::ResponseRefusalDoneEvent, OpenAI::Models::Responses::ResponseTextDeltaEvent, OpenAI::Models::Responses::ResponseTextDoneEvent, OpenAI::Models::Responses::ResponseWebSearchCallCompletedEvent, OpenAI::Models::Responses::ResponseWebSearchCallInProgressEvent, OpenAI::Models::Responses::ResponseWebSearchCallSearchingEvent, OpenAI::Models::Responses::ResponseImageGenCallCompletedEvent, OpenAI::Models::Responses::ResponseImageGenCallGeneratingEvent, OpenAI::Models::Responses::ResponseImageGenCallInProgressEvent, OpenAI::Models::Responses::ResponseImageGenCallPartialImageEvent, OpenAI::Models::Responses::ResponseMcpCallArgumentsDeltaEvent, OpenAI::Models::Responses::ResponseMcpCallArgumentsDoneEvent, OpenAI::Models::Responses::ResponseMcpCallCompletedEvent, OpenAI::Models::Responses::ResponseMcpCallFailedEvent, OpenAI::Models::Responses::ResponseMcpCallInProgressEvent, OpenAI::Models::Responses::ResponseMcpListToolsCompletedEvent, OpenAI::Models::Responses::ResponseMcpListToolsFailedEvent, OpenAI::Models::Responses::ResponseMcpListToolsInProgressEvent, OpenAI::Models::Responses::ResponseOutputTextAnnotationAddedEvent, OpenAI::Models::Responses::ResponseQueuedEvent, OpenAI::Models::Responses::ResponseCustomToolCallInputDeltaEvent, OpenAI::Models::Responses::ResponseCustomToolCallInputDoneEvent)]
273
276
  end
274
277
  end
275
278
  end
@@ -941,6 +941,13 @@ module OpenAI
941
941
  enum: -> { OpenAI::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::Mode }
942
942
  )
943
943
 
944
+ # @!attribute prewarm
945
+ # Prepares the prompt cache without generating output. Defaults to `false`. When
946
+ # set to `true`, overrides the `generate` field to `false`.
947
+ #
948
+ # @return [Boolean, nil]
949
+ optional :prewarm, OpenAI::Internal::Type::Boolean
950
+
944
951
  # @!attribute ttl
945
952
  # The minimum lifetime applied to every implicit and explicit cache breakpoint
946
953
  # written by the request. Defaults to `30m`, which is currently the only supported
@@ -952,7 +959,7 @@ module OpenAI
952
959
  enum: -> { OpenAI::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::Ttl }
953
960
  )
954
961
 
955
- # @!method initialize(comparison_response_id: nil, mode: nil, ttl: nil)
962
+ # @!method initialize(comparison_response_id: nil, mode: nil, prewarm: nil, ttl: nil)
956
963
  # Options for prompt caching. Supported for `gpt-5.6` and later models. By
957
964
  # default, OpenAI automatically chooses one implicit cache breakpoint. You can add
958
965
  # explicit breakpoints to content blocks with `prompt_cache_breakpoint`. Each
@@ -975,6 +982,10 @@ module OpenAI
975
982
  # latest four explicit breakpoints. If there are no explicit breakpoints, the
976
983
  # request does not use prompt caching.
977
984
  #
985
+ # @param prewarm [Boolean]
986
+ # Prepares the prompt cache without generating output. Defaults to `false`. When
987
+ # set to `true`, overrides the `generate` field to `false`.
988
+ #
978
989
  # @param ttl [Symbol, OpenAI::Models::Responses::ResponsesClientEvent::ResponseCreate::PromptCacheOptions::Ttl]
979
990
  # The minimum lifetime applied to every implicit and explicit cache breakpoint
980
991
  # written by the request. Defaults to `30m`, which is currently the only supported
@@ -100,6 +100,12 @@ module OpenAI
100
100
  -> { OpenAI::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsInterpreting }
101
101
  )
102
102
 
103
+ # Emitted when new summary content is sampled for a compaction trigger. Contains no summary content.
104
+ variant(
105
+ :"response.compaction.compacting",
106
+ -> { OpenAI::Responses::ResponsesServerEvent::ResponseCompactionWsCompacting }
107
+ )
108
+
103
109
  # Emitted when the model response is complete.
104
110
  variant :"response.completed", -> { OpenAI::Responses::ResponsesServerEvent::ResponseWsCompleted }
105
111
 
@@ -606,6 +612,35 @@ module OpenAI
606
612
  # The type of the event. Always `response.code_interpreter_call.interpreting`.
607
613
  end
608
614
 
615
+ class ResponseCompactionWsCompacting < OpenAI::Models::Responses::ResponseCompactionCompactingEvent
616
+ # @!attribute stream_id
617
+ # The WebSocket lane that emitted this event. This field is present when the
618
+ # originating `response.create` event supplied a `stream_id`.
619
+ #
620
+ # @return [String, nil]
621
+ optional :stream_id, String
622
+
623
+ # @!method initialize(item_id:, output_index:, sequence_number:, stream_id: nil, type: :"response.compaction.compacting")
624
+ # Emitted when new summary content is sampled for a compaction trigger. Contains
625
+ # no summary content.
626
+ #
627
+ # @param item_id [String]
628
+ # The ID of the compaction output item.
629
+ #
630
+ # @param output_index [Integer]
631
+ # The index of the compaction output item.
632
+ #
633
+ # @param sequence_number [Integer]
634
+ # The sequence number of the event that was emitted.
635
+ #
636
+ # @param stream_id [String]
637
+ # The WebSocket lane that emitted this event. This field is present when the
638
+ # originating `response.create` event supplied a `stream_id`.
639
+ #
640
+ # @param type [Symbol, :"response.compaction.compacting"]
641
+ # The type of the event, always `response.compaction.compacting`.
642
+ end
643
+
609
644
  class ResponseWsCompleted < OpenAI::Models::Responses::ResponseCompletedEvent
610
645
  # @!attribute stream_id
611
646
  # The WebSocket lane that emitted this event. This field is present when the
@@ -2315,7 +2350,7 @@ module OpenAI
2315
2350
  end
2316
2351
 
2317
2352
  # @!method self.variants
2318
- # @return [Array(OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsError, OpenAI::Models::Responses::ResponseSteerAcceptedEvent, OpenAI::Models::Responses::ResponseSteerPendingEvent, OpenAI::Models::Responses::ResponseSteerFailedEvent, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioTranscriptWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioTranscriptWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallCodeWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallCodeWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsInterpreting, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseContentPartWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseContentPartWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsCreated, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallWsSearching, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFunctionCallArgumentsWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFunctionCallArgumentsWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseShellCallCommandWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseShellCallCommandWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseShellCallCommandWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseShellCallOutputContentWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseShellCallOutputContentWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsIncomplete, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputItemWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputItemWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryPartWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryPartWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseRefusalWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseRefusalWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallWsSearching, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallWsGenerating, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallPartialWsImage, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallArgumentsWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallArgumentsWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputTextAnnotationWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsQueued, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCustomToolCallInputWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCustomToolCallInputWsDone)]
2353
+ # @return [Array(OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsError, OpenAI::Models::Responses::ResponseSteerAcceptedEvent, OpenAI::Models::Responses::ResponseSteerPendingEvent, OpenAI::Models::Responses::ResponseSteerFailedEvent, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioTranscriptWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseAudioTranscriptWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallCodeWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallCodeWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCodeInterpreterCallWsInterpreting, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCompactionWsCompacting, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseContentPartWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseContentPartWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsCreated, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFileSearchCallWsSearching, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFunctionCallArgumentsWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseFunctionCallArgumentsWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseShellCallCommandWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseShellCallCommandWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseShellCallCommandWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseShellCallOutputContentWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseShellCallOutputContentWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsIncomplete, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputItemWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputItemWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryPartWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryPartWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningSummaryTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseReasoningTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseRefusalWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseRefusalWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseTextWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseTextWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWebSearchCallWsSearching, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallWsGenerating, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseImageGenCallPartialWsImage, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallArgumentsWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallArgumentsWsDone, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpCallInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsWsCompleted, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsWsFailed, OpenAI::Models::Responses::ResponsesServerEvent::ResponseMcpListToolsInWsProgress, OpenAI::Models::Responses::ResponsesServerEvent::ResponseOutputTextAnnotationWsAdded, OpenAI::Models::Responses::ResponsesServerEvent::ResponseWsQueued, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCustomToolCallInputWsDelta, OpenAI::Models::Responses::ResponsesServerEvent::ResponseCustomToolCallInputWsDone)]
2319
2354
  end
2320
2355
  end
2321
2356
  end
@@ -57,10 +57,9 @@ module OpenAI
57
57
  # @see OpenAI::Models::Webhooks::RealtimeCallIncomingWebhookEvent#data
58
58
  class Data < OpenAI::Internal::Type::BaseModel
59
59
  # @!attribute call_id
60
- # The Transceiver `rtc_...` ID of the pending SIP session. The paired
61
- # `live.transport.incoming` event derives its `session_id` by replacing the `rtc_`
62
- # prefix with `live_`. Use the ID returned by the event with the corresponding
63
- # Realtime or Live API.
60
+ # The ID of the pending SIP call. Pass this value unchanged when accepting or
61
+ # rejecting the call through the Realtime API. For the Live API, use the
62
+ # `session_id` from `live.transport.incoming` instead.
64
63
  #
65
64
  # @return [String]
66
65
  required :call_id, String
@@ -80,10 +79,9 @@ module OpenAI
80
79
  # Event data payload.
81
80
  #
82
81
  # @param call_id [String]
83
- # The Transceiver `rtc_...` ID of the pending SIP session. The paired
84
- # `live.transport.incoming` event derives its `session_id` by replacing the `rtc_`
85
- # prefix with `live_`. Use the ID returned by the event with the corresponding
86
- # Realtime or Live API.
82
+ # The ID of the pending SIP call. Pass this value unchanged when accepting or
83
+ # rejecting the call through the Realtime API. For the Live API, use the
84
+ # `session_id` from `live.transport.incoming` instead.
87
85
  #
88
86
  # @param sip_headers [Array<OpenAI::Models::Webhooks::RealtimeCallIncomingWebhookEvent::Data::SipHeader>]
89
87
  # Headers from the SIP INVITE, excluding SIP authorization headers. Retained
@@ -0,0 +1,89 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Resources
5
+ class Beta
6
+ class Agents
7
+ class Environments
8
+ class Files
9
+ # Copies inline bytes or a Files API file into a connected execution environment.
10
+ # See
11
+ # [environment files](https://developers.openai.com/api/docs/guides/agents-api/environments/files).
12
+ #
13
+ # @overload create(environment_id, hosted_environment_file_param:, request_options: {})
14
+ #
15
+ # @param environment_id [String]
16
+ # The ID of the environment.
17
+ #
18
+ # @param hosted_environment_file_param [OpenAI::Models::Beta::HostedEnvironmentFileParam::FileID, OpenAI::Models::Beta::HostedEnvironmentFileParam::Inline]
19
+ # A file materialized in an OpenAI-hosted execution environment.
20
+ #
21
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
22
+ #
23
+ # @return [OpenAI::Models::Beta::Agents::Environments::EnvironmentFile]
24
+ #
25
+ # @see OpenAI::Models::Beta::Agents::Environments::FileCreateParams
26
+ def create(environment_id, params)
27
+ parsed, options = OpenAI::Beta::Agents::Environments::FileCreateParams.dump_request(params)
28
+ @client.request(
29
+ method: :post,
30
+ path: ["agents/environments/%1$s/files", environment_id],
31
+ body: parsed[:hosted_environment_file_param],
32
+ model: OpenAI::Beta::Agents::Environments::EnvironmentFile,
33
+ security: {bearer_auth: true},
34
+ options: {extra_headers: {"OpenAI-Beta" => "agents=v1"}, **options}
35
+ )
36
+ end
37
+
38
+ # Lists live files on a connected execution environment with optional directory
39
+ # filtering and opaque cursor pagination. See
40
+ # [environment files](https://developers.openai.com/api/docs/guides/agents-api/environments/files).
41
+ #
42
+ # @overload list(environment_id, limit: nil, order: nil, page: nil, path: nil, request_options: {})
43
+ #
44
+ # @param environment_id [String]
45
+ # The ID of the environment.
46
+ #
47
+ # @param limit [Integer, nil]
48
+ # The maximum number of files to return, between 1 and 100.
49
+ #
50
+ # @param order [Symbol, OpenAI::Models::Beta::Agents::Environments::FileListParams::Order]
51
+ # Sort by case-sensitive path components. Defaults to descending.
52
+ #
53
+ # @param page [String]
54
+ # The opaque token from the previous page. Keep the same path, order, and limit.
55
+ #
56
+ # @param path [String, nil]
57
+ # Restrict the listing to this absolute workspace directory.
58
+ #
59
+ # @param request_options [OpenAI::RequestOptions, Hash{Symbol=>Object}, nil]
60
+ #
61
+ # @return [OpenAI::Internal::TokenPage<OpenAI::Models::Beta::Agents::Environments::EnvironmentFile>]
62
+ #
63
+ # @see OpenAI::Models::Beta::Agents::Environments::FileListParams
64
+ def list(environment_id, params = {})
65
+ parsed, options = OpenAI::Beta::Agents::Environments::FileListParams.dump_request(params)
66
+ query = OpenAI::Internal::Util.encode_query_params(parsed)
67
+ @client.request(
68
+ method: :get,
69
+ path: ["agents/environments/%1$s/files", environment_id],
70
+ query: query,
71
+ page: OpenAI::Internal::TokenPage,
72
+ model: OpenAI::Beta::Agents::Environments::EnvironmentFile,
73
+ security: {bearer_auth: true},
74
+ options: {extra_headers: {"OpenAI-Beta" => "agents=v1"}, **options}
75
+ )
76
+ end
77
+
78
+ # @api private
79
+ #
80
+ # @param client [OpenAI::Client]
81
+ def initialize(client:)
82
+ @client = client
83
+ end
84
+ end
85
+ end
86
+ end
87
+ end
88
+ end
89
+ end