acp-sdk 0.1.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 (421) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +11 -0
  3. data/LICENSE.txt +9 -0
  4. data/README.md +81 -0
  5. data/lib/acp/agent_connection/client.rb +39 -0
  6. data/lib/acp/agent_connection/optional_method.rb +28 -0
  7. data/lib/acp/agent_connection.rb +122 -0
  8. data/lib/acp/client_connection.rb +129 -0
  9. data/lib/acp/sdk.rb +13 -0
  10. data/lib/acp/transport/reply.rb +20 -0
  11. data/lib/acp/transport/response_error.rb +28 -0
  12. data/lib/acp/transport/result.rb +35 -0
  13. data/lib/acp/transport/stdio.rb +207 -0
  14. data/lib/acp/transport.rb +4 -0
  15. data/lib/acp/types/agent_auth_capabilities.rb +31 -0
  16. data/lib/acp/types/agent_capabilities.rb +72 -0
  17. data/lib/acp/types/annotations.rb +46 -0
  18. data/lib/acp/types/audio_content.rb +46 -0
  19. data/lib/acp/types/auth_capabilities.rb +31 -0
  20. data/lib/acp/types/auth_method/terminal.rb +66 -0
  21. data/lib/acp/types/auth_method.rb +20 -0
  22. data/lib/acp/types/auth_method_agent.rb +41 -0
  23. data/lib/acp/types/auth_method_terminal.rb +58 -0
  24. data/lib/acp/types/authenticate_request.rb +31 -0
  25. data/lib/acp/types/authenticate_response.rb +26 -0
  26. data/lib/acp/types/available_command.rb +46 -0
  27. data/lib/acp/types/available_command_input.rb +19 -0
  28. data/lib/acp/types/available_commands_update.rb +34 -0
  29. data/lib/acp/types/blob_resource_contents.rb +41 -0
  30. data/lib/acp/types/boolean_config_option_capabilities.rb +26 -0
  31. data/lib/acp/types/boolean_property_schema.rb +41 -0
  32. data/lib/acp/types/cancel_notification.rb +31 -0
  33. data/lib/acp/types/cancel_request_notification.rb +31 -0
  34. data/lib/acp/types/client_capabilities.rb +65 -0
  35. data/lib/acp/types/client_session_capabilities.rb +36 -0
  36. data/lib/acp/types/close_session_request.rb +31 -0
  37. data/lib/acp/types/close_session_response.rb +26 -0
  38. data/lib/acp/types/complete_elicitation_notification.rb +31 -0
  39. data/lib/acp/types/config_option_update.rb +34 -0
  40. data/lib/acp/types/content.rb +31 -0
  41. data/lib/acp/types/content_block/audio.rb +52 -0
  42. data/lib/acp/types/content_block/image.rb +59 -0
  43. data/lib/acp/types/content_block/resource.rb +40 -0
  44. data/lib/acp/types/content_block/resource_link.rb +80 -0
  45. data/lib/acp/types/content_block/text.rb +40 -0
  46. data/lib/acp/types/content_block.rb +26 -0
  47. data/lib/acp/types/content_chunk.rb +40 -0
  48. data/lib/acp/types/cost.rb +36 -0
  49. data/lib/acp/types/create_elicitation_request/mode/form.rb +34 -0
  50. data/lib/acp/types/create_elicitation_request/mode/url.rb +40 -0
  51. data/lib/acp/types/create_elicitation_request/mode.rb +20 -0
  52. data/lib/acp/types/create_elicitation_request.rb +40 -0
  53. data/lib/acp/types/create_elicitation_response/action/accept.rb +26 -0
  54. data/lib/acp/types/create_elicitation_response/action/cancel.rb +21 -0
  55. data/lib/acp/types/create_elicitation_response/action/decline.rb +21 -0
  56. data/lib/acp/types/create_elicitation_response/action.rb +22 -0
  57. data/lib/acp/types/create_elicitation_response.rb +31 -0
  58. data/lib/acp/types/create_terminal_request.rb +72 -0
  59. data/lib/acp/types/create_terminal_response.rb +31 -0
  60. data/lib/acp/types/current_mode_update.rb +31 -0
  61. data/lib/acp/types/delete_session_request.rb +31 -0
  62. data/lib/acp/types/delete_session_response.rb +26 -0
  63. data/lib/acp/types/diff.rb +41 -0
  64. data/lib/acp/types/elicitation_accept_action.rb +26 -0
  65. data/lib/acp/types/elicitation_capabilities.rb +40 -0
  66. data/lib/acp/types/elicitation_form_capabilities.rb +26 -0
  67. data/lib/acp/types/elicitation_form_mode/scope.rb +22 -0
  68. data/lib/acp/types/elicitation_form_mode.rb +34 -0
  69. data/lib/acp/types/elicitation_property_schema/boolean_property_schema.rb +47 -0
  70. data/lib/acp/types/elicitation_property_schema/integer_property_schema.rb +66 -0
  71. data/lib/acp/types/elicitation_property_schema/multi_select_property_schema.rb +73 -0
  72. data/lib/acp/types/elicitation_property_schema/number_property_schema.rb +66 -0
  73. data/lib/acp/types/elicitation_property_schema/string_property_schema.rb +105 -0
  74. data/lib/acp/types/elicitation_property_schema.rb +26 -0
  75. data/lib/acp/types/elicitation_request_scope.rb +26 -0
  76. data/lib/acp/types/elicitation_schema.rb +65 -0
  77. data/lib/acp/types/elicitation_schema_type.rb +7 -0
  78. data/lib/acp/types/elicitation_session_scope.rb +31 -0
  79. data/lib/acp/types/elicitation_url_capabilities.rb +26 -0
  80. data/lib/acp/types/elicitation_url_mode/scope.rb +22 -0
  81. data/lib/acp/types/elicitation_url_mode.rb +40 -0
  82. data/lib/acp/types/embedded_resource.rb +40 -0
  83. data/lib/acp/types/embedded_resource_resource.rb +22 -0
  84. data/lib/acp/types/enum_option.rb +41 -0
  85. data/lib/acp/types/env_variable.rb +36 -0
  86. data/lib/acp/types/file_system_capabilities.rb +36 -0
  87. data/lib/acp/types/http_header.rb +36 -0
  88. data/lib/acp/types/image_content.rb +58 -0
  89. data/lib/acp/types/implementation.rb +41 -0
  90. data/lib/acp/types/initialize_request.rb +51 -0
  91. data/lib/acp/types/initialize_response.rb +58 -0
  92. data/lib/acp/types/integer_property_schema.rb +65 -0
  93. data/lib/acp/types/kill_terminal_request.rb +36 -0
  94. data/lib/acp/types/kill_terminal_response.rb +26 -0
  95. data/lib/acp/types/list_sessions_request.rb +36 -0
  96. data/lib/acp/types/list_sessions_response.rb +40 -0
  97. data/lib/acp/types/load_session_request.rb +58 -0
  98. data/lib/acp/types/load_session_response.rb +40 -0
  99. data/lib/acp/types/logout_capabilities.rb +26 -0
  100. data/lib/acp/types/logout_request.rb +26 -0
  101. data/lib/acp/types/logout_response.rb +26 -0
  102. data/lib/acp/types/mcp_capabilities.rb +36 -0
  103. data/lib/acp/types/mcp_server/http.rb +46 -0
  104. data/lib/acp/types/mcp_server/sse.rb +46 -0
  105. data/lib/acp/types/mcp_server.rb +22 -0
  106. data/lib/acp/types/mcp_server_http.rb +46 -0
  107. data/lib/acp/types/mcp_server_sse.rb +46 -0
  108. data/lib/acp/types/mcp_server_stdio.rb +52 -0
  109. data/lib/acp/types/multi_select_items/string_multi_select_items.rb +31 -0
  110. data/lib/acp/types/multi_select_items.rb +20 -0
  111. data/lib/acp/types/multi_select_property_schema.rb +72 -0
  112. data/lib/acp/types/new_session_request.rb +51 -0
  113. data/lib/acp/types/new_session_response.rb +51 -0
  114. data/lib/acp/types/number_property_schema.rb +65 -0
  115. data/lib/acp/types/permission_option.rb +41 -0
  116. data/lib/acp/types/permission_option_kind.rb +10 -0
  117. data/lib/acp/types/plan.rb +31 -0
  118. data/lib/acp/types/plan_entry.rb +46 -0
  119. data/lib/acp/types/plan_entry_priority.rb +9 -0
  120. data/lib/acp/types/plan_entry_status.rb +9 -0
  121. data/lib/acp/types/prompt_capabilities.rb +41 -0
  122. data/lib/acp/types/prompt_request.rb +40 -0
  123. data/lib/acp/types/prompt_response.rb +31 -0
  124. data/lib/acp/types/read_text_file_request.rb +52 -0
  125. data/lib/acp/types/read_text_file_response.rb +31 -0
  126. data/lib/acp/types/release_terminal_request.rb +36 -0
  127. data/lib/acp/types/release_terminal_response.rb +26 -0
  128. data/lib/acp/types/request_permission_outcome/cancelled.rb +21 -0
  129. data/lib/acp/types/request_permission_outcome/selected.rb +31 -0
  130. data/lib/acp/types/request_permission_outcome.rb +20 -0
  131. data/lib/acp/types/request_permission_request.rb +51 -0
  132. data/lib/acp/types/request_permission_response.rb +31 -0
  133. data/lib/acp/types/resource_link.rb +79 -0
  134. data/lib/acp/types/resume_session_request.rb +58 -0
  135. data/lib/acp/types/resume_session_response.rb +40 -0
  136. data/lib/acp/types/role.rb +8 -0
  137. data/lib/acp/types/selected_permission_outcome.rb +31 -0
  138. data/lib/acp/types/session_additional_directories_capabilities.rb +26 -0
  139. data/lib/acp/types/session_capabilities.rb +67 -0
  140. data/lib/acp/types/session_close_capabilities.rb +26 -0
  141. data/lib/acp/types/session_config_boolean.rb +26 -0
  142. data/lib/acp/types/session_config_option/kind/boolean.rb +26 -0
  143. data/lib/acp/types/session_config_option/kind/select.rb +34 -0
  144. data/lib/acp/types/session_config_option/kind.rb +20 -0
  145. data/lib/acp/types/session_config_option.rb +64 -0
  146. data/lib/acp/types/session_config_option_category.rb +10 -0
  147. data/lib/acp/types/session_config_options_capabilities.rb +34 -0
  148. data/lib/acp/types/session_config_select.rb +34 -0
  149. data/lib/acp/types/session_config_select_group.rb +46 -0
  150. data/lib/acp/types/session_config_select_option.rb +41 -0
  151. data/lib/acp/types/session_config_select_options.rb +22 -0
  152. data/lib/acp/types/session_delete_capabilities.rb +26 -0
  153. data/lib/acp/types/session_info.rb +65 -0
  154. data/lib/acp/types/session_info_update.rb +38 -0
  155. data/lib/acp/types/session_list_capabilities.rb +26 -0
  156. data/lib/acp/types/session_list_request.rb +8 -0
  157. data/lib/acp/types/session_list_response.rb +8 -0
  158. data/lib/acp/types/session_load_request.rb +8 -0
  159. data/lib/acp/types/session_mode.rb +41 -0
  160. data/lib/acp/types/session_mode_state.rb +40 -0
  161. data/lib/acp/types/session_new_request.rb +8 -0
  162. data/lib/acp/types/session_notification.rb +40 -0
  163. data/lib/acp/types/session_prompt_request.rb +8 -0
  164. data/lib/acp/types/session_resume_capabilities.rb +26 -0
  165. data/lib/acp/types/session_update/agent_message_chunk.rb +45 -0
  166. data/lib/acp/types/session_update/agent_thought_chunk.rb +45 -0
  167. data/lib/acp/types/session_update/available_commands_update.rb +38 -0
  168. data/lib/acp/types/session_update/config_option_update.rb +38 -0
  169. data/lib/acp/types/session_update/current_mode_update.rb +31 -0
  170. data/lib/acp/types/session_update/plan.rb +31 -0
  171. data/lib/acp/types/session_update/session_info_update.rb +39 -0
  172. data/lib/acp/types/session_update/tool_call.rb +97 -0
  173. data/lib/acp/types/session_update/tool_call_update.rb +97 -0
  174. data/lib/acp/types/session_update/usage_update.rb +46 -0
  175. data/lib/acp/types/session_update/user_message_chunk.rb +45 -0
  176. data/lib/acp/types/session_update.rb +38 -0
  177. data/lib/acp/types/set_session_config_option_request/value/boolean.rb +26 -0
  178. data/lib/acp/types/set_session_config_option_request/value/value_id.rb +26 -0
  179. data/lib/acp/types/set_session_config_option_request/value.rb +20 -0
  180. data/lib/acp/types/set_session_config_option_request.rb +46 -0
  181. data/lib/acp/types/set_session_config_option_response.rb +34 -0
  182. data/lib/acp/types/set_session_mode_request.rb +36 -0
  183. data/lib/acp/types/set_session_mode_response.rb +26 -0
  184. data/lib/acp/types/stop_reason.rb +11 -0
  185. data/lib/acp/types/string_format.rb +10 -0
  186. data/lib/acp/types/string_multi_select_items.rb +31 -0
  187. data/lib/acp/types/string_property_schema.rb +104 -0
  188. data/lib/acp/types/terminal.rb +31 -0
  189. data/lib/acp/types/terminal_exit_status.rb +36 -0
  190. data/lib/acp/types/terminal_output_request.rb +36 -0
  191. data/lib/acp/types/terminal_output_response.rb +46 -0
  192. data/lib/acp/types/text_content.rb +40 -0
  193. data/lib/acp/types/text_resource_contents.rb +41 -0
  194. data/lib/acp/types/titled_multi_select_items.rb +31 -0
  195. data/lib/acp/types/tool_call.rb +96 -0
  196. data/lib/acp/types/tool_call_content/content.rb +31 -0
  197. data/lib/acp/types/tool_call_content/diff.rb +41 -0
  198. data/lib/acp/types/tool_call_content/terminal.rb +31 -0
  199. data/lib/acp/types/tool_call_content.rb +22 -0
  200. data/lib/acp/types/tool_call_location.rb +36 -0
  201. data/lib/acp/types/tool_call_status.rb +10 -0
  202. data/lib/acp/types/tool_call_update.rb +96 -0
  203. data/lib/acp/types/tool_kind.rb +16 -0
  204. data/lib/acp/types/unstructured_command_input.rb +31 -0
  205. data/lib/acp/types/usage_update.rb +46 -0
  206. data/lib/acp/types/wait_for_terminal_exit_request.rb +36 -0
  207. data/lib/acp/types/wait_for_terminal_exit_response.rb +36 -0
  208. data/lib/acp/types/write_text_file_request.rb +46 -0
  209. data/lib/acp/types/write_text_file_response.rb +26 -0
  210. data/lib/acp/version.rb +5 -0
  211. data/sig/generated/acp/agent_connection/client.rbs +29 -0
  212. data/sig/generated/acp/agent_connection/optional_method.rbs +21 -0
  213. data/sig/generated/acp/agent_connection.rbs +65 -0
  214. data/sig/generated/acp/client_connection.rbs +82 -0
  215. data/sig/generated/acp/sdk.rbs +2 -0
  216. data/sig/generated/acp/transport/reply.rbs +16 -0
  217. data/sig/generated/acp/transport/response_error.rbs +21 -0
  218. data/sig/generated/acp/transport/result.rbs +25 -0
  219. data/sig/generated/acp/transport/stdio.rbs +116 -0
  220. data/sig/generated/acp/transport.rbs +4 -0
  221. data/sig/generated/acp/types/agent_auth_capabilities.rbs +21 -0
  222. data/sig/generated/acp/types/agent_capabilities.rbs +37 -0
  223. data/sig/generated/acp/types/annotations.rbs +29 -0
  224. data/sig/generated/acp/types/audio_content.rbs +29 -0
  225. data/sig/generated/acp/types/auth_capabilities.rbs +21 -0
  226. data/sig/generated/acp/types/auth_method/terminal.rbs +37 -0
  227. data/sig/generated/acp/types/auth_method.rbs +9 -0
  228. data/sig/generated/acp/types/auth_method_agent.rbs +29 -0
  229. data/sig/generated/acp/types/auth_method_terminal.rbs +37 -0
  230. data/sig/generated/acp/types/authenticate_request.rbs +21 -0
  231. data/sig/generated/acp/types/authenticate_response.rbs +17 -0
  232. data/sig/generated/acp/types/available_command.rbs +29 -0
  233. data/sig/generated/acp/types/available_command_input.rbs +9 -0
  234. data/sig/generated/acp/types/available_commands_update.rbs +21 -0
  235. data/sig/generated/acp/types/blob_resource_contents.rbs +29 -0
  236. data/sig/generated/acp/types/boolean_config_option_capabilities.rbs +17 -0
  237. data/sig/generated/acp/types/boolean_property_schema.rbs +29 -0
  238. data/sig/generated/acp/types/cancel_notification.rbs +21 -0
  239. data/sig/generated/acp/types/cancel_request_notification.rbs +21 -0
  240. data/sig/generated/acp/types/client_capabilities.rbs +37 -0
  241. data/sig/generated/acp/types/client_session_capabilities.rbs +21 -0
  242. data/sig/generated/acp/types/close_session_request.rbs +21 -0
  243. data/sig/generated/acp/types/close_session_response.rbs +17 -0
  244. data/sig/generated/acp/types/complete_elicitation_notification.rbs +21 -0
  245. data/sig/generated/acp/types/config_option_update.rbs +21 -0
  246. data/sig/generated/acp/types/content.rbs +21 -0
  247. data/sig/generated/acp/types/content_block/audio.rbs +29 -0
  248. data/sig/generated/acp/types/content_block/image.rbs +33 -0
  249. data/sig/generated/acp/types/content_block/resource.rbs +25 -0
  250. data/sig/generated/acp/types/content_block/resource_link.rbs +45 -0
  251. data/sig/generated/acp/types/content_block/text.rbs +25 -0
  252. data/sig/generated/acp/types/content_block.rbs +9 -0
  253. data/sig/generated/acp/types/content_chunk.rbs +25 -0
  254. data/sig/generated/acp/types/cost.rbs +25 -0
  255. data/sig/generated/acp/types/create_elicitation_request/mode/form.rbs +21 -0
  256. data/sig/generated/acp/types/create_elicitation_request/mode/url.rbs +25 -0
  257. data/sig/generated/acp/types/create_elicitation_request/mode.rbs +9 -0
  258. data/sig/generated/acp/types/create_elicitation_request.rbs +25 -0
  259. data/sig/generated/acp/types/create_elicitation_response/action/accept.rbs +17 -0
  260. data/sig/generated/acp/types/create_elicitation_response/action/cancel.rbs +13 -0
  261. data/sig/generated/acp/types/create_elicitation_response/action/decline.rbs +13 -0
  262. data/sig/generated/acp/types/create_elicitation_response/action.rbs +9 -0
  263. data/sig/generated/acp/types/create_elicitation_response.rbs +21 -0
  264. data/sig/generated/acp/types/create_terminal_request.rbs +41 -0
  265. data/sig/generated/acp/types/create_terminal_response.rbs +21 -0
  266. data/sig/generated/acp/types/current_mode_update.rbs +21 -0
  267. data/sig/generated/acp/types/delete_session_request.rbs +21 -0
  268. data/sig/generated/acp/types/delete_session_response.rbs +17 -0
  269. data/sig/generated/acp/types/diff.rbs +29 -0
  270. data/sig/generated/acp/types/elicitation_accept_action.rbs +17 -0
  271. data/sig/generated/acp/types/elicitation_capabilities.rbs +25 -0
  272. data/sig/generated/acp/types/elicitation_form_capabilities.rbs +17 -0
  273. data/sig/generated/acp/types/elicitation_form_mode/scope.rbs +9 -0
  274. data/sig/generated/acp/types/elicitation_form_mode.rbs +21 -0
  275. data/sig/generated/acp/types/elicitation_property_schema/boolean_property_schema.rbs +29 -0
  276. data/sig/generated/acp/types/elicitation_property_schema/integer_property_schema.rbs +37 -0
  277. data/sig/generated/acp/types/elicitation_property_schema/multi_select_property_schema.rbs +41 -0
  278. data/sig/generated/acp/types/elicitation_property_schema/number_property_schema.rbs +37 -0
  279. data/sig/generated/acp/types/elicitation_property_schema/string_property_schema.rbs +53 -0
  280. data/sig/generated/acp/types/elicitation_property_schema.rbs +9 -0
  281. data/sig/generated/acp/types/elicitation_request_scope.rbs +17 -0
  282. data/sig/generated/acp/types/elicitation_schema.rbs +37 -0
  283. data/sig/generated/acp/types/elicitation_schema_type.rbs +5 -0
  284. data/sig/generated/acp/types/elicitation_session_scope.rbs +21 -0
  285. data/sig/generated/acp/types/elicitation_url_capabilities.rbs +17 -0
  286. data/sig/generated/acp/types/elicitation_url_mode/scope.rbs +9 -0
  287. data/sig/generated/acp/types/elicitation_url_mode.rbs +25 -0
  288. data/sig/generated/acp/types/embedded_resource.rbs +25 -0
  289. data/sig/generated/acp/types/embedded_resource_resource.rbs +9 -0
  290. data/sig/generated/acp/types/enum_option.rbs +29 -0
  291. data/sig/generated/acp/types/env_variable.rbs +25 -0
  292. data/sig/generated/acp/types/file_system_capabilities.rbs +25 -0
  293. data/sig/generated/acp/types/http_header.rbs +25 -0
  294. data/sig/generated/acp/types/image_content.rbs +33 -0
  295. data/sig/generated/acp/types/implementation.rbs +29 -0
  296. data/sig/generated/acp/types/initialize_request.rbs +29 -0
  297. data/sig/generated/acp/types/initialize_response.rbs +33 -0
  298. data/sig/generated/acp/types/integer_property_schema.rbs +37 -0
  299. data/sig/generated/acp/types/kill_terminal_request.rbs +25 -0
  300. data/sig/generated/acp/types/kill_terminal_response.rbs +17 -0
  301. data/sig/generated/acp/types/list_sessions_request.rbs +25 -0
  302. data/sig/generated/acp/types/list_sessions_response.rbs +25 -0
  303. data/sig/generated/acp/types/load_session_request.rbs +33 -0
  304. data/sig/generated/acp/types/load_session_response.rbs +25 -0
  305. data/sig/generated/acp/types/logout_capabilities.rbs +17 -0
  306. data/sig/generated/acp/types/logout_request.rbs +17 -0
  307. data/sig/generated/acp/types/logout_response.rbs +17 -0
  308. data/sig/generated/acp/types/mcp_capabilities.rbs +25 -0
  309. data/sig/generated/acp/types/mcp_server/http.rbs +29 -0
  310. data/sig/generated/acp/types/mcp_server/sse.rbs +29 -0
  311. data/sig/generated/acp/types/mcp_server.rbs +9 -0
  312. data/sig/generated/acp/types/mcp_server_http.rbs +29 -0
  313. data/sig/generated/acp/types/mcp_server_sse.rbs +29 -0
  314. data/sig/generated/acp/types/mcp_server_stdio.rbs +33 -0
  315. data/sig/generated/acp/types/multi_select_items/string_multi_select_items.rbs +21 -0
  316. data/sig/generated/acp/types/multi_select_items.rbs +9 -0
  317. data/sig/generated/acp/types/multi_select_property_schema.rbs +41 -0
  318. data/sig/generated/acp/types/new_session_request.rbs +29 -0
  319. data/sig/generated/acp/types/new_session_response.rbs +29 -0
  320. data/sig/generated/acp/types/number_property_schema.rbs +37 -0
  321. data/sig/generated/acp/types/permission_option.rbs +29 -0
  322. data/sig/generated/acp/types/permission_option_kind.rbs +11 -0
  323. data/sig/generated/acp/types/plan.rbs +21 -0
  324. data/sig/generated/acp/types/plan_entry.rbs +29 -0
  325. data/sig/generated/acp/types/plan_entry_priority.rbs +9 -0
  326. data/sig/generated/acp/types/plan_entry_status.rbs +9 -0
  327. data/sig/generated/acp/types/prompt_capabilities.rbs +29 -0
  328. data/sig/generated/acp/types/prompt_request.rbs +25 -0
  329. data/sig/generated/acp/types/prompt_response.rbs +21 -0
  330. data/sig/generated/acp/types/read_text_file_request.rbs +33 -0
  331. data/sig/generated/acp/types/read_text_file_response.rbs +21 -0
  332. data/sig/generated/acp/types/release_terminal_request.rbs +25 -0
  333. data/sig/generated/acp/types/release_terminal_response.rbs +17 -0
  334. data/sig/generated/acp/types/request_permission_outcome/cancelled.rbs +13 -0
  335. data/sig/generated/acp/types/request_permission_outcome/selected.rbs +21 -0
  336. data/sig/generated/acp/types/request_permission_outcome.rbs +9 -0
  337. data/sig/generated/acp/types/request_permission_request.rbs +29 -0
  338. data/sig/generated/acp/types/request_permission_response.rbs +21 -0
  339. data/sig/generated/acp/types/resource_link.rbs +45 -0
  340. data/sig/generated/acp/types/resume_session_request.rbs +33 -0
  341. data/sig/generated/acp/types/resume_session_response.rbs +25 -0
  342. data/sig/generated/acp/types/role.rbs +7 -0
  343. data/sig/generated/acp/types/selected_permission_outcome.rbs +21 -0
  344. data/sig/generated/acp/types/session_additional_directories_capabilities.rbs +17 -0
  345. data/sig/generated/acp/types/session_capabilities.rbs +37 -0
  346. data/sig/generated/acp/types/session_close_capabilities.rbs +17 -0
  347. data/sig/generated/acp/types/session_config_boolean.rbs +17 -0
  348. data/sig/generated/acp/types/session_config_option/kind/boolean.rbs +17 -0
  349. data/sig/generated/acp/types/session_config_option/kind/select.rbs +21 -0
  350. data/sig/generated/acp/types/session_config_option/kind.rbs +9 -0
  351. data/sig/generated/acp/types/session_config_option.rbs +37 -0
  352. data/sig/generated/acp/types/session_config_option_category.rbs +11 -0
  353. data/sig/generated/acp/types/session_config_options_capabilities.rbs +21 -0
  354. data/sig/generated/acp/types/session_config_select.rbs +21 -0
  355. data/sig/generated/acp/types/session_config_select_group.rbs +29 -0
  356. data/sig/generated/acp/types/session_config_select_option.rbs +29 -0
  357. data/sig/generated/acp/types/session_config_select_options.rbs +9 -0
  358. data/sig/generated/acp/types/session_delete_capabilities.rbs +17 -0
  359. data/sig/generated/acp/types/session_info.rbs +37 -0
  360. data/sig/generated/acp/types/session_info_update.rbs +25 -0
  361. data/sig/generated/acp/types/session_list_capabilities.rbs +17 -0
  362. data/sig/generated/acp/types/session_list_request.rbs +3 -0
  363. data/sig/generated/acp/types/session_list_response.rbs +3 -0
  364. data/sig/generated/acp/types/session_load_request.rbs +3 -0
  365. data/sig/generated/acp/types/session_mode.rbs +29 -0
  366. data/sig/generated/acp/types/session_mode_state.rbs +25 -0
  367. data/sig/generated/acp/types/session_new_request.rbs +3 -0
  368. data/sig/generated/acp/types/session_notification.rbs +25 -0
  369. data/sig/generated/acp/types/session_prompt_request.rbs +3 -0
  370. data/sig/generated/acp/types/session_resume_capabilities.rbs +17 -0
  371. data/sig/generated/acp/types/session_update/agent_message_chunk.rbs +25 -0
  372. data/sig/generated/acp/types/session_update/agent_thought_chunk.rbs +25 -0
  373. data/sig/generated/acp/types/session_update/available_commands_update.rbs +21 -0
  374. data/sig/generated/acp/types/session_update/config_option_update.rbs +21 -0
  375. data/sig/generated/acp/types/session_update/current_mode_update.rbs +21 -0
  376. data/sig/generated/acp/types/session_update/plan.rbs +21 -0
  377. data/sig/generated/acp/types/session_update/session_info_update.rbs +25 -0
  378. data/sig/generated/acp/types/session_update/tool_call.rbs +49 -0
  379. data/sig/generated/acp/types/session_update/tool_call_update.rbs +49 -0
  380. data/sig/generated/acp/types/session_update/usage_update.rbs +29 -0
  381. data/sig/generated/acp/types/session_update/user_message_chunk.rbs +25 -0
  382. data/sig/generated/acp/types/session_update.rbs +9 -0
  383. data/sig/generated/acp/types/set_session_config_option_request/value/boolean.rbs +17 -0
  384. data/sig/generated/acp/types/set_session_config_option_request/value/value_id.rbs +17 -0
  385. data/sig/generated/acp/types/set_session_config_option_request/value.rbs +9 -0
  386. data/sig/generated/acp/types/set_session_config_option_request.rbs +29 -0
  387. data/sig/generated/acp/types/set_session_config_option_response.rbs +21 -0
  388. data/sig/generated/acp/types/set_session_mode_request.rbs +25 -0
  389. data/sig/generated/acp/types/set_session_mode_response.rbs +17 -0
  390. data/sig/generated/acp/types/stop_reason.rbs +13 -0
  391. data/sig/generated/acp/types/string_format.rbs +11 -0
  392. data/sig/generated/acp/types/string_multi_select_items.rbs +21 -0
  393. data/sig/generated/acp/types/string_property_schema.rbs +53 -0
  394. data/sig/generated/acp/types/terminal.rbs +21 -0
  395. data/sig/generated/acp/types/terminal_exit_status.rbs +25 -0
  396. data/sig/generated/acp/types/terminal_output_request.rbs +25 -0
  397. data/sig/generated/acp/types/terminal_output_response.rbs +29 -0
  398. data/sig/generated/acp/types/text_content.rbs +25 -0
  399. data/sig/generated/acp/types/text_resource_contents.rbs +29 -0
  400. data/sig/generated/acp/types/titled_multi_select_items.rbs +21 -0
  401. data/sig/generated/acp/types/tool_call.rbs +49 -0
  402. data/sig/generated/acp/types/tool_call_content/content.rbs +21 -0
  403. data/sig/generated/acp/types/tool_call_content/diff.rbs +29 -0
  404. data/sig/generated/acp/types/tool_call_content/terminal.rbs +21 -0
  405. data/sig/generated/acp/types/tool_call_content.rbs +9 -0
  406. data/sig/generated/acp/types/tool_call_location.rbs +25 -0
  407. data/sig/generated/acp/types/tool_call_status.rbs +11 -0
  408. data/sig/generated/acp/types/tool_call_update.rbs +49 -0
  409. data/sig/generated/acp/types/tool_kind.rbs +23 -0
  410. data/sig/generated/acp/types/unstructured_command_input.rbs +21 -0
  411. data/sig/generated/acp/types/usage_update.rbs +29 -0
  412. data/sig/generated/acp/types/wait_for_terminal_exit_request.rbs +25 -0
  413. data/sig/generated/acp/types/wait_for_terminal_exit_response.rbs +25 -0
  414. data/sig/generated/acp/types/write_text_file_request.rbs +29 -0
  415. data/sig/generated/acp/types/write_text_file_response.rbs +17 -0
  416. data/sig/generated/acp/version.rbs +5 -0
  417. data/sig/manual/acp/agent_connection.rbs +52 -0
  418. data/sig/manual/acp/client_connection.rbs +13 -0
  419. data/sig/manual/acp/transport/stdio.rbs +18 -0
  420. data/sig/manual/acp/types.rbs +2 -0
  421. metadata +477 -0
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SessionUpdate::Plan
6
+ # @dynamic entries
7
+ attr_reader :entries #: Array[ACP::Types::PlanEntry]
8
+
9
+ # @dynamic meta
10
+ attr_reader :meta #: Hash[String, untyped]?
11
+
12
+ # @rbs entries: Array[ACP::Types::PlanEntry]
13
+ # @rbs meta: Hash[String, untyped]?
14
+ # @rbs return: void
15
+ def initialize(entries:, meta: nil)
16
+ @entries = entries
17
+ @meta = meta
18
+ freeze
19
+ end
20
+
21
+ # @rbs hash: Hash[String, untyped]
22
+ # @rbs return: ACP::Types::SessionUpdate::Plan
23
+ def self.from_h(hash)
24
+ new(entries: hash.fetch('entries').map { |item| ACP::Types::PlanEntry.from_h(item) }, meta: hash['_meta'])
25
+ end
26
+
27
+ # @rbs return: Hash[String, untyped]
28
+ def to_h
29
+ { 'sessionUpdate' => 'plan', 'entries' => entries.map(&:to_h), '_meta' => meta }.compact
30
+ end
31
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SessionUpdate::SessionInfoUpdate
6
+ # @dynamic title
7
+ attr_reader :title #: String? | :unset
8
+
9
+ # @dynamic updated_at
10
+ attr_reader :updated_at #: String? | :unset
11
+
12
+ # @dynamic meta
13
+ attr_reader :meta #: Hash[String, untyped]?
14
+
15
+ # @rbs title: String? | :unset
16
+ # @rbs updated_at: String? | :unset
17
+ # @rbs meta: Hash[String, untyped]?
18
+ # @rbs return: void
19
+ def initialize(title: :unset, updated_at: :unset, meta: nil)
20
+ @title = title
21
+ @updated_at = updated_at
22
+ @meta = meta
23
+ freeze
24
+ end
25
+
26
+ # @rbs hash: Hash[String, untyped]
27
+ # @rbs return: ACP::Types::SessionUpdate::SessionInfoUpdate
28
+ def self.from_h(hash)
29
+ new(title: hash.fetch('title', :unset), updated_at: hash.fetch('updatedAt', :unset), meta: hash['_meta'])
30
+ end
31
+
32
+ # @rbs return: Hash[String, untyped]
33
+ def to_h
34
+ {
35
+ 'sessionUpdate' => 'session_info_update',
36
+ '_meta' => meta
37
+ }.compact.merge({ 'title' => title, 'updatedAt' => updated_at }.reject { |_, value| value == :unset })
38
+ end
39
+ end
@@ -0,0 +1,97 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SessionUpdate::ToolCall
6
+ # @dynamic tool_call_id
7
+ attr_reader :tool_call_id #: String
8
+
9
+ # @dynamic title
10
+ attr_reader :title #: String
11
+
12
+ # @dynamic kind
13
+ attr_reader :kind #: String?
14
+
15
+ # @dynamic status
16
+ attr_reader :status #: String?
17
+
18
+ # @dynamic content
19
+ attr_reader :content #: Array[ACP::Types::ToolCallContent::t]?
20
+
21
+ # @dynamic locations
22
+ attr_reader :locations #: Array[ACP::Types::ToolCallLocation]?
23
+
24
+ # @dynamic raw_input
25
+ attr_reader :raw_input #: untyped
26
+
27
+ # @dynamic raw_output
28
+ attr_reader :raw_output #: untyped
29
+
30
+ # @dynamic meta
31
+ attr_reader :meta #: Hash[String, untyped]?
32
+
33
+ # @rbs tool_call_id: String
34
+ # @rbs title: String
35
+ # @rbs kind: String?
36
+ # @rbs status: String?
37
+ # @rbs content: Array[ACP::Types::ToolCallContent::t]?
38
+ # @rbs locations: Array[ACP::Types::ToolCallLocation]?
39
+ # @rbs raw_input: untyped
40
+ # @rbs raw_output: untyped
41
+ # @rbs meta: Hash[String, untyped]?
42
+ # @rbs return: void
43
+ def initialize(
44
+ tool_call_id:,
45
+ title:,
46
+ kind: nil,
47
+ status: nil,
48
+ content: nil,
49
+ locations: nil,
50
+ raw_input: nil,
51
+ raw_output: nil,
52
+ meta: nil
53
+ )
54
+ @tool_call_id = tool_call_id
55
+ @title = title
56
+ @kind = kind
57
+ @status = status
58
+ @content = content
59
+ @locations = locations
60
+ @raw_input = raw_input
61
+ @raw_output = raw_output
62
+ @meta = meta
63
+ freeze
64
+ end
65
+
66
+ # @rbs hash: Hash[String, untyped]
67
+ # @rbs return: ACP::Types::SessionUpdate::ToolCall
68
+ def self.from_h(hash)
69
+ new(
70
+ tool_call_id: hash.fetch('toolCallId'),
71
+ title: hash.fetch('title'),
72
+ kind: hash['kind'],
73
+ status: hash['status'],
74
+ content: hash['content']&.map { |item| ACP::Types::ToolCallContent.from_h(item) },
75
+ locations: hash['locations']&.map { |item| ACP::Types::ToolCallLocation.from_h(item) },
76
+ raw_input: hash['rawInput'],
77
+ raw_output: hash['rawOutput'],
78
+ meta: hash['_meta']
79
+ )
80
+ end
81
+
82
+ # @rbs return: Hash[String, untyped]
83
+ def to_h
84
+ {
85
+ 'sessionUpdate' => 'tool_call',
86
+ 'toolCallId' => tool_call_id,
87
+ 'title' => title,
88
+ 'kind' => kind,
89
+ 'status' => status,
90
+ 'content' => content&.map(&:to_h),
91
+ 'locations' => locations&.map(&:to_h),
92
+ 'rawInput' => raw_input,
93
+ 'rawOutput' => raw_output,
94
+ '_meta' => meta
95
+ }.compact
96
+ end
97
+ end
@@ -0,0 +1,97 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SessionUpdate::ToolCallUpdate
6
+ # @dynamic tool_call_id
7
+ attr_reader :tool_call_id #: String
8
+
9
+ # @dynamic kind
10
+ attr_reader :kind #: String?
11
+
12
+ # @dynamic status
13
+ attr_reader :status #: String?
14
+
15
+ # @dynamic title
16
+ attr_reader :title #: String?
17
+
18
+ # @dynamic content
19
+ attr_reader :content #: Array[ACP::Types::ToolCallContent::t]?
20
+
21
+ # @dynamic locations
22
+ attr_reader :locations #: Array[ACP::Types::ToolCallLocation]?
23
+
24
+ # @dynamic raw_input
25
+ attr_reader :raw_input #: untyped
26
+
27
+ # @dynamic raw_output
28
+ attr_reader :raw_output #: untyped
29
+
30
+ # @dynamic meta
31
+ attr_reader :meta #: Hash[String, untyped]?
32
+
33
+ # @rbs tool_call_id: String
34
+ # @rbs kind: String?
35
+ # @rbs status: String?
36
+ # @rbs title: String?
37
+ # @rbs content: Array[ACP::Types::ToolCallContent::t]?
38
+ # @rbs locations: Array[ACP::Types::ToolCallLocation]?
39
+ # @rbs raw_input: untyped
40
+ # @rbs raw_output: untyped
41
+ # @rbs meta: Hash[String, untyped]?
42
+ # @rbs return: void
43
+ def initialize(
44
+ tool_call_id:,
45
+ kind: nil,
46
+ status: nil,
47
+ title: nil,
48
+ content: nil,
49
+ locations: nil,
50
+ raw_input: nil,
51
+ raw_output: nil,
52
+ meta: nil
53
+ )
54
+ @tool_call_id = tool_call_id
55
+ @kind = kind
56
+ @status = status
57
+ @title = title
58
+ @content = content
59
+ @locations = locations
60
+ @raw_input = raw_input
61
+ @raw_output = raw_output
62
+ @meta = meta
63
+ freeze
64
+ end
65
+
66
+ # @rbs hash: Hash[String, untyped]
67
+ # @rbs return: ACP::Types::SessionUpdate::ToolCallUpdate
68
+ def self.from_h(hash)
69
+ new(
70
+ tool_call_id: hash.fetch('toolCallId'),
71
+ kind: hash['kind'],
72
+ status: hash['status'],
73
+ title: hash['title'],
74
+ content: hash['content']&.map { |item| ACP::Types::ToolCallContent.from_h(item) },
75
+ locations: hash['locations']&.map { |item| ACP::Types::ToolCallLocation.from_h(item) },
76
+ raw_input: hash['rawInput'],
77
+ raw_output: hash['rawOutput'],
78
+ meta: hash['_meta']
79
+ )
80
+ end
81
+
82
+ # @rbs return: Hash[String, untyped]
83
+ def to_h
84
+ {
85
+ 'sessionUpdate' => 'tool_call_update',
86
+ 'toolCallId' => tool_call_id,
87
+ 'kind' => kind,
88
+ 'status' => status,
89
+ 'title' => title,
90
+ 'content' => content&.map(&:to_h),
91
+ 'locations' => locations&.map(&:to_h),
92
+ 'rawInput' => raw_input,
93
+ 'rawOutput' => raw_output,
94
+ '_meta' => meta
95
+ }.compact
96
+ end
97
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SessionUpdate::UsageUpdate
6
+ # @dynamic used
7
+ attr_reader :used #: Integer
8
+
9
+ # @dynamic size
10
+ attr_reader :size #: Integer
11
+
12
+ # @dynamic cost
13
+ attr_reader :cost #: ACP::Types::Cost?
14
+
15
+ # @dynamic meta
16
+ attr_reader :meta #: Hash[String, untyped]?
17
+
18
+ # @rbs used: Integer
19
+ # @rbs size: Integer
20
+ # @rbs cost: ACP::Types::Cost?
21
+ # @rbs meta: Hash[String, untyped]?
22
+ # @rbs return: void
23
+ def initialize(used:, size:, cost: nil, meta: nil)
24
+ @used = used
25
+ @size = size
26
+ @cost = cost
27
+ @meta = meta
28
+ freeze
29
+ end
30
+
31
+ # @rbs hash: Hash[String, untyped]
32
+ # @rbs return: ACP::Types::SessionUpdate::UsageUpdate
33
+ def self.from_h(hash)
34
+ new(
35
+ used: hash.fetch('used'),
36
+ size: hash.fetch('size'),
37
+ cost: hash['cost']&.then { |value| ACP::Types::Cost.from_h(value) },
38
+ meta: hash['_meta']
39
+ )
40
+ end
41
+
42
+ # @rbs return: Hash[String, untyped]
43
+ def to_h
44
+ { 'sessionUpdate' => 'usage_update', 'used' => used, 'size' => size, 'cost' => cost&.to_h, '_meta' => meta }.compact
45
+ end
46
+ end
@@ -0,0 +1,45 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SessionUpdate::UserMessageChunk
6
+ # @dynamic content
7
+ attr_reader :content #: ACP::Types::ContentBlock::t
8
+
9
+ # @dynamic message_id
10
+ attr_reader :message_id #: String?
11
+
12
+ # @dynamic meta
13
+ attr_reader :meta #: Hash[String, untyped]?
14
+
15
+ # @rbs content: ACP::Types::ContentBlock::t
16
+ # @rbs message_id: String?
17
+ # @rbs meta: Hash[String, untyped]?
18
+ # @rbs return: void
19
+ def initialize(content:, message_id: nil, meta: nil)
20
+ @content = content
21
+ @message_id = message_id
22
+ @meta = meta
23
+ freeze
24
+ end
25
+
26
+ # @rbs hash: Hash[String, untyped]
27
+ # @rbs return: ACP::Types::SessionUpdate::UserMessageChunk
28
+ def self.from_h(hash)
29
+ new(
30
+ content: ACP::Types::ContentBlock.from_h(hash.fetch('content')),
31
+ message_id: hash['messageId'],
32
+ meta: hash['_meta']
33
+ )
34
+ end
35
+
36
+ # @rbs return: Hash[String, untyped]
37
+ def to_h
38
+ {
39
+ 'sessionUpdate' => 'user_message_chunk',
40
+ 'content' => content.to_h,
41
+ 'messageId' => message_id,
42
+ '_meta' => meta
43
+ }.compact
44
+ end
45
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ module ACP::Types::SessionUpdate
6
+ # @rbs!
7
+ # type t = ACP::Types::SessionUpdate::UserMessageChunk
8
+ # | ACP::Types::SessionUpdate::AgentMessageChunk
9
+ # | ACP::Types::SessionUpdate::AgentThoughtChunk
10
+ # | ACP::Types::SessionUpdate::ToolCall
11
+ # | ACP::Types::SessionUpdate::ToolCallUpdate
12
+ # | ACP::Types::SessionUpdate::Plan
13
+ # | ACP::Types::SessionUpdate::AvailableCommandsUpdate
14
+ # | ACP::Types::SessionUpdate::CurrentModeUpdate
15
+ # | ACP::Types::SessionUpdate::ConfigOptionUpdate
16
+ # | ACP::Types::SessionUpdate::SessionInfoUpdate
17
+ # | ACP::Types::SessionUpdate::UsageUpdate
18
+ # | Hash[String, untyped]
19
+
20
+ # @rbs hash: Hash[String, untyped]
21
+ # @rbs return: t
22
+ def self.from_h(hash)
23
+ case hash['sessionUpdate']
24
+ when 'user_message_chunk' then ACP::Types::SessionUpdate::UserMessageChunk.from_h(hash)
25
+ when 'agent_message_chunk' then ACP::Types::SessionUpdate::AgentMessageChunk.from_h(hash)
26
+ when 'agent_thought_chunk' then ACP::Types::SessionUpdate::AgentThoughtChunk.from_h(hash)
27
+ when 'tool_call' then ACP::Types::SessionUpdate::ToolCall.from_h(hash)
28
+ when 'tool_call_update' then ACP::Types::SessionUpdate::ToolCallUpdate.from_h(hash)
29
+ when 'plan' then ACP::Types::SessionUpdate::Plan.from_h(hash)
30
+ when 'available_commands_update' then ACP::Types::SessionUpdate::AvailableCommandsUpdate.from_h(hash)
31
+ when 'current_mode_update' then ACP::Types::SessionUpdate::CurrentModeUpdate.from_h(hash)
32
+ when 'config_option_update' then ACP::Types::SessionUpdate::ConfigOptionUpdate.from_h(hash)
33
+ when 'session_info_update' then ACP::Types::SessionUpdate::SessionInfoUpdate.from_h(hash)
34
+ when 'usage_update' then ACP::Types::SessionUpdate::UsageUpdate.from_h(hash)
35
+ else hash
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SetSessionConfigOptionRequest::Value::Boolean
6
+ # @dynamic value
7
+ attr_reader :value #: bool
8
+
9
+ # @rbs value: bool
10
+ # @rbs return: void
11
+ def initialize(value:)
12
+ @value = value
13
+ freeze
14
+ end
15
+
16
+ # @rbs hash: Hash[String, untyped]
17
+ # @rbs return: ACP::Types::SetSessionConfigOptionRequest::Value::Boolean
18
+ def self.from_h(hash)
19
+ new(value: hash.fetch('value'))
20
+ end
21
+
22
+ # @rbs return: Hash[String, untyped]
23
+ def to_h
24
+ { 'type' => 'boolean', 'value' => value }
25
+ end
26
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SetSessionConfigOptionRequest::Value::ValueId
6
+ # @dynamic value
7
+ attr_reader :value #: String
8
+
9
+ # @rbs value: String
10
+ # @rbs return: void
11
+ def initialize(value:)
12
+ @value = value
13
+ freeze
14
+ end
15
+
16
+ # @rbs hash: Hash[String, untyped]
17
+ # @rbs return: ACP::Types::SetSessionConfigOptionRequest::Value::ValueId
18
+ def self.from_h(hash)
19
+ new(value: hash.fetch('value'))
20
+ end
21
+
22
+ # @rbs return: Hash[String, untyped]
23
+ def to_h
24
+ { 'value' => value }
25
+ end
26
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ module ACP::Types::SetSessionConfigOptionRequest::Value
6
+ # @rbs!
7
+ # type t = ACP::Types::SetSessionConfigOptionRequest::Value::Boolean
8
+ # | ACP::Types::SetSessionConfigOptionRequest::Value::ValueId
9
+ # | Hash[String, untyped]
10
+
11
+ # @rbs hash: Hash[String, untyped]
12
+ # @rbs return: t
13
+ def self.from_h(hash)
14
+ case hash['type']
15
+ when 'boolean' then ACP::Types::SetSessionConfigOptionRequest::Value::Boolean.from_h(hash)
16
+ when nil then ACP::Types::SetSessionConfigOptionRequest::Value::ValueId.from_h(hash)
17
+ else hash
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SetSessionConfigOptionRequest
6
+ # @dynamic session_id
7
+ attr_reader :session_id #: String
8
+
9
+ # @dynamic config_id
10
+ attr_reader :config_id #: String
11
+
12
+ # @dynamic meta
13
+ attr_reader :meta #: Hash[String, untyped]?
14
+
15
+ # @dynamic value
16
+ attr_reader :value #: ACP::Types::SetSessionConfigOptionRequest::Value::t
17
+
18
+ # @rbs session_id: String
19
+ # @rbs config_id: String
20
+ # @rbs meta: Hash[String, untyped]?
21
+ # @rbs value: ACP::Types::SetSessionConfigOptionRequest::Value::t
22
+ # @rbs return: void
23
+ def initialize(session_id:, config_id:, value:, meta: nil)
24
+ @session_id = session_id
25
+ @config_id = config_id
26
+ @meta = meta
27
+ @value = value
28
+ freeze
29
+ end
30
+
31
+ # @rbs hash: Hash[String, untyped]
32
+ # @rbs return: ACP::Types::SetSessionConfigOptionRequest
33
+ def self.from_h(hash)
34
+ new(
35
+ session_id: hash.fetch('sessionId'),
36
+ config_id: hash.fetch('configId'),
37
+ meta: hash['_meta'],
38
+ value: ACP::Types::SetSessionConfigOptionRequest::Value.from_h(hash)
39
+ )
40
+ end
41
+
42
+ # @rbs return: Hash[String, untyped]
43
+ def to_h
44
+ { 'sessionId' => session_id, 'configId' => config_id, '_meta' => meta }.compact.merge(value.to_h)
45
+ end
46
+ end
@@ -0,0 +1,34 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SetSessionConfigOptionResponse
6
+ # @dynamic config_options
7
+ attr_reader :config_options #: Array[ACP::Types::SessionConfigOption]
8
+
9
+ # @dynamic meta
10
+ attr_reader :meta #: Hash[String, untyped]?
11
+
12
+ # @rbs config_options: Array[ACP::Types::SessionConfigOption]
13
+ # @rbs meta: Hash[String, untyped]?
14
+ # @rbs return: void
15
+ def initialize(config_options:, meta: nil)
16
+ @config_options = config_options
17
+ @meta = meta
18
+ freeze
19
+ end
20
+
21
+ # @rbs hash: Hash[String, untyped]
22
+ # @rbs return: ACP::Types::SetSessionConfigOptionResponse
23
+ def self.from_h(hash)
24
+ new(
25
+ config_options: hash.fetch('configOptions').map { |item| ACP::Types::SessionConfigOption.from_h(item) },
26
+ meta: hash['_meta']
27
+ )
28
+ end
29
+
30
+ # @rbs return: Hash[String, untyped]
31
+ def to_h
32
+ { 'configOptions' => config_options.map(&:to_h), '_meta' => meta }.compact
33
+ end
34
+ end
@@ -0,0 +1,36 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SetSessionModeRequest
6
+ # @dynamic session_id
7
+ attr_reader :session_id #: String
8
+
9
+ # @dynamic mode_id
10
+ attr_reader :mode_id #: String
11
+
12
+ # @dynamic meta
13
+ attr_reader :meta #: Hash[String, untyped]?
14
+
15
+ # @rbs session_id: String
16
+ # @rbs mode_id: String
17
+ # @rbs meta: Hash[String, untyped]?
18
+ # @rbs return: void
19
+ def initialize(session_id:, mode_id:, meta: nil)
20
+ @session_id = session_id
21
+ @mode_id = mode_id
22
+ @meta = meta
23
+ freeze
24
+ end
25
+
26
+ # @rbs hash: Hash[String, untyped]
27
+ # @rbs return: ACP::Types::SetSessionModeRequest
28
+ def self.from_h(hash)
29
+ new(session_id: hash.fetch('sessionId'), mode_id: hash.fetch('modeId'), meta: hash['_meta'])
30
+ end
31
+
32
+ # @rbs return: Hash[String, untyped]
33
+ def to_h
34
+ { 'sessionId' => session_id, 'modeId' => mode_id, '_meta' => meta }.compact
35
+ end
36
+ end
@@ -0,0 +1,26 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::SetSessionModeResponse
6
+ # @dynamic meta
7
+ attr_reader :meta #: Hash[String, untyped]?
8
+
9
+ # @rbs meta: Hash[String, untyped]?
10
+ # @rbs return: void
11
+ def initialize(meta: nil)
12
+ @meta = meta
13
+ freeze
14
+ end
15
+
16
+ # @rbs hash: Hash[String, untyped]
17
+ # @rbs return: ACP::Types::SetSessionModeResponse
18
+ def self.from_h(hash)
19
+ new(meta: hash['_meta'])
20
+ end
21
+
22
+ # @rbs return: Hash[String, untyped]
23
+ def to_h
24
+ { '_meta' => meta }.compact
25
+ end
26
+ end
@@ -0,0 +1,11 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ module ACP::Types::StopReason
6
+ END_TURN = 'end_turn'
7
+ MAX_TOKENS = 'max_tokens'
8
+ MAX_TURN_REQUESTS = 'max_turn_requests'
9
+ REFUSAL = 'refusal'
10
+ CANCELLED = 'cancelled'
11
+ end
@@ -0,0 +1,10 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ module ACP::Types::StringFormat
6
+ EMAIL = 'email'
7
+ URI = 'uri'
8
+ DATE = 'date'
9
+ DATE_TIME = 'date-time'
10
+ end
@@ -0,0 +1,31 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::StringMultiSelectItems
6
+ # @dynamic enum
7
+ attr_reader :enum #: Array[String]
8
+
9
+ # @dynamic meta
10
+ attr_reader :meta #: Hash[String, untyped]?
11
+
12
+ # @rbs enum: Array[String]
13
+ # @rbs meta: Hash[String, untyped]?
14
+ # @rbs return: void
15
+ def initialize(enum:, meta: nil)
16
+ @enum = enum
17
+ @meta = meta
18
+ freeze
19
+ end
20
+
21
+ # @rbs hash: Hash[String, untyped]
22
+ # @rbs return: ACP::Types::StringMultiSelectItems
23
+ def self.from_h(hash)
24
+ new(enum: hash.fetch('enum'), meta: hash['_meta'])
25
+ end
26
+
27
+ # @rbs return: Hash[String, untyped]
28
+ def to_h
29
+ { 'enum' => enum, '_meta' => meta }.compact
30
+ end
31
+ end