acp-sdk 0.7.0 → 0.9.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 (446) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +20 -0
  3. data/README.md +14 -1
  4. data/lib/acp/agent_connection/client.rb +1 -1
  5. data/lib/acp/agent_connection.rb +3 -1
  6. data/lib/acp/client_connection.rb +93 -4
  7. data/lib/acp/request_error.rb +15 -2
  8. data/lib/acp/sdk.rb +3 -1
  9. data/lib/acp/transport/cancellation.rb +25 -0
  10. data/lib/acp/transport/stdio.rb +67 -1
  11. data/lib/acp/types/agent_auth_capabilities.rb +4 -1
  12. data/lib/acp/types/agent_capabilities.rb +20 -5
  13. data/lib/acp/types/annotations.rb +6 -3
  14. data/lib/acp/types/audio_content.rb +8 -3
  15. data/lib/acp/types/auth_capabilities.rb +1 -1
  16. data/lib/acp/types/auth_method/terminal.rb +11 -5
  17. data/lib/acp/types/auth_method_agent.rb +6 -1
  18. data/lib/acp/types/auth_method_terminal.rb +11 -5
  19. data/lib/acp/types/authenticate_request.rb +1 -1
  20. data/lib/acp/types/available_command.rb +3 -3
  21. data/lib/acp/types/available_commands_update.rb +7 -4
  22. data/lib/acp/types/blob_resource_contents.rb +6 -1
  23. data/lib/acp/types/boolean_property_schema.rb +6 -1
  24. data/lib/acp/types/cancel_notification.rb +4 -1
  25. data/lib/acp/types/cancel_request_notification.rb +9 -1
  26. data/lib/acp/types/client_capabilities.rb +15 -5
  27. data/lib/acp/types/client_session_capabilities.rb +6 -3
  28. data/lib/acp/types/close_session_request.rb +4 -1
  29. data/lib/acp/types/complete_elicitation_notification.rb +4 -1
  30. data/lib/acp/types/config_option_update.rb +7 -4
  31. data/lib/acp/types/content.rb +4 -1
  32. data/lib/acp/types/content_block/audio.rb +8 -3
  33. data/lib/acp/types/content_block/image.rb +9 -4
  34. data/lib/acp/types/content_block/resource.rb +11 -2
  35. data/lib/acp/types/content_block/resource_link.rb +12 -7
  36. data/lib/acp/types/content_block/text.rb +7 -2
  37. data/lib/acp/types/content_chunk.rb +2 -2
  38. data/lib/acp/types/cost.rb +5 -1
  39. data/lib/acp/types/create_elicitation_request/mode/form.rb +5 -1
  40. data/lib/acp/types/create_elicitation_request/mode/url.rb +2 -2
  41. data/lib/acp/types/create_elicitation_request.rb +1 -1
  42. data/lib/acp/types/create_elicitation_response/action/accept.rb +6 -1
  43. data/lib/acp/types/create_terminal_request.rb +12 -6
  44. data/lib/acp/types/create_terminal_response.rb +4 -1
  45. data/lib/acp/types/current_mode_update.rb +4 -1
  46. data/lib/acp/types/delete_session_request.rb +4 -1
  47. data/lib/acp/types/diff.rb +6 -1
  48. data/lib/acp/types/elicitation_accept_action.rb +6 -1
  49. data/lib/acp/types/elicitation_capabilities.rb +2 -2
  50. data/lib/acp/types/elicitation_form_mode.rb +5 -1
  51. data/lib/acp/types/elicitation_property_schema/boolean_property_schema.rb +6 -1
  52. data/lib/acp/types/elicitation_property_schema/integer_property_schema.rb +5 -5
  53. data/lib/acp/types/elicitation_property_schema/multi_select_property_schema.rb +9 -6
  54. data/lib/acp/types/elicitation_property_schema/number_property_schema.rb +5 -5
  55. data/lib/acp/types/elicitation_property_schema/string_property_schema.rb +15 -9
  56. data/lib/acp/types/elicitation_request_scope.rb +8 -1
  57. data/lib/acp/types/elicitation_schema.rb +11 -5
  58. data/lib/acp/types/elicitation_session_scope.rb +4 -1
  59. data/lib/acp/types/elicitation_url_mode.rb +2 -2
  60. data/lib/acp/types/embedded_resource.rb +11 -2
  61. data/lib/acp/types/enum_option.rb +6 -1
  62. data/lib/acp/types/env_variable.rb +5 -1
  63. data/lib/acp/types/file_system_capabilities.rb +5 -1
  64. data/lib/acp/types/http_header.rb +5 -1
  65. data/lib/acp/types/image_content.rb +9 -4
  66. data/lib/acp/types/implementation.rb +6 -1
  67. data/lib/acp/types/initialize_request.rb +18 -3
  68. data/lib/acp/types/initialize_response.rb +17 -4
  69. data/lib/acp/types/integer_property_schema.rb +5 -5
  70. data/lib/acp/types/kill_terminal_request.rb +5 -1
  71. data/lib/acp/types/list_sessions_request.rb +5 -1
  72. data/lib/acp/types/list_sessions_response.rb +5 -2
  73. data/lib/acp/types/load_session_request.rb +14 -4
  74. data/lib/acp/types/load_session_response.rb +5 -2
  75. data/lib/acp/types/mcp_capabilities.rb +5 -1
  76. data/lib/acp/types/mcp_server/http.rb +6 -3
  77. data/lib/acp/types/mcp_server/sse.rb +6 -3
  78. data/lib/acp/types/mcp_server_http.rb +6 -3
  79. data/lib/acp/types/mcp_server_sse.rb +6 -3
  80. data/lib/acp/types/mcp_server_stdio.rb +10 -4
  81. data/lib/acp/types/multi_select_items/string_multi_select_items.rb +4 -1
  82. data/lib/acp/types/multi_select_property_schema.rb +9 -6
  83. data/lib/acp/types/new_session_request.rb +13 -3
  84. data/lib/acp/types/new_session_response.rb +6 -3
  85. data/lib/acp/types/number_property_schema.rb +5 -5
  86. data/lib/acp/types/permission_option.rb +10 -1
  87. data/lib/acp/types/plan.rb +4 -1
  88. data/lib/acp/types/plan_entry.rb +7 -3
  89. data/lib/acp/types/prompt_capabilities.rb +6 -1
  90. data/lib/acp/types/prompt_request.rb +5 -2
  91. data/lib/acp/types/prompt_response.rb +8 -1
  92. data/lib/acp/types/read_text_file_request.rb +4 -4
  93. data/lib/acp/types/read_text_file_response.rb +1 -1
  94. data/lib/acp/types/release_terminal_request.rb +5 -1
  95. data/lib/acp/types/request_permission_outcome/selected.rb +1 -1
  96. data/lib/acp/types/request_permission_request.rb +10 -3
  97. data/lib/acp/types/request_permission_response.rb +8 -1
  98. data/lib/acp/types/resource_link.rb +12 -7
  99. data/lib/acp/types/resume_session_request.rb +14 -4
  100. data/lib/acp/types/resume_session_response.rb +5 -2
  101. data/lib/acp/types/selected_permission_outcome.rb +1 -1
  102. data/lib/acp/types/session_capabilities.rb +20 -7
  103. data/lib/acp/types/session_config_boolean.rb +1 -1
  104. data/lib/acp/types/session_config_option/kind/boolean.rb +1 -1
  105. data/lib/acp/types/session_config_option/kind/select.rb +6 -2
  106. data/lib/acp/types/session_config_option.rb +3 -3
  107. data/lib/acp/types/session_config_options_capabilities.rb +6 -1
  108. data/lib/acp/types/session_config_select.rb +6 -2
  109. data/lib/acp/types/session_config_select_group.rb +6 -3
  110. data/lib/acp/types/session_config_select_option.rb +6 -1
  111. data/lib/acp/types/session_config_select_options.rb +6 -2
  112. data/lib/acp/types/session_info.rb +12 -5
  113. data/lib/acp/types/session_info_update.rb +10 -1
  114. data/lib/acp/types/session_mode.rb +6 -1
  115. data/lib/acp/types/session_mode_state.rb +8 -2
  116. data/lib/acp/types/session_notification.rb +2 -2
  117. data/lib/acp/types/session_update/agent_message_chunk.rb +2 -2
  118. data/lib/acp/types/session_update/agent_thought_chunk.rb +2 -2
  119. data/lib/acp/types/session_update/available_commands_update.rb +7 -4
  120. data/lib/acp/types/session_update/config_option_update.rb +7 -4
  121. data/lib/acp/types/session_update/current_mode_update.rb +4 -1
  122. data/lib/acp/types/session_update/plan.rb +4 -1
  123. data/lib/acp/types/session_update/session_info_update.rb +10 -1
  124. data/lib/acp/types/session_update/tool_call.rb +23 -7
  125. data/lib/acp/types/session_update/tool_call_update.rb +23 -7
  126. data/lib/acp/types/session_update/usage_update.rb +3 -3
  127. data/lib/acp/types/session_update/user_message_chunk.rb +2 -2
  128. data/lib/acp/types/set_session_config_option_request/value/boolean.rb +1 -1
  129. data/lib/acp/types/set_session_config_option_request/value/value_id.rb +1 -1
  130. data/lib/acp/types/set_session_config_option_request.rb +2 -2
  131. data/lib/acp/types/set_session_config_option_response.rb +7 -4
  132. data/lib/acp/types/set_session_mode_request.rb +5 -1
  133. data/lib/acp/types/string_multi_select_items.rb +4 -1
  134. data/lib/acp/types/string_property_schema.rb +15 -9
  135. data/lib/acp/types/terminal.rb +4 -1
  136. data/lib/acp/types/terminal_exit_status.rb +5 -1
  137. data/lib/acp/types/terminal_output_request.rb +5 -1
  138. data/lib/acp/types/terminal_output_response.rb +8 -3
  139. data/lib/acp/types/text_content.rb +7 -2
  140. data/lib/acp/types/text_resource_contents.rb +6 -1
  141. data/lib/acp/types/titled_multi_select_items.rb +4 -1
  142. data/lib/acp/types/tool_call.rb +23 -7
  143. data/lib/acp/types/tool_call_content/content.rb +4 -1
  144. data/lib/acp/types/tool_call_content/diff.rb +6 -1
  145. data/lib/acp/types/tool_call_content/terminal.rb +4 -1
  146. data/lib/acp/types/tool_call_location.rb +5 -1
  147. data/lib/acp/types/tool_call_update.rb +23 -7
  148. data/lib/acp/types/unstable/accept_nes_notification.rb +41 -0
  149. data/lib/acp/types/unstable/agent_capabilities.rb +122 -0
  150. data/lib/acp/types/unstable/client_capabilities.rb +127 -0
  151. data/lib/acp/types/unstable/client_nes_capabilities.rb +62 -0
  152. data/lib/acp/types/unstable/client_session_capabilities.rb +57 -0
  153. data/lib/acp/types/unstable/close_nes_request.rb +35 -0
  154. data/lib/acp/types/unstable/close_nes_response.rb +27 -0
  155. data/lib/acp/types/unstable/compaction_status.rb +11 -0
  156. data/lib/acp/types/unstable/compaction_summary_chunk.rb +41 -0
  157. data/lib/acp/types/unstable/compaction_update.rb +62 -0
  158. data/lib/acp/types/unstable/did_change_document_notification.rb +65 -0
  159. data/lib/acp/types/unstable/did_close_document_notification.rb +41 -0
  160. data/lib/acp/types/unstable/did_focus_document_notification.rb +74 -0
  161. data/lib/acp/types/unstable/did_open_document_notification.rb +66 -0
  162. data/lib/acp/types/unstable/did_save_document_notification.rb +41 -0
  163. data/lib/acp/types/unstable/disable_provider_request.rb +35 -0
  164. data/lib/acp/types/unstable/disable_provider_response.rb +27 -0
  165. data/lib/acp/types/unstable/fork_session_request.rb +69 -0
  166. data/lib/acp/types/unstable/fork_session_response.rb +55 -0
  167. data/lib/acp/types/unstable/idle_state_update.rb +46 -0
  168. data/lib/acp/types/unstable/initialize_response.rb +72 -0
  169. data/lib/acp/types/unstable/list_providers_request.rb +27 -0
  170. data/lib/acp/types/unstable/list_providers_response.rb +35 -0
  171. data/lib/acp/types/unstable/llm_protocol.rb +12 -0
  172. data/lib/acp/types/unstable/mcp_capabilities.rb +47 -0
  173. data/lib/acp/types/unstable/mcp_error.rb +41 -0
  174. data/lib/acp/types/unstable/mcp_server/acp.rb +41 -0
  175. data/lib/acp/types/unstable/mcp_server/http.rb +50 -0
  176. data/lib/acp/types/unstable/mcp_server/sse.rb +50 -0
  177. data/lib/acp/types/unstable/mcp_server.rb +25 -0
  178. data/lib/acp/types/unstable/mcp_server_acp.rb +41 -0
  179. data/lib/acp/types/unstable/message_mcp_notification.rb +59 -0
  180. data/lib/acp/types/unstable/message_mcp_request.rb +59 -0
  181. data/lib/acp/types/unstable/message_mcp_response/error.rb +35 -0
  182. data/lib/acp/types/unstable/message_mcp_response/result.rb +32 -0
  183. data/lib/acp/types/unstable/message_mcp_response.rb +23 -0
  184. data/lib/acp/types/unstable/nes_capabilities.rb +51 -0
  185. data/lib/acp/types/unstable/nes_context_capabilities.rb +111 -0
  186. data/lib/acp/types/unstable/nes_diagnostic.rb +57 -0
  187. data/lib/acp/types/unstable/nes_diagnostic_severity.rb +11 -0
  188. data/lib/acp/types/unstable/nes_diagnostics_capabilities.rb +27 -0
  189. data/lib/acp/types/unstable/nes_document_did_change_capabilities.rb +35 -0
  190. data/lib/acp/types/unstable/nes_document_did_close_capabilities.rb +27 -0
  191. data/lib/acp/types/unstable/nes_document_did_focus_capabilities.rb +27 -0
  192. data/lib/acp/types/unstable/nes_document_did_open_capabilities.rb +27 -0
  193. data/lib/acp/types/unstable/nes_document_did_save_capabilities.rb +27 -0
  194. data/lib/acp/types/unstable/nes_document_event_capabilities.rb +91 -0
  195. data/lib/acp/types/unstable/nes_edit_history_capabilities.rb +35 -0
  196. data/lib/acp/types/unstable/nes_edit_history_entry.rb +41 -0
  197. data/lib/acp/types/unstable/nes_edit_suggestion.rb +67 -0
  198. data/lib/acp/types/unstable/nes_event_capabilities.rb +40 -0
  199. data/lib/acp/types/unstable/nes_excerpt.rb +47 -0
  200. data/lib/acp/types/unstable/nes_jump_capabilities.rb +27 -0
  201. data/lib/acp/types/unstable/nes_jump_suggestion.rb +51 -0
  202. data/lib/acp/types/unstable/nes_open_file.rb +64 -0
  203. data/lib/acp/types/unstable/nes_open_files_capabilities.rb +27 -0
  204. data/lib/acp/types/unstable/nes_recent_file.rb +47 -0
  205. data/lib/acp/types/unstable/nes_recent_files_capabilities.rb +35 -0
  206. data/lib/acp/types/unstable/nes_reject_reason.rb +11 -0
  207. data/lib/acp/types/unstable/nes_related_snippet.rb +40 -0
  208. data/lib/acp/types/unstable/nes_related_snippets_capabilities.rb +27 -0
  209. data/lib/acp/types/unstable/nes_rename_capabilities.rb +27 -0
  210. data/lib/acp/types/unstable/nes_rename_suggestion.rb +57 -0
  211. data/lib/acp/types/unstable/nes_repository.rb +47 -0
  212. data/lib/acp/types/unstable/nes_search_and_replace_capabilities.rb +27 -0
  213. data/lib/acp/types/unstable/nes_search_and_replace_suggestion.rb +66 -0
  214. data/lib/acp/types/unstable/nes_suggest_context.rb +95 -0
  215. data/lib/acp/types/unstable/nes_suggestion/edit.rb +68 -0
  216. data/lib/acp/types/unstable/nes_suggestion/jump.rb +51 -0
  217. data/lib/acp/types/unstable/nes_suggestion/rename.rb +64 -0
  218. data/lib/acp/types/unstable/nes_suggestion/searchandreplace.rb +67 -0
  219. data/lib/acp/types/unstable/nes_suggestion.rb +25 -0
  220. data/lib/acp/types/unstable/nes_text_edit.rb +41 -0
  221. data/lib/acp/types/unstable/nes_trigger_kind.rb +10 -0
  222. data/lib/acp/types/unstable/nes_user_action.rb +63 -0
  223. data/lib/acp/types/unstable/nes_user_actions_capabilities.rb +35 -0
  224. data/lib/acp/types/unstable/notice.rb +47 -0
  225. data/lib/acp/types/unstable/notice_severity.rb +10 -0
  226. data/lib/acp/types/unstable/plan_capabilities.rb +27 -0
  227. data/lib/acp/types/unstable/plan_file.rb +41 -0
  228. data/lib/acp/types/unstable/plan_items.rb +44 -0
  229. data/lib/acp/types/unstable/plan_markdown.rb +41 -0
  230. data/lib/acp/types/unstable/plan_removed.rb +32 -0
  231. data/lib/acp/types/unstable/plan_update.rb +39 -0
  232. data/lib/acp/types/unstable/plan_update_content/file.rb +41 -0
  233. data/lib/acp/types/unstable/plan_update_content/items.rb +44 -0
  234. data/lib/acp/types/unstable/plan_update_content/markdown.rb +41 -0
  235. data/lib/acp/types/unstable/plan_update_content.rb +23 -0
  236. data/lib/acp/types/unstable/position.rb +41 -0
  237. data/lib/acp/types/unstable/position_encoding_kind.rb +10 -0
  238. data/lib/acp/types/unstable/prompt_response.rb +45 -0
  239. data/lib/acp/types/unstable/provider_current_config.rb +41 -0
  240. data/lib/acp/types/unstable/provider_info.rb +64 -0
  241. data/lib/acp/types/unstable/providers_capabilities.rb +27 -0
  242. data/lib/acp/types/unstable/range.rb +41 -0
  243. data/lib/acp/types/unstable/reject_nes_notification.rb +52 -0
  244. data/lib/acp/types/unstable/requires_action_state_update.rb +27 -0
  245. data/lib/acp/types/unstable/running_state_update.rb +27 -0
  246. data/lib/acp/types/unstable/session_cancel_capabilities.rb +27 -0
  247. data/lib/acp/types/unstable/session_capabilities.rb +93 -0
  248. data/lib/acp/types/unstable/session_fork_capabilities.rb +27 -0
  249. data/lib/acp/types/unstable/session_message.rb +62 -0
  250. data/lib/acp/types/unstable/session_message_chunk.rb +59 -0
  251. data/lib/acp/types/unstable/session_update/agent_message_chunk.rb +46 -0
  252. data/lib/acp/types/unstable/session_update/agent_thought_chunk.rb +46 -0
  253. data/lib/acp/types/unstable/session_update/available_commands_update.rb +42 -0
  254. data/lib/acp/types/unstable/session_update/compaction_summary_chunk.rb +46 -0
  255. data/lib/acp/types/unstable/session_update/compaction_update.rb +63 -0
  256. data/lib/acp/types/unstable/session_update/config_option_update.rb +42 -0
  257. data/lib/acp/types/unstable/session_update/current_mode_update.rb +35 -0
  258. data/lib/acp/types/unstable/session_update/notice.rb +53 -0
  259. data/lib/acp/types/unstable/session_update/plan.rb +35 -0
  260. data/lib/acp/types/unstable/session_update/plan_removed.rb +32 -0
  261. data/lib/acp/types/unstable/session_update/plan_update.rb +39 -0
  262. data/lib/acp/types/unstable/session_update/session_info_update.rb +49 -0
  263. data/lib/acp/types/unstable/session_update/session_message.rb +63 -0
  264. data/lib/acp/types/unstable/session_update/session_message_chunk.rb +60 -0
  265. data/lib/acp/types/unstable/session_update/subagent_update.rb +72 -0
  266. data/lib/acp/types/unstable/session_update/tool_call.rb +122 -0
  267. data/lib/acp/types/unstable/session_update/tool_call_update.rb +122 -0
  268. data/lib/acp/types/unstable/session_update/usage_update.rb +47 -0
  269. data/lib/acp/types/unstable/session_update/user_message_chunk.rb +46 -0
  270. data/lib/acp/types/unstable/session_update.rb +55 -0
  271. data/lib/acp/types/unstable/set_provider_request.rb +62 -0
  272. data/lib/acp/types/unstable/set_provider_response.rb +27 -0
  273. data/lib/acp/types/unstable/start_nes_request.rb +64 -0
  274. data/lib/acp/types/unstable/start_nes_response.rb +35 -0
  275. data/lib/acp/types/unstable/state_update/idle.rb +46 -0
  276. data/lib/acp/types/unstable/state_update/requires_action.rb +27 -0
  277. data/lib/acp/types/unstable/state_update/running.rb +27 -0
  278. data/lib/acp/types/unstable/state_update/unknown.rb +27 -0
  279. data/lib/acp/types/unstable/state_update.rb +25 -0
  280. data/lib/acp/types/unstable/subagent_capabilities.rb +27 -0
  281. data/lib/acp/types/unstable/subagent_session_capabilities.rb +40 -0
  282. data/lib/acp/types/unstable/subagent_update.rb +71 -0
  283. data/lib/acp/types/unstable/suggest_nes_request.rb +93 -0
  284. data/lib/acp/types/unstable/suggest_nes_response.rb +35 -0
  285. data/lib/acp/types/unstable/text_document_content_change_event.rb +41 -0
  286. data/lib/acp/types/unstable/text_document_sync_kind.rb +9 -0
  287. data/lib/acp/types/unstable/unknown_state_update.rb +27 -0
  288. data/lib/acp/types/unstable/usage.rb +91 -0
  289. data/lib/acp/types/unstable/workspace_folder.rb +41 -0
  290. data/lib/acp/types/unstable.rb +155 -0
  291. data/lib/acp/types/unstructured_command_input.rb +1 -1
  292. data/lib/acp/types/usage_update.rb +3 -3
  293. data/lib/acp/types/wait_for_terminal_exit_request.rb +5 -1
  294. data/lib/acp/types/wait_for_terminal_exit_response.rb +5 -1
  295. data/lib/acp/types/write_text_file_request.rb +3 -3
  296. data/lib/acp/types.rb +247 -0
  297. data/lib/acp/version.rb +1 -1
  298. data/sig/generated/acp/client_connection.rbs +39 -1
  299. data/sig/generated/acp/request_error.rbs +12 -1
  300. data/sig/generated/acp/transport/cancellation.rbs +19 -0
  301. data/sig/generated/acp/transport/stdio.rbs +38 -0
  302. data/sig/generated/acp/types/unstable/accept_nes_notification.rbs +25 -0
  303. data/sig/generated/acp/types/unstable/agent_capabilities.rbs +49 -0
  304. data/sig/generated/acp/types/unstable/client_capabilities.rbs +53 -0
  305. data/sig/generated/acp/types/unstable/client_nes_capabilities.rbs +29 -0
  306. data/sig/generated/acp/types/unstable/client_session_capabilities.rbs +29 -0
  307. data/sig/generated/acp/types/unstable/close_nes_request.rbs +21 -0
  308. data/sig/generated/acp/types/unstable/close_nes_response.rbs +17 -0
  309. data/sig/generated/acp/types/unstable/compaction_status.rbs +11 -0
  310. data/sig/generated/acp/types/unstable/compaction_summary_chunk.rbs +25 -0
  311. data/sig/generated/acp/types/unstable/compaction_update.rbs +33 -0
  312. data/sig/generated/acp/types/unstable/did_change_document_notification.rbs +33 -0
  313. data/sig/generated/acp/types/unstable/did_close_document_notification.rbs +25 -0
  314. data/sig/generated/acp/types/unstable/did_focus_document_notification.rbs +37 -0
  315. data/sig/generated/acp/types/unstable/did_open_document_notification.rbs +37 -0
  316. data/sig/generated/acp/types/unstable/did_save_document_notification.rbs +25 -0
  317. data/sig/generated/acp/types/unstable/disable_provider_request.rbs +21 -0
  318. data/sig/generated/acp/types/unstable/disable_provider_response.rbs +17 -0
  319. data/sig/generated/acp/types/unstable/fork_session_request.rbs +33 -0
  320. data/sig/generated/acp/types/unstable/fork_session_response.rbs +29 -0
  321. data/sig/generated/acp/types/unstable/idle_state_update.rbs +25 -0
  322. data/sig/generated/acp/types/unstable/initialize_response.rbs +33 -0
  323. data/sig/generated/acp/types/unstable/list_providers_request.rbs +17 -0
  324. data/sig/generated/acp/types/unstable/list_providers_response.rbs +21 -0
  325. data/sig/generated/acp/types/unstable/llm_protocol.rbs +13 -0
  326. data/sig/generated/acp/types/unstable/mcp_capabilities.rbs +29 -0
  327. data/sig/generated/acp/types/unstable/mcp_error.rbs +25 -0
  328. data/sig/generated/acp/types/unstable/mcp_server/acp.rbs +25 -0
  329. data/sig/generated/acp/types/unstable/mcp_server/http.rbs +29 -0
  330. data/sig/generated/acp/types/unstable/mcp_server/sse.rbs +29 -0
  331. data/sig/generated/acp/types/unstable/mcp_server.rbs +9 -0
  332. data/sig/generated/acp/types/unstable/mcp_server_acp.rbs +25 -0
  333. data/sig/generated/acp/types/unstable/message_mcp_notification.rbs +33 -0
  334. data/sig/generated/acp/types/unstable/message_mcp_request.rbs +33 -0
  335. data/sig/generated/acp/types/unstable/message_mcp_response/error.rbs +21 -0
  336. data/sig/generated/acp/types/unstable/message_mcp_response/result.rbs +21 -0
  337. data/sig/generated/acp/types/unstable/message_mcp_response.rbs +9 -0
  338. data/sig/generated/acp/types/unstable/nes_capabilities.rbs +25 -0
  339. data/sig/generated/acp/types/unstable/nes_context_capabilities.rbs +41 -0
  340. data/sig/generated/acp/types/unstable/nes_diagnostic.rbs +33 -0
  341. data/sig/generated/acp/types/unstable/nes_diagnostic_severity.rbs +11 -0
  342. data/sig/generated/acp/types/unstable/nes_diagnostics_capabilities.rbs +17 -0
  343. data/sig/generated/acp/types/unstable/nes_document_did_change_capabilities.rbs +21 -0
  344. data/sig/generated/acp/types/unstable/nes_document_did_close_capabilities.rbs +17 -0
  345. data/sig/generated/acp/types/unstable/nes_document_did_focus_capabilities.rbs +17 -0
  346. data/sig/generated/acp/types/unstable/nes_document_did_open_capabilities.rbs +17 -0
  347. data/sig/generated/acp/types/unstable/nes_document_did_save_capabilities.rbs +17 -0
  348. data/sig/generated/acp/types/unstable/nes_document_event_capabilities.rbs +37 -0
  349. data/sig/generated/acp/types/unstable/nes_edit_history_capabilities.rbs +21 -0
  350. data/sig/generated/acp/types/unstable/nes_edit_history_entry.rbs +25 -0
  351. data/sig/generated/acp/types/unstable/nes_edit_suggestion.rbs +33 -0
  352. data/sig/generated/acp/types/unstable/nes_event_capabilities.rbs +21 -0
  353. data/sig/generated/acp/types/unstable/nes_excerpt.rbs +29 -0
  354. data/sig/generated/acp/types/unstable/nes_jump_capabilities.rbs +17 -0
  355. data/sig/generated/acp/types/unstable/nes_jump_suggestion.rbs +29 -0
  356. data/sig/generated/acp/types/unstable/nes_open_file.rbs +33 -0
  357. data/sig/generated/acp/types/unstable/nes_open_files_capabilities.rbs +17 -0
  358. data/sig/generated/acp/types/unstable/nes_recent_file.rbs +29 -0
  359. data/sig/generated/acp/types/unstable/nes_recent_files_capabilities.rbs +21 -0
  360. data/sig/generated/acp/types/unstable/nes_reject_reason.rbs +11 -0
  361. data/sig/generated/acp/types/unstable/nes_related_snippet.rbs +25 -0
  362. data/sig/generated/acp/types/unstable/nes_related_snippets_capabilities.rbs +17 -0
  363. data/sig/generated/acp/types/unstable/nes_rename_capabilities.rbs +17 -0
  364. data/sig/generated/acp/types/unstable/nes_rename_suggestion.rbs +33 -0
  365. data/sig/generated/acp/types/unstable/nes_repository.rbs +29 -0
  366. data/sig/generated/acp/types/unstable/nes_search_and_replace_capabilities.rbs +17 -0
  367. data/sig/generated/acp/types/unstable/nes_search_and_replace_suggestion.rbs +37 -0
  368. data/sig/generated/acp/types/unstable/nes_suggest_context.rbs +41 -0
  369. data/sig/generated/acp/types/unstable/nes_suggestion/edit.rbs +33 -0
  370. data/sig/generated/acp/types/unstable/nes_suggestion/jump.rbs +29 -0
  371. data/sig/generated/acp/types/unstable/nes_suggestion/rename.rbs +33 -0
  372. data/sig/generated/acp/types/unstable/nes_suggestion/searchandreplace.rbs +37 -0
  373. data/sig/generated/acp/types/unstable/nes_suggestion.rbs +9 -0
  374. data/sig/generated/acp/types/unstable/nes_text_edit.rbs +25 -0
  375. data/sig/generated/acp/types/unstable/nes_trigger_kind.rbs +9 -0
  376. data/sig/generated/acp/types/unstable/nes_user_action.rbs +33 -0
  377. data/sig/generated/acp/types/unstable/nes_user_actions_capabilities.rbs +21 -0
  378. data/sig/generated/acp/types/unstable/notice.rbs +29 -0
  379. data/sig/generated/acp/types/unstable/notice_severity.rbs +9 -0
  380. data/sig/generated/acp/types/unstable/plan_capabilities.rbs +17 -0
  381. data/sig/generated/acp/types/unstable/plan_file.rbs +25 -0
  382. data/sig/generated/acp/types/unstable/plan_items.rbs +25 -0
  383. data/sig/generated/acp/types/unstable/plan_markdown.rbs +25 -0
  384. data/sig/generated/acp/types/unstable/plan_removed.rbs +21 -0
  385. data/sig/generated/acp/types/unstable/plan_update.rbs +21 -0
  386. data/sig/generated/acp/types/unstable/plan_update_content/file.rbs +25 -0
  387. data/sig/generated/acp/types/unstable/plan_update_content/items.rbs +25 -0
  388. data/sig/generated/acp/types/unstable/plan_update_content/markdown.rbs +25 -0
  389. data/sig/generated/acp/types/unstable/plan_update_content.rbs +9 -0
  390. data/sig/generated/acp/types/unstable/position.rbs +25 -0
  391. data/sig/generated/acp/types/unstable/position_encoding_kind.rbs +9 -0
  392. data/sig/generated/acp/types/unstable/prompt_response.rbs +25 -0
  393. data/sig/generated/acp/types/unstable/provider_current_config.rbs +25 -0
  394. data/sig/generated/acp/types/unstable/provider_info.rbs +33 -0
  395. data/sig/generated/acp/types/unstable/providers_capabilities.rbs +17 -0
  396. data/sig/generated/acp/types/unstable/range.rbs +25 -0
  397. data/sig/generated/acp/types/unstable/reject_nes_notification.rbs +29 -0
  398. data/sig/generated/acp/types/unstable/requires_action_state_update.rbs +17 -0
  399. data/sig/generated/acp/types/unstable/running_state_update.rbs +17 -0
  400. data/sig/generated/acp/types/unstable/session_cancel_capabilities.rbs +17 -0
  401. data/sig/generated/acp/types/unstable/session_capabilities.rbs +41 -0
  402. data/sig/generated/acp/types/unstable/session_fork_capabilities.rbs +17 -0
  403. data/sig/generated/acp/types/unstable/session_message.rbs +33 -0
  404. data/sig/generated/acp/types/unstable/session_message_chunk.rbs +33 -0
  405. data/sig/generated/acp/types/unstable/session_update/agent_message_chunk.rbs +25 -0
  406. data/sig/generated/acp/types/unstable/session_update/agent_thought_chunk.rbs +25 -0
  407. data/sig/generated/acp/types/unstable/session_update/available_commands_update.rbs +21 -0
  408. data/sig/generated/acp/types/unstable/session_update/compaction_summary_chunk.rbs +25 -0
  409. data/sig/generated/acp/types/unstable/session_update/compaction_update.rbs +33 -0
  410. data/sig/generated/acp/types/unstable/session_update/config_option_update.rbs +21 -0
  411. data/sig/generated/acp/types/unstable/session_update/current_mode_update.rbs +21 -0
  412. data/sig/generated/acp/types/unstable/session_update/notice.rbs +29 -0
  413. data/sig/generated/acp/types/unstable/session_update/plan.rbs +21 -0
  414. data/sig/generated/acp/types/unstable/session_update/plan_removed.rbs +21 -0
  415. data/sig/generated/acp/types/unstable/session_update/plan_update.rbs +21 -0
  416. data/sig/generated/acp/types/unstable/session_update/session_info_update.rbs +25 -0
  417. data/sig/generated/acp/types/unstable/session_update/session_message.rbs +33 -0
  418. data/sig/generated/acp/types/unstable/session_update/session_message_chunk.rbs +33 -0
  419. data/sig/generated/acp/types/unstable/session_update/subagent_update.rbs +37 -0
  420. data/sig/generated/acp/types/unstable/session_update/tool_call.rbs +53 -0
  421. data/sig/generated/acp/types/unstable/session_update/tool_call_update.rbs +53 -0
  422. data/sig/generated/acp/types/unstable/session_update/usage_update.rbs +29 -0
  423. data/sig/generated/acp/types/unstable/session_update/user_message_chunk.rbs +25 -0
  424. data/sig/generated/acp/types/unstable/session_update.rbs +9 -0
  425. data/sig/generated/acp/types/unstable/set_provider_request.rbs +33 -0
  426. data/sig/generated/acp/types/unstable/set_provider_response.rbs +17 -0
  427. data/sig/generated/acp/types/unstable/start_nes_request.rbs +29 -0
  428. data/sig/generated/acp/types/unstable/start_nes_response.rbs +21 -0
  429. data/sig/generated/acp/types/unstable/state_update/idle.rbs +25 -0
  430. data/sig/generated/acp/types/unstable/state_update/requires_action.rbs +17 -0
  431. data/sig/generated/acp/types/unstable/state_update/running.rbs +17 -0
  432. data/sig/generated/acp/types/unstable/state_update/unknown.rbs +17 -0
  433. data/sig/generated/acp/types/unstable/state_update.rbs +9 -0
  434. data/sig/generated/acp/types/unstable/subagent_capabilities.rbs +17 -0
  435. data/sig/generated/acp/types/unstable/subagent_session_capabilities.rbs +21 -0
  436. data/sig/generated/acp/types/unstable/subagent_update.rbs +37 -0
  437. data/sig/generated/acp/types/unstable/suggest_nes_request.rbs +45 -0
  438. data/sig/generated/acp/types/unstable/suggest_nes_response.rbs +21 -0
  439. data/sig/generated/acp/types/unstable/text_document_content_change_event.rbs +25 -0
  440. data/sig/generated/acp/types/unstable/text_document_sync_kind.rbs +7 -0
  441. data/sig/generated/acp/types/unstable/unknown_state_update.rbs +17 -0
  442. data/sig/generated/acp/types/unstable/usage.rbs +41 -0
  443. data/sig/generated/acp/types/unstable/workspace_folder.rbs +25 -0
  444. data/sig/generated/acp/types/unstable.rbs +4 -0
  445. data/sig/generated/acp/types.rbs +143 -0
  446. metadata +289 -1
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::CompactionUpdate
7
+ # @dynamic compaction_id
8
+ attr_reader :compaction_id #: String
9
+
10
+ # @dynamic status
11
+ attr_reader :status #: String
12
+
13
+ # @dynamic summary
14
+ attr_reader :summary #: Array[ACP::Types::ContentBlock::t]?
15
+
16
+ # @dynamic error
17
+ attr_reader :error #: String?
18
+
19
+ # @dynamic meta
20
+ attr_reader :meta #: Hash[String, untyped]?
21
+
22
+ # @rbs compaction_id: String
23
+ # @rbs status: String
24
+ # @rbs summary: Array[ACP::Types::ContentBlock::t]?
25
+ # @rbs error: String?
26
+ # @rbs meta: Hash[String, untyped]?
27
+ # @rbs return: void
28
+ def initialize(compaction_id:, status:, summary: nil, error: nil, meta: nil)
29
+ @compaction_id = compaction_id
30
+ @status = status
31
+ @summary = summary
32
+ @error = error
33
+ @meta = meta
34
+ freeze
35
+ end
36
+
37
+ # @rbs hash: Hash[String, untyped]
38
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::CompactionUpdate
39
+ def self.from_h(hash)
40
+ summary = ACP::Types::Check.array(hash['summary'], 'summary', allow_nil: true) do |item, path|
41
+ ACP::Types::Check.object(item, path, ACP::Types::ContentBlock)
42
+ end
43
+ new(
44
+ compaction_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'compactionId'), 'compactionId'),
45
+ status: ACP::Types::Check.key(hash, 'status'),
46
+ summary:,
47
+ error: ACP::Types::Check.string(hash['error'], 'error', allow_nil: true),
48
+ meta: hash['_meta']
49
+ )
50
+ end
51
+
52
+ # @rbs return: Hash[String, untyped]
53
+ def to_h
54
+ {
55
+ 'sessionUpdate' => 'compaction_update',
56
+ 'compactionId' => compaction_id,
57
+ 'status' => status,
58
+ 'summary' => summary&.map(&:to_h),
59
+ 'error' => error,
60
+ '_meta' => meta
61
+ }.compact
62
+ end
63
+ end
@@ -0,0 +1,42 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::ConfigOptionUpdate
7
+ # @dynamic config_options
8
+ attr_reader :config_options #: Array[ACP::Types::SessionConfigOption]
9
+
10
+ # @dynamic meta
11
+ attr_reader :meta #: Hash[String, untyped]?
12
+
13
+ # @rbs config_options: Array[ACP::Types::SessionConfigOption]
14
+ # @rbs meta: Hash[String, untyped]?
15
+ # @rbs return: void
16
+ def initialize(config_options:, meta: nil)
17
+ @config_options = config_options
18
+ @meta = meta
19
+ freeze
20
+ end
21
+
22
+ # @rbs hash: Hash[String, untyped]
23
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::ConfigOptionUpdate
24
+ def self.from_h(hash)
25
+ config_options = ACP::Types::Check.array(
26
+ ACP::Types::Check.key(hash, 'configOptions'),
27
+ 'configOptions'
28
+ ) do |item, path|
29
+ ACP::Types::Check.object(item, path, ACP::Types::SessionConfigOption)
30
+ end
31
+ new(config_options:, meta: hash['_meta'])
32
+ end
33
+
34
+ # @rbs return: Hash[String, untyped]
35
+ def to_h
36
+ {
37
+ 'sessionUpdate' => 'config_option_update',
38
+ 'configOptions' => config_options.map(&:to_h),
39
+ '_meta' => meta
40
+ }.compact
41
+ end
42
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::CurrentModeUpdate
7
+ # @dynamic current_mode_id
8
+ attr_reader :current_mode_id #: String
9
+
10
+ # @dynamic meta
11
+ attr_reader :meta #: Hash[String, untyped]?
12
+
13
+ # @rbs current_mode_id: String
14
+ # @rbs meta: Hash[String, untyped]?
15
+ # @rbs return: void
16
+ def initialize(current_mode_id:, meta: nil)
17
+ @current_mode_id = current_mode_id
18
+ @meta = meta
19
+ freeze
20
+ end
21
+
22
+ # @rbs hash: Hash[String, untyped]
23
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::CurrentModeUpdate
24
+ def self.from_h(hash)
25
+ new(
26
+ current_mode_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'currentModeId'), 'currentModeId'),
27
+ meta: hash['_meta']
28
+ )
29
+ end
30
+
31
+ # @rbs return: Hash[String, untyped]
32
+ def to_h
33
+ { 'sessionUpdate' => 'current_mode_update', 'currentModeId' => current_mode_id, '_meta' => meta }.compact
34
+ end
35
+ end
@@ -0,0 +1,53 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::Notice
7
+ # @dynamic severity
8
+ attr_reader :severity #: String
9
+
10
+ # @dynamic title
11
+ attr_reader :title #: String
12
+
13
+ # @dynamic description
14
+ attr_reader :description #: String?
15
+
16
+ # @dynamic meta
17
+ attr_reader :meta #: Hash[String, untyped]?
18
+
19
+ # @rbs severity: String
20
+ # @rbs title: String
21
+ # @rbs description: String?
22
+ # @rbs meta: Hash[String, untyped]?
23
+ # @rbs return: void
24
+ def initialize(severity:, title:, description: nil, meta: nil)
25
+ @severity = severity
26
+ @title = title
27
+ @description = description
28
+ @meta = meta
29
+ freeze
30
+ end
31
+
32
+ # @rbs hash: Hash[String, untyped]
33
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::Notice
34
+ def self.from_h(hash)
35
+ new(
36
+ severity: ACP::Types::Check.key(hash, 'severity'),
37
+ title: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'title'), 'title'),
38
+ description: ACP::Types::Check.string(hash['description'], 'description', allow_nil: true),
39
+ meta: hash['_meta']
40
+ )
41
+ end
42
+
43
+ # @rbs return: Hash[String, untyped]
44
+ def to_h
45
+ {
46
+ 'sessionUpdate' => 'notice',
47
+ 'severity' => severity,
48
+ 'title' => title,
49
+ 'description' => description,
50
+ '_meta' => meta
51
+ }.compact
52
+ end
53
+ end
@@ -0,0 +1,35 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::Plan
7
+ # @dynamic entries
8
+ attr_reader :entries #: Array[ACP::Types::PlanEntry]
9
+
10
+ # @dynamic meta
11
+ attr_reader :meta #: Hash[String, untyped]?
12
+
13
+ # @rbs entries: Array[ACP::Types::PlanEntry]
14
+ # @rbs meta: Hash[String, untyped]?
15
+ # @rbs return: void
16
+ def initialize(entries:, meta: nil)
17
+ @entries = entries
18
+ @meta = meta
19
+ freeze
20
+ end
21
+
22
+ # @rbs hash: Hash[String, untyped]
23
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::Plan
24
+ def self.from_h(hash)
25
+ entries = ACP::Types::Check.array(ACP::Types::Check.key(hash, 'entries'), 'entries') do |item, path|
26
+ ACP::Types::Check.object(item, path, ACP::Types::PlanEntry)
27
+ end
28
+ new(entries:, meta: hash['_meta'])
29
+ end
30
+
31
+ # @rbs return: Hash[String, untyped]
32
+ def to_h
33
+ { 'sessionUpdate' => 'plan', 'entries' => entries.map(&:to_h), '_meta' => meta }.compact
34
+ end
35
+ end
@@ -0,0 +1,32 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::PlanRemoved
7
+ # @dynamic plan_id
8
+ attr_reader :plan_id #: String
9
+
10
+ # @dynamic meta
11
+ attr_reader :meta #: Hash[String, untyped]?
12
+
13
+ # @rbs plan_id: String
14
+ # @rbs meta: Hash[String, untyped]?
15
+ # @rbs return: void
16
+ def initialize(plan_id:, meta: nil)
17
+ @plan_id = plan_id
18
+ @meta = meta
19
+ freeze
20
+ end
21
+
22
+ # @rbs hash: Hash[String, untyped]
23
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::PlanRemoved
24
+ def self.from_h(hash)
25
+ new(plan_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'planId'), 'planId'), meta: hash['_meta'])
26
+ end
27
+
28
+ # @rbs return: Hash[String, untyped]
29
+ def to_h
30
+ { 'sessionUpdate' => 'plan_removed', 'planId' => plan_id, '_meta' => meta }.compact
31
+ end
32
+ end
@@ -0,0 +1,39 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::PlanUpdate
7
+ # @dynamic plan
8
+ attr_reader :plan #: ACP::Types::Unstable::PlanUpdateContent::t
9
+
10
+ # @dynamic meta
11
+ attr_reader :meta #: Hash[String, untyped]?
12
+
13
+ # @rbs plan: ACP::Types::Unstable::PlanUpdateContent::t
14
+ # @rbs meta: Hash[String, untyped]?
15
+ # @rbs return: void
16
+ def initialize(plan:, meta: nil)
17
+ @plan = plan
18
+ @meta = meta
19
+ freeze
20
+ end
21
+
22
+ # @rbs hash: Hash[String, untyped]
23
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::PlanUpdate
24
+ def self.from_h(hash)
25
+ new(
26
+ plan: ACP::Types::Check.object(
27
+ ACP::Types::Check.key(hash, 'plan'),
28
+ 'plan',
29
+ ACP::Types::Unstable::PlanUpdateContent
30
+ ),
31
+ meta: hash['_meta']
32
+ )
33
+ end
34
+
35
+ # @rbs return: Hash[String, untyped]
36
+ def to_h
37
+ { 'sessionUpdate' => 'plan_update', 'plan' => plan.to_h, '_meta' => meta }.compact
38
+ end
39
+ end
@@ -0,0 +1,49 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::SessionInfoUpdate
7
+ # @dynamic title
8
+ attr_reader :title #: String? | :unset
9
+
10
+ # @dynamic updated_at
11
+ attr_reader :updated_at #: String? | :unset
12
+
13
+ # @dynamic meta
14
+ attr_reader :meta #: Hash[String, untyped]?
15
+
16
+ # @rbs title: String? | :unset
17
+ # @rbs updated_at: String? | :unset
18
+ # @rbs meta: Hash[String, untyped]?
19
+ # @rbs return: void
20
+ def initialize(title: :unset, updated_at: :unset, meta: nil)
21
+ @title = title
22
+ @updated_at = updated_at
23
+ @meta = meta
24
+ freeze
25
+ end
26
+
27
+ # @rbs hash: Hash[String, untyped]
28
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::SessionInfoUpdate
29
+ def self.from_h(hash)
30
+ new(
31
+ title: ACP::Types::Check.string(hash.fetch('title', :unset), 'title', allow_nil: true, allow_unset: true),
32
+ updated_at: ACP::Types::Check.string(
33
+ hash.fetch('updatedAt', :unset),
34
+ 'updatedAt',
35
+ allow_nil: true,
36
+ allow_unset: true
37
+ ),
38
+ meta: hash['_meta']
39
+ )
40
+ end
41
+
42
+ # @rbs return: Hash[String, untyped]
43
+ def to_h
44
+ {
45
+ 'sessionUpdate' => 'session_info_update',
46
+ '_meta' => meta
47
+ }.compact.merge({ 'title' => title, 'updatedAt' => updated_at }.reject { |_, value| value == :unset })
48
+ end
49
+ end
@@ -0,0 +1,63 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::SessionMessage
7
+ # @dynamic message_id
8
+ attr_reader :message_id #: String
9
+
10
+ # @dynamic sender_session_id
11
+ attr_reader :sender_session_id #: String?
12
+
13
+ # @dynamic recipient_session_id
14
+ attr_reader :recipient_session_id #: String?
15
+
16
+ # @dynamic content
17
+ attr_reader :content #: Array[ACP::Types::ContentBlock::t]?
18
+
19
+ # @dynamic meta
20
+ attr_reader :meta #: Hash[String, untyped]?
21
+
22
+ # @rbs message_id: String
23
+ # @rbs sender_session_id: String?
24
+ # @rbs recipient_session_id: String?
25
+ # @rbs content: Array[ACP::Types::ContentBlock::t]?
26
+ # @rbs meta: Hash[String, untyped]?
27
+ # @rbs return: void
28
+ def initialize(message_id:, sender_session_id: nil, recipient_session_id: nil, content: nil, meta: nil)
29
+ @message_id = message_id
30
+ @sender_session_id = sender_session_id
31
+ @recipient_session_id = recipient_session_id
32
+ @content = content
33
+ @meta = meta
34
+ freeze
35
+ end
36
+
37
+ # @rbs hash: Hash[String, untyped]
38
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::SessionMessage
39
+ def self.from_h(hash)
40
+ content = ACP::Types::Check.array(hash['content'], 'content', allow_nil: true) do |item, path|
41
+ ACP::Types::Check.object(item, path, ACP::Types::ContentBlock)
42
+ end
43
+ new(
44
+ message_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'messageId'), 'messageId'),
45
+ sender_session_id: ACP::Types::Check.string(hash['senderSessionId'], 'senderSessionId', allow_nil: true),
46
+ recipient_session_id: ACP::Types::Check.string(hash['recipientSessionId'], 'recipientSessionId', allow_nil: true),
47
+ content:,
48
+ meta: hash['_meta']
49
+ )
50
+ end
51
+
52
+ # @rbs return: Hash[String, untyped]
53
+ def to_h
54
+ {
55
+ 'sessionUpdate' => 'session_message',
56
+ 'messageId' => message_id,
57
+ 'senderSessionId' => sender_session_id,
58
+ 'recipientSessionId' => recipient_session_id,
59
+ 'content' => content&.map(&:to_h),
60
+ '_meta' => meta
61
+ }.compact
62
+ end
63
+ end
@@ -0,0 +1,60 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::SessionMessageChunk
7
+ # @dynamic message_id
8
+ attr_reader :message_id #: String
9
+
10
+ # @dynamic sender_session_id
11
+ attr_reader :sender_session_id #: String?
12
+
13
+ # @dynamic recipient_session_id
14
+ attr_reader :recipient_session_id #: String?
15
+
16
+ # @dynamic content
17
+ attr_reader :content #: ACP::Types::ContentBlock::t
18
+
19
+ # @dynamic meta
20
+ attr_reader :meta #: Hash[String, untyped]?
21
+
22
+ # @rbs message_id: String
23
+ # @rbs sender_session_id: String?
24
+ # @rbs recipient_session_id: String?
25
+ # @rbs content: ACP::Types::ContentBlock::t
26
+ # @rbs meta: Hash[String, untyped]?
27
+ # @rbs return: void
28
+ def initialize(message_id:, content:, sender_session_id: nil, recipient_session_id: nil, meta: nil)
29
+ @message_id = message_id
30
+ @sender_session_id = sender_session_id
31
+ @recipient_session_id = recipient_session_id
32
+ @content = content
33
+ @meta = meta
34
+ freeze
35
+ end
36
+
37
+ # @rbs hash: Hash[String, untyped]
38
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::SessionMessageChunk
39
+ def self.from_h(hash)
40
+ new(
41
+ message_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'messageId'), 'messageId'),
42
+ sender_session_id: ACP::Types::Check.string(hash['senderSessionId'], 'senderSessionId', allow_nil: true),
43
+ recipient_session_id: ACP::Types::Check.string(hash['recipientSessionId'], 'recipientSessionId', allow_nil: true),
44
+ content: ACP::Types::Check.object(ACP::Types::Check.key(hash, 'content'), 'content', ACP::Types::ContentBlock),
45
+ meta: hash['_meta']
46
+ )
47
+ end
48
+
49
+ # @rbs return: Hash[String, untyped]
50
+ def to_h
51
+ {
52
+ 'sessionUpdate' => 'session_message_chunk',
53
+ 'messageId' => message_id,
54
+ 'content' => content.to_h,
55
+ 'senderSessionId' => sender_session_id,
56
+ 'recipientSessionId' => recipient_session_id,
57
+ '_meta' => meta
58
+ }.compact
59
+ end
60
+ end
@@ -0,0 +1,72 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::SubagentUpdate
7
+ # @dynamic session_id
8
+ attr_reader :session_id #: String
9
+
10
+ # @dynamic title
11
+ attr_reader :title #: String?
12
+
13
+ # @dynamic description
14
+ attr_reader :description #: String?
15
+
16
+ # @dynamic capabilities
17
+ attr_reader :capabilities #: ACP::Types::Unstable::SubagentSessionCapabilities?
18
+
19
+ # @dynamic state
20
+ attr_reader :state #: ACP::Types::Unstable::StateUpdate::t?
21
+
22
+ # @dynamic meta
23
+ attr_reader :meta #: Hash[String, untyped]?
24
+
25
+ # @rbs session_id: String
26
+ # @rbs title: String?
27
+ # @rbs description: String?
28
+ # @rbs capabilities: ACP::Types::Unstable::SubagentSessionCapabilities?
29
+ # @rbs state: ACP::Types::Unstable::StateUpdate::t?
30
+ # @rbs meta: Hash[String, untyped]?
31
+ # @rbs return: void
32
+ def initialize(session_id:, title: nil, description: nil, capabilities: nil, state: nil, meta: nil)
33
+ @session_id = session_id
34
+ @title = title
35
+ @description = description
36
+ @capabilities = capabilities
37
+ @state = state
38
+ @meta = meta
39
+ freeze
40
+ end
41
+
42
+ # @rbs hash: Hash[String, untyped]
43
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::SubagentUpdate
44
+ def self.from_h(hash)
45
+ new(
46
+ session_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'sessionId'), 'sessionId'),
47
+ title: ACP::Types::Check.string(hash['title'], 'title', allow_nil: true),
48
+ description: ACP::Types::Check.string(hash['description'], 'description', allow_nil: true),
49
+ capabilities: ACP::Types::Check.object(
50
+ hash['capabilities'],
51
+ 'capabilities',
52
+ ACP::Types::Unstable::SubagentSessionCapabilities,
53
+ allow_nil: true
54
+ ),
55
+ state: ACP::Types::Check.object(hash['state'], 'state', ACP::Types::Unstable::StateUpdate, allow_nil: true),
56
+ meta: hash['_meta']
57
+ )
58
+ end
59
+
60
+ # @rbs return: Hash[String, untyped]
61
+ def to_h
62
+ {
63
+ 'sessionUpdate' => 'subagent_update',
64
+ 'sessionId' => session_id,
65
+ 'title' => title,
66
+ 'description' => description,
67
+ 'capabilities' => capabilities&.to_h,
68
+ 'state' => state&.to_h,
69
+ '_meta' => meta
70
+ }.compact
71
+ end
72
+ end
@@ -0,0 +1,122 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
+ # Unstable: not part of the ACP spec, may change or disappear at any point.
5
+
6
+ class ACP::Types::Unstable::SessionUpdate::ToolCall
7
+ # @dynamic tool_call_id
8
+ attr_reader :tool_call_id #: String
9
+
10
+ # @dynamic title
11
+ attr_reader :title #: String
12
+
13
+ # @dynamic name
14
+ attr_reader :name #: String?
15
+
16
+ # @dynamic kind
17
+ attr_reader :kind #: String?
18
+
19
+ # @dynamic status
20
+ attr_reader :status #: String?
21
+
22
+ # @dynamic content
23
+ attr_reader :content #: Array[ACP::Types::ToolCallContent::t]?
24
+
25
+ # @dynamic locations
26
+ attr_reader :locations #: Array[ACP::Types::ToolCallLocation]?
27
+
28
+ # @dynamic raw_input
29
+ attr_reader :raw_input #: untyped
30
+
31
+ # @dynamic raw_output
32
+ attr_reader :raw_output #: untyped
33
+
34
+ # @dynamic meta
35
+ attr_reader :meta #: Hash[String, untyped]?
36
+
37
+ # @rbs tool_call_id: String
38
+ # @rbs title: String
39
+ # @rbs name: String?
40
+ # @rbs kind: String?
41
+ # @rbs status: String?
42
+ # @rbs content: Array[ACP::Types::ToolCallContent::t]?
43
+ # @rbs locations: Array[ACP::Types::ToolCallLocation]?
44
+ # @rbs raw_input: untyped
45
+ # @rbs raw_output: untyped
46
+ # @rbs meta: Hash[String, untyped]?
47
+ # @rbs return: void
48
+ def initialize(
49
+ tool_call_id:,
50
+ title:,
51
+ name: nil,
52
+ kind: nil,
53
+ status: nil,
54
+ content: nil,
55
+ locations: nil,
56
+ raw_input: nil,
57
+ raw_output: nil,
58
+ meta: nil
59
+ )
60
+ @tool_call_id = tool_call_id
61
+ @title = title
62
+ @name = name
63
+ @kind = kind
64
+ @status = status
65
+ @content = content
66
+ @locations = locations
67
+ @raw_input = raw_input
68
+ @raw_output = raw_output
69
+ @meta = meta
70
+ freeze
71
+ end
72
+
73
+ # @rbs hash: Hash[String, untyped]
74
+ # @rbs return: ACP::Types::Unstable::SessionUpdate::ToolCall
75
+ def self.from_h(hash)
76
+ content = ACP::Types::Check.array(hash['content'], 'content', allow_nil: true) do |item, path|
77
+ ACP::Types::Check.object(item, path, ACP::Types::ToolCallContent)
78
+ end
79
+ locations = ACP::Types::Check.array(hash['locations'], 'locations', allow_nil: true) do |item, path|
80
+ ACP::Types::Check.object(item, path, ACP::Types::ToolCallLocation)
81
+ end
82
+ new(
83
+ tool_call_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'toolCallId'), 'toolCallId'),
84
+ title: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'title'), 'title'),
85
+ name: ACP::Types::Check.string(hash['name'], 'name', allow_nil: true),
86
+ kind: ACP::Types::Check.enum(
87
+ hash['kind'],
88
+ 'kind',
89
+ %w[read edit delete move search execute think fetch switch_mode other],
90
+ allow_nil: true
91
+ ),
92
+ status: ACP::Types::Check.enum(
93
+ hash['status'],
94
+ 'status',
95
+ %w[pending in_progress completed failed],
96
+ allow_nil: true
97
+ ),
98
+ content:,
99
+ locations:,
100
+ raw_input: hash['rawInput'],
101
+ raw_output: hash['rawOutput'],
102
+ meta: hash['_meta']
103
+ )
104
+ end
105
+
106
+ # @rbs return: Hash[String, untyped]
107
+ def to_h
108
+ {
109
+ 'sessionUpdate' => 'tool_call',
110
+ 'toolCallId' => tool_call_id,
111
+ 'title' => title,
112
+ 'name' => name,
113
+ 'kind' => kind,
114
+ 'status' => status,
115
+ 'content' => content&.map(&:to_h),
116
+ 'locations' => locations&.map(&:to_h),
117
+ 'rawInput' => raw_input,
118
+ 'rawOutput' => raw_output,
119
+ '_meta' => meta
120
+ }.compact
121
+ end
122
+ end