openai 0.68.0 → 0.69.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 (701) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +23 -0
  3. data/README.md +7 -7
  4. data/lib/openai/internal/type/enum.rb +6 -6
  5. data/lib/openai/internal/util.rb +14 -2
  6. data/lib/openai/models/beta/assistant_create_params.rb +7 -14
  7. data/lib/openai/models/beta/assistant_update_params.rb +7 -14
  8. data/lib/openai/models/beta/beta_apply_patch_tool.rb +44 -0
  9. data/lib/openai/models/beta/beta_compacted_response.rb +58 -0
  10. data/lib/openai/models/beta/beta_computer_action.rb +398 -0
  11. data/lib/openai/models/beta/beta_computer_action_list.rb +13 -0
  12. data/lib/openai/models/beta/beta_computer_tool.rb +23 -0
  13. data/lib/openai/models/beta/beta_computer_use_preview_tool.rb +63 -0
  14. data/lib/openai/models/beta/beta_container_auto.rb +96 -0
  15. data/lib/openai/models/beta/beta_container_network_policy_allowlist.rb +37 -0
  16. data/lib/openai/models/beta/beta_container_network_policy_disabled.rb +20 -0
  17. data/lib/openai/models/beta/beta_container_network_policy_domain_secret.rb +36 -0
  18. data/lib/openai/models/beta/beta_container_reference.rb +28 -0
  19. data/lib/openai/models/beta/beta_custom_tool.rb +148 -0
  20. data/lib/openai/models/beta/beta_easy_input_message.rb +120 -0
  21. data/lib/openai/models/beta/beta_file_search_tool.rb +424 -0
  22. data/lib/openai/models/beta/beta_function_shell_tool.rb +67 -0
  23. data/lib/openai/models/beta/beta_function_tool.rb +97 -0
  24. data/lib/openai/models/beta/beta_inline_skill.rb +44 -0
  25. data/lib/openai/models/beta/beta_inline_skill_source.rb +38 -0
  26. data/lib/openai/models/beta/beta_local_environment.rb +28 -0
  27. data/lib/openai/models/beta/beta_local_skill.rb +36 -0
  28. data/lib/openai/models/beta/beta_namespace_tool.rb +146 -0
  29. data/lib/openai/models/beta/beta_response.rb +1425 -0
  30. data/lib/openai/models/beta/beta_response_apply_patch_tool_call.rb +258 -0
  31. data/lib/openai/models/beta/beta_response_apply_patch_tool_call_output.rb +156 -0
  32. data/lib/openai/models/beta/beta_response_audio_delta_event.rb +63 -0
  33. data/lib/openai/models/beta/beta_response_audio_done_event.rb +55 -0
  34. data/lib/openai/models/beta/beta_response_audio_transcript_delta_event.rb +63 -0
  35. data/lib/openai/models/beta/beta_response_audio_transcript_done_event.rb +55 -0
  36. data/lib/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rb +81 -0
  37. data/lib/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rb +76 -0
  38. data/lib/openai/models/beta/beta_response_code_interpreter_call_completed_event.rb +73 -0
  39. data/lib/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rb +77 -0
  40. data/lib/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rb +77 -0
  41. data/lib/openai/models/beta/beta_response_code_interpreter_tool_call.rb +168 -0
  42. data/lib/openai/models/beta/beta_response_compaction_item.rb +69 -0
  43. data/lib/openai/models/beta/beta_response_compaction_item_param.rb +61 -0
  44. data/lib/openai/models/beta/beta_response_completed_event.rb +63 -0
  45. data/lib/openai/models/beta/beta_response_computer_tool_call.rb +156 -0
  46. data/lib/openai/models/beta/beta_response_computer_tool_call_output_item.rb +141 -0
  47. data/lib/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rb +43 -0
  48. data/lib/openai/models/beta/beta_response_container_reference.rb +29 -0
  49. data/lib/openai/models/beta/beta_response_content.rb +56 -0
  50. data/lib/openai/models/beta/beta_response_content_part_added_event.rb +129 -0
  51. data/lib/openai/models/beta/beta_response_content_part_done_event.rb +129 -0
  52. data/lib/openai/models/beta/beta_response_conversation_param.rb +22 -0
  53. data/lib/openai/models/beta/beta_response_created_event.rb +63 -0
  54. data/lib/openai/models/beta/beta_response_custom_tool_call.rb +142 -0
  55. data/lib/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rb +76 -0
  56. data/lib/openai/models/beta/beta_response_custom_tool_call_input_done_event.rb +76 -0
  57. data/lib/openai/models/beta/beta_response_custom_tool_call_item.rb +55 -0
  58. data/lib/openai/models/beta/beta_response_custom_tool_call_output.rb +171 -0
  59. data/lib/openai/models/beta/beta_response_custom_tool_call_output_item.rb +55 -0
  60. data/lib/openai/models/beta/beta_response_error.rb +63 -0
  61. data/lib/openai/models/beta/beta_response_error_event.rb +79 -0
  62. data/lib/openai/models/beta/beta_response_failed_event.rb +63 -0
  63. data/lib/openai/models/beta/beta_response_file_search_call_completed_event.rb +72 -0
  64. data/lib/openai/models/beta/beta_response_file_search_call_in_progress_event.rb +72 -0
  65. data/lib/openai/models/beta/beta_response_file_search_call_searching_event.rb +72 -0
  66. data/lib/openai/models/beta/beta_response_file_search_tool_call.rb +168 -0
  67. data/lib/openai/models/beta/beta_response_format_text_config.rb +72 -0
  68. data/lib/openai/models/beta/beta_response_format_text_json_schema_config.rb +66 -0
  69. data/lib/openai/models/beta/beta_response_function_call_arguments_delta_event.rb +80 -0
  70. data/lib/openai/models/beta/beta_response_function_call_arguments_done_event.rb +83 -0
  71. data/lib/openai/models/beta/beta_response_function_call_output_item.rb +28 -0
  72. data/lib/openai/models/beta/beta_response_function_call_output_item_list.rb +14 -0
  73. data/lib/openai/models/beta/beta_response_function_shell_call_output_content.rb +90 -0
  74. data/lib/openai/models/beta/beta_response_function_shell_tool_call.rb +216 -0
  75. data/lib/openai/models/beta/beta_response_function_shell_tool_call_output.rb +265 -0
  76. data/lib/openai/models/beta/beta_response_function_tool_call.rb +168 -0
  77. data/lib/openai/models/beta/beta_response_function_tool_call_item.rb +57 -0
  78. data/lib/openai/models/beta/beta_response_function_tool_call_output_item.rb +201 -0
  79. data/lib/openai/models/beta/beta_response_function_web_search.rb +238 -0
  80. data/lib/openai/models/beta/beta_response_image_gen_call_completed_event.rb +69 -0
  81. data/lib/openai/models/beta/beta_response_image_gen_call_generating_event.rb +69 -0
  82. data/lib/openai/models/beta/beta_response_image_gen_call_in_progress_event.rb +68 -0
  83. data/lib/openai/models/beta/beta_response_image_gen_call_partial_image_event.rb +89 -0
  84. data/lib/openai/models/beta/beta_response_in_progress_event.rb +63 -0
  85. data/lib/openai/models/beta/beta_response_includable.rb +45 -0
  86. data/lib/openai/models/beta/beta_response_incomplete_event.rb +63 -0
  87. data/lib/openai/models/beta/beta_response_inject_created_event.rb +51 -0
  88. data/lib/openai/models/beta/beta_response_inject_event.rb +40 -0
  89. data/lib/openai/models/beta/beta_response_inject_failed_event.rb +103 -0
  90. data/lib/openai/models/beta/beta_response_input.rb +13 -0
  91. data/lib/openai/models/beta/beta_response_input_audio.rb +70 -0
  92. data/lib/openai/models/beta/beta_response_input_content.rb +28 -0
  93. data/lib/openai/models/beta/beta_response_input_file.rb +113 -0
  94. data/lib/openai/models/beta/beta_response_input_file_content.rb +115 -0
  95. data/lib/openai/models/beta/beta_response_input_image.rb +94 -0
  96. data/lib/openai/models/beta/beta_response_input_image_content.rb +96 -0
  97. data/lib/openai/models/beta/beta_response_input_item.rb +2819 -0
  98. data/lib/openai/models/beta/beta_response_input_message_content_list.rb +14 -0
  99. data/lib/openai/models/beta/beta_response_input_message_item.rb +108 -0
  100. data/lib/openai/models/beta/beta_response_input_text.rb +59 -0
  101. data/lib/openai/models/beta/beta_response_input_text_content.rb +61 -0
  102. data/lib/openai/models/beta/beta_response_item.rb +1438 -0
  103. data/lib/openai/models/beta/beta_response_local_environment.rb +22 -0
  104. data/lib/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rb +81 -0
  105. data/lib/openai/models/beta/beta_response_mcp_call_arguments_done_event.rb +79 -0
  106. data/lib/openai/models/beta/beta_response_mcp_call_completed_event.rb +68 -0
  107. data/lib/openai/models/beta/beta_response_mcp_call_failed_event.rb +68 -0
  108. data/lib/openai/models/beta/beta_response_mcp_call_in_progress_event.rb +68 -0
  109. data/lib/openai/models/beta/beta_response_mcp_list_tools_completed_event.rb +68 -0
  110. data/lib/openai/models/beta/beta_response_mcp_list_tools_failed_event.rb +68 -0
  111. data/lib/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rb +69 -0
  112. data/lib/openai/models/beta/beta_response_output_audio.rb +41 -0
  113. data/lib/openai/models/beta/beta_response_output_item.rb +1444 -0
  114. data/lib/openai/models/beta/beta_response_output_item_added_event.rb +71 -0
  115. data/lib/openai/models/beta/beta_response_output_item_done_event.rb +71 -0
  116. data/lib/openai/models/beta/beta_response_output_message.rb +139 -0
  117. data/lib/openai/models/beta/beta_response_output_refusal.rb +30 -0
  118. data/lib/openai/models/beta/beta_response_output_text.rb +292 -0
  119. data/lib/openai/models/beta/beta_response_output_text_annotation_added_event.rb +92 -0
  120. data/lib/openai/models/beta/beta_response_prompt.rb +65 -0
  121. data/lib/openai/models/beta/beta_response_queued_event.rb +60 -0
  122. data/lib/openai/models/beta/beta_response_reasoning_item.rb +151 -0
  123. data/lib/openai/models/beta/beta_response_reasoning_summary_part_added_event.rb +110 -0
  124. data/lib/openai/models/beta/beta_response_reasoning_summary_part_done_event.rb +132 -0
  125. data/lib/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rb +88 -0
  126. data/lib/openai/models/beta/beta_response_reasoning_summary_text_done_event.rb +88 -0
  127. data/lib/openai/models/beta/beta_response_reasoning_text_delta_event.rb +87 -0
  128. data/lib/openai/models/beta/beta_response_reasoning_text_done_event.rb +87 -0
  129. data/lib/openai/models/beta/beta_response_refusal_delta_event.rb +87 -0
  130. data/lib/openai/models/beta/beta_response_refusal_done_event.rb +87 -0
  131. data/lib/openai/models/beta/beta_response_status.rb +25 -0
  132. data/lib/openai/models/beta/beta_response_stream_event.rb +203 -0
  133. data/lib/openai/models/beta/beta_response_text_config.rb +67 -0
  134. data/lib/openai/models/beta/beta_response_text_delta_event.rb +150 -0
  135. data/lib/openai/models/beta/beta_response_text_done_event.rb +150 -0
  136. data/lib/openai/models/beta/beta_response_tool_search_call.rb +117 -0
  137. data/lib/openai/models/beta/beta_response_tool_search_output_item.rb +117 -0
  138. data/lib/openai/models/beta/beta_response_tool_search_output_item_param.rb +109 -0
  139. data/lib/openai/models/beta/beta_response_usage.rb +95 -0
  140. data/lib/openai/models/beta/beta_response_web_search_call_completed_event.rb +72 -0
  141. data/lib/openai/models/beta/beta_response_web_search_call_in_progress_event.rb +72 -0
  142. data/lib/openai/models/beta/beta_response_web_search_call_searching_event.rb +72 -0
  143. data/lib/openai/models/beta/beta_responses_client_event.rb +1432 -0
  144. data/lib/openai/models/beta/beta_responses_server_event.rb +212 -0
  145. data/lib/openai/models/beta/beta_skill_reference.rb +36 -0
  146. data/lib/openai/models/beta/beta_tool.rb +910 -0
  147. data/lib/openai/models/beta/beta_tool_choice_allowed.rb +75 -0
  148. data/lib/openai/models/beta/beta_tool_choice_apply_patch.rb +22 -0
  149. data/lib/openai/models/beta/beta_tool_choice_custom.rb +30 -0
  150. data/lib/openai/models/beta/beta_tool_choice_function.rb +30 -0
  151. data/lib/openai/models/beta/beta_tool_choice_mcp.rb +42 -0
  152. data/lib/openai/models/beta/beta_tool_choice_options.rb +28 -0
  153. data/lib/openai/models/beta/beta_tool_choice_shell.rb +22 -0
  154. data/lib/openai/models/beta/beta_tool_choice_types.rb +67 -0
  155. data/lib/openai/models/beta/beta_tool_search_tool.rb +59 -0
  156. data/lib/openai/models/beta/beta_web_search_preview_tool.rb +143 -0
  157. data/lib/openai/models/beta/beta_web_search_tool.rb +162 -0
  158. data/lib/openai/models/beta/response_cancel_params.rb +37 -0
  159. data/lib/openai/models/beta/response_compact_params.rb +549 -0
  160. data/lib/openai/models/beta/response_create_params.rb +1343 -0
  161. data/lib/openai/models/beta/response_delete_params.rb +37 -0
  162. data/lib/openai/models/beta/response_retrieve_params.rb +74 -0
  163. data/lib/openai/models/beta/responses/beta_response_item_list.rb +54 -0
  164. data/lib/openai/models/beta/responses/input_item_list_params.rb +96 -0
  165. data/lib/openai/models/beta/responses/input_token_count_params.rb +542 -0
  166. data/lib/openai/models/beta/responses/input_token_count_response.rb +26 -0
  167. data/lib/openai/models/beta/threads/run_create_params.rb +7 -14
  168. data/lib/openai/models/chat/chat_completion_content_part.rb +31 -1
  169. data/lib/openai/models/chat/chat_completion_content_part_image.rb +31 -1
  170. data/lib/openai/models/chat/chat_completion_content_part_input_audio.rb +31 -1
  171. data/lib/openai/models/chat/chat_completion_content_part_text.rb +31 -1
  172. data/lib/openai/models/chat/completion_create_params.rb +200 -19
  173. data/lib/openai/models/chat_model.rb +3 -0
  174. data/lib/openai/models/completion_usage.rb +9 -1
  175. data/lib/openai/models/conversations/computer_screenshot_content.rb +28 -1
  176. data/lib/openai/models/conversations/conversation_create_params.rb +2 -2
  177. data/lib/openai/models/conversations/conversation_item.rb +106 -3
  178. data/lib/openai/models/conversations/conversation_item_list.rb +2 -2
  179. data/lib/openai/models/conversations/item_create_params.rb +2 -2
  180. data/lib/openai/models/evals/create_eval_completions_run_data_source.rb +7 -14
  181. data/lib/openai/models/evals/run_cancel_response.rb +16 -30
  182. data/lib/openai/models/evals/run_create_params.rb +16 -30
  183. data/lib/openai/models/evals/run_create_response.rb +16 -30
  184. data/lib/openai/models/evals/run_list_response.rb +16 -30
  185. data/lib/openai/models/evals/run_retrieve_response.rb +16 -30
  186. data/lib/openai/models/graders/score_model_grader.rb +7 -14
  187. data/lib/openai/models/realtime/realtime_response_create_mcp_tool.rb +23 -1
  188. data/lib/openai/models/realtime/realtime_session_create_request.rb +6 -0
  189. data/lib/openai/models/realtime/realtime_session_create_response.rb +29 -1
  190. data/lib/openai/models/realtime/realtime_tools_config_union.rb +23 -1
  191. data/lib/openai/models/reasoning.rb +47 -15
  192. data/lib/openai/models/reasoning_effort.rb +7 -13
  193. data/lib/openai/models/responses/apply_patch_tool.rb +23 -1
  194. data/lib/openai/models/responses/compacted_response.rb +2 -2
  195. data/lib/openai/models/responses/custom_tool.rb +21 -1
  196. data/lib/openai/models/responses/function_shell_tool.rb +23 -1
  197. data/lib/openai/models/responses/function_tool.rb +32 -3
  198. data/lib/openai/models/responses/input_token_count_params.rb +21 -8
  199. data/lib/openai/models/responses/namespace_tool.rb +41 -2
  200. data/lib/openai/models/responses/response.rb +98 -14
  201. data/lib/openai/models/responses/response_apply_patch_tool_call.rb +56 -1
  202. data/lib/openai/models/responses/response_apply_patch_tool_call_output.rb +56 -1
  203. data/lib/openai/models/responses/response_compact_params.rb +107 -4
  204. data/lib/openai/models/responses/response_create_params.rb +214 -13
  205. data/lib/openai/models/responses/response_custom_tool_call.rb +56 -1
  206. data/lib/openai/models/responses/response_custom_tool_call_output.rb +58 -1
  207. data/lib/openai/models/responses/response_error.rb +1 -0
  208. data/lib/openai/models/responses/response_function_shell_tool_call.rb +56 -1
  209. data/lib/openai/models/responses/response_function_shell_tool_call_output.rb +56 -1
  210. data/lib/openai/models/responses/response_function_tool_call.rb +56 -1
  211. data/lib/openai/models/responses/response_function_tool_call_output_item.rb +58 -1
  212. data/lib/openai/models/responses/response_input_file.rb +39 -8
  213. data/lib/openai/models/responses/response_input_file_content.rb +41 -8
  214. data/lib/openai/models/responses/response_input_image.rb +27 -1
  215. data/lib/openai/models/responses/response_input_image_content.rb +29 -1
  216. data/lib/openai/models/responses/response_input_item.rb +396 -8
  217. data/lib/openai/models/responses/response_input_text.rb +30 -1
  218. data/lib/openai/models/responses/response_input_text_content.rb +32 -1
  219. data/lib/openai/models/responses/response_item.rb +106 -3
  220. data/lib/openai/models/responses/response_item_list.rb +2 -2
  221. data/lib/openai/models/responses/response_output_item.rb +106 -3
  222. data/lib/openai/models/responses/response_output_item_added_event.rb +2 -2
  223. data/lib/openai/models/responses/response_output_item_done_event.rb +2 -2
  224. data/lib/openai/models/responses/response_reasoning_summary_part_done_event.rb +23 -1
  225. data/lib/openai/models/responses/response_tool_search_output_item.rb +2 -2
  226. data/lib/openai/models/responses/response_tool_search_output_item_param.rb +2 -2
  227. data/lib/openai/models/responses/response_usage.rb +9 -1
  228. data/lib/openai/models/responses/responses_client_event.rb +215 -13
  229. data/lib/openai/models/responses/tool.rb +58 -3
  230. data/lib/openai/models/webhooks/safety_identifier_blocked_webhook_event.rb +118 -0
  231. data/lib/openai/models/webhooks/unwrap_webhook_event.rb +4 -1
  232. data/lib/openai/resources/beta/assistants.rb +2 -2
  233. data/lib/openai/resources/beta/responses/input_items.rb +58 -0
  234. data/lib/openai/resources/beta/responses/input_tokens.rb +73 -0
  235. data/lib/openai/resources/beta/responses.rb +440 -0
  236. data/lib/openai/resources/beta/threads/runs.rb +2 -2
  237. data/lib/openai/resources/beta.rb +4 -0
  238. data/lib/openai/resources/chat/completions.rb +10 -6
  239. data/lib/openai/resources/conversations/items.rb +3 -3
  240. data/lib/openai/resources/conversations.rb +1 -1
  241. data/lib/openai/resources/responses/input_items.rb +1 -1
  242. data/lib/openai/resources/responses/input_tokens.rb +3 -3
  243. data/lib/openai/resources/responses.rb +22 -12
  244. data/lib/openai/resources/webhooks.rb +1 -1
  245. data/lib/openai/version.rb +1 -1
  246. data/lib/openai.rb +163 -0
  247. data/rbi/openai/models/beta/assistant_create_params.rbi +12 -26
  248. data/rbi/openai/models/beta/assistant_update_params.rbi +12 -26
  249. data/rbi/openai/models/beta/beta_apply_patch_tool.rbi +99 -0
  250. data/rbi/openai/models/beta/beta_compacted_response.rbi +120 -0
  251. data/rbi/openai/models/beta/beta_computer_action.rbi +593 -0
  252. data/rbi/openai/models/beta/beta_computer_action_list.rbi +18 -0
  253. data/rbi/openai/models/beta/beta_computer_tool.rbi +33 -0
  254. data/rbi/openai/models/beta/beta_computer_use_preview_tool.rbi +126 -0
  255. data/rbi/openai/models/beta/beta_container_auto.rbi +231 -0
  256. data/rbi/openai/models/beta/beta_container_network_policy_allowlist.rbi +81 -0
  257. data/rbi/openai/models/beta/beta_container_network_policy_disabled.rbi +35 -0
  258. data/rbi/openai/models/beta/beta_container_network_policy_domain_secret.rbi +53 -0
  259. data/rbi/openai/models/beta/beta_container_reference.rbi +42 -0
  260. data/rbi/openai/models/beta/beta_custom_tool.rbi +302 -0
  261. data/rbi/openai/models/beta/beta_easy_input_message.rbi +211 -0
  262. data/rbi/openai/models/beta/beta_file_search_tool.rbi +863 -0
  263. data/rbi/openai/models/beta/beta_function_shell_tool.rbi +155 -0
  264. data/rbi/openai/models/beta/beta_function_tool.rbi +154 -0
  265. data/rbi/openai/models/beta/beta_inline_skill.rbi +68 -0
  266. data/rbi/openai/models/beta/beta_inline_skill_source.rbi +53 -0
  267. data/rbi/openai/models/beta/beta_local_environment.rbi +51 -0
  268. data/rbi/openai/models/beta/beta_local_skill.rbi +49 -0
  269. data/rbi/openai/models/beta/beta_namespace_tool.rbi +252 -0
  270. data/rbi/openai/models/beta/beta_response.rbi +2495 -0
  271. data/rbi/openai/models/beta/beta_response_apply_patch_tool_call.rbi +431 -0
  272. data/rbi/openai/models/beta/beta_response_apply_patch_tool_call_output.rbi +277 -0
  273. data/rbi/openai/models/beta/beta_response_audio_delta_event.rbi +110 -0
  274. data/rbi/openai/models/beta/beta_response_audio_done_event.rbi +100 -0
  275. data/rbi/openai/models/beta/beta_response_audio_transcript_delta_event.rbi +118 -0
  276. data/rbi/openai/models/beta/beta_response_audio_transcript_done_event.rbi +108 -0
  277. data/rbi/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rbi +136 -0
  278. data/rbi/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rbi +134 -0
  279. data/rbi/openai/models/beta/beta_response_code_interpreter_call_completed_event.rbi +128 -0
  280. data/rbi/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rbi +128 -0
  281. data/rbi/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rbi +128 -0
  282. data/rbi/openai/models/beta/beta_response_code_interpreter_tool_call.rbi +315 -0
  283. data/rbi/openai/models/beta/beta_response_compaction_item.rbi +116 -0
  284. data/rbi/openai/models/beta/beta_response_compaction_item_param.rbi +114 -0
  285. data/rbi/openai/models/beta/beta_response_completed_event.rbi +111 -0
  286. data/rbi/openai/models/beta/beta_response_computer_tool_call.rbi +404 -0
  287. data/rbi/openai/models/beta/beta_response_computer_tool_call_output_item.rbi +296 -0
  288. data/rbi/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rbi +62 -0
  289. data/rbi/openai/models/beta/beta_response_container_reference.rbi +41 -0
  290. data/rbi/openai/models/beta/beta_response_content.rbi +66 -0
  291. data/rbi/openai/models/beta/beta_response_content_part_added_event.rbi +205 -0
  292. data/rbi/openai/models/beta/beta_response_content_part_done_event.rbi +203 -0
  293. data/rbi/openai/models/beta/beta_response_conversation_param.rbi +35 -0
  294. data/rbi/openai/models/beta/beta_response_created_event.rbi +109 -0
  295. data/rbi/openai/models/beta/beta_response_custom_tool_call.rbi +242 -0
  296. data/rbi/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rbi +134 -0
  297. data/rbi/openai/models/beta/beta_response_custom_tool_call_input_done_event.rbi +134 -0
  298. data/rbi/openai/models/beta/beta_response_custom_tool_call_item.rbi +113 -0
  299. data/rbi/openai/models/beta/beta_response_custom_tool_call_output.rbi +303 -0
  300. data/rbi/openai/models/beta/beta_response_custom_tool_call_output_item.rbi +114 -0
  301. data/rbi/openai/models/beta/beta_response_error.rbi +165 -0
  302. data/rbi/openai/models/beta/beta_response_error_event.rbi +120 -0
  303. data/rbi/openai/models/beta/beta_response_failed_event.rbi +107 -0
  304. data/rbi/openai/models/beta/beta_response_file_search_call_completed_event.rbi +126 -0
  305. data/rbi/openai/models/beta/beta_response_file_search_call_in_progress_event.rbi +126 -0
  306. data/rbi/openai/models/beta/beta_response_file_search_call_searching_event.rbi +126 -0
  307. data/rbi/openai/models/beta/beta_response_file_search_tool_call.rbi +328 -0
  308. data/rbi/openai/models/beta/beta_response_format_text_config.rbi +97 -0
  309. data/rbi/openai/models/beta/beta_response_format_text_json_schema_config.rbi +97 -0
  310. data/rbi/openai/models/beta/beta_response_function_call_arguments_delta_event.rbi +134 -0
  311. data/rbi/openai/models/beta/beta_response_function_call_arguments_done_event.rbi +140 -0
  312. data/rbi/openai/models/beta/beta_response_function_call_output_item.rbi +32 -0
  313. data/rbi/openai/models/beta/beta_response_function_call_output_item_list.rbi +21 -0
  314. data/rbi/openai/models/beta/beta_response_function_shell_call_output_content.rbi +160 -0
  315. data/rbi/openai/models/beta/beta_response_function_shell_tool_call.rbi +389 -0
  316. data/rbi/openai/models/beta/beta_response_function_shell_tool_call_output.rbi +470 -0
  317. data/rbi/openai/models/beta/beta_response_function_tool_call.rbi +310 -0
  318. data/rbi/openai/models/beta/beta_response_function_tool_call_item.rbi +115 -0
  319. data/rbi/openai/models/beta/beta_response_function_tool_call_output_item.rbi +364 -0
  320. data/rbi/openai/models/beta/beta_response_function_web_search.rbi +416 -0
  321. data/rbi/openai/models/beta/beta_response_image_gen_call_completed_event.rbi +127 -0
  322. data/rbi/openai/models/beta/beta_response_image_gen_call_generating_event.rbi +127 -0
  323. data/rbi/openai/models/beta/beta_response_image_gen_call_in_progress_event.rbi +126 -0
  324. data/rbi/openai/models/beta/beta_response_image_gen_call_partial_image_event.rbi +144 -0
  325. data/rbi/openai/models/beta/beta_response_in_progress_event.rbi +113 -0
  326. data/rbi/openai/models/beta/beta_response_includable.rbi +86 -0
  327. data/rbi/openai/models/beta/beta_response_incomplete_event.rbi +113 -0
  328. data/rbi/openai/models/beta/beta_response_inject_created_event.rbi +75 -0
  329. data/rbi/openai/models/beta/beta_response_inject_event.rbi +183 -0
  330. data/rbi/openai/models/beta/beta_response_inject_failed_event.rbi +304 -0
  331. data/rbi/openai/models/beta/beta_response_input.rbi +18 -0
  332. data/rbi/openai/models/beta/beta_response_input_audio.rbi +144 -0
  333. data/rbi/openai/models/beta/beta_response_input_content.rbi +31 -0
  334. data/rbi/openai/models/beta/beta_response_input_file.rbi +210 -0
  335. data/rbi/openai/models/beta/beta_response_input_file_content.rbi +211 -0
  336. data/rbi/openai/models/beta/beta_response_input_image.rbi +173 -0
  337. data/rbi/openai/models/beta/beta_response_input_image_content.rbi +191 -0
  338. data/rbi/openai/models/beta/beta_response_input_item.rbi +5505 -0
  339. data/rbi/openai/models/beta/beta_response_input_message_content_list.rbi +21 -0
  340. data/rbi/openai/models/beta/beta_response_input_message_item.rbi +235 -0
  341. data/rbi/openai/models/beta/beta_response_input_text.rbi +109 -0
  342. data/rbi/openai/models/beta/beta_response_input_text_content.rbi +115 -0
  343. data/rbi/openai/models/beta/beta_response_item.rbi +2592 -0
  344. data/rbi/openai/models/beta/beta_response_local_environment.rbi +35 -0
  345. data/rbi/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rbi +137 -0
  346. data/rbi/openai/models/beta/beta_response_mcp_call_arguments_done_event.rbi +134 -0
  347. data/rbi/openai/models/beta/beta_response_mcp_call_completed_event.rbi +123 -0
  348. data/rbi/openai/models/beta/beta_response_mcp_call_failed_event.rbi +121 -0
  349. data/rbi/openai/models/beta/beta_response_mcp_call_in_progress_event.rbi +124 -0
  350. data/rbi/openai/models/beta/beta_response_mcp_list_tools_completed_event.rbi +126 -0
  351. data/rbi/openai/models/beta/beta_response_mcp_list_tools_failed_event.rbi +124 -0
  352. data/rbi/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rbi +127 -0
  353. data/rbi/openai/models/beta/beta_response_output_audio.rbi +53 -0
  354. data/rbi/openai/models/beta/beta_response_output_item.rbi +2627 -0
  355. data/rbi/openai/models/beta/beta_response_output_item_added_event.rbi +154 -0
  356. data/rbi/openai/models/beta/beta_response_output_item_done_event.rbi +154 -0
  357. data/rbi/openai/models/beta/beta_response_output_message.rbi +267 -0
  358. data/rbi/openai/models/beta/beta_response_output_refusal.rbi +41 -0
  359. data/rbi/openai/models/beta/beta_response_output_text.rbi +479 -0
  360. data/rbi/openai/models/beta/beta_response_output_text_annotation_added_event.rbi +150 -0
  361. data/rbi/openai/models/beta/beta_response_prompt.rbi +122 -0
  362. data/rbi/openai/models/beta/beta_response_queued_event.rbi +107 -0
  363. data/rbi/openai/models/beta/beta_response_reasoning_item.rbi +274 -0
  364. data/rbi/openai/models/beta/beta_response_reasoning_summary_part_added_event.rbi +188 -0
  365. data/rbi/openai/models/beta/beta_response_reasoning_summary_part_done_event.rbi +243 -0
  366. data/rbi/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rbi +142 -0
  367. data/rbi/openai/models/beta/beta_response_reasoning_summary_text_done_event.rbi +142 -0
  368. data/rbi/openai/models/beta/beta_response_reasoning_text_delta_event.rbi +140 -0
  369. data/rbi/openai/models/beta/beta_response_reasoning_text_done_event.rbi +140 -0
  370. data/rbi/openai/models/beta/beta_response_refusal_delta_event.rbi +135 -0
  371. data/rbi/openai/models/beta/beta_response_refusal_done_event.rbi +135 -0
  372. data/rbi/openai/models/beta/beta_response_status.rbi +38 -0
  373. data/rbi/openai/models/beta/beta_response_stream_event.rbi +81 -0
  374. data/rbi/openai/models/beta/beta_response_text_config.rbi +166 -0
  375. data/rbi/openai/models/beta/beta_response_text_delta_event.rbi +263 -0
  376. data/rbi/openai/models/beta/beta_response_text_done_event.rbi +261 -0
  377. data/rbi/openai/models/beta/beta_response_tool_search_call.rbi +218 -0
  378. data/rbi/openai/models/beta/beta_response_tool_search_output_item.rbi +248 -0
  379. data/rbi/openai/models/beta/beta_response_tool_search_output_item_param.rbi +307 -0
  380. data/rbi/openai/models/beta/beta_response_usage.rbi +163 -0
  381. data/rbi/openai/models/beta/beta_response_web_search_call_completed_event.rbi +126 -0
  382. data/rbi/openai/models/beta/beta_response_web_search_call_in_progress_event.rbi +126 -0
  383. data/rbi/openai/models/beta/beta_response_web_search_call_searching_event.rbi +126 -0
  384. data/rbi/openai/models/beta/beta_responses_client_event.rbi +2831 -0
  385. data/rbi/openai/models/beta/beta_responses_server_event.rbi +83 -0
  386. data/rbi/openai/models/beta/beta_skill_reference.rbi +52 -0
  387. data/rbi/openai/models/beta/beta_tool.rbi +1835 -0
  388. data/rbi/openai/models/beta/beta_tool_choice_allowed.rbi +126 -0
  389. data/rbi/openai/models/beta/beta_tool_choice_apply_patch.rbi +35 -0
  390. data/rbi/openai/models/beta/beta_tool_choice_custom.rbi +38 -0
  391. data/rbi/openai/models/beta/beta_tool_choice_function.rbi +41 -0
  392. data/rbi/openai/models/beta/beta_tool_choice_mcp.rbi +55 -0
  393. data/rbi/openai/models/beta/beta_tool_choice_options.rbi +38 -0
  394. data/rbi/openai/models/beta/beta_tool_choice_shell.rbi +32 -0
  395. data/rbi/openai/models/beta/beta_tool_choice_types.rbi +134 -0
  396. data/rbi/openai/models/beta/beta_tool_search_tool.rbi +109 -0
  397. data/rbi/openai/models/beta/beta_web_search_preview_tool.rbi +311 -0
  398. data/rbi/openai/models/beta/beta_web_search_tool.rbi +329 -0
  399. data/rbi/openai/models/beta/response_cancel_params.rbi +83 -0
  400. data/rbi/openai/models/beta/response_compact_params.rbi +1033 -0
  401. data/rbi/openai/models/beta/response_create_params.rbi +2739 -0
  402. data/rbi/openai/models/beta/response_delete_params.rbi +83 -0
  403. data/rbi/openai/models/beta/response_retrieve_params.rbi +145 -0
  404. data/rbi/openai/models/beta/responses/beta_response_item_list.rbi +113 -0
  405. data/rbi/openai/models/beta/responses/input_item_list_params.rbi +223 -0
  406. data/rbi/openai/models/beta/responses/input_token_count_params.rbi +1248 -0
  407. data/rbi/openai/models/beta/responses/input_token_count_response.rbi +37 -0
  408. data/rbi/openai/models/beta/threads/run_create_params.rbi +12 -26
  409. data/rbi/openai/models/chat/chat_completion_content_part.rbi +57 -1
  410. data/rbi/openai/models/chat/chat_completion_content_part_image.rbi +57 -1
  411. data/rbi/openai/models/chat/chat_completion_content_part_input_audio.rbi +57 -1
  412. data/rbi/openai/models/chat/chat_completion_content_part_text.rbi +70 -2
  413. data/rbi/openai/models/chat/completion_create_params.rbi +513 -32
  414. data/rbi/openai/models/chat_model.rbi +3 -0
  415. data/rbi/openai/models/completion_usage.rbi +21 -4
  416. data/rbi/openai/models/conversations/computer_screenshot_content.rbi +57 -1
  417. data/rbi/openai/models/conversations/conversation_create_params.rbi +9 -3
  418. data/rbi/openai/models/conversations/conversation_item.rbi +178 -0
  419. data/rbi/openai/models/conversations/conversation_item_list.rbi +2 -0
  420. data/rbi/openai/models/conversations/item_create_params.rbi +9 -3
  421. data/rbi/openai/models/evals/create_eval_completions_run_data_source.rbi +12 -26
  422. data/rbi/openai/models/evals/run_cancel_response.rbi +26 -52
  423. data/rbi/openai/models/evals/run_create_params.rbi +28 -52
  424. data/rbi/openai/models/evals/run_create_response.rbi +26 -52
  425. data/rbi/openai/models/evals/run_list_response.rbi +26 -52
  426. data/rbi/openai/models/evals/run_retrieve_response.rbi +26 -52
  427. data/rbi/openai/models/graders/score_model_grader.rbi +12 -26
  428. data/rbi/openai/models/realtime/realtime_response_create_mcp_tool.rbi +60 -0
  429. data/rbi/openai/models/realtime/realtime_session_create_request.rbi +10 -0
  430. data/rbi/openai/models/realtime/realtime_session_create_response.rbi +70 -0
  431. data/rbi/openai/models/realtime/realtime_tools_config_union.rbi +60 -0
  432. data/rbi/openai/models/reasoning.rbi +51 -26
  433. data/rbi/openai/models/reasoning_effort.rbi +7 -13
  434. data/rbi/openai/models/responses/apply_patch_tool.rbi +69 -2
  435. data/rbi/openai/models/responses/compacted_response.rbi +2 -0
  436. data/rbi/openai/models/responses/custom_tool.rbi +53 -0
  437. data/rbi/openai/models/responses/function_shell_tool.rbi +57 -0
  438. data/rbi/openai/models/responses/function_tool.rbi +68 -3
  439. data/rbi/openai/models/responses/input_token_count_params.rbi +32 -0
  440. data/rbi/openai/models/responses/namespace_tool.rbi +76 -0
  441. data/rbi/openai/models/responses/response.rbi +192 -3
  442. data/rbi/openai/models/responses/response_apply_patch_tool_call.rbi +98 -0
  443. data/rbi/openai/models/responses/response_apply_patch_tool_call_output.rbi +98 -0
  444. data/rbi/openai/models/responses/response_compact_params.rbi +231 -0
  445. data/rbi/openai/models/responses/response_create_params.rbi +537 -6
  446. data/rbi/openai/models/responses/response_custom_tool_call.rbi +104 -0
  447. data/rbi/openai/models/responses/response_custom_tool_call_output.rbi +111 -1
  448. data/rbi/openai/models/responses/response_error.rbi +5 -0
  449. data/rbi/openai/models/responses/response_function_shell_tool_call.rbi +98 -0
  450. data/rbi/openai/models/responses/response_function_shell_tool_call_output.rbi +98 -0
  451. data/rbi/openai/models/responses/response_function_tool_call.rbi +104 -0
  452. data/rbi/openai/models/responses/response_function_tool_call_output_item.rbi +104 -0
  453. data/rbi/openai/models/responses/response_input_file.rbi +77 -10
  454. data/rbi/openai/models/responses/response_input_file_content.rbi +83 -10
  455. data/rbi/openai/models/responses/response_input_image.rbi +57 -1
  456. data/rbi/openai/models/responses/response_input_image_content.rbi +63 -1
  457. data/rbi/openai/models/responses/response_input_item.rbi +748 -8
  458. data/rbi/openai/models/responses/response_input_text.rbi +70 -2
  459. data/rbi/openai/models/responses/response_input_text_content.rbi +76 -2
  460. data/rbi/openai/models/responses/response_item.rbi +178 -0
  461. data/rbi/openai/models/responses/response_item_list.rbi +2 -0
  462. data/rbi/openai/models/responses/response_output_item.rbi +178 -0
  463. data/rbi/openai/models/responses/response_output_item_added_event.rbi +2 -0
  464. data/rbi/openai/models/responses/response_output_item_done_event.rbi +2 -0
  465. data/rbi/openai/models/responses/response_reasoning_summary_part_done_event.rbi +58 -1
  466. data/rbi/openai/models/responses/response_tool_search_output_item.rbi +1 -0
  467. data/rbi/openai/models/responses/response_tool_search_output_item_param.rbi +3 -0
  468. data/rbi/openai/models/responses/response_usage.rbi +16 -2
  469. data/rbi/openai/models/responses/responses_client_event.rbi +537 -6
  470. data/rbi/openai/models/responses/tool.rbi +142 -1
  471. data/rbi/openai/models/webhooks/safety_identifier_blocked_webhook_event.rbi +209 -0
  472. data/rbi/openai/models/webhooks/unwrap_webhook_event.rbi +2 -1
  473. data/rbi/openai/resources/beta/assistants.rbi +12 -26
  474. data/rbi/openai/resources/beta/responses/input_items.rbi +58 -0
  475. data/rbi/openai/resources/beta/responses/input_tokens.rbi +154 -0
  476. data/rbi/openai/resources/beta/responses.rbi +903 -0
  477. data/rbi/openai/resources/beta/threads/runs.rbi +12 -26
  478. data/rbi/openai/resources/beta.rbi +3 -0
  479. data/rbi/openai/resources/chat/completions.rbi +48 -28
  480. data/rbi/openai/resources/conversations/items.rbi +3 -1
  481. data/rbi/openai/resources/conversations.rbi +3 -1
  482. data/rbi/openai/resources/responses/input_tokens.rbi +2 -0
  483. data/rbi/openai/resources/responses.rbi +54 -2
  484. data/rbi/openai/resources/webhooks.rbi +2 -1
  485. data/sig/openai/client.rbs +1 -1
  486. data/sig/openai/internal/transport/base_client.rbs +2 -2
  487. data/sig/openai/models/beta/beta_apply_patch_tool.rbs +40 -0
  488. data/sig/openai/models/beta/beta_compacted_response.rbs +44 -0
  489. data/sig/openai/models/beta/beta_computer_action.rbs +259 -0
  490. data/sig/openai/models/beta/beta_computer_action_list.rbs +12 -0
  491. data/sig/openai/models/beta/beta_computer_tool.rbs +17 -0
  492. data/sig/openai/models/beta/beta_computer_use_preview_tool.rbs +53 -0
  493. data/sig/openai/models/beta/beta_container_auto.rbs +86 -0
  494. data/sig/openai/models/beta/beta_container_network_policy_allowlist.rbs +38 -0
  495. data/sig/openai/models/beta/beta_container_network_policy_disabled.rbs +17 -0
  496. data/sig/openai/models/beta/beta_container_network_policy_domain_secret.rbs +22 -0
  497. data/sig/openai/models/beta/beta_container_reference.rbs +23 -0
  498. data/sig/openai/models/beta/beta_custom_tool.rbs +126 -0
  499. data/sig/openai/models/beta/beta_easy_input_message.rbs +87 -0
  500. data/sig/openai/models/beta/beta_file_search_tool.rbs +298 -0
  501. data/sig/openai/models/beta/beta_function_shell_tool.rbs +56 -0
  502. data/sig/openai/models/beta/beta_function_tool.rbs +72 -0
  503. data/sig/openai/models/beta/beta_inline_skill.rbs +39 -0
  504. data/sig/openai/models/beta/beta_inline_skill_source.rbs +30 -0
  505. data/sig/openai/models/beta/beta_local_environment.rbs +30 -0
  506. data/sig/openai/models/beta/beta_local_skill.rbs +26 -0
  507. data/sig/openai/models/beta/beta_namespace_tool.rbs +114 -0
  508. data/sig/openai/models/beta/beta_response.rbs +860 -0
  509. data/sig/openai/models/beta/beta_response_apply_patch_tool_call.rbs +177 -0
  510. data/sig/openai/models/beta/beta_response_apply_patch_tool_call_output.rbs +118 -0
  511. data/sig/openai/models/beta/beta_response_audio_delta_event.rbs +49 -0
  512. data/sig/openai/models/beta/beta_response_audio_done_event.rbs +44 -0
  513. data/sig/openai/models/beta/beta_response_audio_transcript_delta_event.rbs +49 -0
  514. data/sig/openai/models/beta/beta_response_audio_transcript_done_event.rbs +44 -0
  515. data/sig/openai/models/beta/beta_response_code_interpreter_call_code_delta_event.rbs +59 -0
  516. data/sig/openai/models/beta/beta_response_code_interpreter_call_code_done_event.rbs +59 -0
  517. data/sig/openai/models/beta/beta_response_code_interpreter_call_completed_event.rbs +54 -0
  518. data/sig/openai/models/beta/beta_response_code_interpreter_call_in_progress_event.rbs +54 -0
  519. data/sig/openai/models/beta/beta_response_code_interpreter_call_interpreting_event.rbs +54 -0
  520. data/sig/openai/models/beta/beta_response_code_interpreter_tool_call.rbs +113 -0
  521. data/sig/openai/models/beta/beta_response_compaction_item.rbs +60 -0
  522. data/sig/openai/models/beta/beta_response_compaction_item_param.rbs +49 -0
  523. data/sig/openai/models/beta/beta_response_completed_event.rbs +49 -0
  524. data/sig/openai/models/beta/beta_response_computer_tool_call.rbs +118 -0
  525. data/sig/openai/models/beta/beta_response_computer_tool_call_output_item.rbs +107 -0
  526. data/sig/openai/models/beta/beta_response_computer_tool_call_output_screenshot.rbs +34 -0
  527. data/sig/openai/models/beta/beta_response_container_reference.rbs +23 -0
  528. data/sig/openai/models/beta/beta_response_content.rbs +33 -0
  529. data/sig/openai/models/beta/beta_response_content_part_added_event.rbs +87 -0
  530. data/sig/openai/models/beta/beta_response_content_part_done_event.rbs +87 -0
  531. data/sig/openai/models/beta/beta_response_conversation_param.rbs +17 -0
  532. data/sig/openai/models/beta/beta_response_created_event.rbs +49 -0
  533. data/sig/openai/models/beta/beta_response_custom_tool_call.rbs +105 -0
  534. data/sig/openai/models/beta/beta_response_custom_tool_call_input_delta_event.rbs +59 -0
  535. data/sig/openai/models/beta/beta_response_custom_tool_call_input_done_event.rbs +59 -0
  536. data/sig/openai/models/beta/beta_response_custom_tool_call_item.rbs +54 -0
  537. data/sig/openai/models/beta/beta_response_custom_tool_call_output.rbs +116 -0
  538. data/sig/openai/models/beta/beta_response_custom_tool_call_output_item.rbs +54 -0
  539. data/sig/openai/models/beta/beta_response_error.rbs +73 -0
  540. data/sig/openai/models/beta/beta_response_error_event.rbs +59 -0
  541. data/sig/openai/models/beta/beta_response_failed_event.rbs +49 -0
  542. data/sig/openai/models/beta/beta_response_file_search_call_completed_event.rbs +54 -0
  543. data/sig/openai/models/beta/beta_response_file_search_call_in_progress_event.rbs +54 -0
  544. data/sig/openai/models/beta/beta_response_file_search_call_searching_event.rbs +54 -0
  545. data/sig/openai/models/beta/beta_response_file_search_tool_call.rbs +127 -0
  546. data/sig/openai/models/beta/beta_response_format_text_config.rbs +38 -0
  547. data/sig/openai/models/beta/beta_response_format_text_json_schema_config.rbs +46 -0
  548. data/sig/openai/models/beta/beta_response_function_call_arguments_delta_event.rbs +59 -0
  549. data/sig/openai/models/beta/beta_response_function_call_arguments_done_event.rbs +64 -0
  550. data/sig/openai/models/beta/beta_response_function_call_output_item.rbs +18 -0
  551. data/sig/openai/models/beta/beta_response_function_call_output_item_list.rbs +12 -0
  552. data/sig/openai/models/beta/beta_response_function_shell_call_output_content.rbs +66 -0
  553. data/sig/openai/models/beta/beta_response_function_shell_tool_call.rbs +161 -0
  554. data/sig/openai/models/beta/beta_response_function_shell_tool_call_output.rbs +190 -0
  555. data/sig/openai/models/beta/beta_response_function_tool_call.rbs +126 -0
  556. data/sig/openai/models/beta/beta_response_function_tool_call_item.rbs +54 -0
  557. data/sig/openai/models/beta/beta_response_function_tool_call_output_item.rbs +138 -0
  558. data/sig/openai/models/beta/beta_response_function_web_search.rbs +165 -0
  559. data/sig/openai/models/beta/beta_response_image_gen_call_completed_event.rbs +54 -0
  560. data/sig/openai/models/beta/beta_response_image_gen_call_generating_event.rbs +54 -0
  561. data/sig/openai/models/beta/beta_response_image_gen_call_in_progress_event.rbs +54 -0
  562. data/sig/openai/models/beta/beta_response_image_gen_call_partial_image_event.rbs +64 -0
  563. data/sig/openai/models/beta/beta_response_in_progress_event.rbs +49 -0
  564. data/sig/openai/models/beta/beta_response_includable.rbs +32 -0
  565. data/sig/openai/models/beta/beta_response_incomplete_event.rbs +49 -0
  566. data/sig/openai/models/beta/beta_response_inject_created_event.rbs +41 -0
  567. data/sig/openai/models/beta/beta_response_inject_event.rbs +34 -0
  568. data/sig/openai/models/beta/beta_response_inject_failed_event.rbs +84 -0
  569. data/sig/openai/models/beta/beta_response_input.rbs +12 -0
  570. data/sig/openai/models/beta/beta_response_input_audio.rbs +62 -0
  571. data/sig/openai/models/beta/beta_response_input_content.rbs +18 -0
  572. data/sig/openai/models/beta/beta_response_input_file.rbs +90 -0
  573. data/sig/openai/models/beta/beta_response_input_file_content.rbs +80 -0
  574. data/sig/openai/models/beta/beta_response_input_image.rbs +71 -0
  575. data/sig/openai/models/beta/beta_response_input_image_content.rbs +67 -0
  576. data/sig/openai/models/beta/beta_response_input_item.rbs +2064 -0
  577. data/sig/openai/models/beta/beta_response_input_message_content_list.rbs +12 -0
  578. data/sig/openai/models/beta/beta_response_input_message_item.rbs +87 -0
  579. data/sig/openai/models/beta/beta_response_input_text.rbs +48 -0
  580. data/sig/openai/models/beta/beta_response_input_text_content.rbs +44 -0
  581. data/sig/openai/models/beta/beta_response_item.rbs +1097 -0
  582. data/sig/openai/models/beta/beta_response_local_environment.rbs +17 -0
  583. data/sig/openai/models/beta/beta_response_mcp_call_arguments_delta_event.rbs +59 -0
  584. data/sig/openai/models/beta/beta_response_mcp_call_arguments_done_event.rbs +59 -0
  585. data/sig/openai/models/beta/beta_response_mcp_call_completed_event.rbs +54 -0
  586. data/sig/openai/models/beta/beta_response_mcp_call_failed_event.rbs +54 -0
  587. data/sig/openai/models/beta/beta_response_mcp_call_in_progress_event.rbs +54 -0
  588. data/sig/openai/models/beta/beta_response_mcp_list_tools_completed_event.rbs +54 -0
  589. data/sig/openai/models/beta/beta_response_mcp_list_tools_failed_event.rbs +54 -0
  590. data/sig/openai/models/beta/beta_response_mcp_list_tools_in_progress_event.rbs +54 -0
  591. data/sig/openai/models/beta/beta_response_output_audio.rbs +30 -0
  592. data/sig/openai/models/beta/beta_response_output_item.rbs +1096 -0
  593. data/sig/openai/models/beta/beta_response_output_item_added_event.rbs +54 -0
  594. data/sig/openai/models/beta/beta_response_output_item_done_event.rbs +54 -0
  595. data/sig/openai/models/beta/beta_response_output_message.rbs +97 -0
  596. data/sig/openai/models/beta/beta_response_output_refusal.rbs +19 -0
  597. data/sig/openai/models/beta/beta_response_output_text.rbs +243 -0
  598. data/sig/openai/models/beta/beta_response_output_text_annotation_added_event.rbs +69 -0
  599. data/sig/openai/models/beta/beta_response_prompt.rbs +46 -0
  600. data/sig/openai/models/beta/beta_response_queued_event.rbs +49 -0
  601. data/sig/openai/models/beta/beta_response_reasoning_item.rbs +108 -0
  602. data/sig/openai/models/beta/beta_response_reasoning_summary_part_added_event.rbs +76 -0
  603. data/sig/openai/models/beta/beta_response_reasoning_summary_part_done_event.rbs +95 -0
  604. data/sig/openai/models/beta/beta_response_reasoning_summary_text_delta_event.rbs +64 -0
  605. data/sig/openai/models/beta/beta_response_reasoning_summary_text_done_event.rbs +64 -0
  606. data/sig/openai/models/beta/beta_response_reasoning_text_delta_event.rbs +64 -0
  607. data/sig/openai/models/beta/beta_response_reasoning_text_done_event.rbs +64 -0
  608. data/sig/openai/models/beta/beta_response_refusal_delta_event.rbs +64 -0
  609. data/sig/openai/models/beta/beta_response_refusal_done_event.rbs +64 -0
  610. data/sig/openai/models/beta/beta_response_status.rbs +23 -0
  611. data/sig/openai/models/beta/beta_response_stream_event.rbs +68 -0
  612. data/sig/openai/models/beta/beta_response_text_config.rbs +45 -0
  613. data/sig/openai/models/beta/beta_response_text_delta_event.rbs +116 -0
  614. data/sig/openai/models/beta/beta_response_text_done_event.rbs +116 -0
  615. data/sig/openai/models/beta/beta_response_tool_search_call.rbs +98 -0
  616. data/sig/openai/models/beta/beta_response_tool_search_output_item.rbs +98 -0
  617. data/sig/openai/models/beta/beta_response_tool_search_output_item_param.rbs +91 -0
  618. data/sig/openai/models/beta/beta_response_usage.rbs +73 -0
  619. data/sig/openai/models/beta/beta_response_web_search_call_completed_event.rbs +54 -0
  620. data/sig/openai/models/beta/beta_response_web_search_call_in_progress_event.rbs +54 -0
  621. data/sig/openai/models/beta/beta_response_web_search_call_searching_event.rbs +54 -0
  622. data/sig/openai/models/beta/beta_responses_client_event.rbs +804 -0
  623. data/sig/openai/models/beta/beta_responses_server_event.rbs +70 -0
  624. data/sig/openai/models/beta/beta_skill_reference.rbs +32 -0
  625. data/sig/openai/models/beta/beta_tool.rbs +634 -0
  626. data/sig/openai/models/beta/beta_tool_choice_allowed.rbs +45 -0
  627. data/sig/openai/models/beta/beta_tool_choice_apply_patch.rbs +17 -0
  628. data/sig/openai/models/beta/beta_tool_choice_custom.rbs +19 -0
  629. data/sig/openai/models/beta/beta_tool_choice_function.rbs +19 -0
  630. data/sig/openai/models/beta/beta_tool_choice_mcp.rbs +26 -0
  631. data/sig/openai/models/beta/beta_tool_choice_options.rbs +19 -0
  632. data/sig/openai/models/beta/beta_tool_choice_shell.rbs +17 -0
  633. data/sig/openai/models/beta/beta_tool_choice_types.rbs +47 -0
  634. data/sig/openai/models/beta/beta_tool_search_tool.rbs +54 -0
  635. data/sig/openai/models/beta/beta_web_search_preview_tool.rbs +118 -0
  636. data/sig/openai/models/beta/beta_web_search_tool.rbs +127 -0
  637. data/sig/openai/models/beta/response_cancel_params.rbs +47 -0
  638. data/sig/openai/models/beta/response_compact_params.rbs +368 -0
  639. data/sig/openai/models/beta/response_create_params.rbs +804 -0
  640. data/sig/openai/models/beta/response_delete_params.rbs +47 -0
  641. data/sig/openai/models/beta/response_retrieve_params.rbs +70 -0
  642. data/sig/openai/models/beta/responses/beta_response_item_list.rbs +44 -0
  643. data/sig/openai/models/beta/responses/input_item_list_params.rbs +92 -0
  644. data/sig/openai/models/beta/responses/input_token_count_params.rbs +325 -0
  645. data/sig/openai/models/beta/responses/input_token_count_response.rbs +26 -0
  646. data/sig/openai/models/chat/chat_completion_content_part.rbs +21 -2
  647. data/sig/openai/models/chat/chat_completion_content_part_image.rbs +21 -2
  648. data/sig/openai/models/chat/chat_completion_content_part_input_audio.rbs +21 -2
  649. data/sig/openai/models/chat/chat_completion_content_part_text.rbs +32 -3
  650. data/sig/openai/models/chat/completion_create_params.rbs +153 -3
  651. data/sig/openai/models/chat_model.rbs +7 -1
  652. data/sig/openai/models/completion_usage.rbs +15 -2
  653. data/sig/openai/models/conversations/computer_screenshot_content.rbs +21 -2
  654. data/sig/openai/models/conversations/conversation_item.rbs +87 -0
  655. data/sig/openai/models/realtime/realtime_response_create_mcp_tool.rbs +16 -0
  656. data/sig/openai/models/realtime/realtime_session_create_request.rbs +4 -0
  657. data/sig/openai/models/realtime/realtime_session_create_response.rbs +20 -0
  658. data/sig/openai/models/realtime/realtime_tools_config_union.rbs +16 -0
  659. data/sig/openai/models/reasoning.rbs +20 -0
  660. data/sig/openai/models/reasoning_effort.rbs +3 -1
  661. data/sig/openai/models/responses/apply_patch_tool.rbs +26 -3
  662. data/sig/openai/models/responses/custom_tool.rbs +16 -0
  663. data/sig/openai/models/responses/function_shell_tool.rbs +16 -0
  664. data/sig/openai/models/responses/function_tool.rbs +23 -2
  665. data/sig/openai/models/responses/input_token_count_params.rbs +12 -0
  666. data/sig/openai/models/responses/namespace_tool.rbs +21 -0
  667. data/sig/openai/models/responses/response.rbs +64 -0
  668. data/sig/openai/models/responses/response_apply_patch_tool_call.rbs +37 -0
  669. data/sig/openai/models/responses/response_apply_patch_tool_call_output.rbs +37 -0
  670. data/sig/openai/models/responses/response_compact_params.rbs +63 -1
  671. data/sig/openai/models/responses/response_create_params.rbs +165 -3
  672. data/sig/openai/models/responses/response_custom_tool_call.rbs +37 -0
  673. data/sig/openai/models/responses/response_custom_tool_call_output.rbs +39 -2
  674. data/sig/openai/models/responses/response_error.rbs +2 -0
  675. data/sig/openai/models/responses/response_function_shell_tool_call.rbs +37 -0
  676. data/sig/openai/models/responses/response_function_shell_tool_call_output.rbs +37 -0
  677. data/sig/openai/models/responses/response_function_tool_call.rbs +37 -0
  678. data/sig/openai/models/responses/response_function_tool_call_output_item.rbs +37 -0
  679. data/sig/openai/models/responses/response_input_file.rbs +23 -3
  680. data/sig/openai/models/responses/response_input_file_content.rbs +19 -3
  681. data/sig/openai/models/responses/response_input_image.rbs +21 -2
  682. data/sig/openai/models/responses/response_input_image_content.rbs +17 -2
  683. data/sig/openai/models/responses/response_input_item.rbs +274 -2
  684. data/sig/openai/models/responses/response_input_text.rbs +32 -3
  685. data/sig/openai/models/responses/response_input_text_content.rbs +28 -3
  686. data/sig/openai/models/responses/response_item.rbs +87 -0
  687. data/sig/openai/models/responses/response_output_item.rbs +87 -0
  688. data/sig/openai/models/responses/response_reasoning_summary_part_done_event.rbs +21 -2
  689. data/sig/openai/models/responses/response_usage.rbs +12 -3
  690. data/sig/openai/models/responses/responses_client_event.rbs +165 -3
  691. data/sig/openai/models/responses/tool.rbs +45 -2
  692. data/sig/openai/models/webhooks/safety_identifier_blocked_webhook_event.rbs +99 -0
  693. data/sig/openai/models/webhooks/unwrap_webhook_event.rbs +1 -0
  694. data/sig/openai/resources/beta/responses/input_items.rbs +21 -0
  695. data/sig/openai/resources/beta/responses/input_tokens.rbs +28 -0
  696. data/sig/openai/resources/beta/responses.rbs +128 -0
  697. data/sig/openai/resources/beta.rbs +2 -0
  698. data/sig/openai/resources/chat/completions.rbs +2 -0
  699. data/sig/openai/resources/responses.rbs +3 -0
  700. data/sig/openai/resources/webhooks.rbs +2 -1
  701. metadata +491 -2
