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.
- checksums.yaml +7 -0
- data/CHANGELOG.md +11 -0
- data/LICENSE.txt +9 -0
- data/README.md +81 -0
- data/lib/acp/agent_connection/client.rb +39 -0
- data/lib/acp/agent_connection/optional_method.rb +28 -0
- data/lib/acp/agent_connection.rb +122 -0
- data/lib/acp/client_connection.rb +129 -0
- data/lib/acp/sdk.rb +13 -0
- data/lib/acp/transport/reply.rb +20 -0
- data/lib/acp/transport/response_error.rb +28 -0
- data/lib/acp/transport/result.rb +35 -0
- data/lib/acp/transport/stdio.rb +207 -0
- data/lib/acp/transport.rb +4 -0
- data/lib/acp/types/agent_auth_capabilities.rb +31 -0
- data/lib/acp/types/agent_capabilities.rb +72 -0
- data/lib/acp/types/annotations.rb +46 -0
- data/lib/acp/types/audio_content.rb +46 -0
- data/lib/acp/types/auth_capabilities.rb +31 -0
- data/lib/acp/types/auth_method/terminal.rb +66 -0
- data/lib/acp/types/auth_method.rb +20 -0
- data/lib/acp/types/auth_method_agent.rb +41 -0
- data/lib/acp/types/auth_method_terminal.rb +58 -0
- data/lib/acp/types/authenticate_request.rb +31 -0
- data/lib/acp/types/authenticate_response.rb +26 -0
- data/lib/acp/types/available_command.rb +46 -0
- data/lib/acp/types/available_command_input.rb +19 -0
- data/lib/acp/types/available_commands_update.rb +34 -0
- data/lib/acp/types/blob_resource_contents.rb +41 -0
- data/lib/acp/types/boolean_config_option_capabilities.rb +26 -0
- data/lib/acp/types/boolean_property_schema.rb +41 -0
- data/lib/acp/types/cancel_notification.rb +31 -0
- data/lib/acp/types/cancel_request_notification.rb +31 -0
- data/lib/acp/types/client_capabilities.rb +65 -0
- data/lib/acp/types/client_session_capabilities.rb +36 -0
- data/lib/acp/types/close_session_request.rb +31 -0
- data/lib/acp/types/close_session_response.rb +26 -0
- data/lib/acp/types/complete_elicitation_notification.rb +31 -0
- data/lib/acp/types/config_option_update.rb +34 -0
- data/lib/acp/types/content.rb +31 -0
- data/lib/acp/types/content_block/audio.rb +52 -0
- data/lib/acp/types/content_block/image.rb +59 -0
- data/lib/acp/types/content_block/resource.rb +40 -0
- data/lib/acp/types/content_block/resource_link.rb +80 -0
- data/lib/acp/types/content_block/text.rb +40 -0
- data/lib/acp/types/content_block.rb +26 -0
- data/lib/acp/types/content_chunk.rb +40 -0
- data/lib/acp/types/cost.rb +36 -0
- data/lib/acp/types/create_elicitation_request/mode/form.rb +34 -0
- data/lib/acp/types/create_elicitation_request/mode/url.rb +40 -0
- data/lib/acp/types/create_elicitation_request/mode.rb +20 -0
- data/lib/acp/types/create_elicitation_request.rb +40 -0
- data/lib/acp/types/create_elicitation_response/action/accept.rb +26 -0
- data/lib/acp/types/create_elicitation_response/action/cancel.rb +21 -0
- data/lib/acp/types/create_elicitation_response/action/decline.rb +21 -0
- data/lib/acp/types/create_elicitation_response/action.rb +22 -0
- data/lib/acp/types/create_elicitation_response.rb +31 -0
- data/lib/acp/types/create_terminal_request.rb +72 -0
- data/lib/acp/types/create_terminal_response.rb +31 -0
- data/lib/acp/types/current_mode_update.rb +31 -0
- data/lib/acp/types/delete_session_request.rb +31 -0
- data/lib/acp/types/delete_session_response.rb +26 -0
- data/lib/acp/types/diff.rb +41 -0
- data/lib/acp/types/elicitation_accept_action.rb +26 -0
- data/lib/acp/types/elicitation_capabilities.rb +40 -0
- data/lib/acp/types/elicitation_form_capabilities.rb +26 -0
- data/lib/acp/types/elicitation_form_mode/scope.rb +22 -0
- data/lib/acp/types/elicitation_form_mode.rb +34 -0
- data/lib/acp/types/elicitation_property_schema/boolean_property_schema.rb +47 -0
- data/lib/acp/types/elicitation_property_schema/integer_property_schema.rb +66 -0
- data/lib/acp/types/elicitation_property_schema/multi_select_property_schema.rb +73 -0
- data/lib/acp/types/elicitation_property_schema/number_property_schema.rb +66 -0
- data/lib/acp/types/elicitation_property_schema/string_property_schema.rb +105 -0
- data/lib/acp/types/elicitation_property_schema.rb +26 -0
- data/lib/acp/types/elicitation_request_scope.rb +26 -0
- data/lib/acp/types/elicitation_schema.rb +65 -0
- data/lib/acp/types/elicitation_schema_type.rb +7 -0
- data/lib/acp/types/elicitation_session_scope.rb +31 -0
- data/lib/acp/types/elicitation_url_capabilities.rb +26 -0
- data/lib/acp/types/elicitation_url_mode/scope.rb +22 -0
- data/lib/acp/types/elicitation_url_mode.rb +40 -0
- data/lib/acp/types/embedded_resource.rb +40 -0
- data/lib/acp/types/embedded_resource_resource.rb +22 -0
- data/lib/acp/types/enum_option.rb +41 -0
- data/lib/acp/types/env_variable.rb +36 -0
- data/lib/acp/types/file_system_capabilities.rb +36 -0
- data/lib/acp/types/http_header.rb +36 -0
- data/lib/acp/types/image_content.rb +58 -0
- data/lib/acp/types/implementation.rb +41 -0
- data/lib/acp/types/initialize_request.rb +51 -0
- data/lib/acp/types/initialize_response.rb +58 -0
- data/lib/acp/types/integer_property_schema.rb +65 -0
- data/lib/acp/types/kill_terminal_request.rb +36 -0
- data/lib/acp/types/kill_terminal_response.rb +26 -0
- data/lib/acp/types/list_sessions_request.rb +36 -0
- data/lib/acp/types/list_sessions_response.rb +40 -0
- data/lib/acp/types/load_session_request.rb +58 -0
- data/lib/acp/types/load_session_response.rb +40 -0
- data/lib/acp/types/logout_capabilities.rb +26 -0
- data/lib/acp/types/logout_request.rb +26 -0
- data/lib/acp/types/logout_response.rb +26 -0
- data/lib/acp/types/mcp_capabilities.rb +36 -0
- data/lib/acp/types/mcp_server/http.rb +46 -0
- data/lib/acp/types/mcp_server/sse.rb +46 -0
- data/lib/acp/types/mcp_server.rb +22 -0
- data/lib/acp/types/mcp_server_http.rb +46 -0
- data/lib/acp/types/mcp_server_sse.rb +46 -0
- data/lib/acp/types/mcp_server_stdio.rb +52 -0
- data/lib/acp/types/multi_select_items/string_multi_select_items.rb +31 -0
- data/lib/acp/types/multi_select_items.rb +20 -0
- data/lib/acp/types/multi_select_property_schema.rb +72 -0
- data/lib/acp/types/new_session_request.rb +51 -0
- data/lib/acp/types/new_session_response.rb +51 -0
- data/lib/acp/types/number_property_schema.rb +65 -0
- data/lib/acp/types/permission_option.rb +41 -0
- data/lib/acp/types/permission_option_kind.rb +10 -0
- data/lib/acp/types/plan.rb +31 -0
- data/lib/acp/types/plan_entry.rb +46 -0
- data/lib/acp/types/plan_entry_priority.rb +9 -0
- data/lib/acp/types/plan_entry_status.rb +9 -0
- data/lib/acp/types/prompt_capabilities.rb +41 -0
- data/lib/acp/types/prompt_request.rb +40 -0
- data/lib/acp/types/prompt_response.rb +31 -0
- data/lib/acp/types/read_text_file_request.rb +52 -0
- data/lib/acp/types/read_text_file_response.rb +31 -0
- data/lib/acp/types/release_terminal_request.rb +36 -0
- data/lib/acp/types/release_terminal_response.rb +26 -0
- data/lib/acp/types/request_permission_outcome/cancelled.rb +21 -0
- data/lib/acp/types/request_permission_outcome/selected.rb +31 -0
- data/lib/acp/types/request_permission_outcome.rb +20 -0
- data/lib/acp/types/request_permission_request.rb +51 -0
- data/lib/acp/types/request_permission_response.rb +31 -0
- data/lib/acp/types/resource_link.rb +79 -0
- data/lib/acp/types/resume_session_request.rb +58 -0
- data/lib/acp/types/resume_session_response.rb +40 -0
- data/lib/acp/types/role.rb +8 -0
- data/lib/acp/types/selected_permission_outcome.rb +31 -0
- data/lib/acp/types/session_additional_directories_capabilities.rb +26 -0
- data/lib/acp/types/session_capabilities.rb +67 -0
- data/lib/acp/types/session_close_capabilities.rb +26 -0
- data/lib/acp/types/session_config_boolean.rb +26 -0
- data/lib/acp/types/session_config_option/kind/boolean.rb +26 -0
- data/lib/acp/types/session_config_option/kind/select.rb +34 -0
- data/lib/acp/types/session_config_option/kind.rb +20 -0
- data/lib/acp/types/session_config_option.rb +64 -0
- data/lib/acp/types/session_config_option_category.rb +10 -0
- data/lib/acp/types/session_config_options_capabilities.rb +34 -0
- data/lib/acp/types/session_config_select.rb +34 -0
- data/lib/acp/types/session_config_select_group.rb +46 -0
- data/lib/acp/types/session_config_select_option.rb +41 -0
- data/lib/acp/types/session_config_select_options.rb +22 -0
- data/lib/acp/types/session_delete_capabilities.rb +26 -0
- data/lib/acp/types/session_info.rb +65 -0
- data/lib/acp/types/session_info_update.rb +38 -0
- data/lib/acp/types/session_list_capabilities.rb +26 -0
- data/lib/acp/types/session_list_request.rb +8 -0
- data/lib/acp/types/session_list_response.rb +8 -0
- data/lib/acp/types/session_load_request.rb +8 -0
- data/lib/acp/types/session_mode.rb +41 -0
- data/lib/acp/types/session_mode_state.rb +40 -0
- data/lib/acp/types/session_new_request.rb +8 -0
- data/lib/acp/types/session_notification.rb +40 -0
- data/lib/acp/types/session_prompt_request.rb +8 -0
- data/lib/acp/types/session_resume_capabilities.rb +26 -0
- data/lib/acp/types/session_update/agent_message_chunk.rb +45 -0
- data/lib/acp/types/session_update/agent_thought_chunk.rb +45 -0
- data/lib/acp/types/session_update/available_commands_update.rb +38 -0
- data/lib/acp/types/session_update/config_option_update.rb +38 -0
- data/lib/acp/types/session_update/current_mode_update.rb +31 -0
- data/lib/acp/types/session_update/plan.rb +31 -0
- data/lib/acp/types/session_update/session_info_update.rb +39 -0
- data/lib/acp/types/session_update/tool_call.rb +97 -0
- data/lib/acp/types/session_update/tool_call_update.rb +97 -0
- data/lib/acp/types/session_update/usage_update.rb +46 -0
- data/lib/acp/types/session_update/user_message_chunk.rb +45 -0
- data/lib/acp/types/session_update.rb +38 -0
- data/lib/acp/types/set_session_config_option_request/value/boolean.rb +26 -0
- data/lib/acp/types/set_session_config_option_request/value/value_id.rb +26 -0
- data/lib/acp/types/set_session_config_option_request/value.rb +20 -0
- data/lib/acp/types/set_session_config_option_request.rb +46 -0
- data/lib/acp/types/set_session_config_option_response.rb +34 -0
- data/lib/acp/types/set_session_mode_request.rb +36 -0
- data/lib/acp/types/set_session_mode_response.rb +26 -0
- data/lib/acp/types/stop_reason.rb +11 -0
- data/lib/acp/types/string_format.rb +10 -0
- data/lib/acp/types/string_multi_select_items.rb +31 -0
- data/lib/acp/types/string_property_schema.rb +104 -0
- data/lib/acp/types/terminal.rb +31 -0
- data/lib/acp/types/terminal_exit_status.rb +36 -0
- data/lib/acp/types/terminal_output_request.rb +36 -0
- data/lib/acp/types/terminal_output_response.rb +46 -0
- data/lib/acp/types/text_content.rb +40 -0
- data/lib/acp/types/text_resource_contents.rb +41 -0
- data/lib/acp/types/titled_multi_select_items.rb +31 -0
- data/lib/acp/types/tool_call.rb +96 -0
- data/lib/acp/types/tool_call_content/content.rb +31 -0
- data/lib/acp/types/tool_call_content/diff.rb +41 -0
- data/lib/acp/types/tool_call_content/terminal.rb +31 -0
- data/lib/acp/types/tool_call_content.rb +22 -0
- data/lib/acp/types/tool_call_location.rb +36 -0
- data/lib/acp/types/tool_call_status.rb +10 -0
- data/lib/acp/types/tool_call_update.rb +96 -0
- data/lib/acp/types/tool_kind.rb +16 -0
- data/lib/acp/types/unstructured_command_input.rb +31 -0
- data/lib/acp/types/usage_update.rb +46 -0
- data/lib/acp/types/wait_for_terminal_exit_request.rb +36 -0
- data/lib/acp/types/wait_for_terminal_exit_response.rb +36 -0
- data/lib/acp/types/write_text_file_request.rb +46 -0
- data/lib/acp/types/write_text_file_response.rb +26 -0
- data/lib/acp/version.rb +5 -0
- data/sig/generated/acp/agent_connection/client.rbs +29 -0
- data/sig/generated/acp/agent_connection/optional_method.rbs +21 -0
- data/sig/generated/acp/agent_connection.rbs +65 -0
- data/sig/generated/acp/client_connection.rbs +82 -0
- data/sig/generated/acp/sdk.rbs +2 -0
- data/sig/generated/acp/transport/reply.rbs +16 -0
- data/sig/generated/acp/transport/response_error.rbs +21 -0
- data/sig/generated/acp/transport/result.rbs +25 -0
- data/sig/generated/acp/transport/stdio.rbs +116 -0
- data/sig/generated/acp/transport.rbs +4 -0
- data/sig/generated/acp/types/agent_auth_capabilities.rbs +21 -0
- data/sig/generated/acp/types/agent_capabilities.rbs +37 -0
- data/sig/generated/acp/types/annotations.rbs +29 -0
- data/sig/generated/acp/types/audio_content.rbs +29 -0
- data/sig/generated/acp/types/auth_capabilities.rbs +21 -0
- data/sig/generated/acp/types/auth_method/terminal.rbs +37 -0
- data/sig/generated/acp/types/auth_method.rbs +9 -0
- data/sig/generated/acp/types/auth_method_agent.rbs +29 -0
- data/sig/generated/acp/types/auth_method_terminal.rbs +37 -0
- data/sig/generated/acp/types/authenticate_request.rbs +21 -0
- data/sig/generated/acp/types/authenticate_response.rbs +17 -0
- data/sig/generated/acp/types/available_command.rbs +29 -0
- data/sig/generated/acp/types/available_command_input.rbs +9 -0
- data/sig/generated/acp/types/available_commands_update.rbs +21 -0
- data/sig/generated/acp/types/blob_resource_contents.rbs +29 -0
- data/sig/generated/acp/types/boolean_config_option_capabilities.rbs +17 -0
- data/sig/generated/acp/types/boolean_property_schema.rbs +29 -0
- data/sig/generated/acp/types/cancel_notification.rbs +21 -0
- data/sig/generated/acp/types/cancel_request_notification.rbs +21 -0
- data/sig/generated/acp/types/client_capabilities.rbs +37 -0
- data/sig/generated/acp/types/client_session_capabilities.rbs +21 -0
- data/sig/generated/acp/types/close_session_request.rbs +21 -0
- data/sig/generated/acp/types/close_session_response.rbs +17 -0
- data/sig/generated/acp/types/complete_elicitation_notification.rbs +21 -0
- data/sig/generated/acp/types/config_option_update.rbs +21 -0
- data/sig/generated/acp/types/content.rbs +21 -0
- data/sig/generated/acp/types/content_block/audio.rbs +29 -0
- data/sig/generated/acp/types/content_block/image.rbs +33 -0
- data/sig/generated/acp/types/content_block/resource.rbs +25 -0
- data/sig/generated/acp/types/content_block/resource_link.rbs +45 -0
- data/sig/generated/acp/types/content_block/text.rbs +25 -0
- data/sig/generated/acp/types/content_block.rbs +9 -0
- data/sig/generated/acp/types/content_chunk.rbs +25 -0
- data/sig/generated/acp/types/cost.rbs +25 -0
- data/sig/generated/acp/types/create_elicitation_request/mode/form.rbs +21 -0
- data/sig/generated/acp/types/create_elicitation_request/mode/url.rbs +25 -0
- data/sig/generated/acp/types/create_elicitation_request/mode.rbs +9 -0
- data/sig/generated/acp/types/create_elicitation_request.rbs +25 -0
- data/sig/generated/acp/types/create_elicitation_response/action/accept.rbs +17 -0
- data/sig/generated/acp/types/create_elicitation_response/action/cancel.rbs +13 -0
- data/sig/generated/acp/types/create_elicitation_response/action/decline.rbs +13 -0
- data/sig/generated/acp/types/create_elicitation_response/action.rbs +9 -0
- data/sig/generated/acp/types/create_elicitation_response.rbs +21 -0
- data/sig/generated/acp/types/create_terminal_request.rbs +41 -0
- data/sig/generated/acp/types/create_terminal_response.rbs +21 -0
- data/sig/generated/acp/types/current_mode_update.rbs +21 -0
- data/sig/generated/acp/types/delete_session_request.rbs +21 -0
- data/sig/generated/acp/types/delete_session_response.rbs +17 -0
- data/sig/generated/acp/types/diff.rbs +29 -0
- data/sig/generated/acp/types/elicitation_accept_action.rbs +17 -0
- data/sig/generated/acp/types/elicitation_capabilities.rbs +25 -0
- data/sig/generated/acp/types/elicitation_form_capabilities.rbs +17 -0
- data/sig/generated/acp/types/elicitation_form_mode/scope.rbs +9 -0
- data/sig/generated/acp/types/elicitation_form_mode.rbs +21 -0
- data/sig/generated/acp/types/elicitation_property_schema/boolean_property_schema.rbs +29 -0
- data/sig/generated/acp/types/elicitation_property_schema/integer_property_schema.rbs +37 -0
- data/sig/generated/acp/types/elicitation_property_schema/multi_select_property_schema.rbs +41 -0
- data/sig/generated/acp/types/elicitation_property_schema/number_property_schema.rbs +37 -0
- data/sig/generated/acp/types/elicitation_property_schema/string_property_schema.rbs +53 -0
- data/sig/generated/acp/types/elicitation_property_schema.rbs +9 -0
- data/sig/generated/acp/types/elicitation_request_scope.rbs +17 -0
- data/sig/generated/acp/types/elicitation_schema.rbs +37 -0
- data/sig/generated/acp/types/elicitation_schema_type.rbs +5 -0
- data/sig/generated/acp/types/elicitation_session_scope.rbs +21 -0
- data/sig/generated/acp/types/elicitation_url_capabilities.rbs +17 -0
- data/sig/generated/acp/types/elicitation_url_mode/scope.rbs +9 -0
- data/sig/generated/acp/types/elicitation_url_mode.rbs +25 -0
- data/sig/generated/acp/types/embedded_resource.rbs +25 -0
- data/sig/generated/acp/types/embedded_resource_resource.rbs +9 -0
- data/sig/generated/acp/types/enum_option.rbs +29 -0
- data/sig/generated/acp/types/env_variable.rbs +25 -0
- data/sig/generated/acp/types/file_system_capabilities.rbs +25 -0
- data/sig/generated/acp/types/http_header.rbs +25 -0
- data/sig/generated/acp/types/image_content.rbs +33 -0
- data/sig/generated/acp/types/implementation.rbs +29 -0
- data/sig/generated/acp/types/initialize_request.rbs +29 -0
- data/sig/generated/acp/types/initialize_response.rbs +33 -0
- data/sig/generated/acp/types/integer_property_schema.rbs +37 -0
- data/sig/generated/acp/types/kill_terminal_request.rbs +25 -0
- data/sig/generated/acp/types/kill_terminal_response.rbs +17 -0
- data/sig/generated/acp/types/list_sessions_request.rbs +25 -0
- data/sig/generated/acp/types/list_sessions_response.rbs +25 -0
- data/sig/generated/acp/types/load_session_request.rbs +33 -0
- data/sig/generated/acp/types/load_session_response.rbs +25 -0
- data/sig/generated/acp/types/logout_capabilities.rbs +17 -0
- data/sig/generated/acp/types/logout_request.rbs +17 -0
- data/sig/generated/acp/types/logout_response.rbs +17 -0
- data/sig/generated/acp/types/mcp_capabilities.rbs +25 -0
- data/sig/generated/acp/types/mcp_server/http.rbs +29 -0
- data/sig/generated/acp/types/mcp_server/sse.rbs +29 -0
- data/sig/generated/acp/types/mcp_server.rbs +9 -0
- data/sig/generated/acp/types/mcp_server_http.rbs +29 -0
- data/sig/generated/acp/types/mcp_server_sse.rbs +29 -0
- data/sig/generated/acp/types/mcp_server_stdio.rbs +33 -0
- data/sig/generated/acp/types/multi_select_items/string_multi_select_items.rbs +21 -0
- data/sig/generated/acp/types/multi_select_items.rbs +9 -0
- data/sig/generated/acp/types/multi_select_property_schema.rbs +41 -0
- data/sig/generated/acp/types/new_session_request.rbs +29 -0
- data/sig/generated/acp/types/new_session_response.rbs +29 -0
- data/sig/generated/acp/types/number_property_schema.rbs +37 -0
- data/sig/generated/acp/types/permission_option.rbs +29 -0
- data/sig/generated/acp/types/permission_option_kind.rbs +11 -0
- data/sig/generated/acp/types/plan.rbs +21 -0
- data/sig/generated/acp/types/plan_entry.rbs +29 -0
- data/sig/generated/acp/types/plan_entry_priority.rbs +9 -0
- data/sig/generated/acp/types/plan_entry_status.rbs +9 -0
- data/sig/generated/acp/types/prompt_capabilities.rbs +29 -0
- data/sig/generated/acp/types/prompt_request.rbs +25 -0
- data/sig/generated/acp/types/prompt_response.rbs +21 -0
- data/sig/generated/acp/types/read_text_file_request.rbs +33 -0
- data/sig/generated/acp/types/read_text_file_response.rbs +21 -0
- data/sig/generated/acp/types/release_terminal_request.rbs +25 -0
- data/sig/generated/acp/types/release_terminal_response.rbs +17 -0
- data/sig/generated/acp/types/request_permission_outcome/cancelled.rbs +13 -0
- data/sig/generated/acp/types/request_permission_outcome/selected.rbs +21 -0
- data/sig/generated/acp/types/request_permission_outcome.rbs +9 -0
- data/sig/generated/acp/types/request_permission_request.rbs +29 -0
- data/sig/generated/acp/types/request_permission_response.rbs +21 -0
- data/sig/generated/acp/types/resource_link.rbs +45 -0
- data/sig/generated/acp/types/resume_session_request.rbs +33 -0
- data/sig/generated/acp/types/resume_session_response.rbs +25 -0
- data/sig/generated/acp/types/role.rbs +7 -0
- data/sig/generated/acp/types/selected_permission_outcome.rbs +21 -0
- data/sig/generated/acp/types/session_additional_directories_capabilities.rbs +17 -0
- data/sig/generated/acp/types/session_capabilities.rbs +37 -0
- data/sig/generated/acp/types/session_close_capabilities.rbs +17 -0
- data/sig/generated/acp/types/session_config_boolean.rbs +17 -0
- data/sig/generated/acp/types/session_config_option/kind/boolean.rbs +17 -0
- data/sig/generated/acp/types/session_config_option/kind/select.rbs +21 -0
- data/sig/generated/acp/types/session_config_option/kind.rbs +9 -0
- data/sig/generated/acp/types/session_config_option.rbs +37 -0
- data/sig/generated/acp/types/session_config_option_category.rbs +11 -0
- data/sig/generated/acp/types/session_config_options_capabilities.rbs +21 -0
- data/sig/generated/acp/types/session_config_select.rbs +21 -0
- data/sig/generated/acp/types/session_config_select_group.rbs +29 -0
- data/sig/generated/acp/types/session_config_select_option.rbs +29 -0
- data/sig/generated/acp/types/session_config_select_options.rbs +9 -0
- data/sig/generated/acp/types/session_delete_capabilities.rbs +17 -0
- data/sig/generated/acp/types/session_info.rbs +37 -0
- data/sig/generated/acp/types/session_info_update.rbs +25 -0
- data/sig/generated/acp/types/session_list_capabilities.rbs +17 -0
- data/sig/generated/acp/types/session_list_request.rbs +3 -0
- data/sig/generated/acp/types/session_list_response.rbs +3 -0
- data/sig/generated/acp/types/session_load_request.rbs +3 -0
- data/sig/generated/acp/types/session_mode.rbs +29 -0
- data/sig/generated/acp/types/session_mode_state.rbs +25 -0
- data/sig/generated/acp/types/session_new_request.rbs +3 -0
- data/sig/generated/acp/types/session_notification.rbs +25 -0
- data/sig/generated/acp/types/session_prompt_request.rbs +3 -0
- data/sig/generated/acp/types/session_resume_capabilities.rbs +17 -0
- data/sig/generated/acp/types/session_update/agent_message_chunk.rbs +25 -0
- data/sig/generated/acp/types/session_update/agent_thought_chunk.rbs +25 -0
- data/sig/generated/acp/types/session_update/available_commands_update.rbs +21 -0
- data/sig/generated/acp/types/session_update/config_option_update.rbs +21 -0
- data/sig/generated/acp/types/session_update/current_mode_update.rbs +21 -0
- data/sig/generated/acp/types/session_update/plan.rbs +21 -0
- data/sig/generated/acp/types/session_update/session_info_update.rbs +25 -0
- data/sig/generated/acp/types/session_update/tool_call.rbs +49 -0
- data/sig/generated/acp/types/session_update/tool_call_update.rbs +49 -0
- data/sig/generated/acp/types/session_update/usage_update.rbs +29 -0
- data/sig/generated/acp/types/session_update/user_message_chunk.rbs +25 -0
- data/sig/generated/acp/types/session_update.rbs +9 -0
- data/sig/generated/acp/types/set_session_config_option_request/value/boolean.rbs +17 -0
- data/sig/generated/acp/types/set_session_config_option_request/value/value_id.rbs +17 -0
- data/sig/generated/acp/types/set_session_config_option_request/value.rbs +9 -0
- data/sig/generated/acp/types/set_session_config_option_request.rbs +29 -0
- data/sig/generated/acp/types/set_session_config_option_response.rbs +21 -0
- data/sig/generated/acp/types/set_session_mode_request.rbs +25 -0
- data/sig/generated/acp/types/set_session_mode_response.rbs +17 -0
- data/sig/generated/acp/types/stop_reason.rbs +13 -0
- data/sig/generated/acp/types/string_format.rbs +11 -0
- data/sig/generated/acp/types/string_multi_select_items.rbs +21 -0
- data/sig/generated/acp/types/string_property_schema.rbs +53 -0
- data/sig/generated/acp/types/terminal.rbs +21 -0
- data/sig/generated/acp/types/terminal_exit_status.rbs +25 -0
- data/sig/generated/acp/types/terminal_output_request.rbs +25 -0
- data/sig/generated/acp/types/terminal_output_response.rbs +29 -0
- data/sig/generated/acp/types/text_content.rbs +25 -0
- data/sig/generated/acp/types/text_resource_contents.rbs +29 -0
- data/sig/generated/acp/types/titled_multi_select_items.rbs +21 -0
- data/sig/generated/acp/types/tool_call.rbs +49 -0
- data/sig/generated/acp/types/tool_call_content/content.rbs +21 -0
- data/sig/generated/acp/types/tool_call_content/diff.rbs +29 -0
- data/sig/generated/acp/types/tool_call_content/terminal.rbs +21 -0
- data/sig/generated/acp/types/tool_call_content.rbs +9 -0
- data/sig/generated/acp/types/tool_call_location.rbs +25 -0
- data/sig/generated/acp/types/tool_call_status.rbs +11 -0
- data/sig/generated/acp/types/tool_call_update.rbs +49 -0
- data/sig/generated/acp/types/tool_kind.rbs +23 -0
- data/sig/generated/acp/types/unstructured_command_input.rbs +21 -0
- data/sig/generated/acp/types/usage_update.rbs +29 -0
- data/sig/generated/acp/types/wait_for_terminal_exit_request.rbs +25 -0
- data/sig/generated/acp/types/wait_for_terminal_exit_response.rbs +25 -0
- data/sig/generated/acp/types/write_text_file_request.rbs +29 -0
- data/sig/generated/acp/types/write_text_file_response.rbs +17 -0
- data/sig/generated/acp/version.rbs +5 -0
- data/sig/manual/acp/agent_connection.rbs +52 -0
- data/sig/manual/acp/client_connection.rbs +13 -0
- data/sig/manual/acp/transport/stdio.rbs +18 -0
- data/sig/manual/acp/types.rbs +2 -0
- metadata +477 -0
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
|
+
|
|
5
|
+
class ACP::Types::ToolCallUpdate
|
|
6
|
+
# @dynamic tool_call_id
|
|
7
|
+
attr_reader :tool_call_id #: String
|
|
8
|
+
|
|
9
|
+
# @dynamic kind
|
|
10
|
+
attr_reader :kind #: String?
|
|
11
|
+
|
|
12
|
+
# @dynamic status
|
|
13
|
+
attr_reader :status #: String?
|
|
14
|
+
|
|
15
|
+
# @dynamic title
|
|
16
|
+
attr_reader :title #: String?
|
|
17
|
+
|
|
18
|
+
# @dynamic content
|
|
19
|
+
attr_reader :content #: Array[ACP::Types::ToolCallContent::t]?
|
|
20
|
+
|
|
21
|
+
# @dynamic locations
|
|
22
|
+
attr_reader :locations #: Array[ACP::Types::ToolCallLocation]?
|
|
23
|
+
|
|
24
|
+
# @dynamic raw_input
|
|
25
|
+
attr_reader :raw_input #: untyped
|
|
26
|
+
|
|
27
|
+
# @dynamic raw_output
|
|
28
|
+
attr_reader :raw_output #: untyped
|
|
29
|
+
|
|
30
|
+
# @dynamic meta
|
|
31
|
+
attr_reader :meta #: Hash[String, untyped]?
|
|
32
|
+
|
|
33
|
+
# @rbs tool_call_id: String
|
|
34
|
+
# @rbs kind: String?
|
|
35
|
+
# @rbs status: String?
|
|
36
|
+
# @rbs title: String?
|
|
37
|
+
# @rbs content: Array[ACP::Types::ToolCallContent::t]?
|
|
38
|
+
# @rbs locations: Array[ACP::Types::ToolCallLocation]?
|
|
39
|
+
# @rbs raw_input: untyped
|
|
40
|
+
# @rbs raw_output: untyped
|
|
41
|
+
# @rbs meta: Hash[String, untyped]?
|
|
42
|
+
# @rbs return: void
|
|
43
|
+
def initialize(
|
|
44
|
+
tool_call_id:,
|
|
45
|
+
kind: nil,
|
|
46
|
+
status: nil,
|
|
47
|
+
title: nil,
|
|
48
|
+
content: nil,
|
|
49
|
+
locations: nil,
|
|
50
|
+
raw_input: nil,
|
|
51
|
+
raw_output: nil,
|
|
52
|
+
meta: nil
|
|
53
|
+
)
|
|
54
|
+
@tool_call_id = tool_call_id
|
|
55
|
+
@kind = kind
|
|
56
|
+
@status = status
|
|
57
|
+
@title = title
|
|
58
|
+
@content = content
|
|
59
|
+
@locations = locations
|
|
60
|
+
@raw_input = raw_input
|
|
61
|
+
@raw_output = raw_output
|
|
62
|
+
@meta = meta
|
|
63
|
+
freeze
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
# @rbs hash: Hash[String, untyped]
|
|
67
|
+
# @rbs return: ACP::Types::ToolCallUpdate
|
|
68
|
+
def self.from_h(hash)
|
|
69
|
+
new(
|
|
70
|
+
tool_call_id: hash.fetch('toolCallId'),
|
|
71
|
+
kind: hash['kind'],
|
|
72
|
+
status: hash['status'],
|
|
73
|
+
title: hash['title'],
|
|
74
|
+
content: hash['content']&.map { |item| ACP::Types::ToolCallContent.from_h(item) },
|
|
75
|
+
locations: hash['locations']&.map { |item| ACP::Types::ToolCallLocation.from_h(item) },
|
|
76
|
+
raw_input: hash['rawInput'],
|
|
77
|
+
raw_output: hash['rawOutput'],
|
|
78
|
+
meta: hash['_meta']
|
|
79
|
+
)
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
# @rbs return: Hash[String, untyped]
|
|
83
|
+
def to_h
|
|
84
|
+
{
|
|
85
|
+
'toolCallId' => tool_call_id,
|
|
86
|
+
'kind' => kind,
|
|
87
|
+
'status' => status,
|
|
88
|
+
'title' => title,
|
|
89
|
+
'content' => content&.map(&:to_h),
|
|
90
|
+
'locations' => locations&.map(&:to_h),
|
|
91
|
+
'rawInput' => raw_input,
|
|
92
|
+
'rawOutput' => raw_output,
|
|
93
|
+
'_meta' => meta
|
|
94
|
+
}.compact
|
|
95
|
+
end
|
|
96
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
|
+
|
|
5
|
+
module ACP::Types::ToolKind
|
|
6
|
+
READ = 'read'
|
|
7
|
+
EDIT = 'edit'
|
|
8
|
+
DELETE = 'delete'
|
|
9
|
+
MOVE = 'move'
|
|
10
|
+
SEARCH = 'search'
|
|
11
|
+
EXECUTE = 'execute'
|
|
12
|
+
THINK = 'think'
|
|
13
|
+
FETCH = 'fetch'
|
|
14
|
+
SWITCH_MODE = 'switch_mode'
|
|
15
|
+
OTHER = 'other'
|
|
16
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
|
+
|
|
5
|
+
class ACP::Types::UnstructuredCommandInput
|
|
6
|
+
# @dynamic hint
|
|
7
|
+
attr_reader :hint #: String
|
|
8
|
+
|
|
9
|
+
# @dynamic meta
|
|
10
|
+
attr_reader :meta #: Hash[String, untyped]?
|
|
11
|
+
|
|
12
|
+
# @rbs hint: String
|
|
13
|
+
# @rbs meta: Hash[String, untyped]?
|
|
14
|
+
# @rbs return: void
|
|
15
|
+
def initialize(hint:, meta: nil)
|
|
16
|
+
@hint = hint
|
|
17
|
+
@meta = meta
|
|
18
|
+
freeze
|
|
19
|
+
end
|
|
20
|
+
|
|
21
|
+
# @rbs hash: Hash[String, untyped]
|
|
22
|
+
# @rbs return: ACP::Types::UnstructuredCommandInput
|
|
23
|
+
def self.from_h(hash)
|
|
24
|
+
new(hint: hash.fetch('hint'), meta: hash['_meta'])
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# @rbs return: Hash[String, untyped]
|
|
28
|
+
def to_h
|
|
29
|
+
{ 'hint' => hint, '_meta' => meta }.compact
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
|
+
|
|
5
|
+
class ACP::Types::UsageUpdate
|
|
6
|
+
# @dynamic used
|
|
7
|
+
attr_reader :used #: Integer
|
|
8
|
+
|
|
9
|
+
# @dynamic size
|
|
10
|
+
attr_reader :size #: Integer
|
|
11
|
+
|
|
12
|
+
# @dynamic cost
|
|
13
|
+
attr_reader :cost #: ACP::Types::Cost?
|
|
14
|
+
|
|
15
|
+
# @dynamic meta
|
|
16
|
+
attr_reader :meta #: Hash[String, untyped]?
|
|
17
|
+
|
|
18
|
+
# @rbs used: Integer
|
|
19
|
+
# @rbs size: Integer
|
|
20
|
+
# @rbs cost: ACP::Types::Cost?
|
|
21
|
+
# @rbs meta: Hash[String, untyped]?
|
|
22
|
+
# @rbs return: void
|
|
23
|
+
def initialize(used:, size:, cost: nil, meta: nil)
|
|
24
|
+
@used = used
|
|
25
|
+
@size = size
|
|
26
|
+
@cost = cost
|
|
27
|
+
@meta = meta
|
|
28
|
+
freeze
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# @rbs hash: Hash[String, untyped]
|
|
32
|
+
# @rbs return: ACP::Types::UsageUpdate
|
|
33
|
+
def self.from_h(hash)
|
|
34
|
+
new(
|
|
35
|
+
used: hash.fetch('used'),
|
|
36
|
+
size: hash.fetch('size'),
|
|
37
|
+
cost: hash['cost']&.then { |value| ACP::Types::Cost.from_h(value) },
|
|
38
|
+
meta: hash['_meta']
|
|
39
|
+
)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
# @rbs return: Hash[String, untyped]
|
|
43
|
+
def to_h
|
|
44
|
+
{ 'used' => used, 'size' => size, 'cost' => cost&.to_h, '_meta' => meta }.compact
|
|
45
|
+
end
|
|
46
|
+
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::WaitForTerminalExitRequest
|
|
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::WaitForTerminalExitRequest
|
|
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,36 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
|
+
|
|
5
|
+
class ACP::Types::WaitForTerminalExitResponse
|
|
6
|
+
# @dynamic exit_code
|
|
7
|
+
attr_reader :exit_code #: Integer?
|
|
8
|
+
|
|
9
|
+
# @dynamic signal
|
|
10
|
+
attr_reader :signal #: String?
|
|
11
|
+
|
|
12
|
+
# @dynamic meta
|
|
13
|
+
attr_reader :meta #: Hash[String, untyped]?
|
|
14
|
+
|
|
15
|
+
# @rbs exit_code: Integer?
|
|
16
|
+
# @rbs signal: String?
|
|
17
|
+
# @rbs meta: Hash[String, untyped]?
|
|
18
|
+
# @rbs return: void
|
|
19
|
+
def initialize(exit_code: nil, signal: nil, meta: nil)
|
|
20
|
+
@exit_code = exit_code
|
|
21
|
+
@signal = signal
|
|
22
|
+
@meta = meta
|
|
23
|
+
freeze
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
# @rbs hash: Hash[String, untyped]
|
|
27
|
+
# @rbs return: ACP::Types::WaitForTerminalExitResponse
|
|
28
|
+
def self.from_h(hash)
|
|
29
|
+
new(exit_code: hash['exitCode'], signal: hash['signal'], meta: hash['_meta'])
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
# @rbs return: Hash[String, untyped]
|
|
33
|
+
def to_h
|
|
34
|
+
{ 'exitCode' => exit_code, 'signal' => signal, '_meta' => meta }.compact
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Generated by bin/types from schema/schema.json. Do not edit.
|
|
4
|
+
|
|
5
|
+
class ACP::Types::WriteTextFileRequest
|
|
6
|
+
# @dynamic session_id
|
|
7
|
+
attr_reader :session_id #: String
|
|
8
|
+
|
|
9
|
+
# @dynamic path
|
|
10
|
+
attr_reader :path #: String
|
|
11
|
+
|
|
12
|
+
# @dynamic content
|
|
13
|
+
attr_reader :content #: String
|
|
14
|
+
|
|
15
|
+
# @dynamic meta
|
|
16
|
+
attr_reader :meta #: Hash[String, untyped]?
|
|
17
|
+
|
|
18
|
+
# @rbs session_id: String
|
|
19
|
+
# @rbs path: String
|
|
20
|
+
# @rbs content: String
|
|
21
|
+
# @rbs meta: Hash[String, untyped]?
|
|
22
|
+
# @rbs return: void
|
|
23
|
+
def initialize(session_id:, path:, content:, meta: nil)
|
|
24
|
+
@session_id = session_id
|
|
25
|
+
@path = path
|
|
26
|
+
@content = content
|
|
27
|
+
@meta = meta
|
|
28
|
+
freeze
|
|
29
|
+
end
|
|
30
|
+
|
|
31
|
+
# @rbs hash: Hash[String, untyped]
|
|
32
|
+
# @rbs return: ACP::Types::WriteTextFileRequest
|
|
33
|
+
def self.from_h(hash)
|
|
34
|
+
new(
|
|
35
|
+
session_id: hash.fetch('sessionId'),
|
|
36
|
+
path: hash.fetch('path'),
|
|
37
|
+
content: hash.fetch('content'),
|
|
38
|
+
meta: hash['_meta']
|
|
39
|
+
)
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
# @rbs return: Hash[String, untyped]
|
|
43
|
+
def to_h
|
|
44
|
+
{ 'sessionId' => session_id, 'path' => path, 'content' => content, '_meta' => meta }.compact
|
|
45
|
+
end
|
|
46
|
+
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::WriteTextFileResponse
|
|
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::WriteTextFileResponse
|
|
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
|
data/lib/acp/version.rb
ADDED
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Generated from lib/acp/agent_connection/client.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
class ACP::AgentConnection::Client
|
|
4
|
+
@peer: ACP::AgentConnection::_Peer
|
|
5
|
+
|
|
6
|
+
# @dynamic capabilities, capabilities=
|
|
7
|
+
attr_accessor capabilities: ACP::Types::ClientCapabilities?
|
|
8
|
+
|
|
9
|
+
# @rbs peer: ACP::AgentConnection::_Peer
|
|
10
|
+
# @rbs return: void
|
|
11
|
+
def initialize: (peer: ACP::AgentConnection::_Peer) -> void
|
|
12
|
+
|
|
13
|
+
# @rbs session_id: String
|
|
14
|
+
# @rbs update: ACP::Types::SessionUpdate::t
|
|
15
|
+
# @rbs return: void
|
|
16
|
+
def update: (String session_id, ACP::Types::SessionUpdate::t update) -> void
|
|
17
|
+
|
|
18
|
+
# @rbs session_id: String
|
|
19
|
+
# @rbs commands: Array[ACP::Types::AvailableCommand]
|
|
20
|
+
# @rbs return: void
|
|
21
|
+
def available_commands: (String session_id, Array[ACP::Types::AvailableCommand] commands) -> void
|
|
22
|
+
|
|
23
|
+
# Blocks the calling thread until the client answers or the connection
|
|
24
|
+
# closes.
|
|
25
|
+
#
|
|
26
|
+
# @rbs request: ACP::Types::RequestPermissionRequest
|
|
27
|
+
# @rbs return: ACP::Types::RequestPermissionResponse | ACP::Transport::ResponseError
|
|
28
|
+
def request_permission: (ACP::Types::RequestPermissionRequest request) -> (ACP::Types::RequestPermissionResponse | ACP::Transport::ResponseError)
|
|
29
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Generated from lib/acp/agent_connection/optional_method.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
class ACP::AgentConnection::OptionalMethod
|
|
4
|
+
@capability: ^(ACP::Types::AgentCapabilities) -> boolish
|
|
5
|
+
|
|
6
|
+
# @dynamic rpc_method
|
|
7
|
+
attr_reader rpc_method: String
|
|
8
|
+
|
|
9
|
+
# @dynamic agent_method
|
|
10
|
+
attr_reader agent_method: Symbol
|
|
11
|
+
|
|
12
|
+
# @rbs rpc_method: String
|
|
13
|
+
# @rbs agent_method: Symbol
|
|
14
|
+
# @rbs &capability: (ACP::Types::AgentCapabilities) -> boolish
|
|
15
|
+
# @rbs return: void
|
|
16
|
+
def initialize: (rpc_method: String, agent_method: Symbol) { (ACP::Types::AgentCapabilities) -> boolish } -> void
|
|
17
|
+
|
|
18
|
+
# @rbs capabilities: ACP::Types::AgentCapabilities
|
|
19
|
+
# @rbs return: bool
|
|
20
|
+
def advertised?: (ACP::Types::AgentCapabilities capabilities) -> bool
|
|
21
|
+
end
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
# Generated from lib/acp/agent_connection.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
class ACP::AgentConnection
|
|
4
|
+
@factory: ^(ACP::AgentConnection::Client) -> ACP::AgentConnection::_Agent
|
|
5
|
+
|
|
6
|
+
@auth_methods: Array[ACP::Types::AuthMethod::t]
|
|
7
|
+
|
|
8
|
+
@agent_info: ACP::Types::Implementation?
|
|
9
|
+
|
|
10
|
+
@capabilities: ACP::Types::AgentCapabilities
|
|
11
|
+
|
|
12
|
+
@transport: ACP::AgentConnection::_Transport
|
|
13
|
+
|
|
14
|
+
PROTOCOL_VERSION: Integer
|
|
15
|
+
|
|
16
|
+
INVALID_PARAMS: ACP::Transport::ResponseError
|
|
17
|
+
|
|
18
|
+
OPTIONAL: Array[ACP::AgentConnection::OptionalMethod]
|
|
19
|
+
|
|
20
|
+
# @rbs transport: ACP::AgentConnection::_Transport
|
|
21
|
+
# @rbs capabilities: ACP::Types::AgentCapabilities
|
|
22
|
+
# @rbs agent_info: ACP::Types::Implementation?
|
|
23
|
+
# @rbs auth_methods: Array[ACP::Types::AuthMethod::t]
|
|
24
|
+
# @rbs &factory: (ACP::AgentConnection::Client) -> ACP::AgentConnection::_Agent
|
|
25
|
+
# @rbs return: void
|
|
26
|
+
def initialize: (transport: ACP::AgentConnection::_Transport, capabilities: ACP::Types::AgentCapabilities, ?agent_info: ACP::Types::Implementation?, ?auth_methods: Array[ACP::Types::AuthMethod::t]) { (ACP::AgentConnection::Client) -> ACP::AgentConnection::_Agent } -> void
|
|
27
|
+
|
|
28
|
+
# @rbs return: Thread
|
|
29
|
+
def start: () -> Thread
|
|
30
|
+
|
|
31
|
+
private
|
|
32
|
+
|
|
33
|
+
# @rbs agent: ACP::AgentConnection::_Agent
|
|
34
|
+
# @rbs client: ACP::AgentConnection::Client
|
|
35
|
+
# @rbs return: Hash[String, ^(untyped) -> (ACP::Transport::Result | ACP::Transport::Reply)]
|
|
36
|
+
def requests: (ACP::AgentConnection::_Agent agent, ACP::AgentConnection::Client client) -> Hash[String, ^(untyped) -> (ACP::Transport::Result | ACP::Transport::Reply)]
|
|
37
|
+
|
|
38
|
+
# @rbs agent: ACP::AgentConnection::_Agent
|
|
39
|
+
# @rbs return: Hash[String, ^(untyped) -> void]
|
|
40
|
+
def notifications: (ACP::AgentConnection::_Agent agent) -> Hash[String, ^(untyped) -> void]
|
|
41
|
+
|
|
42
|
+
# Generated from_h raises on a missing key or a value of the wrong shape.
|
|
43
|
+
#
|
|
44
|
+
# @rbs type: ACP::AgentConnection::_Parser
|
|
45
|
+
# @rbs &handle: (untyped) -> (ACP::Transport::Result | ACP::Transport::Reply)
|
|
46
|
+
# @rbs return: ^(untyped) -> (ACP::Transport::Result | ACP::Transport::Reply)
|
|
47
|
+
def route: (ACP::AgentConnection::_Parser type) { (untyped) -> (ACP::Transport::Result | ACP::Transport::Reply) } -> ^(untyped) -> (ACP::Transport::Result | ACP::Transport::Reply)
|
|
48
|
+
|
|
49
|
+
# @rbs response: ACP::AgentConnection::_Response | ACP::Transport::ResponseError
|
|
50
|
+
# @rbs return: ACP::Transport::Result
|
|
51
|
+
def respond: (ACP::AgentConnection::_Response | ACP::Transport::ResponseError response) -> ACP::Transport::Result
|
|
52
|
+
|
|
53
|
+
# @rbs client: ACP::AgentConnection::Client
|
|
54
|
+
# @rbs request: ACP::Types::InitializeRequest
|
|
55
|
+
# @rbs return: ACP::Transport::Result
|
|
56
|
+
def connect: (ACP::AgentConnection::Client client, ACP::Types::InitializeRequest request) -> ACP::Transport::Result
|
|
57
|
+
|
|
58
|
+
# session_created runs after the reply because the client must know the
|
|
59
|
+
# session id before updates for it (e.g. available commands) arrive.
|
|
60
|
+
#
|
|
61
|
+
# @rbs agent: ACP::AgentConnection::_Agent
|
|
62
|
+
# @rbs request: ACP::Types::NewSessionRequest
|
|
63
|
+
# @rbs return: ACP::Transport::Result | ACP::Transport::Reply
|
|
64
|
+
def new_session: (ACP::AgentConnection::_Agent agent, ACP::Types::NewSessionRequest request) -> (ACP::Transport::Result | ACP::Transport::Reply)
|
|
65
|
+
end
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
# Generated from lib/acp/client_connection.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
class ACP::ClientConnection
|
|
4
|
+
@streams: Hash[String, Thread::Queue]
|
|
5
|
+
|
|
6
|
+
@lock: Thread::Mutex
|
|
7
|
+
|
|
8
|
+
@updates: ACP::ClientConnection::_UpdateHandler
|
|
9
|
+
|
|
10
|
+
@permission: ACP::ClientConnection::_PermissionHandler
|
|
11
|
+
|
|
12
|
+
@transport: ACP::AgentConnection::_Transport
|
|
13
|
+
|
|
14
|
+
IGNORE: ^(ACP::Types::SessionNotification) -> void
|
|
15
|
+
|
|
16
|
+
# @rbs transport: ACP::AgentConnection::_Transport
|
|
17
|
+
# @rbs permission: ACP::ClientConnection::_PermissionHandler
|
|
18
|
+
# @rbs updates: ACP::ClientConnection::_UpdateHandler
|
|
19
|
+
# @rbs return: void
|
|
20
|
+
def initialize: (transport: ACP::AgentConnection::_Transport, permission: ACP::ClientConnection::_PermissionHandler, ?updates: ACP::ClientConnection::_UpdateHandler) -> void
|
|
21
|
+
|
|
22
|
+
# @rbs return: Thread
|
|
23
|
+
def start: () -> Thread
|
|
24
|
+
|
|
25
|
+
# Ruby reserves initialize for the constructor, so the initialize request is
|
|
26
|
+
# sent by connect.
|
|
27
|
+
#
|
|
28
|
+
# @rbs request: ACP::Types::InitializeRequest
|
|
29
|
+
# @rbs return: ACP::Types::InitializeResponse | ACP::Transport::ResponseError
|
|
30
|
+
def connect: (ACP::Types::InitializeRequest request) -> (ACP::Types::InitializeResponse | ACP::Transport::ResponseError)
|
|
31
|
+
|
|
32
|
+
# @rbs request: ACP::Types::NewSessionRequest
|
|
33
|
+
# @rbs return: ACP::Types::NewSessionResponse | ACP::Transport::ResponseError
|
|
34
|
+
def session_new: (ACP::Types::NewSessionRequest request) -> (ACP::Types::NewSessionResponse | ACP::Transport::ResponseError)
|
|
35
|
+
|
|
36
|
+
# @rbs request: ACP::Types::PromptRequest
|
|
37
|
+
# @rbs &block: (ACP::Types::SessionUpdate::t) -> void
|
|
38
|
+
# @rbs return: ACP::Types::PromptResponse | ACP::Transport::ResponseError
|
|
39
|
+
def session_prompt: (ACP::Types::PromptRequest request) { (ACP::Types::SessionUpdate::t) -> void } -> (ACP::Types::PromptResponse | ACP::Transport::ResponseError)
|
|
40
|
+
|
|
41
|
+
# @rbs request: ACP::Types::LoadSessionRequest
|
|
42
|
+
# @rbs &block: (ACP::Types::SessionUpdate::t) -> void
|
|
43
|
+
# @rbs return: ACP::Types::LoadSessionResponse | ACP::Transport::ResponseError
|
|
44
|
+
def session_load: (ACP::Types::LoadSessionRequest request) { (ACP::Types::SessionUpdate::t) -> void } -> (ACP::Types::LoadSessionResponse | ACP::Transport::ResponseError)
|
|
45
|
+
|
|
46
|
+
# @rbs request: ACP::Types::ListSessionsRequest
|
|
47
|
+
# @rbs return: ACP::Types::ListSessionsResponse | ACP::Transport::ResponseError
|
|
48
|
+
def session_list: (ACP::Types::ListSessionsRequest request) -> (ACP::Types::ListSessionsResponse | ACP::Transport::ResponseError)
|
|
49
|
+
|
|
50
|
+
# @rbs notification: ACP::Types::CancelNotification
|
|
51
|
+
# @rbs return: void
|
|
52
|
+
def session_cancel: (ACP::Types::CancelNotification notification) -> void
|
|
53
|
+
|
|
54
|
+
private
|
|
55
|
+
|
|
56
|
+
# @rbs type: ACP::AgentConnection::_Parser
|
|
57
|
+
# @rbs result: ACP::Transport::Result
|
|
58
|
+
# @rbs return: untyped
|
|
59
|
+
def parse: (ACP::AgentConnection::_Parser type, ACP::Transport::Result result) -> untyped
|
|
60
|
+
|
|
61
|
+
# The request waits on its own thread so the caller's thread can yield each
|
|
62
|
+
# update as it arrives. The reader thread queues an update before it settles
|
|
63
|
+
# a reply sent after it, so the queue closes only after the last one.
|
|
64
|
+
#
|
|
65
|
+
# @rbs session_id: String
|
|
66
|
+
# @rbs method: String
|
|
67
|
+
# @rbs params: Hash[String, untyped]
|
|
68
|
+
# @rbs &block: (ACP::Types::SessionUpdate::t) -> void
|
|
69
|
+
# @rbs return: ACP::Transport::Result
|
|
70
|
+
def stream: (String session_id, String method, Hash[String, untyped] params) { (ACP::Types::SessionUpdate::t) -> void } -> ACP::Transport::Result
|
|
71
|
+
|
|
72
|
+
# Pushes under the lock so a stream cannot close its queue between the
|
|
73
|
+
# lookup and the push.
|
|
74
|
+
#
|
|
75
|
+
# @rbs params: untyped
|
|
76
|
+
# @rbs return: void
|
|
77
|
+
def dispatch: (untyped params) -> void
|
|
78
|
+
|
|
79
|
+
# @rbs params: untyped
|
|
80
|
+
# @rbs return: ACP::Transport::Result
|
|
81
|
+
def request_permission: (untyped params) -> ACP::Transport::Result
|
|
82
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
# Generated from lib/acp/transport/reply.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
# A request handler's result plus a callback the transport runs once that
|
|
4
|
+
# result is on the wire, for messages the peer must only see after the reply.
|
|
5
|
+
class ACP::Transport::Reply
|
|
6
|
+
# @dynamic result
|
|
7
|
+
attr_reader result: ACP::Transport::Result
|
|
8
|
+
|
|
9
|
+
# @dynamic after
|
|
10
|
+
attr_reader after: ^() -> void
|
|
11
|
+
|
|
12
|
+
# @rbs result: ACP::Transport::Result
|
|
13
|
+
# @rbs after: ^() -> void
|
|
14
|
+
# @rbs return: void
|
|
15
|
+
def initialize: (ACP::Transport::Result result, after: ^() -> void) -> void
|
|
16
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# Generated from lib/acp/transport/response_error.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
class ACP::Transport::ResponseError
|
|
4
|
+
# @dynamic code
|
|
5
|
+
attr_reader code: Integer
|
|
6
|
+
|
|
7
|
+
# @dynamic message
|
|
8
|
+
attr_reader message: String
|
|
9
|
+
|
|
10
|
+
# @dynamic data
|
|
11
|
+
attr_reader data: untyped
|
|
12
|
+
|
|
13
|
+
# @rbs code: Integer
|
|
14
|
+
# @rbs message: String
|
|
15
|
+
# @rbs data: untyped
|
|
16
|
+
# @rbs return: void
|
|
17
|
+
def initialize: (code: Integer, message: String, ?data: untyped) -> void
|
|
18
|
+
|
|
19
|
+
# @rbs return: Hash[String, untyped]
|
|
20
|
+
def to_h: () -> Hash[String, untyped]
|
|
21
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Generated from lib/acp/transport/result.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
class ACP::Transport::Result
|
|
4
|
+
# @dynamic value
|
|
5
|
+
attr_reader value: untyped
|
|
6
|
+
|
|
7
|
+
# @dynamic error
|
|
8
|
+
attr_reader error: ACP::Transport::ResponseError?
|
|
9
|
+
|
|
10
|
+
# @rbs value: untyped
|
|
11
|
+
# @rbs return: ACP::Transport::Result
|
|
12
|
+
def self.ok: (untyped value) -> ACP::Transport::Result
|
|
13
|
+
|
|
14
|
+
# @rbs error: ACP::Transport::ResponseError
|
|
15
|
+
# @rbs return: ACP::Transport::Result
|
|
16
|
+
def self.error: (ACP::Transport::ResponseError error) -> ACP::Transport::Result
|
|
17
|
+
|
|
18
|
+
# @rbs value: untyped
|
|
19
|
+
# @rbs error: ACP::Transport::ResponseError?
|
|
20
|
+
# @rbs return: void
|
|
21
|
+
def initialize: (value: untyped, error: ACP::Transport::ResponseError?) -> void
|
|
22
|
+
|
|
23
|
+
# @rbs return: bool
|
|
24
|
+
def ok?: () -> bool
|
|
25
|
+
end
|