acp-sdk 0.8.0 → 0.10.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 +4 -4
- data/CHANGELOG.md +19 -0
- data/README.md +18 -4
- data/lib/acp/agent_connection/client.rb +31 -1
- data/lib/acp/agent_connection/optional_method/disable_provider.rb +23 -0
- data/lib/acp/agent_connection/optional_method/fork_session.rb +23 -0
- data/lib/acp/agent_connection/optional_method/list_providers.rb +23 -0
- data/lib/acp/agent_connection/optional_method/set_provider.rb +23 -0
- data/lib/acp/agent_connection.rb +73 -3
- data/lib/acp/client_connection.rb +108 -9
- data/lib/acp/request_error.rb +10 -0
- data/lib/acp/sdk.rb +3 -1
- data/lib/acp/transport/cancellation.rb +42 -0
- data/lib/acp/transport/stdio.rb +72 -1
- data/lib/acp/types/unstable/accept_nes_notification.rb +41 -0
- data/lib/acp/types/unstable/agent_capabilities.rb +122 -0
- data/lib/acp/types/unstable/client_capabilities.rb +127 -0
- data/lib/acp/types/unstable/client_nes_capabilities.rb +62 -0
- data/lib/acp/types/unstable/client_session_capabilities.rb +57 -0
- data/lib/acp/types/unstable/close_nes_request.rb +35 -0
- data/lib/acp/types/unstable/close_nes_response.rb +27 -0
- data/lib/acp/types/unstable/compaction_status.rb +11 -0
- data/lib/acp/types/unstable/compaction_summary_chunk.rb +41 -0
- data/lib/acp/types/unstable/compaction_update.rb +62 -0
- data/lib/acp/types/unstable/did_change_document_notification.rb +65 -0
- data/lib/acp/types/unstable/did_close_document_notification.rb +41 -0
- data/lib/acp/types/unstable/did_focus_document_notification.rb +74 -0
- data/lib/acp/types/unstable/did_open_document_notification.rb +66 -0
- data/lib/acp/types/unstable/did_save_document_notification.rb +41 -0
- data/lib/acp/types/unstable/disable_provider_request.rb +35 -0
- data/lib/acp/types/unstable/disable_provider_response.rb +27 -0
- data/lib/acp/types/unstable/fork_session_request.rb +69 -0
- data/lib/acp/types/unstable/fork_session_response.rb +55 -0
- data/lib/acp/types/unstable/idle_state_update.rb +46 -0
- data/lib/acp/types/unstable/initialize_response.rb +72 -0
- data/lib/acp/types/unstable/list_providers_request.rb +27 -0
- data/lib/acp/types/unstable/list_providers_response.rb +35 -0
- data/lib/acp/types/unstable/llm_protocol.rb +12 -0
- data/lib/acp/types/unstable/mcp_capabilities.rb +47 -0
- data/lib/acp/types/unstable/mcp_error.rb +41 -0
- data/lib/acp/types/unstable/mcp_server/acp.rb +41 -0
- data/lib/acp/types/unstable/mcp_server/http.rb +50 -0
- data/lib/acp/types/unstable/mcp_server/sse.rb +50 -0
- data/lib/acp/types/unstable/mcp_server.rb +25 -0
- data/lib/acp/types/unstable/mcp_server_acp.rb +41 -0
- data/lib/acp/types/unstable/message_mcp_notification.rb +59 -0
- data/lib/acp/types/unstable/message_mcp_request.rb +59 -0
- data/lib/acp/types/unstable/message_mcp_response/error.rb +35 -0
- data/lib/acp/types/unstable/message_mcp_response/result.rb +32 -0
- data/lib/acp/types/unstable/message_mcp_response.rb +23 -0
- data/lib/acp/types/unstable/nes_capabilities.rb +51 -0
- data/lib/acp/types/unstable/nes_context_capabilities.rb +111 -0
- data/lib/acp/types/unstable/nes_diagnostic.rb +57 -0
- data/lib/acp/types/unstable/nes_diagnostic_severity.rb +11 -0
- data/lib/acp/types/unstable/nes_diagnostics_capabilities.rb +27 -0
- data/lib/acp/types/unstable/nes_document_did_change_capabilities.rb +35 -0
- data/lib/acp/types/unstable/nes_document_did_close_capabilities.rb +27 -0
- data/lib/acp/types/unstable/nes_document_did_focus_capabilities.rb +27 -0
- data/lib/acp/types/unstable/nes_document_did_open_capabilities.rb +27 -0
- data/lib/acp/types/unstable/nes_document_did_save_capabilities.rb +27 -0
- data/lib/acp/types/unstable/nes_document_event_capabilities.rb +91 -0
- data/lib/acp/types/unstable/nes_edit_history_capabilities.rb +35 -0
- data/lib/acp/types/unstable/nes_edit_history_entry.rb +41 -0
- data/lib/acp/types/unstable/nes_edit_suggestion.rb +67 -0
- data/lib/acp/types/unstable/nes_event_capabilities.rb +40 -0
- data/lib/acp/types/unstable/nes_excerpt.rb +47 -0
- data/lib/acp/types/unstable/nes_jump_capabilities.rb +27 -0
- data/lib/acp/types/unstable/nes_jump_suggestion.rb +51 -0
- data/lib/acp/types/unstable/nes_open_file.rb +64 -0
- data/lib/acp/types/unstable/nes_open_files_capabilities.rb +27 -0
- data/lib/acp/types/unstable/nes_recent_file.rb +47 -0
- data/lib/acp/types/unstable/nes_recent_files_capabilities.rb +35 -0
- data/lib/acp/types/unstable/nes_reject_reason.rb +11 -0
- data/lib/acp/types/unstable/nes_related_snippet.rb +40 -0
- data/lib/acp/types/unstable/nes_related_snippets_capabilities.rb +27 -0
- data/lib/acp/types/unstable/nes_rename_capabilities.rb +27 -0
- data/lib/acp/types/unstable/nes_rename_suggestion.rb +57 -0
- data/lib/acp/types/unstable/nes_repository.rb +47 -0
- data/lib/acp/types/unstable/nes_search_and_replace_capabilities.rb +27 -0
- data/lib/acp/types/unstable/nes_search_and_replace_suggestion.rb +66 -0
- data/lib/acp/types/unstable/nes_suggest_context.rb +95 -0
- data/lib/acp/types/unstable/nes_suggestion/edit.rb +68 -0
- data/lib/acp/types/unstable/nes_suggestion/jump.rb +51 -0
- data/lib/acp/types/unstable/nes_suggestion/rename.rb +64 -0
- data/lib/acp/types/unstable/nes_suggestion/searchandreplace.rb +67 -0
- data/lib/acp/types/unstable/nes_suggestion.rb +25 -0
- data/lib/acp/types/unstable/nes_text_edit.rb +41 -0
- data/lib/acp/types/unstable/nes_trigger_kind.rb +10 -0
- data/lib/acp/types/unstable/nes_user_action.rb +63 -0
- data/lib/acp/types/unstable/nes_user_actions_capabilities.rb +35 -0
- data/lib/acp/types/unstable/notice.rb +47 -0
- data/lib/acp/types/unstable/notice_severity.rb +10 -0
- data/lib/acp/types/unstable/plan_capabilities.rb +27 -0
- data/lib/acp/types/unstable/plan_file.rb +41 -0
- data/lib/acp/types/unstable/plan_items.rb +44 -0
- data/lib/acp/types/unstable/plan_markdown.rb +41 -0
- data/lib/acp/types/unstable/plan_removed.rb +32 -0
- data/lib/acp/types/unstable/plan_update.rb +39 -0
- data/lib/acp/types/unstable/plan_update_content/file.rb +41 -0
- data/lib/acp/types/unstable/plan_update_content/items.rb +44 -0
- data/lib/acp/types/unstable/plan_update_content/markdown.rb +41 -0
- data/lib/acp/types/unstable/plan_update_content.rb +23 -0
- data/lib/acp/types/unstable/position.rb +41 -0
- data/lib/acp/types/unstable/position_encoding_kind.rb +10 -0
- data/lib/acp/types/unstable/prompt_response.rb +45 -0
- data/lib/acp/types/unstable/provider_current_config.rb +41 -0
- data/lib/acp/types/unstable/provider_info.rb +64 -0
- data/lib/acp/types/unstable/providers_capabilities.rb +27 -0
- data/lib/acp/types/unstable/range.rb +41 -0
- data/lib/acp/types/unstable/reject_nes_notification.rb +52 -0
- data/lib/acp/types/unstable/requires_action_state_update.rb +27 -0
- data/lib/acp/types/unstable/running_state_update.rb +27 -0
- data/lib/acp/types/unstable/session_cancel_capabilities.rb +27 -0
- data/lib/acp/types/unstable/session_capabilities.rb +93 -0
- data/lib/acp/types/unstable/session_fork_capabilities.rb +27 -0
- data/lib/acp/types/unstable/session_message.rb +62 -0
- data/lib/acp/types/unstable/session_message_chunk.rb +59 -0
- data/lib/acp/types/unstable/session_update/agent_message_chunk.rb +46 -0
- data/lib/acp/types/unstable/session_update/agent_thought_chunk.rb +46 -0
- data/lib/acp/types/unstable/session_update/available_commands_update.rb +42 -0
- data/lib/acp/types/unstable/session_update/compaction_summary_chunk.rb +46 -0
- data/lib/acp/types/unstable/session_update/compaction_update.rb +63 -0
- data/lib/acp/types/unstable/session_update/config_option_update.rb +42 -0
- data/lib/acp/types/unstable/session_update/current_mode_update.rb +35 -0
- data/lib/acp/types/unstable/session_update/notice.rb +53 -0
- data/lib/acp/types/unstable/session_update/plan.rb +35 -0
- data/lib/acp/types/unstable/session_update/plan_removed.rb +32 -0
- data/lib/acp/types/unstable/session_update/plan_update.rb +39 -0
- data/lib/acp/types/unstable/session_update/session_info_update.rb +49 -0
- data/lib/acp/types/unstable/session_update/session_message.rb +63 -0
- data/lib/acp/types/unstable/session_update/session_message_chunk.rb +60 -0
- data/lib/acp/types/unstable/session_update/subagent_update.rb +72 -0
- data/lib/acp/types/unstable/session_update/tool_call.rb +122 -0
- data/lib/acp/types/unstable/session_update/tool_call_update.rb +122 -0
- data/lib/acp/types/unstable/session_update/usage_update.rb +47 -0
- data/lib/acp/types/unstable/session_update/user_message_chunk.rb +46 -0
- data/lib/acp/types/unstable/session_update.rb +55 -0
- data/lib/acp/types/unstable/set_provider_request.rb +62 -0
- data/lib/acp/types/unstable/set_provider_response.rb +27 -0
- data/lib/acp/types/unstable/start_nes_request.rb +64 -0
- data/lib/acp/types/unstable/start_nes_response.rb +35 -0
- data/lib/acp/types/unstable/state_update/idle.rb +46 -0
- data/lib/acp/types/unstable/state_update/requires_action.rb +27 -0
- data/lib/acp/types/unstable/state_update/running.rb +27 -0
- data/lib/acp/types/unstable/state_update/unknown.rb +27 -0
- data/lib/acp/types/unstable/state_update.rb +25 -0
- data/lib/acp/types/unstable/subagent_capabilities.rb +27 -0
- data/lib/acp/types/unstable/subagent_session_capabilities.rb +40 -0
- data/lib/acp/types/unstable/subagent_update.rb +71 -0
- data/lib/acp/types/unstable/suggest_nes_request.rb +93 -0
- data/lib/acp/types/unstable/suggest_nes_response.rb +35 -0
- data/lib/acp/types/unstable/text_document_content_change_event.rb +41 -0
- data/lib/acp/types/unstable/text_document_sync_kind.rb +9 -0
- data/lib/acp/types/unstable/unknown_state_update.rb +27 -0
- data/lib/acp/types/unstable/usage.rb +91 -0
- data/lib/acp/types/unstable/workspace_folder.rb +41 -0
- data/lib/acp/types/unstable.rb +155 -0
- data/lib/acp/version.rb +1 -1
- data/sig/generated/acp/agent_connection/client.rbs +20 -1
- data/sig/generated/acp/agent_connection/optional_method/disable_provider.rbs +13 -0
- data/sig/generated/acp/agent_connection/optional_method/fork_session.rbs +13 -0
- data/sig/generated/acp/agent_connection/optional_method/list_providers.rbs +13 -0
- data/sig/generated/acp/agent_connection/optional_method/set_provider.rbs +13 -0
- data/sig/generated/acp/agent_connection.rbs +29 -0
- data/sig/generated/acp/client_connection.rbs +57 -1
- data/sig/generated/acp/request_error.rbs +8 -0
- data/sig/generated/acp/transport/cancellation.rbs +32 -0
- data/sig/generated/acp/transport/stdio.rbs +42 -0
- data/sig/generated/acp/types/unstable/accept_nes_notification.rbs +25 -0
- data/sig/generated/acp/types/unstable/agent_capabilities.rbs +49 -0
- data/sig/generated/acp/types/unstable/client_capabilities.rbs +53 -0
- data/sig/generated/acp/types/unstable/client_nes_capabilities.rbs +29 -0
- data/sig/generated/acp/types/unstable/client_session_capabilities.rbs +29 -0
- data/sig/generated/acp/types/unstable/close_nes_request.rbs +21 -0
- data/sig/generated/acp/types/unstable/close_nes_response.rbs +17 -0
- data/sig/generated/acp/types/unstable/compaction_status.rbs +11 -0
- data/sig/generated/acp/types/unstable/compaction_summary_chunk.rbs +25 -0
- data/sig/generated/acp/types/unstable/compaction_update.rbs +33 -0
- data/sig/generated/acp/types/unstable/did_change_document_notification.rbs +33 -0
- data/sig/generated/acp/types/unstable/did_close_document_notification.rbs +25 -0
- data/sig/generated/acp/types/unstable/did_focus_document_notification.rbs +37 -0
- data/sig/generated/acp/types/unstable/did_open_document_notification.rbs +37 -0
- data/sig/generated/acp/types/unstable/did_save_document_notification.rbs +25 -0
- data/sig/generated/acp/types/unstable/disable_provider_request.rbs +21 -0
- data/sig/generated/acp/types/unstable/disable_provider_response.rbs +17 -0
- data/sig/generated/acp/types/unstable/fork_session_request.rbs +33 -0
- data/sig/generated/acp/types/unstable/fork_session_response.rbs +29 -0
- data/sig/generated/acp/types/unstable/idle_state_update.rbs +25 -0
- data/sig/generated/acp/types/unstable/initialize_response.rbs +33 -0
- data/sig/generated/acp/types/unstable/list_providers_request.rbs +17 -0
- data/sig/generated/acp/types/unstable/list_providers_response.rbs +21 -0
- data/sig/generated/acp/types/unstable/llm_protocol.rbs +13 -0
- data/sig/generated/acp/types/unstable/mcp_capabilities.rbs +29 -0
- data/sig/generated/acp/types/unstable/mcp_error.rbs +25 -0
- data/sig/generated/acp/types/unstable/mcp_server/acp.rbs +25 -0
- data/sig/generated/acp/types/unstable/mcp_server/http.rbs +29 -0
- data/sig/generated/acp/types/unstable/mcp_server/sse.rbs +29 -0
- data/sig/generated/acp/types/unstable/mcp_server.rbs +9 -0
- data/sig/generated/acp/types/unstable/mcp_server_acp.rbs +25 -0
- data/sig/generated/acp/types/unstable/message_mcp_notification.rbs +33 -0
- data/sig/generated/acp/types/unstable/message_mcp_request.rbs +33 -0
- data/sig/generated/acp/types/unstable/message_mcp_response/error.rbs +21 -0
- data/sig/generated/acp/types/unstable/message_mcp_response/result.rbs +21 -0
- data/sig/generated/acp/types/unstable/message_mcp_response.rbs +9 -0
- data/sig/generated/acp/types/unstable/nes_capabilities.rbs +25 -0
- data/sig/generated/acp/types/unstable/nes_context_capabilities.rbs +41 -0
- data/sig/generated/acp/types/unstable/nes_diagnostic.rbs +33 -0
- data/sig/generated/acp/types/unstable/nes_diagnostic_severity.rbs +11 -0
- data/sig/generated/acp/types/unstable/nes_diagnostics_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/nes_document_did_change_capabilities.rbs +21 -0
- data/sig/generated/acp/types/unstable/nes_document_did_close_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/nes_document_did_focus_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/nes_document_did_open_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/nes_document_did_save_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/nes_document_event_capabilities.rbs +37 -0
- data/sig/generated/acp/types/unstable/nes_edit_history_capabilities.rbs +21 -0
- data/sig/generated/acp/types/unstable/nes_edit_history_entry.rbs +25 -0
- data/sig/generated/acp/types/unstable/nes_edit_suggestion.rbs +33 -0
- data/sig/generated/acp/types/unstable/nes_event_capabilities.rbs +21 -0
- data/sig/generated/acp/types/unstable/nes_excerpt.rbs +29 -0
- data/sig/generated/acp/types/unstable/nes_jump_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/nes_jump_suggestion.rbs +29 -0
- data/sig/generated/acp/types/unstable/nes_open_file.rbs +33 -0
- data/sig/generated/acp/types/unstable/nes_open_files_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/nes_recent_file.rbs +29 -0
- data/sig/generated/acp/types/unstable/nes_recent_files_capabilities.rbs +21 -0
- data/sig/generated/acp/types/unstable/nes_reject_reason.rbs +11 -0
- data/sig/generated/acp/types/unstable/nes_related_snippet.rbs +25 -0
- data/sig/generated/acp/types/unstable/nes_related_snippets_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/nes_rename_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/nes_rename_suggestion.rbs +33 -0
- data/sig/generated/acp/types/unstable/nes_repository.rbs +29 -0
- data/sig/generated/acp/types/unstable/nes_search_and_replace_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/nes_search_and_replace_suggestion.rbs +37 -0
- data/sig/generated/acp/types/unstable/nes_suggest_context.rbs +41 -0
- data/sig/generated/acp/types/unstable/nes_suggestion/edit.rbs +33 -0
- data/sig/generated/acp/types/unstable/nes_suggestion/jump.rbs +29 -0
- data/sig/generated/acp/types/unstable/nes_suggestion/rename.rbs +33 -0
- data/sig/generated/acp/types/unstable/nes_suggestion/searchandreplace.rbs +37 -0
- data/sig/generated/acp/types/unstable/nes_suggestion.rbs +9 -0
- data/sig/generated/acp/types/unstable/nes_text_edit.rbs +25 -0
- data/sig/generated/acp/types/unstable/nes_trigger_kind.rbs +9 -0
- data/sig/generated/acp/types/unstable/nes_user_action.rbs +33 -0
- data/sig/generated/acp/types/unstable/nes_user_actions_capabilities.rbs +21 -0
- data/sig/generated/acp/types/unstable/notice.rbs +29 -0
- data/sig/generated/acp/types/unstable/notice_severity.rbs +9 -0
- data/sig/generated/acp/types/unstable/plan_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/plan_file.rbs +25 -0
- data/sig/generated/acp/types/unstable/plan_items.rbs +25 -0
- data/sig/generated/acp/types/unstable/plan_markdown.rbs +25 -0
- data/sig/generated/acp/types/unstable/plan_removed.rbs +21 -0
- data/sig/generated/acp/types/unstable/plan_update.rbs +21 -0
- data/sig/generated/acp/types/unstable/plan_update_content/file.rbs +25 -0
- data/sig/generated/acp/types/unstable/plan_update_content/items.rbs +25 -0
- data/sig/generated/acp/types/unstable/plan_update_content/markdown.rbs +25 -0
- data/sig/generated/acp/types/unstable/plan_update_content.rbs +9 -0
- data/sig/generated/acp/types/unstable/position.rbs +25 -0
- data/sig/generated/acp/types/unstable/position_encoding_kind.rbs +9 -0
- data/sig/generated/acp/types/unstable/prompt_response.rbs +25 -0
- data/sig/generated/acp/types/unstable/provider_current_config.rbs +25 -0
- data/sig/generated/acp/types/unstable/provider_info.rbs +33 -0
- data/sig/generated/acp/types/unstable/providers_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/range.rbs +25 -0
- data/sig/generated/acp/types/unstable/reject_nes_notification.rbs +29 -0
- data/sig/generated/acp/types/unstable/requires_action_state_update.rbs +17 -0
- data/sig/generated/acp/types/unstable/running_state_update.rbs +17 -0
- data/sig/generated/acp/types/unstable/session_cancel_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/session_capabilities.rbs +41 -0
- data/sig/generated/acp/types/unstable/session_fork_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/session_message.rbs +33 -0
- data/sig/generated/acp/types/unstable/session_message_chunk.rbs +33 -0
- data/sig/generated/acp/types/unstable/session_update/agent_message_chunk.rbs +25 -0
- data/sig/generated/acp/types/unstable/session_update/agent_thought_chunk.rbs +25 -0
- data/sig/generated/acp/types/unstable/session_update/available_commands_update.rbs +21 -0
- data/sig/generated/acp/types/unstable/session_update/compaction_summary_chunk.rbs +25 -0
- data/sig/generated/acp/types/unstable/session_update/compaction_update.rbs +33 -0
- data/sig/generated/acp/types/unstable/session_update/config_option_update.rbs +21 -0
- data/sig/generated/acp/types/unstable/session_update/current_mode_update.rbs +21 -0
- data/sig/generated/acp/types/unstable/session_update/notice.rbs +29 -0
- data/sig/generated/acp/types/unstable/session_update/plan.rbs +21 -0
- data/sig/generated/acp/types/unstable/session_update/plan_removed.rbs +21 -0
- data/sig/generated/acp/types/unstable/session_update/plan_update.rbs +21 -0
- data/sig/generated/acp/types/unstable/session_update/session_info_update.rbs +25 -0
- data/sig/generated/acp/types/unstable/session_update/session_message.rbs +33 -0
- data/sig/generated/acp/types/unstable/session_update/session_message_chunk.rbs +33 -0
- data/sig/generated/acp/types/unstable/session_update/subagent_update.rbs +37 -0
- data/sig/generated/acp/types/unstable/session_update/tool_call.rbs +53 -0
- data/sig/generated/acp/types/unstable/session_update/tool_call_update.rbs +53 -0
- data/sig/generated/acp/types/unstable/session_update/usage_update.rbs +29 -0
- data/sig/generated/acp/types/unstable/session_update/user_message_chunk.rbs +25 -0
- data/sig/generated/acp/types/unstable/session_update.rbs +9 -0
- data/sig/generated/acp/types/unstable/set_provider_request.rbs +33 -0
- data/sig/generated/acp/types/unstable/set_provider_response.rbs +17 -0
- data/sig/generated/acp/types/unstable/start_nes_request.rbs +29 -0
- data/sig/generated/acp/types/unstable/start_nes_response.rbs +21 -0
- data/sig/generated/acp/types/unstable/state_update/idle.rbs +25 -0
- data/sig/generated/acp/types/unstable/state_update/requires_action.rbs +17 -0
- data/sig/generated/acp/types/unstable/state_update/running.rbs +17 -0
- data/sig/generated/acp/types/unstable/state_update/unknown.rbs +17 -0
- data/sig/generated/acp/types/unstable/state_update.rbs +9 -0
- data/sig/generated/acp/types/unstable/subagent_capabilities.rbs +17 -0
- data/sig/generated/acp/types/unstable/subagent_session_capabilities.rbs +21 -0
- data/sig/generated/acp/types/unstable/subagent_update.rbs +37 -0
- data/sig/generated/acp/types/unstable/suggest_nes_request.rbs +45 -0
- data/sig/generated/acp/types/unstable/suggest_nes_response.rbs +21 -0
- data/sig/generated/acp/types/unstable/text_document_content_change_event.rbs +25 -0
- data/sig/generated/acp/types/unstable/text_document_sync_kind.rbs +7 -0
- data/sig/generated/acp/types/unstable/unknown_state_update.rbs +17 -0
- data/sig/generated/acp/types/unstable/usage.rbs +41 -0
- data/sig/generated/acp/types/unstable/workspace_folder.rbs +25 -0
- data/sig/generated/acp/types/unstable.rbs +4 -0
- data/sig/manual/acp/agent_connection/optional_method/disable_provider.rbs +6 -0
- data/sig/manual/acp/agent_connection/optional_method/fork_session.rbs +6 -0
- data/sig/manual/acp/agent_connection/optional_method/list_providers.rbs +6 -0
- data/sig/manual/acp/agent_connection/optional_method/set_provider.rbs +6 -0
- data/sig/manual/acp/agent_connection.rbs +30 -0
- metadata +302 -2
|
@@ -0,0 +1,27 @@
|
|
|
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::UnknownStateUpdate
|
|
7
|
+
# @dynamic meta
|
|
8
|
+
attr_reader :meta #: Hash[String, untyped]?
|
|
9
|
+
|
|
10
|
+
# @rbs meta: Hash[String, untyped]?
|
|
11
|
+
# @rbs return: void
|
|
12
|
+
def initialize(meta: nil)
|
|
13
|
+
@meta = meta
|
|
14
|
+
freeze
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# @rbs hash: Hash[String, untyped]
|
|
18
|
+
# @rbs return: ACP::Types::Unstable::UnknownStateUpdate
|
|
19
|
+
def self.from_h(hash)
|
|
20
|
+
new(meta: hash['_meta'])
|
|
21
|
+
end
|
|
22
|
+
|
|
23
|
+
# @rbs return: Hash[String, untyped]
|
|
24
|
+
def to_h
|
|
25
|
+
{ '_meta' => meta }.compact
|
|
26
|
+
end
|
|
27
|
+
end
|
|
@@ -0,0 +1,91 @@
|
|
|
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::Usage
|
|
7
|
+
# @dynamic total_tokens
|
|
8
|
+
attr_reader :total_tokens #: Integer
|
|
9
|
+
|
|
10
|
+
# @dynamic input_tokens
|
|
11
|
+
attr_reader :input_tokens #: Integer
|
|
12
|
+
|
|
13
|
+
# @dynamic output_tokens
|
|
14
|
+
attr_reader :output_tokens #: Integer
|
|
15
|
+
|
|
16
|
+
# @dynamic thought_tokens
|
|
17
|
+
attr_reader :thought_tokens #: Integer?
|
|
18
|
+
|
|
19
|
+
# @dynamic cached_read_tokens
|
|
20
|
+
attr_reader :cached_read_tokens #: Integer?
|
|
21
|
+
|
|
22
|
+
# @dynamic cached_write_tokens
|
|
23
|
+
attr_reader :cached_write_tokens #: Integer?
|
|
24
|
+
|
|
25
|
+
# @dynamic meta
|
|
26
|
+
attr_reader :meta #: Hash[String, untyped]?
|
|
27
|
+
|
|
28
|
+
# @rbs total_tokens: Integer
|
|
29
|
+
# @rbs input_tokens: Integer
|
|
30
|
+
# @rbs output_tokens: Integer
|
|
31
|
+
# @rbs thought_tokens: Integer?
|
|
32
|
+
# @rbs cached_read_tokens: Integer?
|
|
33
|
+
# @rbs cached_write_tokens: Integer?
|
|
34
|
+
# @rbs meta: Hash[String, untyped]?
|
|
35
|
+
# @rbs return: void
|
|
36
|
+
def initialize(
|
|
37
|
+
total_tokens:,
|
|
38
|
+
input_tokens:,
|
|
39
|
+
output_tokens:,
|
|
40
|
+
thought_tokens: nil,
|
|
41
|
+
cached_read_tokens: nil,
|
|
42
|
+
cached_write_tokens: nil,
|
|
43
|
+
meta: nil
|
|
44
|
+
)
|
|
45
|
+
@total_tokens = total_tokens
|
|
46
|
+
@input_tokens = input_tokens
|
|
47
|
+
@output_tokens = output_tokens
|
|
48
|
+
@thought_tokens = thought_tokens
|
|
49
|
+
@cached_read_tokens = cached_read_tokens
|
|
50
|
+
@cached_write_tokens = cached_write_tokens
|
|
51
|
+
@meta = meta
|
|
52
|
+
freeze
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
# @rbs hash: Hash[String, untyped]
|
|
56
|
+
# @rbs return: ACP::Types::Unstable::Usage
|
|
57
|
+
def self.from_h(hash)
|
|
58
|
+
new(
|
|
59
|
+
total_tokens: ACP::Types::Check.integer(ACP::Types::Check.key(hash, 'totalTokens'), 'totalTokens', min: 0),
|
|
60
|
+
input_tokens: ACP::Types::Check.integer(ACP::Types::Check.key(hash, 'inputTokens'), 'inputTokens', min: 0),
|
|
61
|
+
output_tokens: ACP::Types::Check.integer(ACP::Types::Check.key(hash, 'outputTokens'), 'outputTokens', min: 0),
|
|
62
|
+
thought_tokens: ACP::Types::Check.integer(hash['thoughtTokens'], 'thoughtTokens', min: 0, allow_nil: true),
|
|
63
|
+
cached_read_tokens: ACP::Types::Check.integer(
|
|
64
|
+
hash['cachedReadTokens'],
|
|
65
|
+
'cachedReadTokens',
|
|
66
|
+
min: 0,
|
|
67
|
+
allow_nil: true
|
|
68
|
+
),
|
|
69
|
+
cached_write_tokens: ACP::Types::Check.integer(
|
|
70
|
+
hash['cachedWriteTokens'],
|
|
71
|
+
'cachedWriteTokens',
|
|
72
|
+
min: 0,
|
|
73
|
+
allow_nil: true
|
|
74
|
+
),
|
|
75
|
+
meta: hash['_meta']
|
|
76
|
+
)
|
|
77
|
+
end
|
|
78
|
+
|
|
79
|
+
# @rbs return: Hash[String, untyped]
|
|
80
|
+
def to_h
|
|
81
|
+
{
|
|
82
|
+
'totalTokens' => total_tokens,
|
|
83
|
+
'inputTokens' => input_tokens,
|
|
84
|
+
'outputTokens' => output_tokens,
|
|
85
|
+
'thoughtTokens' => thought_tokens,
|
|
86
|
+
'cachedReadTokens' => cached_read_tokens,
|
|
87
|
+
'cachedWriteTokens' => cached_write_tokens,
|
|
88
|
+
'_meta' => meta
|
|
89
|
+
}.compact
|
|
90
|
+
end
|
|
91
|
+
end
|
|
@@ -0,0 +1,41 @@
|
|
|
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::WorkspaceFolder
|
|
7
|
+
# @dynamic uri
|
|
8
|
+
attr_reader :uri #: String
|
|
9
|
+
|
|
10
|
+
# @dynamic name
|
|
11
|
+
attr_reader :name #: String
|
|
12
|
+
|
|
13
|
+
# @dynamic meta
|
|
14
|
+
attr_reader :meta #: Hash[String, untyped]?
|
|
15
|
+
|
|
16
|
+
# @rbs uri: String
|
|
17
|
+
# @rbs name: String
|
|
18
|
+
# @rbs meta: Hash[String, untyped]?
|
|
19
|
+
# @rbs return: void
|
|
20
|
+
def initialize(uri:, name:, meta: nil)
|
|
21
|
+
@uri = uri
|
|
22
|
+
@name = name
|
|
23
|
+
@meta = meta
|
|
24
|
+
freeze
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
# @rbs hash: Hash[String, untyped]
|
|
28
|
+
# @rbs return: ACP::Types::Unstable::WorkspaceFolder
|
|
29
|
+
def self.from_h(hash)
|
|
30
|
+
new(
|
|
31
|
+
uri: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'uri'), 'uri'),
|
|
32
|
+
name: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'name'), 'name'),
|
|
33
|
+
meta: hash['_meta']
|
|
34
|
+
)
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
# @rbs return: Hash[String, untyped]
|
|
38
|
+
def to_h
|
|
39
|
+
{ 'uri' => uri, 'name' => name, '_meta' => meta }.compact
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
# Generated by bin/types from schema/schema.unstable.json. Do not edit.
|
|
4
|
+
#
|
|
5
|
+
# Callers opt into the unstable types with `require 'acp/types/unstable'`.
|
|
6
|
+
# Zeitwerk ignores lib/acp/types/unstable, so referencing
|
|
7
|
+
# ACP::Types::Unstable without this require raises NameError.
|
|
8
|
+
# These types are not part of the ACP spec and may change or disappear at
|
|
9
|
+
# any point; the stable ACP::Types namespace is unaffected.
|
|
10
|
+
|
|
11
|
+
module ACP::Types::Unstable
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
require_relative 'unstable/accept_nes_notification'
|
|
15
|
+
require_relative 'unstable/agent_capabilities'
|
|
16
|
+
require_relative 'unstable/client_capabilities'
|
|
17
|
+
require_relative 'unstable/client_nes_capabilities'
|
|
18
|
+
require_relative 'unstable/client_session_capabilities'
|
|
19
|
+
require_relative 'unstable/close_nes_request'
|
|
20
|
+
require_relative 'unstable/close_nes_response'
|
|
21
|
+
require_relative 'unstable/compaction_status'
|
|
22
|
+
require_relative 'unstable/compaction_summary_chunk'
|
|
23
|
+
require_relative 'unstable/compaction_update'
|
|
24
|
+
require_relative 'unstable/did_change_document_notification'
|
|
25
|
+
require_relative 'unstable/did_close_document_notification'
|
|
26
|
+
require_relative 'unstable/did_focus_document_notification'
|
|
27
|
+
require_relative 'unstable/did_open_document_notification'
|
|
28
|
+
require_relative 'unstable/did_save_document_notification'
|
|
29
|
+
require_relative 'unstable/disable_provider_request'
|
|
30
|
+
require_relative 'unstable/disable_provider_response'
|
|
31
|
+
require_relative 'unstable/fork_session_request'
|
|
32
|
+
require_relative 'unstable/fork_session_response'
|
|
33
|
+
require_relative 'unstable/idle_state_update'
|
|
34
|
+
require_relative 'unstable/initialize_response'
|
|
35
|
+
require_relative 'unstable/list_providers_request'
|
|
36
|
+
require_relative 'unstable/list_providers_response'
|
|
37
|
+
require_relative 'unstable/llm_protocol'
|
|
38
|
+
require_relative 'unstable/mcp_capabilities'
|
|
39
|
+
require_relative 'unstable/mcp_error'
|
|
40
|
+
require_relative 'unstable/mcp_server'
|
|
41
|
+
require_relative 'unstable/mcp_server/acp'
|
|
42
|
+
require_relative 'unstable/mcp_server/http'
|
|
43
|
+
require_relative 'unstable/mcp_server/sse'
|
|
44
|
+
require_relative 'unstable/mcp_server_acp'
|
|
45
|
+
require_relative 'unstable/message_mcp_notification'
|
|
46
|
+
require_relative 'unstable/message_mcp_request'
|
|
47
|
+
require_relative 'unstable/message_mcp_response'
|
|
48
|
+
require_relative 'unstable/message_mcp_response/error'
|
|
49
|
+
require_relative 'unstable/message_mcp_response/result'
|
|
50
|
+
require_relative 'unstable/nes_capabilities'
|
|
51
|
+
require_relative 'unstable/nes_context_capabilities'
|
|
52
|
+
require_relative 'unstable/nes_diagnostic'
|
|
53
|
+
require_relative 'unstable/nes_diagnostic_severity'
|
|
54
|
+
require_relative 'unstable/nes_diagnostics_capabilities'
|
|
55
|
+
require_relative 'unstable/nes_document_did_change_capabilities'
|
|
56
|
+
require_relative 'unstable/nes_document_did_close_capabilities'
|
|
57
|
+
require_relative 'unstable/nes_document_did_focus_capabilities'
|
|
58
|
+
require_relative 'unstable/nes_document_did_open_capabilities'
|
|
59
|
+
require_relative 'unstable/nes_document_did_save_capabilities'
|
|
60
|
+
require_relative 'unstable/nes_document_event_capabilities'
|
|
61
|
+
require_relative 'unstable/nes_edit_history_capabilities'
|
|
62
|
+
require_relative 'unstable/nes_edit_history_entry'
|
|
63
|
+
require_relative 'unstable/nes_edit_suggestion'
|
|
64
|
+
require_relative 'unstable/nes_event_capabilities'
|
|
65
|
+
require_relative 'unstable/nes_excerpt'
|
|
66
|
+
require_relative 'unstable/nes_jump_capabilities'
|
|
67
|
+
require_relative 'unstable/nes_jump_suggestion'
|
|
68
|
+
require_relative 'unstable/nes_open_file'
|
|
69
|
+
require_relative 'unstable/nes_open_files_capabilities'
|
|
70
|
+
require_relative 'unstable/nes_recent_file'
|
|
71
|
+
require_relative 'unstable/nes_recent_files_capabilities'
|
|
72
|
+
require_relative 'unstable/nes_reject_reason'
|
|
73
|
+
require_relative 'unstable/nes_related_snippet'
|
|
74
|
+
require_relative 'unstable/nes_related_snippets_capabilities'
|
|
75
|
+
require_relative 'unstable/nes_rename_capabilities'
|
|
76
|
+
require_relative 'unstable/nes_rename_suggestion'
|
|
77
|
+
require_relative 'unstable/nes_repository'
|
|
78
|
+
require_relative 'unstable/nes_search_and_replace_capabilities'
|
|
79
|
+
require_relative 'unstable/nes_search_and_replace_suggestion'
|
|
80
|
+
require_relative 'unstable/nes_suggest_context'
|
|
81
|
+
require_relative 'unstable/nes_suggestion'
|
|
82
|
+
require_relative 'unstable/nes_suggestion/edit'
|
|
83
|
+
require_relative 'unstable/nes_suggestion/jump'
|
|
84
|
+
require_relative 'unstable/nes_suggestion/rename'
|
|
85
|
+
require_relative 'unstable/nes_suggestion/searchandreplace'
|
|
86
|
+
require_relative 'unstable/nes_text_edit'
|
|
87
|
+
require_relative 'unstable/nes_trigger_kind'
|
|
88
|
+
require_relative 'unstable/nes_user_action'
|
|
89
|
+
require_relative 'unstable/nes_user_actions_capabilities'
|
|
90
|
+
require_relative 'unstable/notice'
|
|
91
|
+
require_relative 'unstable/notice_severity'
|
|
92
|
+
require_relative 'unstable/plan_capabilities'
|
|
93
|
+
require_relative 'unstable/plan_file'
|
|
94
|
+
require_relative 'unstable/plan_items'
|
|
95
|
+
require_relative 'unstable/plan_markdown'
|
|
96
|
+
require_relative 'unstable/plan_removed'
|
|
97
|
+
require_relative 'unstable/plan_update'
|
|
98
|
+
require_relative 'unstable/plan_update_content'
|
|
99
|
+
require_relative 'unstable/plan_update_content/file'
|
|
100
|
+
require_relative 'unstable/plan_update_content/items'
|
|
101
|
+
require_relative 'unstable/plan_update_content/markdown'
|
|
102
|
+
require_relative 'unstable/position'
|
|
103
|
+
require_relative 'unstable/position_encoding_kind'
|
|
104
|
+
require_relative 'unstable/prompt_response'
|
|
105
|
+
require_relative 'unstable/provider_current_config'
|
|
106
|
+
require_relative 'unstable/provider_info'
|
|
107
|
+
require_relative 'unstable/providers_capabilities'
|
|
108
|
+
require_relative 'unstable/range'
|
|
109
|
+
require_relative 'unstable/reject_nes_notification'
|
|
110
|
+
require_relative 'unstable/requires_action_state_update'
|
|
111
|
+
require_relative 'unstable/running_state_update'
|
|
112
|
+
require_relative 'unstable/session_cancel_capabilities'
|
|
113
|
+
require_relative 'unstable/session_capabilities'
|
|
114
|
+
require_relative 'unstable/session_fork_capabilities'
|
|
115
|
+
require_relative 'unstable/session_message'
|
|
116
|
+
require_relative 'unstable/session_message_chunk'
|
|
117
|
+
require_relative 'unstable/session_update'
|
|
118
|
+
require_relative 'unstable/session_update/agent_message_chunk'
|
|
119
|
+
require_relative 'unstable/session_update/agent_thought_chunk'
|
|
120
|
+
require_relative 'unstable/session_update/available_commands_update'
|
|
121
|
+
require_relative 'unstable/session_update/compaction_summary_chunk'
|
|
122
|
+
require_relative 'unstable/session_update/compaction_update'
|
|
123
|
+
require_relative 'unstable/session_update/config_option_update'
|
|
124
|
+
require_relative 'unstable/session_update/current_mode_update'
|
|
125
|
+
require_relative 'unstable/session_update/notice'
|
|
126
|
+
require_relative 'unstable/session_update/plan'
|
|
127
|
+
require_relative 'unstable/session_update/plan_removed'
|
|
128
|
+
require_relative 'unstable/session_update/plan_update'
|
|
129
|
+
require_relative 'unstable/session_update/session_info_update'
|
|
130
|
+
require_relative 'unstable/session_update/session_message'
|
|
131
|
+
require_relative 'unstable/session_update/session_message_chunk'
|
|
132
|
+
require_relative 'unstable/session_update/subagent_update'
|
|
133
|
+
require_relative 'unstable/session_update/tool_call'
|
|
134
|
+
require_relative 'unstable/session_update/tool_call_update'
|
|
135
|
+
require_relative 'unstable/session_update/usage_update'
|
|
136
|
+
require_relative 'unstable/session_update/user_message_chunk'
|
|
137
|
+
require_relative 'unstable/set_provider_request'
|
|
138
|
+
require_relative 'unstable/set_provider_response'
|
|
139
|
+
require_relative 'unstable/start_nes_request'
|
|
140
|
+
require_relative 'unstable/start_nes_response'
|
|
141
|
+
require_relative 'unstable/state_update'
|
|
142
|
+
require_relative 'unstable/state_update/idle'
|
|
143
|
+
require_relative 'unstable/state_update/requires_action'
|
|
144
|
+
require_relative 'unstable/state_update/running'
|
|
145
|
+
require_relative 'unstable/state_update/unknown'
|
|
146
|
+
require_relative 'unstable/subagent_capabilities'
|
|
147
|
+
require_relative 'unstable/subagent_session_capabilities'
|
|
148
|
+
require_relative 'unstable/subagent_update'
|
|
149
|
+
require_relative 'unstable/suggest_nes_request'
|
|
150
|
+
require_relative 'unstable/suggest_nes_response'
|
|
151
|
+
require_relative 'unstable/text_document_content_change_event'
|
|
152
|
+
require_relative 'unstable/text_document_sync_kind'
|
|
153
|
+
require_relative 'unstable/unknown_state_update'
|
|
154
|
+
require_relative 'unstable/usage'
|
|
155
|
+
require_relative 'unstable/workspace_folder'
|
data/lib/acp/version.rb
CHANGED
|
@@ -1,14 +1,17 @@
|
|
|
1
1
|
# Generated from lib/acp/agent_connection/client.rb with RBS::Inline
|
|
2
2
|
|
|
3
3
|
class ACP::AgentConnection::Client
|
|
4
|
+
@mcp_advertised: bool
|
|
5
|
+
|
|
4
6
|
@peer: ACP::AgentConnection::_Peer
|
|
5
7
|
|
|
6
8
|
# @dynamic capabilities, capabilities=
|
|
7
9
|
attr_accessor capabilities: ACP::Types::ClientCapabilities?
|
|
8
10
|
|
|
9
11
|
# @rbs peer: ACP::AgentConnection::_Peer
|
|
12
|
+
# @rbs mcp_advertised: bool
|
|
10
13
|
# @rbs return: void
|
|
11
|
-
def initialize: (peer: ACP::AgentConnection::_Peer) -> void
|
|
14
|
+
def initialize: (peer: ACP::AgentConnection::_Peer, ?mcp_advertised: bool) -> void
|
|
12
15
|
|
|
13
16
|
# @rbs session_id: String
|
|
14
17
|
# @rbs update: ACP::Types::SessionUpdate::t
|
|
@@ -27,6 +30,14 @@ class ACP::AgentConnection::Client
|
|
|
27
30
|
# @rbs return: ACP::Types::RequestPermissionResponse | ACP::RequestError
|
|
28
31
|
def request_permission: (ACP::Types::RequestPermissionRequest request) -> (ACP::Types::RequestPermissionResponse | ACP::RequestError)
|
|
29
32
|
|
|
33
|
+
# @rbs return: void
|
|
34
|
+
def cancel_requests: () -> void
|
|
35
|
+
|
|
36
|
+
# Always false off a handler thread.
|
|
37
|
+
#
|
|
38
|
+
# @rbs return: bool
|
|
39
|
+
def cancelled?: () -> bool
|
|
40
|
+
|
|
30
41
|
# @rbs request: ACP::Types::ReadTextFileRequest
|
|
31
42
|
# @rbs return: ACP::Types::ReadTextFileResponse | ACP::RequestError
|
|
32
43
|
def read_text_file: (ACP::Types::ReadTextFileRequest request) -> (ACP::Types::ReadTextFileResponse | ACP::RequestError)
|
|
@@ -63,6 +74,14 @@ class ACP::AgentConnection::Client
|
|
|
63
74
|
# @rbs return: void
|
|
64
75
|
def complete_elicitation: (ACP::Types::CompleteElicitationNotification notification) -> void
|
|
65
76
|
|
|
77
|
+
# Sends one inner MCP operation to the client's declared ACP MCP server. The
|
|
78
|
+
# reply's result may be null, and a reply matching neither carrier branch
|
|
79
|
+
# comes back as the raw hash.
|
|
80
|
+
#
|
|
81
|
+
# @rbs request: ACP::Types::Unstable::MessageMcpRequest
|
|
82
|
+
# @rbs return: (ACP::Types::Unstable::MessageMcpResponse::t | ACP::RequestError)
|
|
83
|
+
def mcp_message: (ACP::Types::Unstable::MessageMcpRequest request) -> (ACP::Types::Unstable::MessageMcpResponse::t | ACP::RequestError)
|
|
84
|
+
|
|
66
85
|
# Sends an extension request, keyed by its raw `_`-prefixed wire name, and
|
|
67
86
|
# returns the client's reply as-is: extension methods have no schema to
|
|
68
87
|
# parse the result into.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Generated from lib/acp/agent_connection/optional_method/disable_provider.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module ACP::AgentConnection::OptionalMethod::DisableProvider
|
|
4
|
+
# @rbs return: String
|
|
5
|
+
def rpc_method: () -> String
|
|
6
|
+
|
|
7
|
+
# @rbs return: Symbol
|
|
8
|
+
def agent_method: () -> Symbol
|
|
9
|
+
|
|
10
|
+
# @rbs initialize_response: ACP::Types::InitializeResponse
|
|
11
|
+
# @rbs return: bool
|
|
12
|
+
def advertised?: (ACP::Types::InitializeResponse initialize_response) -> bool
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Generated from lib/acp/agent_connection/optional_method/fork_session.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module ACP::AgentConnection::OptionalMethod::ForkSession
|
|
4
|
+
# @rbs return: String
|
|
5
|
+
def rpc_method: () -> String
|
|
6
|
+
|
|
7
|
+
# @rbs return: Symbol
|
|
8
|
+
def agent_method: () -> Symbol
|
|
9
|
+
|
|
10
|
+
# @rbs initialize_response: ACP::Types::InitializeResponse
|
|
11
|
+
# @rbs return: bool
|
|
12
|
+
def advertised?: (ACP::Types::InitializeResponse initialize_response) -> bool
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Generated from lib/acp/agent_connection/optional_method/list_providers.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module ACP::AgentConnection::OptionalMethod::ListProviders
|
|
4
|
+
# @rbs return: String
|
|
5
|
+
def rpc_method: () -> String
|
|
6
|
+
|
|
7
|
+
# @rbs return: Symbol
|
|
8
|
+
def agent_method: () -> Symbol
|
|
9
|
+
|
|
10
|
+
# @rbs initialize_response: ACP::Types::InitializeResponse
|
|
11
|
+
# @rbs return: bool
|
|
12
|
+
def advertised?: (ACP::Types::InitializeResponse initialize_response) -> bool
|
|
13
|
+
end
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# Generated from lib/acp/agent_connection/optional_method/set_provider.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module ACP::AgentConnection::OptionalMethod::SetProvider
|
|
4
|
+
# @rbs return: String
|
|
5
|
+
def rpc_method: () -> String
|
|
6
|
+
|
|
7
|
+
# @rbs return: Symbol
|
|
8
|
+
def agent_method: () -> Symbol
|
|
9
|
+
|
|
10
|
+
# @rbs initialize_response: ACP::Types::InitializeResponse
|
|
11
|
+
# @rbs return: bool
|
|
12
|
+
def advertised?: (ACP::Types::InitializeResponse initialize_response) -> bool
|
|
13
|
+
end
|
|
@@ -47,6 +47,21 @@ class ACP::AgentConnection
|
|
|
47
47
|
# @rbs return: Hash[String, ^(untyped) -> (ACP::AgentConnection::_Response | ACP::RequestError | ACP::Transport::Reply)]
|
|
48
48
|
def requests: (ACP::AgentConnection::_Agent agent, ACP::AgentConnection::Client client) -> Hash[String, ^(untyped) -> (ACP::AgentConnection::_Response | ACP::RequestError | ACP::Transport::Reply)]
|
|
49
49
|
|
|
50
|
+
# The unstable request types are referenced while the hash is built, so
|
|
51
|
+
# without the guard start would raise NameError even for an agent that never
|
|
52
|
+
# advertises fork or providers.
|
|
53
|
+
#
|
|
54
|
+
# @rbs full: ACP::AgentConnection::_FullAgent
|
|
55
|
+
# @rbs return: Hash[String, ^(untyped) -> (ACP::AgentConnection::_Response | ACP::RequestError | ACP::Transport::Reply)]
|
|
56
|
+
def unstable_requests: (ACP::AgentConnection::_FullAgent full) -> Hash[String, ^(untyped) -> (ACP::AgentConnection::_Response | ACP::RequestError | ACP::Transport::Reply)]
|
|
57
|
+
|
|
58
|
+
# ForkSession's and the provider methods' advertised? reference the unstable
|
|
59
|
+
# types, so they can only be probed when the caller opted in with
|
|
60
|
+
# `require 'acp/types/unstable'`.
|
|
61
|
+
#
|
|
62
|
+
# @rbs return: Array[ACP::AgentConnection::_OptionalMethod]
|
|
63
|
+
def optional_methods: () -> Array[ACP::AgentConnection::_OptionalMethod]
|
|
64
|
+
|
|
50
65
|
# @rbs agent: ACP::AgentConnection::_Agent
|
|
51
66
|
# @rbs return: Hash[String, ^(untyped) -> void]
|
|
52
67
|
def notifications: (ACP::AgentConnection::_Agent agent) -> Hash[String, ^(untyped) -> void]
|
|
@@ -58,6 +73,20 @@ class ACP::AgentConnection
|
|
|
58
73
|
# @rbs return: void
|
|
59
74
|
def cancel: (ACP::AgentConnection::_Agent agent, untyped params) -> void
|
|
60
75
|
|
|
76
|
+
# The unstable gates reference the unstable types, so they can only be
|
|
77
|
+
# probed when the caller opted in with `require 'acp/types/unstable'`; the
|
|
78
|
+
# stable McpCapabilities has no acp field at all.
|
|
79
|
+
#
|
|
80
|
+
# @rbs return: bool
|
|
81
|
+
def mcp_acp_advertised?: () -> bool
|
|
82
|
+
|
|
83
|
+
# A notification has no reply to carry a parse failure.
|
|
84
|
+
#
|
|
85
|
+
# @rbs agent: ACP::AgentConnection::_Agent
|
|
86
|
+
# @rbs params: untyped
|
|
87
|
+
# @rbs return: void
|
|
88
|
+
def mcp_message_notification: (ACP::AgentConnection::_Agent agent, untyped params) -> void
|
|
89
|
+
|
|
61
90
|
# Generated from_h raises on a missing key or a value of the wrong shape.
|
|
62
91
|
#
|
|
63
92
|
# @rbs type: ACP::AgentConnection::_Parser
|
|
@@ -25,6 +25,10 @@ class ACP::ClientConnection
|
|
|
25
25
|
|
|
26
26
|
@updates: ACP::ClientConnection::_UpdateHandler
|
|
27
27
|
|
|
28
|
+
@mcp_message: (^(ACP::Types::Unstable::MessageMcpRequest) -> (ACP::Types::Unstable::MessageMcpResponse::t | ACP::RequestError))?
|
|
29
|
+
|
|
30
|
+
@mcp_advertised: bool?
|
|
31
|
+
|
|
28
32
|
@fs_capabilities: ACP::Types::FileSystemCapabilities?
|
|
29
33
|
|
|
30
34
|
@terminal: bool?
|
|
@@ -65,11 +69,13 @@ class ACP::ClientConnection
|
|
|
65
69
|
# (ACP::Types::CreateElicitationResponse | ACP::RequestError))?
|
|
66
70
|
# @rbs complete_elicitation: (^(ACP::Types::CompleteElicitationNotification) -> void)?
|
|
67
71
|
# @rbs updates: ACP::ClientConnection::_UpdateHandler
|
|
72
|
+
# @rbs mcp_message: (^(ACP::Types::Unstable::MessageMcpRequest) ->
|
|
73
|
+
# (ACP::Types::Unstable::MessageMcpResponse::t | ACP::RequestError))?
|
|
68
74
|
# @rbs extension_requests: Hash[String, ^(untyped) -> untyped]
|
|
69
75
|
# @rbs extension_notifications: Hash[String, ^(untyped) -> void]
|
|
70
76
|
# @rbs logger: ACP::Transport::_Logger
|
|
71
77
|
# @rbs return: void
|
|
72
|
-
def initialize: (transport: ACP::AgentConnection::_Transport, permission: ACP::ClientConnection::_PermissionHandler, ?read_text_file: (^(ACP::Types::ReadTextFileRequest) -> (ACP::Types::ReadTextFileResponse | ACP::RequestError))?, ?write_text_file: (^(ACP::Types::WriteTextFileRequest) -> (ACP::Types::WriteTextFileResponse | ACP::RequestError))?, ?create_terminal: (^(ACP::Types::CreateTerminalRequest) -> (ACP::Types::CreateTerminalResponse | ACP::RequestError))?, ?terminal_output: (^(ACP::Types::TerminalOutputRequest) -> (ACP::Types::TerminalOutputResponse | ACP::RequestError))?, ?wait_for_terminal_exit: (^(ACP::Types::WaitForTerminalExitRequest) -> (ACP::Types::WaitForTerminalExitResponse | ACP::RequestError))?, ?kill_terminal: (^(ACP::Types::KillTerminalRequest) -> (ACP::Types::KillTerminalResponse | ACP::RequestError))?, ?release_terminal: (^(ACP::Types::ReleaseTerminalRequest) -> (ACP::Types::ReleaseTerminalResponse | ACP::RequestError))?, ?elicitation: (^(ACP::Types::CreateElicitationRequest) -> (ACP::Types::CreateElicitationResponse | ACP::RequestError))?, ?complete_elicitation: (^(ACP::Types::CompleteElicitationNotification) -> void)?, ?updates: ACP::ClientConnection::_UpdateHandler, ?extension_requests: Hash[String, ^(untyped) -> untyped], ?extension_notifications: Hash[String, ^(untyped) -> void], ?logger: ACP::Transport::_Logger) -> void
|
|
78
|
+
def initialize: (transport: ACP::AgentConnection::_Transport, permission: ACP::ClientConnection::_PermissionHandler, ?read_text_file: (^(ACP::Types::ReadTextFileRequest) -> (ACP::Types::ReadTextFileResponse | ACP::RequestError))?, ?write_text_file: (^(ACP::Types::WriteTextFileRequest) -> (ACP::Types::WriteTextFileResponse | ACP::RequestError))?, ?create_terminal: (^(ACP::Types::CreateTerminalRequest) -> (ACP::Types::CreateTerminalResponse | ACP::RequestError))?, ?terminal_output: (^(ACP::Types::TerminalOutputRequest) -> (ACP::Types::TerminalOutputResponse | ACP::RequestError))?, ?wait_for_terminal_exit: (^(ACP::Types::WaitForTerminalExitRequest) -> (ACP::Types::WaitForTerminalExitResponse | ACP::RequestError))?, ?kill_terminal: (^(ACP::Types::KillTerminalRequest) -> (ACP::Types::KillTerminalResponse | ACP::RequestError))?, ?release_terminal: (^(ACP::Types::ReleaseTerminalRequest) -> (ACP::Types::ReleaseTerminalResponse | ACP::RequestError))?, ?elicitation: (^(ACP::Types::CreateElicitationRequest) -> (ACP::Types::CreateElicitationResponse | ACP::RequestError))?, ?complete_elicitation: (^(ACP::Types::CompleteElicitationNotification) -> void)?, ?updates: ACP::ClientConnection::_UpdateHandler, ?mcp_message: (^(ACP::Types::Unstable::MessageMcpRequest) -> (ACP::Types::Unstable::MessageMcpResponse::t | ACP::RequestError))?, ?extension_requests: Hash[String, ^(untyped) -> untyped], ?extension_notifications: Hash[String, ^(untyped) -> void], ?logger: ACP::Transport::_Logger) -> void
|
|
73
79
|
|
|
74
80
|
# @rbs return: Thread
|
|
75
81
|
def start: () -> Thread
|
|
@@ -114,6 +120,22 @@ class ACP::ClientConnection
|
|
|
114
120
|
# @rbs return: ACP::Types::DeleteSessionResponse | ACP::RequestError
|
|
115
121
|
def session_delete: (ACP::Types::DeleteSessionRequest request) -> (ACP::Types::DeleteSessionResponse | ACP::RequestError)
|
|
116
122
|
|
|
123
|
+
# @rbs request: ACP::Types::Unstable::ForkSessionRequest
|
|
124
|
+
# @rbs return: (ACP::Types::Unstable::ForkSessionResponse | ACP::RequestError)
|
|
125
|
+
def session_fork: (ACP::Types::Unstable::ForkSessionRequest request) -> (ACP::Types::Unstable::ForkSessionResponse | ACP::RequestError)
|
|
126
|
+
|
|
127
|
+
# @rbs request: ACP::Types::Unstable::ListProvidersRequest
|
|
128
|
+
# @rbs return: (ACP::Types::Unstable::ListProvidersResponse | ACP::RequestError)
|
|
129
|
+
def providers_list: (ACP::Types::Unstable::ListProvidersRequest request) -> (ACP::Types::Unstable::ListProvidersResponse | ACP::RequestError)
|
|
130
|
+
|
|
131
|
+
# @rbs request: ACP::Types::Unstable::SetProviderRequest
|
|
132
|
+
# @rbs return: (ACP::Types::Unstable::SetProviderResponse | ACP::RequestError)
|
|
133
|
+
def providers_set: (ACP::Types::Unstable::SetProviderRequest request) -> (ACP::Types::Unstable::SetProviderResponse | ACP::RequestError)
|
|
134
|
+
|
|
135
|
+
# @rbs request: ACP::Types::Unstable::DisableProviderRequest
|
|
136
|
+
# @rbs return: (ACP::Types::Unstable::DisableProviderResponse | ACP::RequestError)
|
|
137
|
+
def providers_disable: (ACP::Types::Unstable::DisableProviderRequest request) -> (ACP::Types::Unstable::DisableProviderResponse | ACP::RequestError)
|
|
138
|
+
|
|
117
139
|
# The spec requires a pending session/request_permission to be answered with
|
|
118
140
|
# the cancelled outcome once the turn is cancelled, so every queue registered
|
|
119
141
|
# for the session gets one before this returns. The notification goes first
|
|
@@ -151,13 +173,40 @@ class ACP::ClientConnection
|
|
|
151
173
|
# @rbs return: (Hash[String, untyped] | ACP::RequestError)
|
|
152
174
|
def ext_request: (String method, ?untyped params) -> (Hash[String, untyped] | ACP::RequestError)
|
|
153
175
|
|
|
176
|
+
# Always false off a handler thread.
|
|
177
|
+
#
|
|
178
|
+
# @rbs return: bool
|
|
179
|
+
def cancelled?: () -> bool
|
|
180
|
+
|
|
154
181
|
# @rbs method: String
|
|
155
182
|
# @rbs params: untyped
|
|
156
183
|
# @rbs return: void
|
|
157
184
|
def ext_notify: (String method, ?untyped params) -> void
|
|
158
185
|
|
|
186
|
+
# Unlike the mcp/message serve route, this send is not gated: a notification
|
|
187
|
+
# has no reply to carry a refusal, and the agent drops what it did not
|
|
188
|
+
# advertise.
|
|
189
|
+
#
|
|
190
|
+
# @rbs notification: ACP::Types::Unstable::MessageMcpNotification
|
|
191
|
+
# @rbs return: void
|
|
192
|
+
def mcp_message_notification: (ACP::Types::Unstable::MessageMcpNotification notification) -> void
|
|
193
|
+
|
|
159
194
|
private
|
|
160
195
|
|
|
196
|
+
# The route is only registered when a handler serves it, but the agent's
|
|
197
|
+
# advertisement is only known after connect, so an unadvertised request
|
|
198
|
+
# still reaches the route and is refused there.
|
|
199
|
+
#
|
|
200
|
+
# @rbs return: Hash[String, ACP::Transport::Stdio::_Handler]
|
|
201
|
+
def mcp_requests: () -> Hash[String, ACP::Transport::Stdio::_Handler]
|
|
202
|
+
|
|
203
|
+
# The stable McpCapabilities has no acp field, so the gate re-reads the raw
|
|
204
|
+
# initialize reply with the unstable types when they are opted into.
|
|
205
|
+
#
|
|
206
|
+
# @rbs result: (Hash[String, untyped] | ACP::RequestError)
|
|
207
|
+
# @rbs return: bool
|
|
208
|
+
def agent_mcp_advertised?: (Hash[String, untyped] | ACP::RequestError result) -> bool
|
|
209
|
+
|
|
161
210
|
# @rbs type: ACP::AgentConnection::_Parser
|
|
162
211
|
# @rbs result: (Hash[String, untyped] | ACP::RequestError)
|
|
163
212
|
# @rbs return: untyped
|
|
@@ -237,6 +286,13 @@ class ACP::ClientConnection
|
|
|
237
286
|
# @rbs return: (ACP::Types::ReleaseTerminalResponse | ACP::RequestError)
|
|
238
287
|
def release_terminal: (untyped params) -> (ACP::Types::ReleaseTerminalResponse | ACP::RequestError)
|
|
239
288
|
|
|
289
|
+
# The route is registered at start, before connect records the agent's
|
|
290
|
+
# advertisement, so an unadvertised request answers -32601 until then.
|
|
291
|
+
#
|
|
292
|
+
# @rbs params: untyped
|
|
293
|
+
# @rbs return: (ACP::Types::Unstable::MessageMcpResponse::t | ACP::RequestError)
|
|
294
|
+
def mcp_message: (untyped params) -> (ACP::Types::Unstable::MessageMcpResponse::t | ACP::RequestError)
|
|
295
|
+
|
|
240
296
|
# The routes are registered at start, before connect records the advertised
|
|
241
297
|
# capabilities, so a request for an unadvertised mode answers -32602.
|
|
242
298
|
#
|
|
@@ -70,6 +70,14 @@ class ACP::RequestError
|
|
|
70
70
|
# @rbs return: ACP::RequestError
|
|
71
71
|
def self.unadvertised_mode: (String mode) -> ACP::RequestError
|
|
72
72
|
|
|
73
|
+
# unadvertised names a capability of the client's, this one a capability of
|
|
74
|
+
# the agent's: the same method-not-found code, with a message naming which
|
|
75
|
+
# side's advertisement is missing.
|
|
76
|
+
#
|
|
77
|
+
# @rbs capability: String
|
|
78
|
+
# @rbs return: ACP::RequestError
|
|
79
|
+
def self.unadvertised_agent: (String capability) -> ACP::RequestError
|
|
80
|
+
|
|
73
81
|
# @rbs return: ACP::RequestError
|
|
74
82
|
def self.internal_error: () -> ACP::RequestError
|
|
75
83
|
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Generated from lib/acp/transport/cancellation.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
# Whether the peer cancelled one request. The transport creates one per served
|
|
4
|
+
# request, marks it when the peer's $/cancel_request arrives, and hands it to
|
|
5
|
+
# the serving thread, whose handler can observe it and end the request early.
|
|
6
|
+
class ACP::Transport::Cancellation
|
|
7
|
+
KEY: Symbol
|
|
8
|
+
|
|
9
|
+
# Connections read this to expose the serving state to their handlers and
|
|
10
|
+
# write it to carry serving identity onto a thread they spawn; nil off a
|
|
11
|
+
# serve thread.
|
|
12
|
+
#
|
|
13
|
+
# @rbs return: ACP::Transport::Cancellation?
|
|
14
|
+
def self.current: () -> ACP::Transport::Cancellation?
|
|
15
|
+
|
|
16
|
+
# @rbs cancellation: ACP::Transport::Cancellation?
|
|
17
|
+
# @rbs return: void
|
|
18
|
+
def self.current=: (ACP::Transport::Cancellation? cancellation) -> void
|
|
19
|
+
|
|
20
|
+
@lock: Thread::Mutex
|
|
21
|
+
|
|
22
|
+
@cancelled: bool
|
|
23
|
+
|
|
24
|
+
# @rbs return: void
|
|
25
|
+
def initialize: () -> void
|
|
26
|
+
|
|
27
|
+
# @rbs return: void
|
|
28
|
+
def cancel: () -> void
|
|
29
|
+
|
|
30
|
+
# @rbs return: bool
|
|
31
|
+
def cancelled?: () -> bool
|
|
32
|
+
end
|