@@ -0,0 +1,2819 @@
1
+ # frozen_string_literal: true
2
+
3
+ module OpenAI
4
+ module Models
5
+ module Beta
6
+ # A message input to the model with a role indicating instruction following
7
+ # hierarchy. Instructions given with the `developer` or `system` role take
8
+ # precedence over instructions given with the `user` role. Messages with the
9
+ # `assistant` role are presumed to have been generated by the model in previous
10
+ # interactions.
11
+ module BetaResponseInputItem
12
+ extend OpenAI::Internal::Type::Union
13
+
14
+ discriminator :type
15
+
16
+ # A message input to the model with a role indicating instruction following
17
+ # hierarchy. Instructions given with the `developer` or `system` role take
18
+ # precedence over instructions given with the `user` role. Messages with the
19
+ # `assistant` role are presumed to have been generated by the model in previous
20
+ # interactions.
21
+ variant :message, -> { OpenAI::Beta::BetaEasyInputMessage }
22
+
23
+ # A message input to the model with a role indicating instruction following
24
+ # hierarchy. Instructions given with the `developer` or `system` role take
25
+ # precedence over instructions given with the `user` role.
26
+ variant :message, -> { OpenAI::Beta::BetaResponseInputItem::Message }
27
+
28
+ # An output message from the model.
29
+ variant :message, -> { OpenAI::Beta::BetaResponseOutputMessage }
30
+
31
+ # The results of a file search tool call. See the
32
+ # [file search guide](https://platform.openai.com/docs/guides/tools-file-search) for more information.
33
+ variant :file_search_call, -> { OpenAI::Beta::BetaResponseFileSearchToolCall }
34
+
35
+ # A tool call to a computer use tool. See the
36
+ # [computer use guide](https://platform.openai.com/docs/guides/tools-computer-use) for more information.
37
+ variant :computer_call, -> { OpenAI::Beta::BetaResponseComputerToolCall }
38
+
39
+ # The output of a computer tool call.
40
+ variant :computer_call_output, -> { OpenAI::Beta::BetaResponseInputItem::ComputerCallOutput }
41
+
42
+ # The results of a web search tool call. See the
43
+ # [web search guide](https://platform.openai.com/docs/guides/tools-web-search) for more information.
44
+ variant :web_search_call, -> { OpenAI::Beta::BetaResponseFunctionWebSearch }
45
+
46
+ # A tool call to run a function. See the
47
+ # [function calling guide](https://platform.openai.com/docs/guides/function-calling) for more information.
48
+ variant :function_call, -> { OpenAI::Beta::BetaResponseFunctionToolCall }
49
+
50
+ # The output of a function tool call.
51
+ variant :function_call_output, -> { OpenAI::Beta::BetaResponseInputItem::FunctionCallOutput }
52
+
53
+ # A message routed between agents.
54
+ variant :agent_message, -> { OpenAI::Beta::BetaResponseInputItem::AgentMessage }
55
+
56
+ variant :multi_agent_call, -> { OpenAI::Beta::BetaResponseInputItem::MultiAgentCall }
57
+
58
+ variant :multi_agent_call_output, -> { OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput }
59
+
60
+ variant :tool_search_call, -> { OpenAI::Beta::BetaResponseInputItem::ToolSearchCall }
61
+
62
+ variant :tool_search_output, -> { OpenAI::Beta::BetaResponseToolSearchOutputItemParam }
63
+
64
+ variant :additional_tools, -> { OpenAI::Beta::BetaResponseInputItem::AdditionalTools }
65
+
66
+ # A description of the chain of thought used by a reasoning model while generating
67
+ # a response. Be sure to include these items in your `input` to the Responses API
68
+ # for subsequent turns of a conversation if you are manually
69
+ # [managing context](https://platform.openai.com/docs/guides/conversation-state).
70
+ variant :reasoning, -> { OpenAI::Beta::BetaResponseReasoningItem }
71
+
72
+ # A compaction item generated by the [`v1/responses/compact` API](https://platform.openai.com/docs/api-reference/responses/compact).
73
+ variant :compaction, -> { OpenAI::Beta::BetaResponseCompactionItemParam }
74
+
75
+ # An image generation request made by the model.
76
+ variant :image_generation_call, -> { OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall }
77
+
78
+ # A tool call to run code.
79
+ variant :code_interpreter_call, -> { OpenAI::Beta::BetaResponseCodeInterpreterToolCall }
80
+
81
+ # A tool call to run a command on the local shell.
82
+ variant :local_shell_call, -> { OpenAI::Beta::BetaResponseInputItem::LocalShellCall }
83
+
84
+ # The output of a local shell tool call.
85
+ variant :local_shell_call_output, -> { OpenAI::Beta::BetaResponseInputItem::LocalShellCallOutput }
86
+
87
+ # A tool representing a request to execute one or more shell commands.
88
+ variant :shell_call, -> { OpenAI::Beta::BetaResponseInputItem::ShellCall }
89
+
90
+ # The streamed output items emitted by a shell tool call.
91
+ variant :shell_call_output, -> { OpenAI::Beta::BetaResponseInputItem::ShellCallOutput }
92
+
93
+ # A tool call representing a request to create, delete, or update files using diff patches.
94
+ variant :apply_patch_call, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCall }
95
+
96
+ # The streamed output emitted by an apply patch tool call.
97
+ variant :apply_patch_call_output, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCallOutput }
98
+
99
+ # A list of tools available on an MCP server.
100
+ variant :mcp_list_tools, -> { OpenAI::Beta::BetaResponseInputItem::McpListTools }
101
+
102
+ # A request for human approval of a tool invocation.
103
+ variant :mcp_approval_request, -> { OpenAI::Beta::BetaResponseInputItem::McpApprovalRequest }
104
+
105
+ # A response to an MCP approval request.
106
+ variant :mcp_approval_response, -> { OpenAI::Beta::BetaResponseInputItem::McpApprovalResponse }
107
+
108
+ # An invocation of a tool on an MCP server.
109
+ variant :mcp_call, -> { OpenAI::Beta::BetaResponseInputItem::McpCall }
110
+
111
+ # The output of a custom tool call from your code, being sent back to the model.
112
+ variant :custom_tool_call_output, -> { OpenAI::Beta::BetaResponseCustomToolCallOutput }
113
+
114
+ # A call to a custom tool created by the model.
115
+ variant :custom_tool_call, -> { OpenAI::Beta::BetaResponseCustomToolCall }
116
+
117
+ # Compacts the current context. Must be the final input item.
118
+ variant :compaction_trigger, -> { OpenAI::Beta::BetaResponseInputItem::CompactionTrigger }
119
+
120
+ # An internal identifier for an item to reference.
121
+ variant :item_reference, -> { OpenAI::Beta::BetaResponseInputItem::ItemReference }
122
+
123
+ variant :program, -> { OpenAI::Beta::BetaResponseInputItem::Program }
124
+
125
+ variant :program_output, -> { OpenAI::Beta::BetaResponseInputItem::ProgramOutput }
126
+
127
+ class Message < OpenAI::Internal::Type::BaseModel
128
+ # @!attribute content
129
+ # A list of one or many input items to the model, containing different content
130
+ # types.
131
+ #
132
+ # @return [Array<OpenAI::Models::Beta::BetaResponseInputText, OpenAI::Models::Beta::BetaResponseInputImage, OpenAI::Models::Beta::BetaResponseInputFile>]
133
+ required :content, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::BetaResponseInputContent] }
134
+
135
+ # @!attribute role
136
+ # The role of the message input. One of `user`, `system`, or `developer`.
137
+ #
138
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::Message::Role]
139
+ required :role, enum: -> { OpenAI::Beta::BetaResponseInputItem::Message::Role }
140
+
141
+ # @!attribute agent
142
+ # The agent that produced this item.
143
+ #
144
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::Message::Agent, nil]
145
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::Message::Agent }, nil?: true
146
+
147
+ # @!attribute status
148
+ # The status of item. One of `in_progress`, `completed`, or `incomplete`.
149
+ # Populated when items are returned via API.
150
+ #
151
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::Message::Status, nil]
152
+ optional :status, enum: -> { OpenAI::Beta::BetaResponseInputItem::Message::Status }
153
+
154
+ # @!attribute type
155
+ # The type of the message input. Always set to `message`.
156
+ #
157
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::Message::Type, nil]
158
+ optional :type, enum: -> { OpenAI::Beta::BetaResponseInputItem::Message::Type }
159
+
160
+ # @!method initialize(content:, role:, agent: nil, status: nil, type: nil)
161
+ # Some parameter documentations has been truncated, see
162
+ # {OpenAI::Models::Beta::BetaResponseInputItem::Message} for more details.
163
+ #
164
+ # A message input to the model with a role indicating instruction following
165
+ # hierarchy. Instructions given with the `developer` or `system` role take
166
+ # precedence over instructions given with the `user` role.
167
+ #
168
+ # @param content [Array<OpenAI::Models::Beta::BetaResponseInputText, OpenAI::Models::Beta::BetaResponseInputImage, OpenAI::Models::Beta::BetaResponseInputFile>] A list of one or many input items to the model, containing different content
169
+ #
170
+ # @param role [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::Message::Role] The role of the message input. One of `user`, `system`, or `developer`.
171
+ #
172
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::Message::Agent, nil] The agent that produced this item.
173
+ #
174
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::Message::Status] The status of item. One of `in_progress`, `completed`, or
175
+ #
176
+ # @param type [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::Message::Type] The type of the message input. Always set to `message`.
177
+
178
+ # The role of the message input. One of `user`, `system`, or `developer`.
179
+ #
180
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::Message#role
181
+ module Role
182
+ extend OpenAI::Internal::Type::Enum
183
+
184
+ USER = :user
185
+ SYSTEM = :system
186
+ DEVELOPER = :developer
187
+
188
+ # @!method self.values
189
+ # @return [Array<Symbol>]
190
+ end
191
+
192
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::Message#agent
193
+ class Agent < OpenAI::Internal::Type::BaseModel
194
+ # @!attribute agent_name
195
+ # The canonical name of the agent that produced this item.
196
+ #
197
+ # @return [String]
198
+ required :agent_name, String
199
+
200
+ # @!method initialize(agent_name:)
201
+ # The agent that produced this item.
202
+ #
203
+ # @param agent_name [String] The canonical name of the agent that produced this item.
204
+ end
205
+
206
+ # The status of item. One of `in_progress`, `completed`, or `incomplete`.
207
+ # Populated when items are returned via API.
208
+ #
209
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::Message#status
210
+ module Status
211
+ extend OpenAI::Internal::Type::Enum
212
+
213
+ IN_PROGRESS = :in_progress
214
+ COMPLETED = :completed
215
+ INCOMPLETE = :incomplete
216
+
217
+ # @!method self.values
218
+ # @return [Array<Symbol>]
219
+ end
220
+
221
+ # The type of the message input. Always set to `message`.
222
+ #
223
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::Message#type
224
+ module Type
225
+ extend OpenAI::Internal::Type::Enum
226
+
227
+ MESSAGE = :message
228
+
229
+ # @!method self.values
230
+ # @return [Array<Symbol>]
231
+ end
232
+ end
233
+
234
+ class ComputerCallOutput < OpenAI::Internal::Type::BaseModel
235
+ # @!attribute call_id
236
+ # The ID of the computer tool call that produced the output.
237
+ #
238
+ # @return [String]
239
+ required :call_id, String
240
+
241
+ # @!attribute output
242
+ # A computer screenshot image used with the computer use tool.
243
+ #
244
+ # @return [OpenAI::Models::Beta::BetaResponseComputerToolCallOutputScreenshot]
245
+ required :output, -> { OpenAI::Beta::BetaResponseComputerToolCallOutputScreenshot }
246
+
247
+ # @!attribute type
248
+ # The type of the computer tool call output. Always `computer_call_output`.
249
+ #
250
+ # @return [Symbol, :computer_call_output]
251
+ required :type, const: :computer_call_output
252
+
253
+ # @!attribute id
254
+ # The ID of the computer tool call output.
255
+ #
256
+ # @return [String, nil]
257
+ optional :id, String, nil?: true
258
+
259
+ # @!attribute acknowledged_safety_checks
260
+ # The safety checks reported by the API that have been acknowledged by the
261
+ # developer.
262
+ #
263
+ # @return [Array<OpenAI::Models::Beta::BetaResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck>, nil]
264
+ optional :acknowledged_safety_checks,
265
+ -> {
266
+ OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::BetaResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck]
267
+ },
268
+ nil?: true
269
+
270
+ # @!attribute agent
271
+ # The agent that produced this item.
272
+ #
273
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ComputerCallOutput::Agent, nil]
274
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::ComputerCallOutput::Agent }, nil?: true
275
+
276
+ # @!attribute status
277
+ # The status of the message input. One of `in_progress`, `completed`, or
278
+ # `incomplete`. Populated when input items are returned via API.
279
+ #
280
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ComputerCallOutput::Status, nil]
281
+ optional :status,
282
+ enum: -> {
283
+ OpenAI::Beta::BetaResponseInputItem::ComputerCallOutput::Status
284
+ },
285
+ nil?: true
286
+
287
+ # @!method initialize(call_id:, output:, id: nil, acknowledged_safety_checks: nil, agent: nil, status: nil, type: :computer_call_output)
288
+ # Some parameter documentations has been truncated, see
289
+ # {OpenAI::Models::Beta::BetaResponseInputItem::ComputerCallOutput} for more
290
+ # details.
291
+ #
292
+ # The output of a computer tool call.
293
+ #
294
+ # @param call_id [String] The ID of the computer tool call that produced the output.
295
+ #
296
+ # @param output [OpenAI::Models::Beta::BetaResponseComputerToolCallOutputScreenshot] A computer screenshot image used with the computer use tool.
297
+ #
298
+ # @param id [String, nil] The ID of the computer tool call output.
299
+ #
300
+ # @param acknowledged_safety_checks [Array<OpenAI::Models::Beta::BetaResponseInputItem::ComputerCallOutput::AcknowledgedSafetyCheck>, nil] The safety checks reported by the API that have been acknowledged by the develop
301
+ #
302
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::ComputerCallOutput::Agent, nil] The agent that produced this item.
303
+ #
304
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ComputerCallOutput::Status, nil] The status of the message input. One of `in_progress`, `completed`, or `incomple
305
+ #
306
+ # @param type [Symbol, :computer_call_output] The type of the computer tool call output. Always `computer_call_output`.
307
+
308
+ class AcknowledgedSafetyCheck < OpenAI::Internal::Type::BaseModel
309
+ # @!attribute id
310
+ # The ID of the pending safety check.
311
+ #
312
+ # @return [String]
313
+ required :id, String
314
+
315
+ # @!attribute code
316
+ # The type of the pending safety check.
317
+ #
318
+ # @return [String, nil]
319
+ optional :code, String, nil?: true
320
+
321
+ # @!attribute message
322
+ # Details about the pending safety check.
323
+ #
324
+ # @return [String, nil]
325
+ optional :message, String, nil?: true
326
+
327
+ # @!method initialize(id:, code: nil, message: nil)
328
+ # A pending safety check for the computer call.
329
+ #
330
+ # @param id [String] The ID of the pending safety check.
331
+ #
332
+ # @param code [String, nil] The type of the pending safety check.
333
+ #
334
+ # @param message [String, nil] Details about the pending safety check.
335
+ end
336
+
337
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ComputerCallOutput#agent
338
+ class Agent < OpenAI::Internal::Type::BaseModel
339
+ # @!attribute agent_name
340
+ # The canonical name of the agent that produced this item.
341
+ #
342
+ # @return [String]
343
+ required :agent_name, String
344
+
345
+ # @!method initialize(agent_name:)
346
+ # The agent that produced this item.
347
+ #
348
+ # @param agent_name [String] The canonical name of the agent that produced this item.
349
+ end
350
+
351
+ # The status of the message input. One of `in_progress`, `completed`, or
352
+ # `incomplete`. Populated when input items are returned via API.
353
+ #
354
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ComputerCallOutput#status
355
+ module Status
356
+ extend OpenAI::Internal::Type::Enum
357
+
358
+ IN_PROGRESS = :in_progress
359
+ COMPLETED = :completed
360
+ INCOMPLETE = :incomplete
361
+
362
+ # @!method self.values
363
+ # @return [Array<Symbol>]
364
+ end
365
+ end
366
+
367
+ class FunctionCallOutput < OpenAI::Internal::Type::BaseModel
368
+ # @!attribute call_id
369
+ # The unique ID of the function tool call generated by the model.
370
+ #
371
+ # @return [String]
372
+ required :call_id, String
373
+
374
+ # @!attribute output
375
+ # Text, image, or file output of the function tool call.
376
+ #
377
+ # @return [String, Array<OpenAI::Models::Beta::BetaResponseInputTextContent, OpenAI::Models::Beta::BetaResponseInputImageContent, OpenAI::Models::Beta::BetaResponseInputFileContent>]
378
+ required :output, union: -> { OpenAI::Beta::BetaResponseInputItem::FunctionCallOutput::Output }
379
+
380
+ # @!attribute type
381
+ # The type of the function tool call output. Always `function_call_output`.
382
+ #
383
+ # @return [Symbol, :function_call_output]
384
+ required :type, const: :function_call_output
385
+
386
+ # @!attribute id
387
+ # The unique ID of the function tool call output. Populated when this item is
388
+ # returned via API.
389
+ #
390
+ # @return [String, nil]
391
+ optional :id, String, nil?: true
392
+
393
+ # @!attribute agent
394
+ # The agent that produced this item.
395
+ #
396
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput::Agent, nil]
397
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::FunctionCallOutput::Agent }, nil?: true
398
+
399
+ # @!attribute caller_
400
+ # The execution context that produced this tool call.
401
+ #
402
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput::Caller::Program, nil]
403
+ optional :caller_,
404
+ union: -> { OpenAI::Beta::BetaResponseInputItem::FunctionCallOutput::Caller },
405
+ api_name: :caller,
406
+ nil?: true
407
+
408
+ # @!attribute status
409
+ # The status of the item. One of `in_progress`, `completed`, or `incomplete`.
410
+ # Populated when items are returned via API.
411
+ #
412
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput::Status, nil]
413
+ optional :status,
414
+ enum: -> {
415
+ OpenAI::Beta::BetaResponseInputItem::FunctionCallOutput::Status
416
+ },
417
+ nil?: true
418
+
419
+ # @!method initialize(call_id:, output:, id: nil, agent: nil, caller_: nil, status: nil, type: :function_call_output)
420
+ # Some parameter documentations has been truncated, see
421
+ # {OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput} for more
422
+ # details.
423
+ #
424
+ # The output of a function tool call.
425
+ #
426
+ # @param call_id [String] The unique ID of the function tool call generated by the model.
427
+ #
428
+ # @param output [String, Array<OpenAI::Models::Beta::BetaResponseInputTextContent, OpenAI::Models::Beta::BetaResponseInputImageContent, OpenAI::Models::Beta::BetaResponseInputFileContent>] Text, image, or file output of the function tool call.
429
+ #
430
+ # @param id [String, nil] The unique ID of the function tool call output. Populated when this item is retu
431
+ #
432
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput::Agent, nil] The agent that produced this item.
433
+ #
434
+ # @param caller_ [OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput::Caller::Program, nil] The execution context that produced this tool call.
435
+ #
436
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput::Status, nil] The status of the item. One of `in_progress`, `completed`, or `incomplete`. Popu
437
+ #
438
+ # @param type [Symbol, :function_call_output] The type of the function tool call output. Always `function_call_output`.
439
+
440
+ # Text, image, or file output of the function tool call.
441
+ #
442
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput#output
443
+ module Output
444
+ extend OpenAI::Internal::Type::Union
445
+
446
+ # A JSON string of the output of the function tool call.
447
+ variant String
448
+
449
+ # An array of content outputs (text, image, file) for the function tool call.
450
+ variant -> { OpenAI::Beta::BetaResponseFunctionCallOutputItemList }
451
+
452
+ # @!method self.variants
453
+ # @return [Array(String, Array<OpenAI::Models::Beta::BetaResponseInputTextContent, OpenAI::Models::Beta::BetaResponseInputImageContent, OpenAI::Models::Beta::BetaResponseInputFileContent>)]
454
+ end
455
+
456
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput#agent
457
+ class Agent < OpenAI::Internal::Type::BaseModel
458
+ # @!attribute agent_name
459
+ # The canonical name of the agent that produced this item.
460
+ #
461
+ # @return [String]
462
+ required :agent_name, String
463
+
464
+ # @!method initialize(agent_name:)
465
+ # The agent that produced this item.
466
+ #
467
+ # @param agent_name [String] The canonical name of the agent that produced this item.
468
+ end
469
+
470
+ # The execution context that produced this tool call.
471
+ #
472
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput#caller_
473
+ module Caller
474
+ extend OpenAI::Internal::Type::Union
475
+
476
+ discriminator :type
477
+
478
+ variant :direct, -> { OpenAI::Beta::BetaResponseInputItem::FunctionCallOutput::Caller::Direct }
479
+
480
+ variant :program, -> { OpenAI::Beta::BetaResponseInputItem::FunctionCallOutput::Caller::Program }
481
+
482
+ class Direct < OpenAI::Internal::Type::BaseModel
483
+ # @!attribute type
484
+ # The caller type. Always `direct`.
485
+ #
486
+ # @return [Symbol, :direct]
487
+ required :type, const: :direct
488
+
489
+ # @!method initialize(type: :direct)
490
+ # @param type [Symbol, :direct] The caller type. Always `direct`.
491
+ end
492
+
493
+ class Program < OpenAI::Internal::Type::BaseModel
494
+ # @!attribute caller_id
495
+ # The call ID of the program item that produced this tool call.
496
+ #
497
+ # @return [String]
498
+ required :caller_id, String
499
+
500
+ # @!attribute type
501
+ # The caller type. Always `program`.
502
+ #
503
+ # @return [Symbol, :program]
504
+ required :type, const: :program
505
+
506
+ # @!method initialize(caller_id:, type: :program)
507
+ # @param caller_id [String] The call ID of the program item that produced this tool call.
508
+ #
509
+ # @param type [Symbol, :program] The caller type. Always `program`.
510
+ end
511
+
512
+ # @!method self.variants
513
+ # @return [Array(OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput::Caller::Program)]
514
+ end
515
+
516
+ # The status of the item. One of `in_progress`, `completed`, or `incomplete`.
517
+ # Populated when items are returned via API.
518
+ #
519
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput#status
520
+ module Status
521
+ extend OpenAI::Internal::Type::Enum
522
+
523
+ IN_PROGRESS = :in_progress
524
+ COMPLETED = :completed
525
+ INCOMPLETE = :incomplete
526
+
527
+ # @!method self.values
528
+ # @return [Array<Symbol>]
529
+ end
530
+ end
531
+
532
+ class AgentMessage < OpenAI::Internal::Type::BaseModel
533
+ # @!attribute author
534
+ # The sending agent identity.
535
+ #
536
+ # @return [String]
537
+ required :author, String
538
+
539
+ # @!attribute content
540
+ # Plaintext, image, or encrypted content sent between agents.
541
+ #
542
+ # @return [Array<OpenAI::Models::Beta::BetaResponseInputTextContent, OpenAI::Models::Beta::BetaResponseInputImageContent, OpenAI::Models::Beta::BetaResponseInputItem::AgentMessage::Content::EncryptedContent>]
543
+ required :content,
544
+ -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::BetaResponseInputItem::AgentMessage::Content] }
545
+
546
+ # @!attribute recipient
547
+ # The destination agent identity.
548
+ #
549
+ # @return [String]
550
+ required :recipient, String
551
+
552
+ # @!attribute type
553
+ # The item type. Always `agent_message`.
554
+ #
555
+ # @return [Symbol, :agent_message]
556
+ required :type, const: :agent_message
557
+
558
+ # @!attribute id
559
+ # The unique ID of this agent message item.
560
+ #
561
+ # @return [String, nil]
562
+ optional :id, String, nil?: true
563
+
564
+ # @!attribute agent
565
+ # The agent that produced this item.
566
+ #
567
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::AgentMessage::Agent, nil]
568
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::AgentMessage::Agent }, nil?: true
569
+
570
+ # @!method initialize(author:, content:, recipient:, id: nil, agent: nil, type: :agent_message)
571
+ # A message routed between agents.
572
+ #
573
+ # @param author [String] The sending agent identity.
574
+ #
575
+ # @param content [Array<OpenAI::Models::Beta::BetaResponseInputTextContent, OpenAI::Models::Beta::BetaResponseInputImageContent, OpenAI::Models::Beta::BetaResponseInputItem::AgentMessage::Content::EncryptedContent>] Plaintext, image, or encrypted content sent between agents.
576
+ #
577
+ # @param recipient [String] The destination agent identity.
578
+ #
579
+ # @param id [String, nil] The unique ID of this agent message item.
580
+ #
581
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::AgentMessage::Agent, nil] The agent that produced this item.
582
+ #
583
+ # @param type [Symbol, :agent_message] The item type. Always `agent_message`.
584
+
585
+ # A plaintext, image, or encrypted agent message content part.
586
+ module Content
587
+ extend OpenAI::Internal::Type::Union
588
+
589
+ discriminator :type
590
+
591
+ # A text input to the model.
592
+ variant :input_text, -> { OpenAI::Beta::BetaResponseInputTextContent }
593
+
594
+ # An image input to the model. Learn about [image inputs](https://platform.openai.com/docs/guides/vision)
595
+ variant :input_image, -> { OpenAI::Beta::BetaResponseInputImageContent }
596
+
597
+ # Opaque encrypted content that Responses API decrypts inside trusted model execution.
598
+ variant :encrypted_content,
599
+ -> { OpenAI::Beta::BetaResponseInputItem::AgentMessage::Content::EncryptedContent }
600
+
601
+ class EncryptedContent < OpenAI::Internal::Type::BaseModel
602
+ # @!attribute encrypted_content
603
+ # Opaque encrypted content.
604
+ #
605
+ # @return [String]
606
+ required :encrypted_content, String
607
+
608
+ # @!attribute type
609
+ # The type of the input item. Always `encrypted_content`.
610
+ #
611
+ # @return [Symbol, :encrypted_content]
612
+ required :type, const: :encrypted_content
613
+
614
+ # @!method initialize(encrypted_content:, type: :encrypted_content)
615
+ # Opaque encrypted content that Responses API decrypts inside trusted model
616
+ # execution.
617
+ #
618
+ # @param encrypted_content [String] Opaque encrypted content.
619
+ #
620
+ # @param type [Symbol, :encrypted_content] The type of the input item. Always `encrypted_content`.
621
+ end
622
+
623
+ # @!method self.variants
624
+ # @return [Array(OpenAI::Models::Beta::BetaResponseInputTextContent, OpenAI::Models::Beta::BetaResponseInputImageContent, OpenAI::Models::Beta::BetaResponseInputItem::AgentMessage::Content::EncryptedContent)]
625
+ end
626
+
627
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::AgentMessage#agent
628
+ class Agent < OpenAI::Internal::Type::BaseModel
629
+ # @!attribute agent_name
630
+ # The canonical name of the agent that produced this item.
631
+ #
632
+ # @return [String]
633
+ required :agent_name, String
634
+
635
+ # @!method initialize(agent_name:)
636
+ # The agent that produced this item.
637
+ #
638
+ # @param agent_name [String] The canonical name of the agent that produced this item.
639
+ end
640
+ end
641
+
642
+ class MultiAgentCall < OpenAI::Internal::Type::BaseModel
643
+ # @!attribute action
644
+ # The multi-agent action that was executed.
645
+ #
646
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCall::Action]
647
+ required :action, enum: -> { OpenAI::Beta::BetaResponseInputItem::MultiAgentCall::Action }
648
+
649
+ # @!attribute arguments
650
+ # The action arguments as a JSON string.
651
+ #
652
+ # @return [String]
653
+ required :arguments, String
654
+
655
+ # @!attribute call_id
656
+ # The unique ID linking this call to its output.
657
+ #
658
+ # @return [String]
659
+ required :call_id, String
660
+
661
+ # @!attribute type
662
+ # The item type. Always `multi_agent_call`.
663
+ #
664
+ # @return [Symbol, :multi_agent_call]
665
+ required :type, const: :multi_agent_call
666
+
667
+ # @!attribute id
668
+ # The unique ID of this multi-agent call.
669
+ #
670
+ # @return [String, nil]
671
+ optional :id, String, nil?: true
672
+
673
+ # @!attribute agent
674
+ # The agent that produced this item.
675
+ #
676
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCall::Agent, nil]
677
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::MultiAgentCall::Agent }, nil?: true
678
+
679
+ # @!method initialize(action:, arguments:, call_id:, id: nil, agent: nil, type: :multi_agent_call)
680
+ # @param action [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCall::Action] The multi-agent action that was executed.
681
+ #
682
+ # @param arguments [String] The action arguments as a JSON string.
683
+ #
684
+ # @param call_id [String] The unique ID linking this call to its output.
685
+ #
686
+ # @param id [String, nil] The unique ID of this multi-agent call.
687
+ #
688
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCall::Agent, nil] The agent that produced this item.
689
+ #
690
+ # @param type [Symbol, :multi_agent_call] The item type. Always `multi_agent_call`.
691
+
692
+ # The multi-agent action that was executed.
693
+ #
694
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCall#action
695
+ module Action
696
+ extend OpenAI::Internal::Type::Enum
697
+
698
+ SPAWN_AGENT = :spawn_agent
699
+ INTERRUPT_AGENT = :interrupt_agent
700
+ LIST_AGENTS = :list_agents
701
+ SEND_MESSAGE = :send_message
702
+ FOLLOWUP_TASK = :followup_task
703
+ WAIT_AGENT = :wait_agent
704
+
705
+ # @!method self.values
706
+ # @return [Array<Symbol>]
707
+ end
708
+
709
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCall#agent
710
+ class Agent < OpenAI::Internal::Type::BaseModel
711
+ # @!attribute agent_name
712
+ # The canonical name of the agent that produced this item.
713
+ #
714
+ # @return [String]
715
+ required :agent_name, String
716
+
717
+ # @!method initialize(agent_name:)
718
+ # The agent that produced this item.
719
+ #
720
+ # @param agent_name [String] The canonical name of the agent that produced this item.
721
+ end
722
+ end
723
+
724
+ class MultiAgentCallOutput < OpenAI::Internal::Type::BaseModel
725
+ # @!attribute action
726
+ # The multi-agent action that produced this result.
727
+ #
728
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Action]
729
+ required :action, enum: -> { OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Action }
730
+
731
+ # @!attribute call_id
732
+ # The unique ID of the multi-agent call.
733
+ #
734
+ # @return [String]
735
+ required :call_id, String
736
+
737
+ # @!attribute output
738
+ # Text output returned by the multi-agent action.
739
+ #
740
+ # @return [Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output>]
741
+ required :output,
742
+ -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output] }
743
+
744
+ # @!attribute type
745
+ # The item type. Always `multi_agent_call_output`.
746
+ #
747
+ # @return [Symbol, :multi_agent_call_output]
748
+ required :type, const: :multi_agent_call_output
749
+
750
+ # @!attribute id
751
+ # The unique ID of this multi-agent call output.
752
+ #
753
+ # @return [String, nil]
754
+ optional :id, String, nil?: true
755
+
756
+ # @!attribute agent
757
+ # The agent that produced this item.
758
+ #
759
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Agent, nil]
760
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Agent }, nil?: true
761
+
762
+ # @!method initialize(action:, call_id:, output:, id: nil, agent: nil, type: :multi_agent_call_output)
763
+ # @param action [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Action] The multi-agent action that produced this result.
764
+ #
765
+ # @param call_id [String] The unique ID of the multi-agent call.
766
+ #
767
+ # @param output [Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output>] Text output returned by the multi-agent action.
768
+ #
769
+ # @param id [String, nil] The unique ID of this multi-agent call output.
770
+ #
771
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Agent, nil] The agent that produced this item.
772
+ #
773
+ # @param type [Symbol, :multi_agent_call_output] The item type. Always `multi_agent_call_output`.
774
+
775
+ # The multi-agent action that produced this result.
776
+ #
777
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput#action
778
+ module Action
779
+ extend OpenAI::Internal::Type::Enum
780
+
781
+ SPAWN_AGENT = :spawn_agent
782
+ INTERRUPT_AGENT = :interrupt_agent
783
+ LIST_AGENTS = :list_agents
784
+ SEND_MESSAGE = :send_message
785
+ FOLLOWUP_TASK = :followup_task
786
+ WAIT_AGENT = :wait_agent
787
+
788
+ # @!method self.values
789
+ # @return [Array<Symbol>]
790
+ end
791
+
792
+ class Output < OpenAI::Internal::Type::BaseModel
793
+ # @!attribute text
794
+ # The text content.
795
+ #
796
+ # @return [String]
797
+ required :text, String
798
+
799
+ # @!attribute type
800
+ # The content type. Always `output_text`.
801
+ #
802
+ # @return [Symbol, :output_text]
803
+ required :type, const: :output_text
804
+
805
+ # @!attribute annotations
806
+ # Citations associated with the text content.
807
+ #
808
+ # @return [Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember0>, Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember1>, Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember2>, nil]
809
+ optional :annotations,
810
+ union: -> { OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations }
811
+
812
+ # @!method initialize(text:, annotations: nil, type: :output_text)
813
+ # @param text [String] The text content.
814
+ #
815
+ # @param annotations [Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember0>, Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember1>, Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember2>] Citations associated with the text content.
816
+ #
817
+ # @param type [Symbol, :output_text] The content type. Always `output_text`.
818
+
819
+ # Citations associated with the text content.
820
+ #
821
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output#annotations
822
+ module Annotations
823
+ extend OpenAI::Internal::Type::Union
824
+
825
+ variant -> { OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember0Array }
826
+
827
+ variant -> { OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember1Array }
828
+
829
+ variant -> { OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember2Array }
830
+
831
+ class UnionMember0 < OpenAI::Internal::Type::BaseModel
832
+ # @!attribute file_id
833
+ # The ID of the file.
834
+ #
835
+ # @return [String]
836
+ required :file_id, String
837
+
838
+ # @!attribute filename
839
+ # The filename of the file cited.
840
+ #
841
+ # @return [String]
842
+ required :filename, String
843
+
844
+ # @!attribute index
845
+ # The index of the file in the list of files.
846
+ #
847
+ # @return [Integer]
848
+ required :index, Integer
849
+
850
+ # @!attribute type
851
+ # The citation type. Always `file_citation`.
852
+ #
853
+ # @return [Symbol, :file_citation]
854
+ required :type, const: :file_citation
855
+
856
+ # @!method initialize(file_id:, filename:, index:, type: :file_citation)
857
+ # @param file_id [String] The ID of the file.
858
+ #
859
+ # @param filename [String] The filename of the file cited.
860
+ #
861
+ # @param index [Integer] The index of the file in the list of files.
862
+ #
863
+ # @param type [Symbol, :file_citation] The citation type. Always `file_citation`.
864
+ end
865
+
866
+ class UnionMember1 < OpenAI::Internal::Type::BaseModel
867
+ # @!attribute end_index
868
+ # The index of the last character of the citation in the message.
869
+ #
870
+ # @return [Integer]
871
+ required :end_index, Integer
872
+
873
+ # @!attribute start_index
874
+ # The index of the first character of the citation in the message.
875
+ #
876
+ # @return [Integer]
877
+ required :start_index, Integer
878
+
879
+ # @!attribute title
880
+ # The title of the cited resource.
881
+ #
882
+ # @return [String]
883
+ required :title, String
884
+
885
+ # @!attribute type
886
+ # The citation type. Always `url_citation`.
887
+ #
888
+ # @return [Symbol, :url_citation]
889
+ required :type, const: :url_citation
890
+
891
+ # @!attribute url
892
+ # The URL of the cited resource.
893
+ #
894
+ # @return [String]
895
+ required :url, String
896
+
897
+ # @!method initialize(end_index:, start_index:, title:, url:, type: :url_citation)
898
+ # @param end_index [Integer] The index of the last character of the citation in the message.
899
+ #
900
+ # @param start_index [Integer] The index of the first character of the citation in the message.
901
+ #
902
+ # @param title [String] The title of the cited resource.
903
+ #
904
+ # @param url [String] The URL of the cited resource.
905
+ #
906
+ # @param type [Symbol, :url_citation] The citation type. Always `url_citation`.
907
+ end
908
+
909
+ class UnionMember2 < OpenAI::Internal::Type::BaseModel
910
+ # @!attribute container_id
911
+ # The ID of the container.
912
+ #
913
+ # @return [String]
914
+ required :container_id, String
915
+
916
+ # @!attribute end_index
917
+ # The index of the last character of the citation in the message.
918
+ #
919
+ # @return [Integer]
920
+ required :end_index, Integer
921
+
922
+ # @!attribute file_id
923
+ # The ID of the container file.
924
+ #
925
+ # @return [String]
926
+ required :file_id, String
927
+
928
+ # @!attribute filename
929
+ # The filename of the container file cited.
930
+ #
931
+ # @return [String]
932
+ required :filename, String
933
+
934
+ # @!attribute start_index
935
+ # The index of the first character of the citation in the message.
936
+ #
937
+ # @return [Integer]
938
+ required :start_index, Integer
939
+
940
+ # @!attribute type
941
+ # The citation type. Always `container_file_citation`.
942
+ #
943
+ # @return [Symbol, :container_file_citation]
944
+ required :type, const: :container_file_citation
945
+
946
+ # @!method initialize(container_id:, end_index:, file_id:, filename:, start_index:, type: :container_file_citation)
947
+ # @param container_id [String] The ID of the container.
948
+ #
949
+ # @param end_index [Integer] The index of the last character of the citation in the message.
950
+ #
951
+ # @param file_id [String] The ID of the container file.
952
+ #
953
+ # @param filename [String] The filename of the container file cited.
954
+ #
955
+ # @param start_index [Integer] The index of the first character of the citation in the message.
956
+ #
957
+ # @param type [Symbol, :container_file_citation] The citation type. Always `container_file_citation`.
958
+ end
959
+
960
+ # @!method self.variants
961
+ # @return [Array(Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember0>, Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember1>, Array<OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember2>)]
962
+
963
+ # @type [OpenAI::Internal::Type::Converter]
964
+ UnionMember0Array =
965
+ OpenAI::Internal::Type::ArrayOf[-> {
966
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember0
967
+ }]
968
+
969
+ # @type [OpenAI::Internal::Type::Converter]
970
+ UnionMember1Array =
971
+ OpenAI::Internal::Type::ArrayOf[-> {
972
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember1
973
+ }]
974
+
975
+ # @type [OpenAI::Internal::Type::Converter]
976
+ UnionMember2Array =
977
+ OpenAI::Internal::Type::ArrayOf[-> {
978
+ OpenAI::Beta::BetaResponseInputItem::MultiAgentCallOutput::Output::Annotations::UnionMember2
979
+ }]
980
+ end
981
+ end
982
+
983
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput#agent
984
+ class Agent < OpenAI::Internal::Type::BaseModel
985
+ # @!attribute agent_name
986
+ # The canonical name of the agent that produced this item.
987
+ #
988
+ # @return [String]
989
+ required :agent_name, String
990
+
991
+ # @!method initialize(agent_name:)
992
+ # The agent that produced this item.
993
+ #
994
+ # @param agent_name [String] The canonical name of the agent that produced this item.
995
+ end
996
+ end
997
+
998
+ class ToolSearchCall < OpenAI::Internal::Type::BaseModel
999
+ # @!attribute arguments
1000
+ # The arguments supplied to the tool search call.
1001
+ #
1002
+ # @return [Object]
1003
+ required :arguments, OpenAI::Internal::Type::Unknown
1004
+
1005
+ # @!attribute type
1006
+ # The item type. Always `tool_search_call`.
1007
+ #
1008
+ # @return [Symbol, :tool_search_call]
1009
+ required :type, const: :tool_search_call
1010
+
1011
+ # @!attribute id
1012
+ # The unique ID of this tool search call.
1013
+ #
1014
+ # @return [String, nil]
1015
+ optional :id, String, nil?: true
1016
+
1017
+ # @!attribute agent
1018
+ # The agent that produced this item.
1019
+ #
1020
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ToolSearchCall::Agent, nil]
1021
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::ToolSearchCall::Agent }, nil?: true
1022
+
1023
+ # @!attribute call_id
1024
+ # The unique ID of the tool search call generated by the model.
1025
+ #
1026
+ # @return [String, nil]
1027
+ optional :call_id, String, nil?: true
1028
+
1029
+ # @!attribute execution
1030
+ # Whether tool search was executed by the server or by the client.
1031
+ #
1032
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ToolSearchCall::Execution, nil]
1033
+ optional :execution, enum: -> { OpenAI::Beta::BetaResponseInputItem::ToolSearchCall::Execution }
1034
+
1035
+ # @!attribute status
1036
+ # The status of the tool search call.
1037
+ #
1038
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ToolSearchCall::Status, nil]
1039
+ optional :status,
1040
+ enum: -> {
1041
+ OpenAI::Beta::BetaResponseInputItem::ToolSearchCall::Status
1042
+ },
1043
+ nil?: true
1044
+
1045
+ # @!method initialize(arguments:, id: nil, agent: nil, call_id: nil, execution: nil, status: nil, type: :tool_search_call)
1046
+ # @param arguments [Object] The arguments supplied to the tool search call.
1047
+ #
1048
+ # @param id [String, nil] The unique ID of this tool search call.
1049
+ #
1050
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::ToolSearchCall::Agent, nil] The agent that produced this item.
1051
+ #
1052
+ # @param call_id [String, nil] The unique ID of the tool search call generated by the model.
1053
+ #
1054
+ # @param execution [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ToolSearchCall::Execution] Whether tool search was executed by the server or by the client.
1055
+ #
1056
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ToolSearchCall::Status, nil] The status of the tool search call.
1057
+ #
1058
+ # @param type [Symbol, :tool_search_call] The item type. Always `tool_search_call`.
1059
+
1060
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ToolSearchCall#agent
1061
+ class Agent < OpenAI::Internal::Type::BaseModel
1062
+ # @!attribute agent_name
1063
+ # The canonical name of the agent that produced this item.
1064
+ #
1065
+ # @return [String]
1066
+ required :agent_name, String
1067
+
1068
+ # @!method initialize(agent_name:)
1069
+ # The agent that produced this item.
1070
+ #
1071
+ # @param agent_name [String] The canonical name of the agent that produced this item.
1072
+ end
1073
+
1074
+ # Whether tool search was executed by the server or by the client.
1075
+ #
1076
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ToolSearchCall#execution
1077
+ module Execution
1078
+ extend OpenAI::Internal::Type::Enum
1079
+
1080
+ SERVER = :server
1081
+ CLIENT = :client
1082
+
1083
+ # @!method self.values
1084
+ # @return [Array<Symbol>]
1085
+ end
1086
+
1087
+ # The status of the tool search call.
1088
+ #
1089
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ToolSearchCall#status
1090
+ module Status
1091
+ extend OpenAI::Internal::Type::Enum
1092
+
1093
+ IN_PROGRESS = :in_progress
1094
+ COMPLETED = :completed
1095
+ INCOMPLETE = :incomplete
1096
+
1097
+ # @!method self.values
1098
+ # @return [Array<Symbol>]
1099
+ end
1100
+ end
1101
+
1102
+ class AdditionalTools < OpenAI::Internal::Type::BaseModel
1103
+ # @!attribute role
1104
+ # The role that provided the additional tools. Only `developer` is supported.
1105
+ #
1106
+ # @return [Symbol, :developer]
1107
+ required :role, const: :developer
1108
+
1109
+ # @!attribute tools
1110
+ # A list of additional tools made available at this item.
1111
+ #
1112
+ # @return [Array<OpenAI::Models::Beta::BetaFunctionTool, OpenAI::Models::Beta::BetaFileSearchTool, OpenAI::Models::Beta::BetaComputerTool, OpenAI::Models::Beta::BetaComputerUsePreviewTool, OpenAI::Models::Beta::BetaTool::Mcp, OpenAI::Models::Beta::BetaTool::CodeInterpreter, OpenAI::Models::Beta::BetaTool::ProgrammaticToolCalling, OpenAI::Models::Beta::BetaTool::ImageGeneration, OpenAI::Models::Beta::BetaTool::LocalShell, OpenAI::Models::Beta::BetaFunctionShellTool, OpenAI::Models::Beta::BetaCustomTool, OpenAI::Models::Beta::BetaNamespaceTool, OpenAI::Models::Beta::BetaToolSearchTool, OpenAI::Models::Beta::BetaApplyPatchTool, OpenAI::Models::Beta::BetaWebSearchTool, OpenAI::Models::Beta::BetaWebSearchPreviewTool>]
1113
+ required :tools, -> { OpenAI::Internal::Type::ArrayOf[union: OpenAI::Beta::BetaTool] }
1114
+
1115
+ # @!attribute type
1116
+ # The item type. Always `additional_tools`.
1117
+ #
1118
+ # @return [Symbol, :additional_tools]
1119
+ required :type, const: :additional_tools
1120
+
1121
+ # @!attribute id
1122
+ # The unique ID of this additional tools item.
1123
+ #
1124
+ # @return [String, nil]
1125
+ optional :id, String, nil?: true
1126
+
1127
+ # @!attribute agent
1128
+ # The agent that produced this item.
1129
+ #
1130
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::AdditionalTools::Agent, nil]
1131
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::AdditionalTools::Agent }, nil?: true
1132
+
1133
+ # @!method initialize(tools:, id: nil, agent: nil, role: :developer, type: :additional_tools)
1134
+ # @param tools [Array<OpenAI::Models::Beta::BetaFunctionTool, OpenAI::Models::Beta::BetaFileSearchTool, OpenAI::Models::Beta::BetaComputerTool, OpenAI::Models::Beta::BetaComputerUsePreviewTool, OpenAI::Models::Beta::BetaTool::Mcp, OpenAI::Models::Beta::BetaTool::CodeInterpreter, OpenAI::Models::Beta::BetaTool::ProgrammaticToolCalling, OpenAI::Models::Beta::BetaTool::ImageGeneration, OpenAI::Models::Beta::BetaTool::LocalShell, OpenAI::Models::Beta::BetaFunctionShellTool, OpenAI::Models::Beta::BetaCustomTool, OpenAI::Models::Beta::BetaNamespaceTool, OpenAI::Models::Beta::BetaToolSearchTool, OpenAI::Models::Beta::BetaApplyPatchTool, OpenAI::Models::Beta::BetaWebSearchTool, OpenAI::Models::Beta::BetaWebSearchPreviewTool>] A list of additional tools made available at this item.
1135
+ #
1136
+ # @param id [String, nil] The unique ID of this additional tools item.
1137
+ #
1138
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::AdditionalTools::Agent, nil] The agent that produced this item.
1139
+ #
1140
+ # @param role [Symbol, :developer] The role that provided the additional tools. Only `developer` is supported.
1141
+ #
1142
+ # @param type [Symbol, :additional_tools] The item type. Always `additional_tools`.
1143
+
1144
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::AdditionalTools#agent
1145
+ class Agent < OpenAI::Internal::Type::BaseModel
1146
+ # @!attribute agent_name
1147
+ # The canonical name of the agent that produced this item.
1148
+ #
1149
+ # @return [String]
1150
+ required :agent_name, String
1151
+
1152
+ # @!method initialize(agent_name:)
1153
+ # The agent that produced this item.
1154
+ #
1155
+ # @param agent_name [String] The canonical name of the agent that produced this item.
1156
+ end
1157
+ end
1158
+
1159
+ class ImageGenerationCall < OpenAI::Internal::Type::BaseModel
1160
+ # @!attribute id
1161
+ # The unique ID of the image generation call.
1162
+ #
1163
+ # @return [String]
1164
+ required :id, String
1165
+
1166
+ # @!attribute result
1167
+ # The generated image encoded in base64.
1168
+ #
1169
+ # @return [String, nil]
1170
+ required :result, String, nil?: true
1171
+
1172
+ # @!attribute status
1173
+ # The status of the image generation call.
1174
+ #
1175
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::Status]
1176
+ required :status, enum: -> { OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall::Status }
1177
+
1178
+ # @!attribute type
1179
+ # The type of the image generation call. Always `image_generation_call`.
1180
+ #
1181
+ # @return [Symbol, :image_generation_call]
1182
+ required :type, const: :image_generation_call
1183
+
1184
+ # @!attribute agent
1185
+ # The agent that produced this item.
1186
+ #
1187
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::Agent, nil]
1188
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::ImageGenerationCall::Agent }, nil?: true
1189
+
1190
+ # @!method initialize(id:, result:, status:, agent: nil, type: :image_generation_call)
1191
+ # Some parameter documentations has been truncated, see
1192
+ # {OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall} for more
1193
+ # details.
1194
+ #
1195
+ # An image generation request made by the model.
1196
+ #
1197
+ # @param id [String] The unique ID of the image generation call.
1198
+ #
1199
+ # @param result [String, nil] The generated image encoded in base64.
1200
+ #
1201
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::Status] The status of the image generation call.
1202
+ #
1203
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall::Agent, nil] The agent that produced this item.
1204
+ #
1205
+ # @param type [Symbol, :image_generation_call] The type of the image generation call. Always `image_generation_call`.
1206
+
1207
+ # The status of the image generation call.
1208
+ #
1209
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall#status
1210
+ module Status
1211
+ extend OpenAI::Internal::Type::Enum
1212
+
1213
+ IN_PROGRESS = :in_progress
1214
+ COMPLETED = :completed
1215
+ GENERATING = :generating
1216
+ FAILED = :failed
1217
+
1218
+ # @!method self.values
1219
+ # @return [Array<Symbol>]
1220
+ end
1221
+
1222
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall#agent
1223
+ class Agent < OpenAI::Internal::Type::BaseModel
1224
+ # @!attribute agent_name
1225
+ # The canonical name of the agent that produced this item.
1226
+ #
1227
+ # @return [String]
1228
+ required :agent_name, String
1229
+
1230
+ # @!method initialize(agent_name:)
1231
+ # The agent that produced this item.
1232
+ #
1233
+ # @param agent_name [String] The canonical name of the agent that produced this item.
1234
+ end
1235
+ end
1236
+
1237
+ class LocalShellCall < OpenAI::Internal::Type::BaseModel
1238
+ # @!attribute id
1239
+ # The unique ID of the local shell call.
1240
+ #
1241
+ # @return [String]
1242
+ required :id, String
1243
+
1244
+ # @!attribute action
1245
+ # Execute a shell command on the server.
1246
+ #
1247
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall::Action]
1248
+ required :action, -> { OpenAI::Beta::BetaResponseInputItem::LocalShellCall::Action }
1249
+
1250
+ # @!attribute call_id
1251
+ # The unique ID of the local shell tool call generated by the model.
1252
+ #
1253
+ # @return [String]
1254
+ required :call_id, String
1255
+
1256
+ # @!attribute status
1257
+ # The status of the local shell call.
1258
+ #
1259
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall::Status]
1260
+ required :status, enum: -> { OpenAI::Beta::BetaResponseInputItem::LocalShellCall::Status }
1261
+
1262
+ # @!attribute type
1263
+ # The type of the local shell call. Always `local_shell_call`.
1264
+ #
1265
+ # @return [Symbol, :local_shell_call]
1266
+ required :type, const: :local_shell_call
1267
+
1268
+ # @!attribute agent
1269
+ # The agent that produced this item.
1270
+ #
1271
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall::Agent, nil]
1272
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::LocalShellCall::Agent }, nil?: true
1273
+
1274
+ # @!method initialize(id:, action:, call_id:, status:, agent: nil, type: :local_shell_call)
1275
+ # Some parameter documentations has been truncated, see
1276
+ # {OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall} for more details.
1277
+ #
1278
+ # A tool call to run a command on the local shell.
1279
+ #
1280
+ # @param id [String] The unique ID of the local shell call.
1281
+ #
1282
+ # @param action [OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall::Action] Execute a shell command on the server.
1283
+ #
1284
+ # @param call_id [String] The unique ID of the local shell tool call generated by the model.
1285
+ #
1286
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall::Status] The status of the local shell call.
1287
+ #
1288
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall::Agent, nil] The agent that produced this item.
1289
+ #
1290
+ # @param type [Symbol, :local_shell_call] The type of the local shell call. Always `local_shell_call`.
1291
+
1292
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall#action
1293
+ class Action < OpenAI::Internal::Type::BaseModel
1294
+ # @!attribute command
1295
+ # The command to run.
1296
+ #
1297
+ # @return [Array<String>]
1298
+ required :command, OpenAI::Internal::Type::ArrayOf[String]
1299
+
1300
+ # @!attribute env
1301
+ # Environment variables to set for the command.
1302
+ #
1303
+ # @return [Hash{Symbol=>String}]
1304
+ required :env, OpenAI::Internal::Type::HashOf[String]
1305
+
1306
+ # @!attribute type
1307
+ # The type of the local shell action. Always `exec`.
1308
+ #
1309
+ # @return [Symbol, :exec]
1310
+ required :type, const: :exec
1311
+
1312
+ # @!attribute timeout_ms
1313
+ # Optional timeout in milliseconds for the command.
1314
+ #
1315
+ # @return [Integer, nil]
1316
+ optional :timeout_ms, Integer, nil?: true
1317
+
1318
+ # @!attribute user
1319
+ # Optional user to run the command as.
1320
+ #
1321
+ # @return [String, nil]
1322
+ optional :user, String, nil?: true
1323
+
1324
+ # @!attribute working_directory
1325
+ # Optional working directory to run the command in.
1326
+ #
1327
+ # @return [String, nil]
1328
+ optional :working_directory, String, nil?: true
1329
+
1330
+ # @!method initialize(command:, env:, timeout_ms: nil, user: nil, working_directory: nil, type: :exec)
1331
+ # Execute a shell command on the server.
1332
+ #
1333
+ # @param command [Array<String>] The command to run.
1334
+ #
1335
+ # @param env [Hash{Symbol=>String}] Environment variables to set for the command.
1336
+ #
1337
+ # @param timeout_ms [Integer, nil] Optional timeout in milliseconds for the command.
1338
+ #
1339
+ # @param user [String, nil] Optional user to run the command as.
1340
+ #
1341
+ # @param working_directory [String, nil] Optional working directory to run the command in.
1342
+ #
1343
+ # @param type [Symbol, :exec] The type of the local shell action. Always `exec`.
1344
+ end
1345
+
1346
+ # The status of the local shell call.
1347
+ #
1348
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall#status
1349
+ module Status
1350
+ extend OpenAI::Internal::Type::Enum
1351
+
1352
+ IN_PROGRESS = :in_progress
1353
+ COMPLETED = :completed
1354
+ INCOMPLETE = :incomplete
1355
+
1356
+ # @!method self.values
1357
+ # @return [Array<Symbol>]
1358
+ end
1359
+
1360
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall#agent
1361
+ class Agent < OpenAI::Internal::Type::BaseModel
1362
+ # @!attribute agent_name
1363
+ # The canonical name of the agent that produced this item.
1364
+ #
1365
+ # @return [String]
1366
+ required :agent_name, String
1367
+
1368
+ # @!method initialize(agent_name:)
1369
+ # The agent that produced this item.
1370
+ #
1371
+ # @param agent_name [String] The canonical name of the agent that produced this item.
1372
+ end
1373
+ end
1374
+
1375
+ class LocalShellCallOutput < OpenAI::Internal::Type::BaseModel
1376
+ # @!attribute id
1377
+ # The unique ID of the local shell tool call generated by the model.
1378
+ #
1379
+ # @return [String]
1380
+ required :id, String
1381
+
1382
+ # @!attribute output
1383
+ # A JSON string of the output of the local shell tool call.
1384
+ #
1385
+ # @return [String]
1386
+ required :output, String
1387
+
1388
+ # @!attribute type
1389
+ # The type of the local shell tool call output. Always `local_shell_call_output`.
1390
+ #
1391
+ # @return [Symbol, :local_shell_call_output]
1392
+ required :type, const: :local_shell_call_output
1393
+
1394
+ # @!attribute agent
1395
+ # The agent that produced this item.
1396
+ #
1397
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCallOutput::Agent, nil]
1398
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::LocalShellCallOutput::Agent }, nil?: true
1399
+
1400
+ # @!attribute status
1401
+ # The status of the item. One of `in_progress`, `completed`, or `incomplete`.
1402
+ #
1403
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCallOutput::Status, nil]
1404
+ optional :status,
1405
+ enum: -> { OpenAI::Beta::BetaResponseInputItem::LocalShellCallOutput::Status },
1406
+ nil?: true
1407
+
1408
+ # @!method initialize(id:, output:, agent: nil, status: nil, type: :local_shell_call_output)
1409
+ # Some parameter documentations has been truncated, see
1410
+ # {OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCallOutput} for more
1411
+ # details.
1412
+ #
1413
+ # The output of a local shell tool call.
1414
+ #
1415
+ # @param id [String] The unique ID of the local shell tool call generated by the model.
1416
+ #
1417
+ # @param output [String] A JSON string of the output of the local shell tool call.
1418
+ #
1419
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCallOutput::Agent, nil] The agent that produced this item.
1420
+ #
1421
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCallOutput::Status, nil] The status of the item. One of `in_progress`, `completed`, or `incomplete`.
1422
+ #
1423
+ # @param type [Symbol, :local_shell_call_output] The type of the local shell tool call output. Always `local_shell_call_output`.
1424
+
1425
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCallOutput#agent
1426
+ class Agent < OpenAI::Internal::Type::BaseModel
1427
+ # @!attribute agent_name
1428
+ # The canonical name of the agent that produced this item.
1429
+ #
1430
+ # @return [String]
1431
+ required :agent_name, String
1432
+
1433
+ # @!method initialize(agent_name:)
1434
+ # The agent that produced this item.
1435
+ #
1436
+ # @param agent_name [String] The canonical name of the agent that produced this item.
1437
+ end
1438
+
1439
+ # The status of the item. One of `in_progress`, `completed`, or `incomplete`.
1440
+ #
1441
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCallOutput#status
1442
+ module Status
1443
+ extend OpenAI::Internal::Type::Enum
1444
+
1445
+ IN_PROGRESS = :in_progress
1446
+ COMPLETED = :completed
1447
+ INCOMPLETE = :incomplete
1448
+
1449
+ # @!method self.values
1450
+ # @return [Array<Symbol>]
1451
+ end
1452
+ end
1453
+
1454
+ class ShellCall < OpenAI::Internal::Type::BaseModel
1455
+ # @!attribute action
1456
+ # The shell commands and limits that describe how to run the tool call.
1457
+ #
1458
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Action]
1459
+ required :action, -> { OpenAI::Beta::BetaResponseInputItem::ShellCall::Action }
1460
+
1461
+ # @!attribute call_id
1462
+ # The unique ID of the shell tool call generated by the model.
1463
+ #
1464
+ # @return [String]
1465
+ required :call_id, String
1466
+
1467
+ # @!attribute type
1468
+ # The type of the item. Always `shell_call`.
1469
+ #
1470
+ # @return [Symbol, :shell_call]
1471
+ required :type, const: :shell_call
1472
+
1473
+ # @!attribute id
1474
+ # The unique ID of the shell tool call. Populated when this item is returned via
1475
+ # API.
1476
+ #
1477
+ # @return [String, nil]
1478
+ optional :id, String, nil?: true
1479
+
1480
+ # @!attribute agent
1481
+ # The agent that produced this item.
1482
+ #
1483
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Agent, nil]
1484
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::ShellCall::Agent }, nil?: true
1485
+
1486
+ # @!attribute caller_
1487
+ # The execution context that produced this tool call.
1488
+ #
1489
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Caller::Program, nil]
1490
+ optional :caller_,
1491
+ union: -> { OpenAI::Beta::BetaResponseInputItem::ShellCall::Caller },
1492
+ api_name: :caller,
1493
+ nil?: true
1494
+
1495
+ # @!attribute environment
1496
+ # The environment to execute the shell commands in.
1497
+ #
1498
+ # @return [OpenAI::Models::Beta::BetaLocalEnvironment, OpenAI::Models::Beta::BetaContainerReference, nil]
1499
+ optional :environment,
1500
+ union: -> { OpenAI::Beta::BetaResponseInputItem::ShellCall::Environment },
1501
+ nil?: true
1502
+
1503
+ # @!attribute status
1504
+ # The status of the shell call. One of `in_progress`, `completed`, or
1505
+ # `incomplete`.
1506
+ #
1507
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Status, nil]
1508
+ optional :status, enum: -> { OpenAI::Beta::BetaResponseInputItem::ShellCall::Status }, nil?: true
1509
+
1510
+ # @!method initialize(action:, call_id:, id: nil, agent: nil, caller_: nil, environment: nil, status: nil, type: :shell_call)
1511
+ # Some parameter documentations has been truncated, see
1512
+ # {OpenAI::Models::Beta::BetaResponseInputItem::ShellCall} for more details.
1513
+ #
1514
+ # A tool representing a request to execute one or more shell commands.
1515
+ #
1516
+ # @param action [OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Action] The shell commands and limits that describe how to run the tool call.
1517
+ #
1518
+ # @param call_id [String] The unique ID of the shell tool call generated by the model.
1519
+ #
1520
+ # @param id [String, nil] The unique ID of the shell tool call. Populated when this item is returned via A
1521
+ #
1522
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Agent, nil] The agent that produced this item.
1523
+ #
1524
+ # @param caller_ [OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Caller::Program, nil] The execution context that produced this tool call.
1525
+ #
1526
+ # @param environment [OpenAI::Models::Beta::BetaLocalEnvironment, OpenAI::Models::Beta::BetaContainerReference, nil] The environment to execute the shell commands in.
1527
+ #
1528
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Status, nil] The status of the shell call. One of `in_progress`, `completed`, or `incomplete`
1529
+ #
1530
+ # @param type [Symbol, :shell_call] The type of the item. Always `shell_call`.
1531
+
1532
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ShellCall#action
1533
+ class Action < OpenAI::Internal::Type::BaseModel
1534
+ # @!attribute commands
1535
+ # Ordered shell commands for the execution environment to run.
1536
+ #
1537
+ # @return [Array<String>]
1538
+ required :commands, OpenAI::Internal::Type::ArrayOf[String]
1539
+
1540
+ # @!attribute max_output_length
1541
+ # Maximum number of UTF-8 characters to capture from combined stdout and stderr
1542
+ # output.
1543
+ #
1544
+ # @return [Integer, nil]
1545
+ optional :max_output_length, Integer, nil?: true
1546
+
1547
+ # @!attribute timeout_ms
1548
+ # Maximum wall-clock time in milliseconds to allow the shell commands to run.
1549
+ #
1550
+ # @return [Integer, nil]
1551
+ optional :timeout_ms, Integer, nil?: true
1552
+
1553
+ # @!method initialize(commands:, max_output_length: nil, timeout_ms: nil)
1554
+ # Some parameter documentations has been truncated, see
1555
+ # {OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Action} for more
1556
+ # details.
1557
+ #
1558
+ # The shell commands and limits that describe how to run the tool call.
1559
+ #
1560
+ # @param commands [Array<String>] Ordered shell commands for the execution environment to run.
1561
+ #
1562
+ # @param max_output_length [Integer, nil] Maximum number of UTF-8 characters to capture from combined stdout and stderr ou
1563
+ #
1564
+ # @param timeout_ms [Integer, nil] Maximum wall-clock time in milliseconds to allow the shell commands to run.
1565
+ end
1566
+
1567
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ShellCall#agent
1568
+ class Agent < OpenAI::Internal::Type::BaseModel
1569
+ # @!attribute agent_name
1570
+ # The canonical name of the agent that produced this item.
1571
+ #
1572
+ # @return [String]
1573
+ required :agent_name, String
1574
+
1575
+ # @!method initialize(agent_name:)
1576
+ # The agent that produced this item.
1577
+ #
1578
+ # @param agent_name [String] The canonical name of the agent that produced this item.
1579
+ end
1580
+
1581
+ # The execution context that produced this tool call.
1582
+ #
1583
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ShellCall#caller_
1584
+ module Caller
1585
+ extend OpenAI::Internal::Type::Union
1586
+
1587
+ discriminator :type
1588
+
1589
+ variant :direct, -> { OpenAI::Beta::BetaResponseInputItem::ShellCall::Caller::Direct }
1590
+
1591
+ variant :program, -> { OpenAI::Beta::BetaResponseInputItem::ShellCall::Caller::Program }
1592
+
1593
+ class Direct < OpenAI::Internal::Type::BaseModel
1594
+ # @!attribute type
1595
+ # The caller type. Always `direct`.
1596
+ #
1597
+ # @return [Symbol, :direct]
1598
+ required :type, const: :direct
1599
+
1600
+ # @!method initialize(type: :direct)
1601
+ # @param type [Symbol, :direct] The caller type. Always `direct`.
1602
+ end
1603
+
1604
+ class Program < OpenAI::Internal::Type::BaseModel
1605
+ # @!attribute caller_id
1606
+ # The call ID of the program item that produced this tool call.
1607
+ #
1608
+ # @return [String]
1609
+ required :caller_id, String
1610
+
1611
+ # @!attribute type
1612
+ # The caller type. Always `program`.
1613
+ #
1614
+ # @return [Symbol, :program]
1615
+ required :type, const: :program
1616
+
1617
+ # @!method initialize(caller_id:, type: :program)
1618
+ # @param caller_id [String] The call ID of the program item that produced this tool call.
1619
+ #
1620
+ # @param type [Symbol, :program] The caller type. Always `program`.
1621
+ end
1622
+
1623
+ # @!method self.variants
1624
+ # @return [Array(OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ShellCall::Caller::Program)]
1625
+ end
1626
+
1627
+ # The environment to execute the shell commands in.
1628
+ #
1629
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ShellCall#environment
1630
+ module Environment
1631
+ extend OpenAI::Internal::Type::Union
1632
+
1633
+ discriminator :type
1634
+
1635
+ variant :local, -> { OpenAI::Beta::BetaLocalEnvironment }
1636
+
1637
+ variant :container_reference, -> { OpenAI::Beta::BetaContainerReference }
1638
+
1639
+ # @!method self.variants
1640
+ # @return [Array(OpenAI::Models::Beta::BetaLocalEnvironment, OpenAI::Models::Beta::BetaContainerReference)]
1641
+ end
1642
+
1643
+ # The status of the shell call. One of `in_progress`, `completed`, or
1644
+ # `incomplete`.
1645
+ #
1646
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ShellCall#status
1647
+ module Status
1648
+ extend OpenAI::Internal::Type::Enum
1649
+
1650
+ IN_PROGRESS = :in_progress
1651
+ COMPLETED = :completed
1652
+ INCOMPLETE = :incomplete
1653
+
1654
+ # @!method self.values
1655
+ # @return [Array<Symbol>]
1656
+ end
1657
+ end
1658
+
1659
+ class ShellCallOutput < OpenAI::Internal::Type::BaseModel
1660
+ # @!attribute call_id
1661
+ # The unique ID of the shell tool call generated by the model.
1662
+ #
1663
+ # @return [String]
1664
+ required :call_id, String
1665
+
1666
+ # @!attribute output
1667
+ # Captured chunks of stdout and stderr output, along with their associated
1668
+ # outcomes.
1669
+ #
1670
+ # @return [Array<OpenAI::Models::Beta::BetaResponseFunctionShellCallOutputContent>]
1671
+ required :output,
1672
+ -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::BetaResponseFunctionShellCallOutputContent] }
1673
+
1674
+ # @!attribute type
1675
+ # The type of the item. Always `shell_call_output`.
1676
+ #
1677
+ # @return [Symbol, :shell_call_output]
1678
+ required :type, const: :shell_call_output
1679
+
1680
+ # @!attribute id
1681
+ # The unique ID of the shell tool call output. Populated when this item is
1682
+ # returned via API.
1683
+ #
1684
+ # @return [String, nil]
1685
+ optional :id, String, nil?: true
1686
+
1687
+ # @!attribute agent
1688
+ # The agent that produced this item.
1689
+ #
1690
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput::Agent, nil]
1691
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::ShellCallOutput::Agent }, nil?: true
1692
+
1693
+ # @!attribute caller_
1694
+ # The execution context that produced this tool call.
1695
+ #
1696
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput::Caller::Program, nil]
1697
+ optional :caller_,
1698
+ union: -> { OpenAI::Beta::BetaResponseInputItem::ShellCallOutput::Caller },
1699
+ api_name: :caller,
1700
+ nil?: true
1701
+
1702
+ # @!attribute max_output_length
1703
+ # The maximum number of UTF-8 characters captured for this shell call's combined
1704
+ # output.
1705
+ #
1706
+ # @return [Integer, nil]
1707
+ optional :max_output_length, Integer, nil?: true
1708
+
1709
+ # @!attribute status
1710
+ # The status of the shell call output.
1711
+ #
1712
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput::Status, nil]
1713
+ optional :status,
1714
+ enum: -> {
1715
+ OpenAI::Beta::BetaResponseInputItem::ShellCallOutput::Status
1716
+ },
1717
+ nil?: true
1718
+
1719
+ # @!method initialize(call_id:, output:, id: nil, agent: nil, caller_: nil, max_output_length: nil, status: nil, type: :shell_call_output)
1720
+ # Some parameter documentations has been truncated, see
1721
+ # {OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput} for more details.
1722
+ #
1723
+ # The streamed output items emitted by a shell tool call.
1724
+ #
1725
+ # @param call_id [String] The unique ID of the shell tool call generated by the model.
1726
+ #
1727
+ # @param output [Array<OpenAI::Models::Beta::BetaResponseFunctionShellCallOutputContent>] Captured chunks of stdout and stderr output, along with their associated outcome
1728
+ #
1729
+ # @param id [String, nil] The unique ID of the shell tool call output. Populated when this item is returne
1730
+ #
1731
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput::Agent, nil] The agent that produced this item.
1732
+ #
1733
+ # @param caller_ [OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput::Caller::Program, nil] The execution context that produced this tool call.
1734
+ #
1735
+ # @param max_output_length [Integer, nil] The maximum number of UTF-8 characters captured for this shell call's combined o
1736
+ #
1737
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput::Status, nil] The status of the shell call output.
1738
+ #
1739
+ # @param type [Symbol, :shell_call_output] The type of the item. Always `shell_call_output`.
1740
+
1741
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput#agent
1742
+ class Agent < OpenAI::Internal::Type::BaseModel
1743
+ # @!attribute agent_name
1744
+ # The canonical name of the agent that produced this item.
1745
+ #
1746
+ # @return [String]
1747
+ required :agent_name, String
1748
+
1749
+ # @!method initialize(agent_name:)
1750
+ # The agent that produced this item.
1751
+ #
1752
+ # @param agent_name [String] The canonical name of the agent that produced this item.
1753
+ end
1754
+
1755
+ # The execution context that produced this tool call.
1756
+ #
1757
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput#caller_
1758
+ module Caller
1759
+ extend OpenAI::Internal::Type::Union
1760
+
1761
+ discriminator :type
1762
+
1763
+ variant :direct, -> { OpenAI::Beta::BetaResponseInputItem::ShellCallOutput::Caller::Direct }
1764
+
1765
+ variant :program, -> { OpenAI::Beta::BetaResponseInputItem::ShellCallOutput::Caller::Program }
1766
+
1767
+ class Direct < OpenAI::Internal::Type::BaseModel
1768
+ # @!attribute type
1769
+ # The caller type. Always `direct`.
1770
+ #
1771
+ # @return [Symbol, :direct]
1772
+ required :type, const: :direct
1773
+
1774
+ # @!method initialize(type: :direct)
1775
+ # @param type [Symbol, :direct] The caller type. Always `direct`.
1776
+ end
1777
+
1778
+ class Program < OpenAI::Internal::Type::BaseModel
1779
+ # @!attribute caller_id
1780
+ # The call ID of the program item that produced this tool call.
1781
+ #
1782
+ # @return [String]
1783
+ required :caller_id, String
1784
+
1785
+ # @!attribute type
1786
+ # The caller type. Always `program`.
1787
+ #
1788
+ # @return [Symbol, :program]
1789
+ required :type, const: :program
1790
+
1791
+ # @!method initialize(caller_id:, type: :program)
1792
+ # @param caller_id [String] The call ID of the program item that produced this tool call.
1793
+ #
1794
+ # @param type [Symbol, :program] The caller type. Always `program`.
1795
+ end
1796
+
1797
+ # @!method self.variants
1798
+ # @return [Array(OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput::Caller::Program)]
1799
+ end
1800
+
1801
+ # The status of the shell call output.
1802
+ #
1803
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput#status
1804
+ module Status
1805
+ extend OpenAI::Internal::Type::Enum
1806
+
1807
+ IN_PROGRESS = :in_progress
1808
+ COMPLETED = :completed
1809
+ INCOMPLETE = :incomplete
1810
+
1811
+ # @!method self.values
1812
+ # @return [Array<Symbol>]
1813
+ end
1814
+ end
1815
+
1816
+ class ApplyPatchCall < OpenAI::Internal::Type::BaseModel
1817
+ # @!attribute call_id
1818
+ # The unique ID of the apply patch tool call generated by the model.
1819
+ #
1820
+ # @return [String]
1821
+ required :call_id, String
1822
+
1823
+ # @!attribute operation
1824
+ # The specific create, delete, or update instruction for the apply_patch tool
1825
+ # call.
1826
+ #
1827
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::CreateFile, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::DeleteFile, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::UpdateFile]
1828
+ required :operation, union: -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCall::Operation }
1829
+
1830
+ # @!attribute status
1831
+ # The status of the apply patch tool call. One of `in_progress` or `completed`.
1832
+ #
1833
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Status]
1834
+ required :status, enum: -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCall::Status }
1835
+
1836
+ # @!attribute type
1837
+ # The type of the item. Always `apply_patch_call`.
1838
+ #
1839
+ # @return [Symbol, :apply_patch_call]
1840
+ required :type, const: :apply_patch_call
1841
+
1842
+ # @!attribute id
1843
+ # The unique ID of the apply patch tool call. Populated when this item is returned
1844
+ # via API.
1845
+ #
1846
+ # @return [String, nil]
1847
+ optional :id, String, nil?: true
1848
+
1849
+ # @!attribute agent
1850
+ # The agent that produced this item.
1851
+ #
1852
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Agent, nil]
1853
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCall::Agent }, nil?: true
1854
+
1855
+ # @!attribute caller_
1856
+ # The execution context that produced this tool call.
1857
+ #
1858
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Caller::Program, nil]
1859
+ optional :caller_,
1860
+ union: -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCall::Caller },
1861
+ api_name: :caller,
1862
+ nil?: true
1863
+
1864
+ # @!method initialize(call_id:, operation:, status:, id: nil, agent: nil, caller_: nil, type: :apply_patch_call)
1865
+ # Some parameter documentations has been truncated, see
1866
+ # {OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall} for more details.
1867
+ #
1868
+ # A tool call representing a request to create, delete, or update files using diff
1869
+ # patches.
1870
+ #
1871
+ # @param call_id [String] The unique ID of the apply patch tool call generated by the model.
1872
+ #
1873
+ # @param operation [OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::CreateFile, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::DeleteFile, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::UpdateFile] The specific create, delete, or update instruction for the apply_patch tool call
1874
+ #
1875
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Status] The status of the apply patch tool call. One of `in_progress` or `completed`.
1876
+ #
1877
+ # @param id [String, nil] The unique ID of the apply patch tool call. Populated when this item is returned
1878
+ #
1879
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Agent, nil] The agent that produced this item.
1880
+ #
1881
+ # @param caller_ [OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Caller::Program, nil] The execution context that produced this tool call.
1882
+ #
1883
+ # @param type [Symbol, :apply_patch_call] The type of the item. Always `apply_patch_call`.
1884
+
1885
+ # The specific create, delete, or update instruction for the apply_patch tool
1886
+ # call.
1887
+ #
1888
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall#operation
1889
+ module Operation
1890
+ extend OpenAI::Internal::Type::Union
1891
+
1892
+ discriminator :type
1893
+
1894
+ # Instruction for creating a new file via the apply_patch tool.
1895
+ variant :create_file, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::CreateFile }
1896
+
1897
+ # Instruction for deleting an existing file via the apply_patch tool.
1898
+ variant :delete_file, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::DeleteFile }
1899
+
1900
+ # Instruction for updating an existing file via the apply_patch tool.
1901
+ variant :update_file, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::UpdateFile }
1902
+
1903
+ class CreateFile < OpenAI::Internal::Type::BaseModel
1904
+ # @!attribute diff
1905
+ # Unified diff content to apply when creating the file.
1906
+ #
1907
+ # @return [String]
1908
+ required :diff, String
1909
+
1910
+ # @!attribute path
1911
+ # Path of the file to create relative to the workspace root.
1912
+ #
1913
+ # @return [String]
1914
+ required :path, String
1915
+
1916
+ # @!attribute type
1917
+ # The operation type. Always `create_file`.
1918
+ #
1919
+ # @return [Symbol, :create_file]
1920
+ required :type, const: :create_file
1921
+
1922
+ # @!method initialize(diff:, path:, type: :create_file)
1923
+ # Instruction for creating a new file via the apply_patch tool.
1924
+ #
1925
+ # @param diff [String] Unified diff content to apply when creating the file.
1926
+ #
1927
+ # @param path [String] Path of the file to create relative to the workspace root.
1928
+ #
1929
+ # @param type [Symbol, :create_file] The operation type. Always `create_file`.
1930
+ end
1931
+
1932
+ class DeleteFile < OpenAI::Internal::Type::BaseModel
1933
+ # @!attribute path
1934
+ # Path of the file to delete relative to the workspace root.
1935
+ #
1936
+ # @return [String]
1937
+ required :path, String
1938
+
1939
+ # @!attribute type
1940
+ # The operation type. Always `delete_file`.
1941
+ #
1942
+ # @return [Symbol, :delete_file]
1943
+ required :type, const: :delete_file
1944
+
1945
+ # @!method initialize(path:, type: :delete_file)
1946
+ # Instruction for deleting an existing file via the apply_patch tool.
1947
+ #
1948
+ # @param path [String] Path of the file to delete relative to the workspace root.
1949
+ #
1950
+ # @param type [Symbol, :delete_file] The operation type. Always `delete_file`.
1951
+ end
1952
+
1953
+ class UpdateFile < OpenAI::Internal::Type::BaseModel
1954
+ # @!attribute diff
1955
+ # Unified diff content to apply to the existing file.
1956
+ #
1957
+ # @return [String]
1958
+ required :diff, String
1959
+
1960
+ # @!attribute path
1961
+ # Path of the file to update relative to the workspace root.
1962
+ #
1963
+ # @return [String]
1964
+ required :path, String
1965
+
1966
+ # @!attribute type
1967
+ # The operation type. Always `update_file`.
1968
+ #
1969
+ # @return [Symbol, :update_file]
1970
+ required :type, const: :update_file
1971
+
1972
+ # @!method initialize(diff:, path:, type: :update_file)
1973
+ # Instruction for updating an existing file via the apply_patch tool.
1974
+ #
1975
+ # @param diff [String] Unified diff content to apply to the existing file.
1976
+ #
1977
+ # @param path [String] Path of the file to update relative to the workspace root.
1978
+ #
1979
+ # @param type [Symbol, :update_file] The operation type. Always `update_file`.
1980
+ end
1981
+
1982
+ # @!method self.variants
1983
+ # @return [Array(OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::CreateFile, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::DeleteFile, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Operation::UpdateFile)]
1984
+ end
1985
+
1986
+ # The status of the apply patch tool call. One of `in_progress` or `completed`.
1987
+ #
1988
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall#status
1989
+ module Status
1990
+ extend OpenAI::Internal::Type::Enum
1991
+
1992
+ IN_PROGRESS = :in_progress
1993
+ COMPLETED = :completed
1994
+
1995
+ # @!method self.values
1996
+ # @return [Array<Symbol>]
1997
+ end
1998
+
1999
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall#agent
2000
+ class Agent < OpenAI::Internal::Type::BaseModel
2001
+ # @!attribute agent_name
2002
+ # The canonical name of the agent that produced this item.
2003
+ #
2004
+ # @return [String]
2005
+ required :agent_name, String
2006
+
2007
+ # @!method initialize(agent_name:)
2008
+ # The agent that produced this item.
2009
+ #
2010
+ # @param agent_name [String] The canonical name of the agent that produced this item.
2011
+ end
2012
+
2013
+ # The execution context that produced this tool call.
2014
+ #
2015
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall#caller_
2016
+ module Caller
2017
+ extend OpenAI::Internal::Type::Union
2018
+
2019
+ discriminator :type
2020
+
2021
+ variant :direct, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCall::Caller::Direct }
2022
+
2023
+ variant :program, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCall::Caller::Program }
2024
+
2025
+ class Direct < OpenAI::Internal::Type::BaseModel
2026
+ # @!attribute type
2027
+ # The caller type. Always `direct`.
2028
+ #
2029
+ # @return [Symbol, :direct]
2030
+ required :type, const: :direct
2031
+
2032
+ # @!method initialize(type: :direct)
2033
+ # @param type [Symbol, :direct] The caller type. Always `direct`.
2034
+ end
2035
+
2036
+ class Program < OpenAI::Internal::Type::BaseModel
2037
+ # @!attribute caller_id
2038
+ # The call ID of the program item that produced this tool call.
2039
+ #
2040
+ # @return [String]
2041
+ required :caller_id, String
2042
+
2043
+ # @!attribute type
2044
+ # The caller type. Always `program`.
2045
+ #
2046
+ # @return [Symbol, :program]
2047
+ required :type, const: :program
2048
+
2049
+ # @!method initialize(caller_id:, type: :program)
2050
+ # @param caller_id [String] The call ID of the program item that produced this tool call.
2051
+ #
2052
+ # @param type [Symbol, :program] The caller type. Always `program`.
2053
+ end
2054
+
2055
+ # @!method self.variants
2056
+ # @return [Array(OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall::Caller::Program)]
2057
+ end
2058
+ end
2059
+
2060
+ class ApplyPatchCallOutput < OpenAI::Internal::Type::BaseModel
2061
+ # @!attribute call_id
2062
+ # The unique ID of the apply patch tool call generated by the model.
2063
+ #
2064
+ # @return [String]
2065
+ required :call_id, String
2066
+
2067
+ # @!attribute status
2068
+ # The status of the apply patch tool call output. One of `completed` or `failed`.
2069
+ #
2070
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Status]
2071
+ required :status, enum: -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Status }
2072
+
2073
+ # @!attribute type
2074
+ # The type of the item. Always `apply_patch_call_output`.
2075
+ #
2076
+ # @return [Symbol, :apply_patch_call_output]
2077
+ required :type, const: :apply_patch_call_output
2078
+
2079
+ # @!attribute id
2080
+ # The unique ID of the apply patch tool call output. Populated when this item is
2081
+ # returned via API.
2082
+ #
2083
+ # @return [String, nil]
2084
+ optional :id, String, nil?: true
2085
+
2086
+ # @!attribute agent
2087
+ # The agent that produced this item.
2088
+ #
2089
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Agent, nil]
2090
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Agent }, nil?: true
2091
+
2092
+ # @!attribute caller_
2093
+ # The execution context that produced this tool call.
2094
+ #
2095
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Caller::Program, nil]
2096
+ optional :caller_,
2097
+ union: -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Caller },
2098
+ api_name: :caller,
2099
+ nil?: true
2100
+
2101
+ # @!attribute output
2102
+ # Optional human-readable log text from the apply patch tool (e.g., patch results
2103
+ # or errors).
2104
+ #
2105
+ # @return [String, nil]
2106
+ optional :output, String, nil?: true
2107
+
2108
+ # @!method initialize(call_id:, status:, id: nil, agent: nil, caller_: nil, output: nil, type: :apply_patch_call_output)
2109
+ # Some parameter documentations has been truncated, see
2110
+ # {OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput} for more
2111
+ # details.
2112
+ #
2113
+ # The streamed output emitted by an apply patch tool call.
2114
+ #
2115
+ # @param call_id [String] The unique ID of the apply patch tool call generated by the model.
2116
+ #
2117
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Status] The status of the apply patch tool call output. One of `completed` or `failed`.
2118
+ #
2119
+ # @param id [String, nil] The unique ID of the apply patch tool call output. Populated when this item is r
2120
+ #
2121
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Agent, nil] The agent that produced this item.
2122
+ #
2123
+ # @param caller_ [OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Caller::Program, nil] The execution context that produced this tool call.
2124
+ #
2125
+ # @param output [String, nil] Optional human-readable log text from the apply patch tool (e.g., patch results
2126
+ #
2127
+ # @param type [Symbol, :apply_patch_call_output] The type of the item. Always `apply_patch_call_output`.
2128
+
2129
+ # The status of the apply patch tool call output. One of `completed` or `failed`.
2130
+ #
2131
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput#status
2132
+ module Status
2133
+ extend OpenAI::Internal::Type::Enum
2134
+
2135
+ COMPLETED = :completed
2136
+ FAILED = :failed
2137
+
2138
+ # @!method self.values
2139
+ # @return [Array<Symbol>]
2140
+ end
2141
+
2142
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput#agent
2143
+ class Agent < OpenAI::Internal::Type::BaseModel
2144
+ # @!attribute agent_name
2145
+ # The canonical name of the agent that produced this item.
2146
+ #
2147
+ # @return [String]
2148
+ required :agent_name, String
2149
+
2150
+ # @!method initialize(agent_name:)
2151
+ # The agent that produced this item.
2152
+ #
2153
+ # @param agent_name [String] The canonical name of the agent that produced this item.
2154
+ end
2155
+
2156
+ # The execution context that produced this tool call.
2157
+ #
2158
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput#caller_
2159
+ module Caller
2160
+ extend OpenAI::Internal::Type::Union
2161
+
2162
+ discriminator :type
2163
+
2164
+ variant :direct, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Caller::Direct }
2165
+
2166
+ variant :program, -> { OpenAI::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Caller::Program }
2167
+
2168
+ class Direct < OpenAI::Internal::Type::BaseModel
2169
+ # @!attribute type
2170
+ # The caller type. Always `direct`.
2171
+ #
2172
+ # @return [Symbol, :direct]
2173
+ required :type, const: :direct
2174
+
2175
+ # @!method initialize(type: :direct)
2176
+ # @param type [Symbol, :direct] The caller type. Always `direct`.
2177
+ end
2178
+
2179
+ class Program < OpenAI::Internal::Type::BaseModel
2180
+ # @!attribute caller_id
2181
+ # The call ID of the program item that produced this tool call.
2182
+ #
2183
+ # @return [String]
2184
+ required :caller_id, String
2185
+
2186
+ # @!attribute type
2187
+ # The caller type. Always `program`.
2188
+ #
2189
+ # @return [Symbol, :program]
2190
+ required :type, const: :program
2191
+
2192
+ # @!method initialize(caller_id:, type: :program)
2193
+ # @param caller_id [String] The call ID of the program item that produced this tool call.
2194
+ #
2195
+ # @param type [Symbol, :program] The caller type. Always `program`.
2196
+ end
2197
+
2198
+ # @!method self.variants
2199
+ # @return [Array(OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Caller::Direct, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput::Caller::Program)]
2200
+ end
2201
+ end
2202
+
2203
+ class McpListTools < OpenAI::Internal::Type::BaseModel
2204
+ # @!attribute id
2205
+ # The unique ID of the list.
2206
+ #
2207
+ # @return [String]
2208
+ required :id, String
2209
+
2210
+ # @!attribute server_label
2211
+ # The label of the MCP server.
2212
+ #
2213
+ # @return [String]
2214
+ required :server_label, String
2215
+
2216
+ # @!attribute tools
2217
+ # The tools available on the server.
2218
+ #
2219
+ # @return [Array<OpenAI::Models::Beta::BetaResponseInputItem::McpListTools::Tool>]
2220
+ required :tools,
2221
+ -> { OpenAI::Internal::Type::ArrayOf[OpenAI::Beta::BetaResponseInputItem::McpListTools::Tool] }
2222
+
2223
+ # @!attribute type
2224
+ # The type of the item. Always `mcp_list_tools`.
2225
+ #
2226
+ # @return [Symbol, :mcp_list_tools]
2227
+ required :type, const: :mcp_list_tools
2228
+
2229
+ # @!attribute agent
2230
+ # The agent that produced this item.
2231
+ #
2232
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::McpListTools::Agent, nil]
2233
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::McpListTools::Agent }, nil?: true
2234
+
2235
+ # @!attribute error
2236
+ # Error message if the server could not list tools.
2237
+ #
2238
+ # @return [String, nil]
2239
+ optional :error, String, nil?: true
2240
+
2241
+ # @!method initialize(id:, server_label:, tools:, agent: nil, error: nil, type: :mcp_list_tools)
2242
+ # Some parameter documentations has been truncated, see
2243
+ # {OpenAI::Models::Beta::BetaResponseInputItem::McpListTools} for more details.
2244
+ #
2245
+ # A list of tools available on an MCP server.
2246
+ #
2247
+ # @param id [String] The unique ID of the list.
2248
+ #
2249
+ # @param server_label [String] The label of the MCP server.
2250
+ #
2251
+ # @param tools [Array<OpenAI::Models::Beta::BetaResponseInputItem::McpListTools::Tool>] The tools available on the server.
2252
+ #
2253
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::McpListTools::Agent, nil] The agent that produced this item.
2254
+ #
2255
+ # @param error [String, nil] Error message if the server could not list tools.
2256
+ #
2257
+ # @param type [Symbol, :mcp_list_tools] The type of the item. Always `mcp_list_tools`.
2258
+
2259
+ class Tool < OpenAI::Internal::Type::BaseModel
2260
+ # @!attribute input_schema
2261
+ # The JSON schema describing the tool's input.
2262
+ #
2263
+ # @return [Object]
2264
+ required :input_schema, OpenAI::Internal::Type::Unknown
2265
+
2266
+ # @!attribute name
2267
+ # The name of the tool.
2268
+ #
2269
+ # @return [String]
2270
+ required :name, String
2271
+
2272
+ # @!attribute annotations
2273
+ # Additional annotations about the tool.
2274
+ #
2275
+ # @return [Object, nil]
2276
+ optional :annotations, OpenAI::Internal::Type::Unknown, nil?: true
2277
+
2278
+ # @!attribute description
2279
+ # The description of the tool.
2280
+ #
2281
+ # @return [String, nil]
2282
+ optional :description, String, nil?: true
2283
+
2284
+ # @!method initialize(input_schema:, name:, annotations: nil, description: nil)
2285
+ # Some parameter documentations has been truncated, see
2286
+ # {OpenAI::Models::Beta::BetaResponseInputItem::McpListTools::Tool} for more
2287
+ # details.
2288
+ #
2289
+ # A tool available on an MCP server.
2290
+ #
2291
+ # @param input_schema [Object] The JSON schema describing the tool's input.
2292
+ #
2293
+ # @param name [String] The name of the tool.
2294
+ #
2295
+ # @param annotations [Object, nil] Additional annotations about the tool.
2296
+ #
2297
+ # @param description [String, nil] The description of the tool.
2298
+ end
2299
+
2300
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::McpListTools#agent
2301
+ class Agent < OpenAI::Internal::Type::BaseModel
2302
+ # @!attribute agent_name
2303
+ # The canonical name of the agent that produced this item.
2304
+ #
2305
+ # @return [String]
2306
+ required :agent_name, String
2307
+
2308
+ # @!method initialize(agent_name:)
2309
+ # The agent that produced this item.
2310
+ #
2311
+ # @param agent_name [String] The canonical name of the agent that produced this item.
2312
+ end
2313
+ end
2314
+
2315
+ class McpApprovalRequest < OpenAI::Internal::Type::BaseModel
2316
+ # @!attribute id
2317
+ # The unique ID of the approval request.
2318
+ #
2319
+ # @return [String]
2320
+ required :id, String
2321
+
2322
+ # @!attribute arguments
2323
+ # A JSON string of arguments for the tool.
2324
+ #
2325
+ # @return [String]
2326
+ required :arguments, String
2327
+
2328
+ # @!attribute name
2329
+ # The name of the tool to run.
2330
+ #
2331
+ # @return [String]
2332
+ required :name, String
2333
+
2334
+ # @!attribute server_label
2335
+ # The label of the MCP server making the request.
2336
+ #
2337
+ # @return [String]
2338
+ required :server_label, String
2339
+
2340
+ # @!attribute type
2341
+ # The type of the item. Always `mcp_approval_request`.
2342
+ #
2343
+ # @return [Symbol, :mcp_approval_request]
2344
+ required :type, const: :mcp_approval_request
2345
+
2346
+ # @!attribute agent
2347
+ # The agent that produced this item.
2348
+ #
2349
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::McpApprovalRequest::Agent, nil]
2350
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::McpApprovalRequest::Agent }, nil?: true
2351
+
2352
+ # @!method initialize(id:, arguments:, name:, server_label:, agent: nil, type: :mcp_approval_request)
2353
+ # Some parameter documentations has been truncated, see
2354
+ # {OpenAI::Models::Beta::BetaResponseInputItem::McpApprovalRequest} for more
2355
+ # details.
2356
+ #
2357
+ # A request for human approval of a tool invocation.
2358
+ #
2359
+ # @param id [String] The unique ID of the approval request.
2360
+ #
2361
+ # @param arguments [String] A JSON string of arguments for the tool.
2362
+ #
2363
+ # @param name [String] The name of the tool to run.
2364
+ #
2365
+ # @param server_label [String] The label of the MCP server making the request.
2366
+ #
2367
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::McpApprovalRequest::Agent, nil] The agent that produced this item.
2368
+ #
2369
+ # @param type [Symbol, :mcp_approval_request] The type of the item. Always `mcp_approval_request`.
2370
+
2371
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::McpApprovalRequest#agent
2372
+ class Agent < OpenAI::Internal::Type::BaseModel
2373
+ # @!attribute agent_name
2374
+ # The canonical name of the agent that produced this item.
2375
+ #
2376
+ # @return [String]
2377
+ required :agent_name, String
2378
+
2379
+ # @!method initialize(agent_name:)
2380
+ # The agent that produced this item.
2381
+ #
2382
+ # @param agent_name [String] The canonical name of the agent that produced this item.
2383
+ end
2384
+ end
2385
+
2386
+ class McpApprovalResponse < OpenAI::Internal::Type::BaseModel
2387
+ # @!attribute approval_request_id
2388
+ # The ID of the approval request being answered.
2389
+ #
2390
+ # @return [String]
2391
+ required :approval_request_id, String
2392
+
2393
+ # @!attribute approve
2394
+ # Whether the request was approved.
2395
+ #
2396
+ # @return [Boolean]
2397
+ required :approve, OpenAI::Internal::Type::Boolean
2398
+
2399
+ # @!attribute type
2400
+ # The type of the item. Always `mcp_approval_response`.
2401
+ #
2402
+ # @return [Symbol, :mcp_approval_response]
2403
+ required :type, const: :mcp_approval_response
2404
+
2405
+ # @!attribute id
2406
+ # The unique ID of the approval response
2407
+ #
2408
+ # @return [String, nil]
2409
+ optional :id, String, nil?: true
2410
+
2411
+ # @!attribute agent
2412
+ # The agent that produced this item.
2413
+ #
2414
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::McpApprovalResponse::Agent, nil]
2415
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::McpApprovalResponse::Agent }, nil?: true
2416
+
2417
+ # @!attribute reason
2418
+ # Optional reason for the decision.
2419
+ #
2420
+ # @return [String, nil]
2421
+ optional :reason, String, nil?: true
2422
+
2423
+ # @!method initialize(approval_request_id:, approve:, id: nil, agent: nil, reason: nil, type: :mcp_approval_response)
2424
+ # Some parameter documentations has been truncated, see
2425
+ # {OpenAI::Models::Beta::BetaResponseInputItem::McpApprovalResponse} for more
2426
+ # details.
2427
+ #
2428
+ # A response to an MCP approval request.
2429
+ #
2430
+ # @param approval_request_id [String] The ID of the approval request being answered.
2431
+ #
2432
+ # @param approve [Boolean] Whether the request was approved.
2433
+ #
2434
+ # @param id [String, nil] The unique ID of the approval response
2435
+ #
2436
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::McpApprovalResponse::Agent, nil] The agent that produced this item.
2437
+ #
2438
+ # @param reason [String, nil] Optional reason for the decision.
2439
+ #
2440
+ # @param type [Symbol, :mcp_approval_response] The type of the item. Always `mcp_approval_response`.
2441
+
2442
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::McpApprovalResponse#agent
2443
+ class Agent < OpenAI::Internal::Type::BaseModel
2444
+ # @!attribute agent_name
2445
+ # The canonical name of the agent that produced this item.
2446
+ #
2447
+ # @return [String]
2448
+ required :agent_name, String
2449
+
2450
+ # @!method initialize(agent_name:)
2451
+ # The agent that produced this item.
2452
+ #
2453
+ # @param agent_name [String] The canonical name of the agent that produced this item.
2454
+ end
2455
+ end
2456
+
2457
+ class McpCall < OpenAI::Internal::Type::BaseModel
2458
+ # @!attribute id
2459
+ # The unique ID of the tool call.
2460
+ #
2461
+ # @return [String]
2462
+ required :id, String
2463
+
2464
+ # @!attribute arguments
2465
+ # A JSON string of the arguments passed to the tool.
2466
+ #
2467
+ # @return [String]
2468
+ required :arguments, String
2469
+
2470
+ # @!attribute name
2471
+ # The name of the tool that was run.
2472
+ #
2473
+ # @return [String]
2474
+ required :name, String
2475
+
2476
+ # @!attribute server_label
2477
+ # The label of the MCP server running the tool.
2478
+ #
2479
+ # @return [String]
2480
+ required :server_label, String
2481
+
2482
+ # @!attribute type
2483
+ # The type of the item. Always `mcp_call`.
2484
+ #
2485
+ # @return [Symbol, :mcp_call]
2486
+ required :type, const: :mcp_call
2487
+
2488
+ # @!attribute agent
2489
+ # The agent that produced this item.
2490
+ #
2491
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::McpCall::Agent, nil]
2492
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::McpCall::Agent }, nil?: true
2493
+
2494
+ # @!attribute approval_request_id
2495
+ # Unique identifier for the MCP tool call approval request. Include this value in
2496
+ # a subsequent `mcp_approval_response` input to approve or reject the
2497
+ # corresponding tool call.
2498
+ #
2499
+ # @return [String, nil]
2500
+ optional :approval_request_id, String, nil?: true
2501
+
2502
+ # @!attribute error
2503
+ # The error from the tool call, if any.
2504
+ #
2505
+ # @return [String, nil]
2506
+ optional :error, String, nil?: true
2507
+
2508
+ # @!attribute output
2509
+ # The output from the tool call.
2510
+ #
2511
+ # @return [String, nil]
2512
+ optional :output, String, nil?: true
2513
+
2514
+ # @!attribute status
2515
+ # The status of the tool call. One of `in_progress`, `completed`, `incomplete`,
2516
+ # `calling`, or `failed`.
2517
+ #
2518
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::McpCall::Status, nil]
2519
+ optional :status, enum: -> { OpenAI::Beta::BetaResponseInputItem::McpCall::Status }
2520
+
2521
+ # @!method initialize(id:, arguments:, name:, server_label:, agent: nil, approval_request_id: nil, error: nil, output: nil, status: nil, type: :mcp_call)
2522
+ # Some parameter documentations has been truncated, see
2523
+ # {OpenAI::Models::Beta::BetaResponseInputItem::McpCall} for more details.
2524
+ #
2525
+ # An invocation of a tool on an MCP server.
2526
+ #
2527
+ # @param id [String] The unique ID of the tool call.
2528
+ #
2529
+ # @param arguments [String] A JSON string of the arguments passed to the tool.
2530
+ #
2531
+ # @param name [String] The name of the tool that was run.
2532
+ #
2533
+ # @param server_label [String] The label of the MCP server running the tool.
2534
+ #
2535
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::McpCall::Agent, nil] The agent that produced this item.
2536
+ #
2537
+ # @param approval_request_id [String, nil] Unique identifier for the MCP tool call approval request.
2538
+ #
2539
+ # @param error [String, nil] The error from the tool call, if any.
2540
+ #
2541
+ # @param output [String, nil] The output from the tool call.
2542
+ #
2543
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::McpCall::Status] The status of the tool call. One of `in_progress`, `completed`, `incomplete`, `c
2544
+ #
2545
+ # @param type [Symbol, :mcp_call] The type of the item. Always `mcp_call`.
2546
+
2547
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::McpCall#agent
2548
+ class Agent < OpenAI::Internal::Type::BaseModel
2549
+ # @!attribute agent_name
2550
+ # The canonical name of the agent that produced this item.
2551
+ #
2552
+ # @return [String]
2553
+ required :agent_name, String
2554
+
2555
+ # @!method initialize(agent_name:)
2556
+ # The agent that produced this item.
2557
+ #
2558
+ # @param agent_name [String] The canonical name of the agent that produced this item.
2559
+ end
2560
+
2561
+ # The status of the tool call. One of `in_progress`, `completed`, `incomplete`,
2562
+ # `calling`, or `failed`.
2563
+ #
2564
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::McpCall#status
2565
+ module Status
2566
+ extend OpenAI::Internal::Type::Enum
2567
+
2568
+ IN_PROGRESS = :in_progress
2569
+ COMPLETED = :completed
2570
+ INCOMPLETE = :incomplete
2571
+ CALLING = :calling
2572
+ FAILED = :failed
2573
+
2574
+ # @!method self.values
2575
+ # @return [Array<Symbol>]
2576
+ end
2577
+ end
2578
+
2579
+ class CompactionTrigger < OpenAI::Internal::Type::BaseModel
2580
+ # @!attribute type
2581
+ # The type of the item. Always `compaction_trigger`.
2582
+ #
2583
+ # @return [Symbol, :compaction_trigger]
2584
+ required :type, const: :compaction_trigger
2585
+
2586
+ # @!attribute agent
2587
+ # The agent that produced this item.
2588
+ #
2589
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::CompactionTrigger::Agent, nil]
2590
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::CompactionTrigger::Agent }, nil?: true
2591
+
2592
+ # @!method initialize(agent: nil, type: :compaction_trigger)
2593
+ # Compacts the current context. Must be the final input item.
2594
+ #
2595
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::CompactionTrigger::Agent, nil] The agent that produced this item.
2596
+ #
2597
+ # @param type [Symbol, :compaction_trigger] The type of the item. Always `compaction_trigger`.
2598
+
2599
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::CompactionTrigger#agent
2600
+ class Agent < OpenAI::Internal::Type::BaseModel
2601
+ # @!attribute agent_name
2602
+ # The canonical name of the agent that produced this item.
2603
+ #
2604
+ # @return [String]
2605
+ required :agent_name, String
2606
+
2607
+ # @!method initialize(agent_name:)
2608
+ # The agent that produced this item.
2609
+ #
2610
+ # @param agent_name [String] The canonical name of the agent that produced this item.
2611
+ end
2612
+ end
2613
+
2614
+ class ItemReference < OpenAI::Internal::Type::BaseModel
2615
+ # @!attribute id
2616
+ # The ID of the item to reference.
2617
+ #
2618
+ # @return [String]
2619
+ required :id, String
2620
+
2621
+ # @!attribute agent
2622
+ # The agent that produced this item.
2623
+ #
2624
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ItemReference::Agent, nil]
2625
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::ItemReference::Agent }, nil?: true
2626
+
2627
+ # @!attribute type
2628
+ # The type of item to reference. Always `item_reference`.
2629
+ #
2630
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ItemReference::Type, nil]
2631
+ optional :type, enum: -> { OpenAI::Beta::BetaResponseInputItem::ItemReference::Type }, nil?: true
2632
+
2633
+ # @!method initialize(id:, agent: nil, type: nil)
2634
+ # An internal identifier for an item to reference.
2635
+ #
2636
+ # @param id [String] The ID of the item to reference.
2637
+ #
2638
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::ItemReference::Agent, nil] The agent that produced this item.
2639
+ #
2640
+ # @param type [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ItemReference::Type, nil] The type of item to reference. Always `item_reference`.
2641
+
2642
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ItemReference#agent
2643
+ class Agent < OpenAI::Internal::Type::BaseModel
2644
+ # @!attribute agent_name
2645
+ # The canonical name of the agent that produced this item.
2646
+ #
2647
+ # @return [String]
2648
+ required :agent_name, String
2649
+
2650
+ # @!method initialize(agent_name:)
2651
+ # The agent that produced this item.
2652
+ #
2653
+ # @param agent_name [String] The canonical name of the agent that produced this item.
2654
+ end
2655
+
2656
+ # The type of item to reference. Always `item_reference`.
2657
+ #
2658
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ItemReference#type
2659
+ module Type
2660
+ extend OpenAI::Internal::Type::Enum
2661
+
2662
+ ITEM_REFERENCE = :item_reference
2663
+
2664
+ # @!method self.values
2665
+ # @return [Array<Symbol>]
2666
+ end
2667
+ end
2668
+
2669
+ class Program < OpenAI::Internal::Type::BaseModel
2670
+ # @!attribute id
2671
+ # The unique ID of this program item.
2672
+ #
2673
+ # @return [String]
2674
+ required :id, String
2675
+
2676
+ # @!attribute call_id
2677
+ # The stable call ID of the program item.
2678
+ #
2679
+ # @return [String]
2680
+ required :call_id, String
2681
+
2682
+ # @!attribute code
2683
+ # The JavaScript source executed by programmatic tool calling.
2684
+ #
2685
+ # @return [String]
2686
+ required :code, String
2687
+
2688
+ # @!attribute fingerprint
2689
+ # Opaque program replay fingerprint that must be round-tripped.
2690
+ #
2691
+ # @return [String]
2692
+ required :fingerprint, String
2693
+
2694
+ # @!attribute type
2695
+ # The item type. Always `program`.
2696
+ #
2697
+ # @return [Symbol, :program]
2698
+ required :type, const: :program
2699
+
2700
+ # @!attribute agent
2701
+ # The agent that produced this item.
2702
+ #
2703
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::Program::Agent, nil]
2704
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::Program::Agent }, nil?: true
2705
+
2706
+ # @!method initialize(id:, call_id:, code:, fingerprint:, agent: nil, type: :program)
2707
+ # @param id [String] The unique ID of this program item.
2708
+ #
2709
+ # @param call_id [String] The stable call ID of the program item.
2710
+ #
2711
+ # @param code [String] The JavaScript source executed by programmatic tool calling.
2712
+ #
2713
+ # @param fingerprint [String] Opaque program replay fingerprint that must be round-tripped.
2714
+ #
2715
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::Program::Agent, nil] The agent that produced this item.
2716
+ #
2717
+ # @param type [Symbol, :program] The item type. Always `program`.
2718
+
2719
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::Program#agent
2720
+ class Agent < OpenAI::Internal::Type::BaseModel
2721
+ # @!attribute agent_name
2722
+ # The canonical name of the agent that produced this item.
2723
+ #
2724
+ # @return [String]
2725
+ required :agent_name, String
2726
+
2727
+ # @!method initialize(agent_name:)
2728
+ # The agent that produced this item.
2729
+ #
2730
+ # @param agent_name [String] The canonical name of the agent that produced this item.
2731
+ end
2732
+ end
2733
+
2734
+ class ProgramOutput < OpenAI::Internal::Type::BaseModel
2735
+ # @!attribute id
2736
+ # The unique ID of this program output item.
2737
+ #
2738
+ # @return [String]
2739
+ required :id, String
2740
+
2741
+ # @!attribute call_id
2742
+ # The call ID of the program item.
2743
+ #
2744
+ # @return [String]
2745
+ required :call_id, String
2746
+
2747
+ # @!attribute result
2748
+ # The result produced by the program item.
2749
+ #
2750
+ # @return [String]
2751
+ required :result, String
2752
+
2753
+ # @!attribute status
2754
+ # The terminal status of the program output.
2755
+ #
2756
+ # @return [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ProgramOutput::Status]
2757
+ required :status, enum: -> { OpenAI::Beta::BetaResponseInputItem::ProgramOutput::Status }
2758
+
2759
+ # @!attribute type
2760
+ # The item type. Always `program_output`.
2761
+ #
2762
+ # @return [Symbol, :program_output]
2763
+ required :type, const: :program_output
2764
+
2765
+ # @!attribute agent
2766
+ # The agent that produced this item.
2767
+ #
2768
+ # @return [OpenAI::Models::Beta::BetaResponseInputItem::ProgramOutput::Agent, nil]
2769
+ optional :agent, -> { OpenAI::Beta::BetaResponseInputItem::ProgramOutput::Agent }, nil?: true
2770
+
2771
+ # @!method initialize(id:, call_id:, result:, status:, agent: nil, type: :program_output)
2772
+ # @param id [String] The unique ID of this program output item.
2773
+ #
2774
+ # @param call_id [String] The call ID of the program item.
2775
+ #
2776
+ # @param result [String] The result produced by the program item.
2777
+ #
2778
+ # @param status [Symbol, OpenAI::Models::Beta::BetaResponseInputItem::ProgramOutput::Status] The terminal status of the program output.
2779
+ #
2780
+ # @param agent [OpenAI::Models::Beta::BetaResponseInputItem::ProgramOutput::Agent, nil] The agent that produced this item.
2781
+ #
2782
+ # @param type [Symbol, :program_output] The item type. Always `program_output`.
2783
+
2784
+ # The terminal status of the program output.
2785
+ #
2786
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ProgramOutput#status
2787
+ module Status
2788
+ extend OpenAI::Internal::Type::Enum
2789
+
2790
+ COMPLETED = :completed
2791
+ INCOMPLETE = :incomplete
2792
+
2793
+ # @!method self.values
2794
+ # @return [Array<Symbol>]
2795
+ end
2796
+
2797
+ # @see OpenAI::Models::Beta::BetaResponseInputItem::ProgramOutput#agent
2798
+ class Agent < OpenAI::Internal::Type::BaseModel
2799
+ # @!attribute agent_name
2800
+ # The canonical name of the agent that produced this item.
2801
+ #
2802
+ # @return [String]
2803
+ required :agent_name, String
2804
+
2805
+ # @!method initialize(agent_name:)
2806
+ # The agent that produced this item.
2807
+ #
2808
+ # @param agent_name [String] The canonical name of the agent that produced this item.
2809
+ end
2810
+ end
2811
+
2812
+ # @!method self.variants
2813
+ # @return [Array(OpenAI::Models::Beta::BetaEasyInputMessage, OpenAI::Models::Beta::BetaResponseInputItem::Message, OpenAI::Models::Beta::BetaResponseOutputMessage, OpenAI::Models::Beta::BetaResponseFileSearchToolCall, OpenAI::Models::Beta::BetaResponseComputerToolCall, OpenAI::Models::Beta::BetaResponseInputItem::ComputerCallOutput, OpenAI::Models::Beta::BetaResponseFunctionWebSearch, OpenAI::Models::Beta::BetaResponseFunctionToolCall, OpenAI::Models::Beta::BetaResponseInputItem::FunctionCallOutput, OpenAI::Models::Beta::BetaResponseInputItem::AgentMessage, OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCall, OpenAI::Models::Beta::BetaResponseInputItem::MultiAgentCallOutput, OpenAI::Models::Beta::BetaResponseInputItem::ToolSearchCall, OpenAI::Models::Beta::BetaResponseToolSearchOutputItemParam, OpenAI::Models::Beta::BetaResponseInputItem::AdditionalTools, OpenAI::Models::Beta::BetaResponseReasoningItem, OpenAI::Models::Beta::BetaResponseCompactionItemParam, OpenAI::Models::Beta::BetaResponseInputItem::ImageGenerationCall, OpenAI::Models::Beta::BetaResponseCodeInterpreterToolCall, OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCall, OpenAI::Models::Beta::BetaResponseInputItem::LocalShellCallOutput, OpenAI::Models::Beta::BetaResponseInputItem::ShellCall, OpenAI::Models::Beta::BetaResponseInputItem::ShellCallOutput, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCall, OpenAI::Models::Beta::BetaResponseInputItem::ApplyPatchCallOutput, OpenAI::Models::Beta::BetaResponseInputItem::McpListTools, OpenAI::Models::Beta::BetaResponseInputItem::McpApprovalRequest, OpenAI::Models::Beta::BetaResponseInputItem::McpApprovalResponse, OpenAI::Models::Beta::BetaResponseInputItem::McpCall, OpenAI::Models::Beta::BetaResponseCustomToolCallOutput, OpenAI::Models::Beta::BetaResponseCustomToolCall, OpenAI::Models::Beta::BetaResponseInputItem::CompactionTrigger, OpenAI::Models::Beta::BetaResponseInputItem::ItemReference, OpenAI::Models::Beta::BetaResponseInputItem::Program, OpenAI::Models::Beta::BetaResponseInputItem::ProgramOutput)]
2814
+ end
2815
+ end
2816
+
2817
+ BetaResponseInputItem = Beta::BetaResponseInputItem
2818
+ end
2819
+ end