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::ElicitationSessionScope
6
+ # @dynamic session_id
7
+ attr_reader :session_id #: String
8
+
9
+ # @dynamic tool_call_id
10
+ attr_reader :tool_call_id #: String?
11
+
12
+ # @rbs session_id: String
13
+ # @rbs tool_call_id: String?
14
+ # @rbs return: void
15
+ def initialize(session_id:, tool_call_id: nil)
16
+ @session_id = session_id
17
+ @tool_call_id = tool_call_id
18
+ freeze
19
+ end
20
+
21
+ # @rbs hash: Hash[String, untyped]
22
+ # @rbs return: ACP::Types::ElicitationSessionScope
23
+ def self.from_h(hash)
24
+ new(session_id: hash.fetch('sessionId'), tool_call_id: hash['toolCallId'])
25
+ end
26
+
27
+ # @rbs return: Hash[String, untyped]
28
+ def to_h
29
+ { 'sessionId' => session_id, 'toolCallId' => tool_call_id }.compact
30
+ end
31
+ 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::ElicitationUrlCapabilities
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::ElicitationUrlCapabilities
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,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ module ACP::Types::ElicitationUrlMode::Scope
6
+ # @rbs!
7
+ # type t = ACP::Types::ElicitationSessionScope
8
+ # | ACP::Types::ElicitationRequestScope
9
+ # | Hash[String, untyped]
10
+
11
+ # @rbs hash: Hash[String, untyped]
12
+ # @rbs return: t
13
+ def self.from_h(hash)
14
+ if hash.key?('sessionId')
15
+ ACP::Types::ElicitationSessionScope.from_h(hash)
16
+ elsif hash.key?('requestId')
17
+ ACP::Types::ElicitationRequestScope.from_h(hash)
18
+ else
19
+ hash
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::ElicitationUrlMode
6
+ # @dynamic elicitation_id
7
+ attr_reader :elicitation_id #: String
8
+
9
+ # @dynamic url
10
+ attr_reader :url #: String
11
+
12
+ # @dynamic scope
13
+ attr_reader :scope #: ACP::Types::ElicitationUrlMode::Scope::t
14
+
15
+ # @rbs elicitation_id: String
16
+ # @rbs url: String
17
+ # @rbs scope: ACP::Types::ElicitationUrlMode::Scope::t
18
+ # @rbs return: void
19
+ def initialize(elicitation_id:, url:, scope:)
20
+ @elicitation_id = elicitation_id
21
+ @url = url
22
+ @scope = scope
23
+ freeze
24
+ end
25
+
26
+ # @rbs hash: Hash[String, untyped]
27
+ # @rbs return: ACP::Types::ElicitationUrlMode
28
+ def self.from_h(hash)
29
+ new(
30
+ elicitation_id: hash.fetch('elicitationId'),
31
+ url: hash.fetch('url'),
32
+ scope: ACP::Types::ElicitationUrlMode::Scope.from_h(hash)
33
+ )
34
+ end
35
+
36
+ # @rbs return: Hash[String, untyped]
37
+ def to_h
38
+ { 'elicitationId' => elicitation_id, 'url' => url }.merge(scope.to_h)
39
+ end
40
+ end
@@ -0,0 +1,40 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::EmbeddedResource
6
+ # @dynamic annotations
7
+ attr_reader :annotations #: ACP::Types::Annotations?
8
+
9
+ # @dynamic resource
10
+ attr_reader :resource #: ACP::Types::EmbeddedResourceResource::t
11
+
12
+ # @dynamic meta
13
+ attr_reader :meta #: Hash[String, untyped]?
14
+
15
+ # @rbs annotations: ACP::Types::Annotations?
16
+ # @rbs resource: ACP::Types::EmbeddedResourceResource::t
17
+ # @rbs meta: Hash[String, untyped]?
18
+ # @rbs return: void
19
+ def initialize(resource:, annotations: nil, meta: nil)
20
+ @annotations = annotations
21
+ @resource = resource
22
+ @meta = meta
23
+ freeze
24
+ end
25
+
26
+ # @rbs hash: Hash[String, untyped]
27
+ # @rbs return: ACP::Types::EmbeddedResource
28
+ def self.from_h(hash)
29
+ new(
30
+ annotations: hash['annotations']&.then { |value| ACP::Types::Annotations.from_h(value) },
31
+ resource: ACP::Types::EmbeddedResourceResource.from_h(hash.fetch('resource')),
32
+ meta: hash['_meta']
33
+ )
34
+ end
35
+
36
+ # @rbs return: Hash[String, untyped]
37
+ def to_h
38
+ { 'resource' => resource.to_h, 'annotations' => annotations&.to_h, '_meta' => meta }.compact
39
+ end
40
+ end
@@ -0,0 +1,22 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ module ACP::Types::EmbeddedResourceResource
6
+ # @rbs!
7
+ # type t = ACP::Types::TextResourceContents
8
+ # | ACP::Types::BlobResourceContents
9
+ # | Hash[String, untyped]
10
+
11
+ # @rbs hash: Hash[String, untyped]
12
+ # @rbs return: t
13
+ def self.from_h(hash)
14
+ if hash.key?('text')
15
+ ACP::Types::TextResourceContents.from_h(hash)
16
+ elsif hash.key?('blob')
17
+ ACP::Types::BlobResourceContents.from_h(hash)
18
+ else
19
+ hash
20
+ end
21
+ end
22
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::EnumOption
6
+ # @dynamic const
7
+ attr_reader :const #: String
8
+
9
+ # @dynamic title
10
+ attr_reader :title #: String
11
+
12
+ # @dynamic description
13
+ attr_reader :description #: String?
14
+
15
+ # @dynamic meta
16
+ attr_reader :meta #: Hash[String, untyped]?
17
+
18
+ # @rbs const: String
19
+ # @rbs title: String
20
+ # @rbs description: String?
21
+ # @rbs meta: Hash[String, untyped]?
22
+ # @rbs return: void
23
+ def initialize(const:, title:, description: nil, meta: nil)
24
+ @const = const
25
+ @title = title
26
+ @description = description
27
+ @meta = meta
28
+ freeze
29
+ end
30
+
31
+ # @rbs hash: Hash[String, untyped]
32
+ # @rbs return: ACP::Types::EnumOption
33
+ def self.from_h(hash)
34
+ new(const: hash.fetch('const'), title: hash.fetch('title'), description: hash['description'], meta: hash['_meta'])
35
+ end
36
+
37
+ # @rbs return: Hash[String, untyped]
38
+ def to_h
39
+ { 'const' => const, 'title' => title, 'description' => description, '_meta' => meta }.compact
40
+ end
41
+ 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::EnvVariable
6
+ # @dynamic name
7
+ attr_reader :name #: String
8
+
9
+ # @dynamic value
10
+ attr_reader :value #: String
11
+
12
+ # @dynamic meta
13
+ attr_reader :meta #: Hash[String, untyped]?
14
+
15
+ # @rbs name: String
16
+ # @rbs value: String
17
+ # @rbs meta: Hash[String, untyped]?
18
+ # @rbs return: void
19
+ def initialize(name:, value:, meta: nil)
20
+ @name = name
21
+ @value = value
22
+ @meta = meta
23
+ freeze
24
+ end
25
+
26
+ # @rbs hash: Hash[String, untyped]
27
+ # @rbs return: ACP::Types::EnvVariable
28
+ def self.from_h(hash)
29
+ new(name: hash.fetch('name'), value: hash.fetch('value'), meta: hash['_meta'])
30
+ end
31
+
32
+ # @rbs return: Hash[String, untyped]
33
+ def to_h
34
+ { 'name' => name, 'value' => value, '_meta' => meta }.compact
35
+ end
36
+ 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::FileSystemCapabilities
6
+ # @dynamic read_text_file
7
+ attr_reader :read_text_file #: bool?
8
+
9
+ # @dynamic write_text_file
10
+ attr_reader :write_text_file #: bool?
11
+
12
+ # @dynamic meta
13
+ attr_reader :meta #: Hash[String, untyped]?
14
+
15
+ # @rbs read_text_file: bool?
16
+ # @rbs write_text_file: bool?
17
+ # @rbs meta: Hash[String, untyped]?
18
+ # @rbs return: void
19
+ def initialize(read_text_file: nil, write_text_file: nil, meta: nil)
20
+ @read_text_file = read_text_file
21
+ @write_text_file = write_text_file
22
+ @meta = meta
23
+ freeze
24
+ end
25
+
26
+ # @rbs hash: Hash[String, untyped]
27
+ # @rbs return: ACP::Types::FileSystemCapabilities
28
+ def self.from_h(hash)
29
+ new(read_text_file: hash['readTextFile'], write_text_file: hash['writeTextFile'], meta: hash['_meta'])
30
+ end
31
+
32
+ # @rbs return: Hash[String, untyped]
33
+ def to_h
34
+ { 'readTextFile' => read_text_file, 'writeTextFile' => write_text_file, '_meta' => meta }.compact
35
+ end
36
+ 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::HttpHeader
6
+ # @dynamic name
7
+ attr_reader :name #: String
8
+
9
+ # @dynamic value
10
+ attr_reader :value #: String
11
+
12
+ # @dynamic meta
13
+ attr_reader :meta #: Hash[String, untyped]?
14
+
15
+ # @rbs name: String
16
+ # @rbs value: String
17
+ # @rbs meta: Hash[String, untyped]?
18
+ # @rbs return: void
19
+ def initialize(name:, value:, meta: nil)
20
+ @name = name
21
+ @value = value
22
+ @meta = meta
23
+ freeze
24
+ end
25
+
26
+ # @rbs hash: Hash[String, untyped]
27
+ # @rbs return: ACP::Types::HttpHeader
28
+ def self.from_h(hash)
29
+ new(name: hash.fetch('name'), value: hash.fetch('value'), meta: hash['_meta'])
30
+ end
31
+
32
+ # @rbs return: Hash[String, untyped]
33
+ def to_h
34
+ { 'name' => name, 'value' => value, '_meta' => meta }.compact
35
+ end
36
+ end
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::ImageContent
6
+ # @dynamic annotations
7
+ attr_reader :annotations #: ACP::Types::Annotations?
8
+
9
+ # @dynamic data
10
+ attr_reader :data #: String
11
+
12
+ # @dynamic mime_type
13
+ attr_reader :mime_type #: String
14
+
15
+ # @dynamic uri
16
+ attr_reader :uri #: String?
17
+
18
+ # @dynamic meta
19
+ attr_reader :meta #: Hash[String, untyped]?
20
+
21
+ # @rbs annotations: ACP::Types::Annotations?
22
+ # @rbs data: String
23
+ # @rbs mime_type: String
24
+ # @rbs uri: String?
25
+ # @rbs meta: Hash[String, untyped]?
26
+ # @rbs return: void
27
+ def initialize(data:, mime_type:, annotations: nil, uri: nil, meta: nil)
28
+ @annotations = annotations
29
+ @data = data
30
+ @mime_type = mime_type
31
+ @uri = uri
32
+ @meta = meta
33
+ freeze
34
+ end
35
+
36
+ # @rbs hash: Hash[String, untyped]
37
+ # @rbs return: ACP::Types::ImageContent
38
+ def self.from_h(hash)
39
+ new(
40
+ annotations: hash['annotations']&.then { |value| ACP::Types::Annotations.from_h(value) },
41
+ data: hash.fetch('data'),
42
+ mime_type: hash.fetch('mimeType'),
43
+ uri: hash['uri'],
44
+ meta: hash['_meta']
45
+ )
46
+ end
47
+
48
+ # @rbs return: Hash[String, untyped]
49
+ def to_h
50
+ {
51
+ 'data' => data,
52
+ 'mimeType' => mime_type,
53
+ 'annotations' => annotations&.to_h,
54
+ 'uri' => uri,
55
+ '_meta' => meta
56
+ }.compact
57
+ end
58
+ end
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::Implementation
6
+ # @dynamic name
7
+ attr_reader :name #: String
8
+
9
+ # @dynamic title
10
+ attr_reader :title #: String?
11
+
12
+ # @dynamic version
13
+ attr_reader :version #: String
14
+
15
+ # @dynamic meta
16
+ attr_reader :meta #: Hash[String, untyped]?
17
+
18
+ # @rbs name: String
19
+ # @rbs title: String?
20
+ # @rbs version: String
21
+ # @rbs meta: Hash[String, untyped]?
22
+ # @rbs return: void
23
+ def initialize(name:, version:, title: nil, meta: nil)
24
+ @name = name
25
+ @title = title
26
+ @version = version
27
+ @meta = meta
28
+ freeze
29
+ end
30
+
31
+ # @rbs hash: Hash[String, untyped]
32
+ # @rbs return: ACP::Types::Implementation
33
+ def self.from_h(hash)
34
+ new(name: hash.fetch('name'), title: hash['title'], version: hash.fetch('version'), meta: hash['_meta'])
35
+ end
36
+
37
+ # @rbs return: Hash[String, untyped]
38
+ def to_h
39
+ { 'name' => name, 'version' => version, 'title' => title, '_meta' => meta }.compact
40
+ end
41
+ end
@@ -0,0 +1,51 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::InitializeRequest
6
+ # @dynamic protocol_version
7
+ attr_reader :protocol_version #: Integer
8
+
9
+ # @dynamic client_capabilities
10
+ attr_reader :client_capabilities #: ACP::Types::ClientCapabilities?
11
+
12
+ # @dynamic client_info
13
+ attr_reader :client_info #: ACP::Types::Implementation?
14
+
15
+ # @dynamic meta
16
+ attr_reader :meta #: Hash[String, untyped]?
17
+
18
+ # @rbs protocol_version: Integer
19
+ # @rbs client_capabilities: ACP::Types::ClientCapabilities?
20
+ # @rbs client_info: ACP::Types::Implementation?
21
+ # @rbs meta: Hash[String, untyped]?
22
+ # @rbs return: void
23
+ def initialize(protocol_version:, client_capabilities: nil, client_info: nil, meta: nil)
24
+ @protocol_version = protocol_version
25
+ @client_capabilities = client_capabilities
26
+ @client_info = client_info
27
+ @meta = meta
28
+ freeze
29
+ end
30
+
31
+ # @rbs hash: Hash[String, untyped]
32
+ # @rbs return: ACP::Types::InitializeRequest
33
+ def self.from_h(hash)
34
+ new(
35
+ protocol_version: hash.fetch('protocolVersion'),
36
+ client_capabilities: hash['clientCapabilities']&.then { |value| ACP::Types::ClientCapabilities.from_h(value) },
37
+ client_info: hash['clientInfo']&.then { |value| ACP::Types::Implementation.from_h(value) },
38
+ meta: hash['_meta']
39
+ )
40
+ end
41
+
42
+ # @rbs return: Hash[String, untyped]
43
+ def to_h
44
+ {
45
+ 'protocolVersion' => protocol_version,
46
+ 'clientCapabilities' => client_capabilities&.to_h,
47
+ 'clientInfo' => client_info&.to_h,
48
+ '_meta' => meta
49
+ }.compact
50
+ end
51
+ end
@@ -0,0 +1,58 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::InitializeResponse
6
+ # @dynamic protocol_version
7
+ attr_reader :protocol_version #: Integer
8
+
9
+ # @dynamic agent_capabilities
10
+ attr_reader :agent_capabilities #: ACP::Types::AgentCapabilities?
11
+
12
+ # @dynamic auth_methods
13
+ attr_reader :auth_methods #: Array[ACP::Types::AuthMethod::t]?
14
+
15
+ # @dynamic agent_info
16
+ attr_reader :agent_info #: ACP::Types::Implementation?
17
+
18
+ # @dynamic meta
19
+ attr_reader :meta #: Hash[String, untyped]?
20
+
21
+ # @rbs protocol_version: Integer
22
+ # @rbs agent_capabilities: ACP::Types::AgentCapabilities?
23
+ # @rbs auth_methods: Array[ACP::Types::AuthMethod::t]?
24
+ # @rbs agent_info: ACP::Types::Implementation?
25
+ # @rbs meta: Hash[String, untyped]?
26
+ # @rbs return: void
27
+ def initialize(protocol_version:, agent_capabilities: nil, auth_methods: nil, agent_info: nil, meta: nil)
28
+ @protocol_version = protocol_version
29
+ @agent_capabilities = agent_capabilities
30
+ @auth_methods = auth_methods
31
+ @agent_info = agent_info
32
+ @meta = meta
33
+ freeze
34
+ end
35
+
36
+ # @rbs hash: Hash[String, untyped]
37
+ # @rbs return: ACP::Types::InitializeResponse
38
+ def self.from_h(hash)
39
+ new(
40
+ protocol_version: hash.fetch('protocolVersion'),
41
+ agent_capabilities: hash['agentCapabilities']&.then { |value| ACP::Types::AgentCapabilities.from_h(value) },
42
+ auth_methods: hash['authMethods']&.map { |item| ACP::Types::AuthMethod.from_h(item) },
43
+ agent_info: hash['agentInfo']&.then { |value| ACP::Types::Implementation.from_h(value) },
44
+ meta: hash['_meta']
45
+ )
46
+ end
47
+
48
+ # @rbs return: Hash[String, untyped]
49
+ def to_h
50
+ {
51
+ 'protocolVersion' => protocol_version,
52
+ 'agentCapabilities' => agent_capabilities&.to_h,
53
+ 'authMethods' => auth_methods&.map(&:to_h),
54
+ 'agentInfo' => agent_info&.to_h,
55
+ '_meta' => meta
56
+ }.compact
57
+ end
58
+ end
@@ -0,0 +1,65 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.json. Do not edit.
4
+
5
+ class ACP::Types::IntegerPropertySchema
6
+ # @dynamic title
7
+ attr_reader :title #: String?
8
+
9
+ # @dynamic description
10
+ attr_reader :description #: String?
11
+
12
+ # @dynamic minimum
13
+ attr_reader :minimum #: Integer?
14
+
15
+ # @dynamic maximum
16
+ attr_reader :maximum #: Integer?
17
+
18
+ # @dynamic default
19
+ attr_reader :default #: Integer?
20
+
21
+ # @dynamic meta
22
+ attr_reader :meta #: Hash[String, untyped]?
23
+
24
+ # @rbs title: String?
25
+ # @rbs description: String?
26
+ # @rbs minimum: Integer?
27
+ # @rbs maximum: Integer?
28
+ # @rbs default: Integer?
29
+ # @rbs meta: Hash[String, untyped]?
30
+ # @rbs return: void
31
+ def initialize(title: nil, description: nil, minimum: nil, maximum: nil, default: nil, meta: nil)
32
+ @title = title
33
+ @description = description
34
+ @minimum = minimum
35
+ @maximum = maximum
36
+ @default = default
37
+ @meta = meta
38
+ freeze
39
+ end
40
+
41
+ # @rbs hash: Hash[String, untyped]
42
+ # @rbs return: ACP::Types::IntegerPropertySchema
43
+ def self.from_h(hash)
44
+ new(
45
+ title: hash['title'],
46
+ description: hash['description'],
47
+ minimum: hash['minimum'],
48
+ maximum: hash['maximum'],
49
+ default: hash['default'],
50
+ meta: hash['_meta']
51
+ )
52
+ end
53
+
54
+ # @rbs return: Hash[String, untyped]
55
+ def to_h
56
+ {
57
+ 'title' => title,
58
+ 'description' => description,
59
+ 'minimum' => minimum,
60
+ 'maximum' => maximum,
61
+ 'default' => default,
62
+ '_meta' => meta
63
+ }.compact
64
+ end
65
+ 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::KillTerminalRequest
6
+ # @dynamic session_id
7
+ attr_reader :session_id #: String
8
+
9
+ # @dynamic terminal_id
10
+ attr_reader :terminal_id #: String
11
+
12
+ # @dynamic meta
13
+ attr_reader :meta #: Hash[String, untyped]?
14
+
15
+ # @rbs session_id: String
16
+ # @rbs terminal_id: String
17
+ # @rbs meta: Hash[String, untyped]?
18
+ # @rbs return: void
19
+ def initialize(session_id:, terminal_id:, meta: nil)
20
+ @session_id = session_id
21
+ @terminal_id = terminal_id
22
+ @meta = meta
23
+ freeze
24
+ end
25
+
26
+ # @rbs hash: Hash[String, untyped]
27
+ # @rbs return: ACP::Types::KillTerminalRequest
28
+ def self.from_h(hash)
29
+ new(session_id: hash.fetch('sessionId'), terminal_id: hash.fetch('terminalId'), meta: hash['_meta'])
30
+ end
31
+
32
+ # @rbs return: Hash[String, untyped]
33
+ def to_h
34
+ { 'sessionId' => session_id, 'terminalId' => terminal_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::KillTerminalResponse
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::KillTerminalResponse
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