acp-sdk 0.9.0 → 0.11.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 +32 -0
- data/README.md +20 -8
- data/lib/acp/agent_connection/client.rb +31 -13
- data/lib/acp/agent_connection/optional_method/spec.rb +42 -0
- data/lib/acp/agent_connection/optional_method.rb +36 -0
- data/lib/acp/agent_connection.rb +67 -20
- data/lib/acp/agent_process.rb +0 -13
- data/lib/acp/client_connection/streams.rb +183 -0
- data/lib/acp/client_connection.rb +280 -338
- data/lib/acp/protocol.rb +33 -0
- data/lib/acp/request_error.rb +13 -13
- data/lib/acp/transport/cancellation.rb +13 -3
- data/lib/acp/transport/reply.rb +0 -2
- data/lib/acp/transport/stderr_logger.rb +1 -2
- data/lib/acp/transport/stdio.rb +25 -26
- data/lib/acp/types/audio_content.rb +3 -46
- data/lib/acp/types/auth_method_terminal.rb +3 -59
- data/lib/acp/types/available_commands_update.rb +3 -32
- data/lib/acp/types/boolean_property_schema.rb +3 -41
- data/lib/acp/types/check.rb +210 -0
- data/lib/acp/types/config_option_update.rb +3 -32
- data/lib/acp/types/content.rb +3 -29
- data/lib/acp/types/{elicitation_url_mode → create_elicitation_request/mode/form}/scope.rb +1 -1
- data/lib/acp/types/create_elicitation_request/mode/form.rb +3 -3
- data/lib/acp/types/{elicitation_form_mode → create_elicitation_request/mode/url}/scope.rb +1 -1
- data/lib/acp/types/create_elicitation_request/mode/url.rb +3 -3
- data/lib/acp/types/current_mode_update.rb +3 -29
- data/lib/acp/types/diff.rb +3 -41
- data/lib/acp/types/elicitation_accept_action.rb +3 -26
- data/lib/acp/types/elicitation_form_mode.rb +3 -33
- data/lib/acp/types/elicitation_url_mode.rb +3 -35
- data/lib/acp/types/embedded_resource.rb +3 -44
- data/lib/acp/types/image_content.rb +3 -58
- data/lib/acp/types/integer_property_schema.rb +3 -60
- data/lib/acp/types/mcp_server_http.rb +3 -44
- data/lib/acp/types/mcp_server_sse.rb +3 -44
- data/lib/acp/types/multi_select_property_schema.rb +3 -70
- data/lib/acp/types/number_property_schema.rb +3 -60
- data/lib/acp/types/parse_error.rb +37 -0
- data/lib/acp/types/plan.rb +3 -29
- data/lib/acp/types/resource_link.rb +3 -79
- data/lib/acp/types/selected_permission_outcome.rb +3 -26
- data/lib/acp/types/session_config_boolean.rb +3 -21
- data/lib/acp/types/session_config_select.rb +3 -33
- data/lib/acp/types/session_info_update.rb +3 -42
- data/lib/acp/types/string_multi_select_items.rb +3 -29
- data/lib/acp/types/string_property_schema.rb +3 -105
- data/lib/acp/types/terminal.rb +3 -29
- data/lib/acp/types/text_content.rb +3 -40
- data/lib/acp/types/tool_call.rb +3 -115
- data/lib/acp/types/unstable/compaction_summary_chunk.rb +3 -35
- data/lib/acp/types/unstable/compaction_update.rb +3 -56
- data/lib/acp/types/unstable/idle_state_update.rb +3 -40
- data/lib/acp/types/unstable/mcp_server_acp.rb +3 -35
- data/lib/acp/types/unstable/message_mcp_response/result.rb +1 -1
- data/lib/acp/types/unstable/nes_edit_suggestion.rb +3 -61
- data/lib/acp/types/unstable/nes_jump_suggestion.rb +3 -45
- data/lib/acp/types/unstable/nes_rename_suggestion.rb +3 -51
- data/lib/acp/types/unstable/nes_search_and_replace_suggestion.rb +3 -60
- data/lib/acp/types/unstable/notice.rb +3 -41
- data/lib/acp/types/unstable/plan_file.rb +3 -35
- data/lib/acp/types/unstable/plan_items.rb +3 -38
- data/lib/acp/types/unstable/plan_markdown.rb +3 -35
- data/lib/acp/types/unstable/plan_removed.rb +3 -26
- data/lib/acp/types/unstable/plan_update.rb +3 -33
- data/lib/acp/types/unstable/requires_action_state_update.rb +3 -21
- data/lib/acp/types/unstable/running_state_update.rb +3 -21
- data/lib/acp/types/unstable/session_message.rb +3 -56
- data/lib/acp/types/unstable/session_message_chunk.rb +3 -53
- data/lib/acp/types/unstable/subagent_update.rb +3 -65
- data/lib/acp/types/unstable/unknown_state_update.rb +3 -21
- data/lib/acp/types/unstable.rb +20 -20
- data/lib/acp/types/usage_update.rb +3 -41
- data/lib/acp/types.rb +7 -246
- data/lib/acp/version.rb +1 -1
- data/sig/generated/acp/agent_connection/client.rbs +25 -15
- data/sig/generated/acp/agent_connection/optional_method/spec.rbs +32 -0
- data/sig/generated/acp/agent_connection/optional_method.rbs +3 -0
- data/sig/generated/acp/agent_connection.rbs +34 -13
- data/sig/generated/acp/agent_process.rbs +0 -13
- data/sig/generated/acp/client_connection/streams.rbs +94 -0
- data/sig/generated/acp/client_connection.rbs +128 -131
- data/sig/generated/acp/protocol.rbs +9 -0
- data/sig/generated/acp/request_error.rbs +11 -13
- data/sig/generated/acp/transport/cancellation.rbs +9 -3
- data/sig/generated/acp/transport/reply.rbs +0 -2
- data/sig/generated/acp/transport/stderr_logger.rbs +1 -2
- data/sig/generated/acp/transport/stdio.rbs +14 -22
- data/sig/generated/acp/types/audio_content.rbs +1 -27
- data/sig/generated/acp/types/auth_method_terminal.rbs +1 -35
- data/sig/generated/acp/types/available_commands_update.rbs +1 -19
- data/sig/generated/acp/types/boolean_property_schema.rbs +1 -27
- data/sig/generated/acp/types/check.rbs +115 -0
- data/sig/generated/acp/types/config_option_update.rbs +1 -19
- data/sig/generated/acp/types/content.rbs +1 -19
- data/sig/generated/acp/types/{elicitation_url_mode → create_elicitation_request/mode/form}/scope.rbs +2 -2
- data/sig/generated/acp/types/create_elicitation_request/mode/form.rbs +3 -3
- data/sig/generated/acp/types/{elicitation_form_mode → create_elicitation_request/mode/url}/scope.rbs +2 -2
- data/sig/generated/acp/types/create_elicitation_request/mode/url.rbs +3 -3
- data/sig/generated/acp/types/current_mode_update.rbs +1 -19
- data/sig/generated/acp/types/diff.rbs +1 -27
- data/sig/generated/acp/types/elicitation_accept_action.rbs +1 -15
- data/sig/generated/acp/types/elicitation_form_mode.rbs +1 -19
- data/sig/generated/acp/types/elicitation_url_mode.rbs +1 -23
- data/sig/generated/acp/types/embedded_resource.rbs +1 -23
- data/sig/generated/acp/types/image_content.rbs +1 -31
- data/sig/generated/acp/types/integer_property_schema.rbs +1 -35
- data/sig/generated/acp/types/mcp_server_http.rbs +1 -27
- data/sig/generated/acp/types/mcp_server_sse.rbs +1 -27
- data/sig/generated/acp/types/multi_select_property_schema.rbs +1 -39
- data/sig/generated/acp/types/number_property_schema.rbs +1 -35
- data/sig/generated/acp/types/parse_error.rbs +22 -0
- data/sig/generated/acp/types/plan.rbs +1 -19
- data/sig/generated/acp/types/resource_link.rbs +1 -43
- data/sig/generated/acp/types/selected_permission_outcome.rbs +1 -19
- data/sig/generated/acp/types/session_config_boolean.rbs +1 -15
- data/sig/generated/acp/types/session_config_select.rbs +1 -19
- data/sig/generated/acp/types/session_info_update.rbs +1 -23
- data/sig/generated/acp/types/string_multi_select_items.rbs +1 -19
- data/sig/generated/acp/types/string_property_schema.rbs +1 -51
- data/sig/generated/acp/types/terminal.rbs +1 -19
- data/sig/generated/acp/types/text_content.rbs +1 -23
- data/sig/generated/acp/types/tool_call.rbs +1 -51
- data/sig/generated/acp/types/unstable/compaction_summary_chunk.rbs +1 -23
- data/sig/generated/acp/types/unstable/compaction_update.rbs +1 -31
- data/sig/generated/acp/types/unstable/idle_state_update.rbs +1 -23
- data/sig/generated/acp/types/unstable/mcp_server_acp.rbs +1 -23
- data/sig/generated/acp/types/unstable/nes_edit_suggestion.rbs +1 -31
- data/sig/generated/acp/types/unstable/nes_jump_suggestion.rbs +1 -27
- data/sig/generated/acp/types/unstable/nes_rename_suggestion.rbs +1 -31
- data/sig/generated/acp/types/unstable/nes_search_and_replace_suggestion.rbs +1 -35
- data/sig/generated/acp/types/unstable/notice.rbs +1 -27
- data/sig/generated/acp/types/unstable/plan_file.rbs +1 -23
- data/sig/generated/acp/types/unstable/plan_items.rbs +1 -23
- data/sig/generated/acp/types/unstable/plan_markdown.rbs +1 -23
- data/sig/generated/acp/types/unstable/plan_removed.rbs +1 -19
- data/sig/generated/acp/types/unstable/plan_update.rbs +1 -19
- data/sig/generated/acp/types/unstable/requires_action_state_update.rbs +1 -15
- data/sig/generated/acp/types/unstable/running_state_update.rbs +1 -15
- data/sig/generated/acp/types/unstable/session_message.rbs +1 -31
- data/sig/generated/acp/types/unstable/session_message_chunk.rbs +1 -31
- data/sig/generated/acp/types/unstable/subagent_update.rbs +1 -35
- data/sig/generated/acp/types/unstable/unknown_state_update.rbs +1 -15
- data/sig/generated/acp/types/usage_update.rbs +1 -27
- data/sig/generated/acp/types.rbs +6 -143
- data/sig/manual/acp/agent_connection.rbs +28 -28
- data/sig/manual/acp/client_connection.rbs +7 -2
- data/sig/manual/acp/{agent_connection/optional_method/logout.rbs → protocol.rbs} +3 -3
- data/sig/manual/acp/transport/stdio.rbs +0 -2
- data/sig/manual/acp/transport.rbs +25 -2
- metadata +17 -29
- data/lib/acp/agent_connection/optional_method/authenticate.rb +0 -21
- data/lib/acp/agent_connection/optional_method/close_session.rb +0 -21
- data/lib/acp/agent_connection/optional_method/delete_session.rb +0 -21
- data/lib/acp/agent_connection/optional_method/list_sessions.rb +0 -21
- data/lib/acp/agent_connection/optional_method/load_session.rb +0 -21
- data/lib/acp/agent_connection/optional_method/logout.rb +0 -21
- data/lib/acp/agent_connection/optional_method/resume_session.rb +0 -21
- data/lib/acp/types/content_chunk.rb +0 -40
- data/sig/generated/acp/agent_connection/optional_method/authenticate.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/close_session.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/delete_session.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/list_sessions.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/load_session.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/logout.rbs +0 -13
- data/sig/generated/acp/agent_connection/optional_method/resume_session.rbs +0 -13
- data/sig/generated/acp/types/content_chunk.rbs +0 -25
- data/sig/manual/acp/agent_connection/optional_method/authenticate.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/close_session.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/delete_session.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/list_sessions.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/load_session.rbs +0 -6
- data/sig/manual/acp/agent_connection/optional_method/resume_session.rbs +0 -6
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
# Generated from lib/acp/client_connection.rb with RBS::Inline
|
|
2
2
|
|
|
3
3
|
class ACP::ClientConnection
|
|
4
|
-
@transport: ACP::
|
|
4
|
+
@transport: ACP::Transport::_Transport
|
|
5
5
|
|
|
6
6
|
@permission: ACP::ClientConnection::_PermissionHandler
|
|
7
7
|
|
|
@@ -21,9 +21,9 @@ class ACP::ClientConnection
|
|
|
21
21
|
|
|
22
22
|
@elicitation: (^(ACP::Types::CreateElicitationRequest) -> (ACP::Types::CreateElicitationResponse | ACP::RequestError))?
|
|
23
23
|
|
|
24
|
-
@
|
|
24
|
+
@mcp_message: (^(ACP::Types::Unstable::MessageMcpRequest) -> (ACP::Types::Unstable::MessageMcpResponse::t | ACP::RequestError))?
|
|
25
25
|
|
|
26
|
-
@
|
|
26
|
+
@mcp_advertised: bool?
|
|
27
27
|
|
|
28
28
|
@fs_capabilities: ACP::Types::FileSystemCapabilities?
|
|
29
29
|
|
|
@@ -35,23 +35,68 @@ class ACP::ClientConnection
|
|
|
35
35
|
|
|
36
36
|
@extension_notifications: Hash[String, ^(untyped) -> void]
|
|
37
37
|
|
|
38
|
-
@
|
|
38
|
+
@streams: ACP::ClientConnection::Streams
|
|
39
39
|
|
|
40
|
-
@
|
|
40
|
+
@logger: ACP::Transport::_Logger
|
|
41
41
|
|
|
42
|
-
|
|
42
|
+
IGNORE: ^(ACP::Types::SessionNotification) -> void
|
|
43
43
|
|
|
44
|
-
|
|
44
|
+
class Route
|
|
45
|
+
@label: String
|
|
45
46
|
|
|
46
|
-
|
|
47
|
+
@key: String
|
|
47
48
|
|
|
48
|
-
|
|
49
|
+
@refuse: Symbol
|
|
49
50
|
|
|
50
|
-
|
|
51
|
+
@advertised: ^(untyped) -> (bool | nil)
|
|
52
|
+
|
|
53
|
+
@family: Symbol
|
|
54
|
+
|
|
55
|
+
@handler: Symbol
|
|
56
|
+
|
|
57
|
+
@type: ACP::Transport::_Parser
|
|
58
|
+
|
|
59
|
+
@wire: String
|
|
60
|
+
|
|
61
|
+
# @rbs wire: String
|
|
62
|
+
# @rbs type: ACP::Transport::_Parser
|
|
63
|
+
# @rbs handler: Symbol
|
|
64
|
+
# @rbs family: Symbol
|
|
65
|
+
# @rbs key: String
|
|
66
|
+
# @rbs advertised: ^(untyped) -> (bool | nil)
|
|
67
|
+
# @rbs refuse: Symbol
|
|
68
|
+
# @rbs label: String?
|
|
69
|
+
# @rbs return: void
|
|
70
|
+
def initialize: (wire: String, type: ACP::Transport::_Parser, handler: Symbol, family: Symbol, key: String, ?advertised: ^(untyped) -> (bool | nil), ?refuse: Symbol, ?label: String?) -> void
|
|
51
71
|
|
|
52
|
-
|
|
72
|
+
# @dynamic wire, type, handler, family, advertised, refuse, key, label
|
|
73
|
+
attr_reader wire: String
|
|
74
|
+
|
|
75
|
+
attr_reader type: ACP::Transport::_Parser
|
|
76
|
+
|
|
77
|
+
attr_reader handler: Symbol
|
|
78
|
+
|
|
79
|
+
attr_reader family: Symbol
|
|
80
|
+
|
|
81
|
+
attr_reader advertised: ^(untyped) -> (bool | nil)
|
|
82
|
+
|
|
83
|
+
attr_reader refuse: Symbol
|
|
84
|
+
|
|
85
|
+
attr_reader key: String
|
|
86
|
+
|
|
87
|
+
attr_reader label: String
|
|
88
|
+
end
|
|
89
|
+
|
|
90
|
+
# The routes are registered at start, before connect records the
|
|
91
|
+
# advertisement, so each one answers its refusal until then. The terminal
|
|
92
|
+
# capability is a single bool, so its five routes share one gate.
|
|
93
|
+
#
|
|
94
|
+
# The terminal handlers may block for as long as the command runs, so the
|
|
95
|
+
# transport must serve each request on its own thread for this not to hold
|
|
96
|
+
# up others.
|
|
97
|
+
SERVE: Array[ACP::ClientConnection::Route]
|
|
53
98
|
|
|
54
|
-
# @rbs transport: ACP::
|
|
99
|
+
# @rbs transport: ACP::Transport::_Transport
|
|
55
100
|
# @rbs permission: ACP::ClientConnection::_PermissionHandler
|
|
56
101
|
# @rbs read_text_file: (^(ACP::Types::ReadTextFileRequest) -> (ACP::Types::ReadTextFileResponse | ACP::RequestError))?
|
|
57
102
|
# @rbs write_text_file: (^(ACP::Types::WriteTextFileRequest) -> (ACP::Types::WriteTextFileResponse | ACP::RequestError))?
|
|
@@ -65,11 +110,14 @@ class ACP::ClientConnection
|
|
|
65
110
|
# (ACP::Types::CreateElicitationResponse | ACP::RequestError))?
|
|
66
111
|
# @rbs complete_elicitation: (^(ACP::Types::CompleteElicitationNotification) -> void)?
|
|
67
112
|
# @rbs updates: ACP::ClientConnection::_UpdateHandler
|
|
113
|
+
# @rbs mcp_message: (^(ACP::Types::Unstable::MessageMcpRequest) ->
|
|
114
|
+
# (ACP::Types::Unstable::MessageMcpResponse::t | ACP::RequestError))?
|
|
68
115
|
# @rbs extension_requests: Hash[String, ^(untyped) -> untyped]
|
|
69
116
|
# @rbs extension_notifications: Hash[String, ^(untyped) -> void]
|
|
117
|
+
# @rbs streams: ACP::ClientConnection::Streams?
|
|
70
118
|
# @rbs logger: ACP::Transport::_Logger
|
|
71
119
|
# @rbs return: void
|
|
72
|
-
def initialize: (transport: ACP::
|
|
120
|
+
def initialize: (transport: ACP::Transport::_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], ?streams: ACP::ClientConnection::Streams?, ?logger: ACP::Transport::_Logger) -> void
|
|
73
121
|
|
|
74
122
|
# @rbs return: Thread
|
|
75
123
|
def start: () -> Thread
|
|
@@ -83,56 +131,74 @@ class ACP::ClientConnection
|
|
|
83
131
|
|
|
84
132
|
# @rbs request: ACP::Types::NewSessionRequest
|
|
85
133
|
# @rbs return: ACP::Types::NewSessionResponse | ACP::RequestError
|
|
86
|
-
def
|
|
134
|
+
def new_session: (ACP::Types::NewSessionRequest request) -> (ACP::Types::NewSessionResponse | ACP::RequestError)
|
|
87
135
|
|
|
88
136
|
# @rbs request: ACP::Types::PromptRequest
|
|
89
137
|
# @rbs &block: (ACP::Types::SessionUpdate::t) -> void
|
|
90
138
|
# @rbs return: ACP::Types::PromptResponse | ACP::RequestError
|
|
91
|
-
def
|
|
139
|
+
def prompt_session: (ACP::Types::PromptRequest request) { (ACP::Types::SessionUpdate::t) -> void } -> (ACP::Types::PromptResponse | ACP::RequestError)
|
|
92
140
|
|
|
93
141
|
# @rbs request: ACP::Types::LoadSessionRequest
|
|
94
142
|
# @rbs &block: (ACP::Types::SessionUpdate::t) -> void
|
|
95
143
|
# @rbs return: ACP::Types::LoadSessionResponse | ACP::RequestError
|
|
96
|
-
def
|
|
144
|
+
def load_session: (ACP::Types::LoadSessionRequest request) { (ACP::Types::SessionUpdate::t) -> void } -> (ACP::Types::LoadSessionResponse | ACP::RequestError)
|
|
97
145
|
|
|
98
146
|
# @rbs request: ACP::Types::ListSessionsRequest
|
|
99
147
|
# @rbs return: ACP::Types::ListSessionsResponse | ACP::RequestError
|
|
100
|
-
def
|
|
148
|
+
def list_sessions: (ACP::Types::ListSessionsRequest request) -> (ACP::Types::ListSessionsResponse | ACP::RequestError)
|
|
101
149
|
|
|
102
|
-
# The agent does not replay history on resume, so unlike
|
|
150
|
+
# The agent does not replay history on resume, so unlike load_session there
|
|
103
151
|
# is nothing to stream and no block is taken.
|
|
104
152
|
#
|
|
105
153
|
# @rbs request: ACP::Types::ResumeSessionRequest
|
|
106
154
|
# @rbs return: ACP::Types::ResumeSessionResponse | ACP::RequestError
|
|
107
|
-
def
|
|
155
|
+
def resume_session: (ACP::Types::ResumeSessionRequest request) -> (ACP::Types::ResumeSessionResponse | ACP::RequestError)
|
|
108
156
|
|
|
109
157
|
# @rbs request: ACP::Types::CloseSessionRequest
|
|
110
158
|
# @rbs return: ACP::Types::CloseSessionResponse | ACP::RequestError
|
|
111
|
-
def
|
|
159
|
+
def close_session: (ACP::Types::CloseSessionRequest request) -> (ACP::Types::CloseSessionResponse | ACP::RequestError)
|
|
112
160
|
|
|
113
161
|
# @rbs request: ACP::Types::DeleteSessionRequest
|
|
114
162
|
# @rbs return: ACP::Types::DeleteSessionResponse | ACP::RequestError
|
|
115
|
-
def
|
|
163
|
+
def delete_session: (ACP::Types::DeleteSessionRequest request) -> (ACP::Types::DeleteSessionResponse | ACP::RequestError)
|
|
164
|
+
|
|
165
|
+
# @rbs request: ACP::Types::Unstable::ForkSessionRequest
|
|
166
|
+
# @rbs return: (ACP::Types::Unstable::ForkSessionResponse | ACP::RequestError)
|
|
167
|
+
def fork_session: (ACP::Types::Unstable::ForkSessionRequest request) -> (ACP::Types::Unstable::ForkSessionResponse | ACP::RequestError)
|
|
168
|
+
|
|
169
|
+
# @rbs request: ACP::Types::Unstable::ListProvidersRequest
|
|
170
|
+
# @rbs return: (ACP::Types::Unstable::ListProvidersResponse | ACP::RequestError)
|
|
171
|
+
def list_providers: (ACP::Types::Unstable::ListProvidersRequest request) -> (ACP::Types::Unstable::ListProvidersResponse | ACP::RequestError)
|
|
172
|
+
|
|
173
|
+
# @rbs request: ACP::Types::Unstable::SetProviderRequest
|
|
174
|
+
# @rbs return: (ACP::Types::Unstable::SetProviderResponse | ACP::RequestError)
|
|
175
|
+
# The name is the wire-mandated providers/set, not an attribute writer.
|
|
176
|
+
def set_provider: (ACP::Types::Unstable::SetProviderRequest request) -> (ACP::Types::Unstable::SetProviderResponse | ACP::RequestError)
|
|
177
|
+
|
|
178
|
+
# @rbs request: ACP::Types::Unstable::DisableProviderRequest
|
|
179
|
+
# @rbs return: (ACP::Types::Unstable::DisableProviderResponse | ACP::RequestError)
|
|
180
|
+
def disable_provider: (ACP::Types::Unstable::DisableProviderRequest request) -> (ACP::Types::Unstable::DisableProviderResponse | ACP::RequestError)
|
|
116
181
|
|
|
117
182
|
# The spec requires a pending session/request_permission to be answered with
|
|
118
|
-
# the cancelled outcome once the turn is cancelled
|
|
119
|
-
#
|
|
120
|
-
# so the wire order is cancel, then the cancelled replies.
|
|
183
|
+
# the cancelled outcome once the turn is cancelled. The notification goes
|
|
184
|
+
# first so the wire order is cancel, then the cancelled replies.
|
|
121
185
|
#
|
|
122
186
|
# @rbs notification: ACP::Types::CancelNotification
|
|
123
187
|
# @rbs return: void
|
|
124
|
-
def
|
|
188
|
+
def cancel_session: (ACP::Types::CancelNotification notification) -> void
|
|
125
189
|
|
|
126
190
|
# @rbs request: ACP::Types::SetSessionModeRequest
|
|
127
191
|
# @rbs return: ACP::Types::SetSessionModeResponse | ACP::RequestError
|
|
128
|
-
|
|
192
|
+
# The name is the wire-mandated session/set_mode, not an attribute writer.
|
|
193
|
+
def set_session_mode: (ACP::Types::SetSessionModeRequest request) -> (ACP::Types::SetSessionModeResponse | ACP::RequestError)
|
|
129
194
|
|
|
130
195
|
# The reply carries the session's complete option list, so it replaces any
|
|
131
196
|
# state held from an earlier reply rather than merging into it.
|
|
132
197
|
#
|
|
133
198
|
# @rbs request: ACP::Types::SetSessionConfigOptionRequest
|
|
134
199
|
# @rbs return: ACP::Types::SetSessionConfigOptionResponse | ACP::RequestError
|
|
135
|
-
|
|
200
|
+
# The name is the wire-mandated session/set_config_option, not an attribute writer.
|
|
201
|
+
def set_session_config_option: (ACP::Types::SetSessionConfigOptionRequest request) -> (ACP::Types::SetSessionConfigOptionResponse | ACP::RequestError)
|
|
136
202
|
|
|
137
203
|
# @rbs request: ACP::Types::AuthenticateRequest
|
|
138
204
|
# @rbs return: ACP::Types::AuthenticateResponse | ACP::RequestError
|
|
@@ -142,137 +208,68 @@ class ACP::ClientConnection
|
|
|
142
208
|
# @rbs return: ACP::Types::LogoutResponse | ACP::RequestError
|
|
143
209
|
def logout: (ACP::Types::LogoutRequest request) -> (ACP::Types::LogoutResponse | ACP::RequestError)
|
|
144
210
|
|
|
145
|
-
#
|
|
146
|
-
# returns the agent's reply as-is: extension methods have no schema to
|
|
147
|
-
# parse the result into.
|
|
211
|
+
# Extension methods have no schema to parse the result into.
|
|
148
212
|
#
|
|
149
213
|
# @rbs method: String
|
|
150
214
|
# @rbs params: untyped
|
|
151
215
|
# @rbs return: (Hash[String, untyped] | ACP::RequestError)
|
|
152
216
|
def ext_request: (String method, ?untyped params) -> (Hash[String, untyped] | ACP::RequestError)
|
|
153
217
|
|
|
154
|
-
#
|
|
155
|
-
# @rbs params: untyped
|
|
156
|
-
# @rbs return: void
|
|
157
|
-
def ext_notify: (String method, ?untyped params) -> void
|
|
158
|
-
|
|
159
|
-
private
|
|
160
|
-
|
|
161
|
-
# @rbs type: ACP::AgentConnection::_Parser
|
|
162
|
-
# @rbs result: (Hash[String, untyped] | ACP::RequestError)
|
|
163
|
-
# @rbs return: untyped
|
|
164
|
-
def parse: (ACP::AgentConnection::_Parser type, Hash[String, untyped] | ACP::RequestError result) -> untyped
|
|
165
|
-
|
|
166
|
-
# The request waits on its own thread so the caller's thread can yield each
|
|
167
|
-
# update as it arrives. The reader thread queues an update before it settles
|
|
168
|
-
# a reply sent after it, so the queue closes only after the last one.
|
|
218
|
+
# Always false off a handler thread.
|
|
169
219
|
#
|
|
170
|
-
# @rbs
|
|
171
|
-
|
|
172
|
-
# @rbs params: Hash[String, untyped]
|
|
173
|
-
# @rbs &block: (ACP::Types::SessionUpdate::t) -> void
|
|
174
|
-
# @rbs return: (Hash[String, untyped] | ACP::RequestError)
|
|
175
|
-
def stream: (String session_id, String method, Hash[String, untyped] params) { (ACP::Types::SessionUpdate::t) -> void } -> (Hash[String, untyped] | ACP::RequestError)
|
|
220
|
+
# @rbs return: bool
|
|
221
|
+
def cancelled?: () -> bool
|
|
176
222
|
|
|
177
|
-
#
|
|
178
|
-
# lookup and the push. A malformed notification has no reply to carry the
|
|
179
|
-
# failure.
|
|
180
|
-
#
|
|
223
|
+
# @rbs method: String
|
|
181
224
|
# @rbs params: untyped
|
|
182
225
|
# @rbs return: void
|
|
183
|
-
def
|
|
226
|
+
def ext_notify: (String method, ?untyped params) -> void
|
|
184
227
|
|
|
185
|
-
#
|
|
186
|
-
#
|
|
187
|
-
#
|
|
228
|
+
# Unlike the mcp/message serve route, this send is not gated: a notification
|
|
229
|
+
# has no reply to carry a refusal, and the agent drops what it did not
|
|
230
|
+
# advertise.
|
|
188
231
|
#
|
|
189
|
-
# @rbs
|
|
190
|
-
# @rbs return: (ACP::Types::RequestPermissionResponse | ACP::RequestError)
|
|
191
|
-
def request_permission: (untyped params) -> (ACP::Types::RequestPermissionResponse | ACP::RequestError)
|
|
192
|
-
|
|
193
|
-
# @rbs session_id: String
|
|
194
|
-
# @rbs replies: Thread::Queue
|
|
232
|
+
# @rbs notification: ACP::Types::Unstable::MessageMcpNotification
|
|
195
233
|
# @rbs return: void
|
|
196
|
-
def
|
|
234
|
+
def mcp_message_notification: (ACP::Types::Unstable::MessageMcpNotification notification) -> void
|
|
197
235
|
|
|
198
|
-
|
|
199
|
-
# @rbs replies: Thread::Queue
|
|
200
|
-
# @rbs return: void
|
|
201
|
-
def unregister_permission: (String session_id, Thread::Queue replies) -> void
|
|
202
|
-
|
|
203
|
-
# The routes are registered at start, before connect records the advertised
|
|
204
|
-
# capabilities, so each one answers -32601 until then.
|
|
205
|
-
#
|
|
206
|
-
# @rbs params: untyped
|
|
207
|
-
# @rbs return: (ACP::Types::ReadTextFileResponse | ACP::RequestError)
|
|
208
|
-
def read_text_file: (untyped params) -> (ACP::Types::ReadTextFileResponse | ACP::RequestError)
|
|
236
|
+
private
|
|
209
237
|
|
|
210
|
-
# @rbs
|
|
211
|
-
# @rbs return: (
|
|
212
|
-
def
|
|
238
|
+
# @rbs route: ACP::ClientConnection::Route
|
|
239
|
+
# @rbs return: ^(untyped) -> (untyped | ACP::RequestError)
|
|
240
|
+
def serve: (ACP::ClientConnection::Route route) -> ^(untyped) -> (untyped | ACP::RequestError)
|
|
213
241
|
|
|
214
|
-
#
|
|
215
|
-
#
|
|
216
|
-
|
|
217
|
-
# @rbs params: untyped
|
|
218
|
-
# @rbs return: (ACP::Types::CreateTerminalResponse | ACP::RequestError)
|
|
219
|
-
def create_terminal: (untyped params) -> (ACP::Types::CreateTerminalResponse | ACP::RequestError)
|
|
242
|
+
# @rbs route: ACP::ClientConnection::Route
|
|
243
|
+
# @rbs return: ACP::RequestError
|
|
244
|
+
def refuse: (ACP::ClientConnection::Route route) -> ACP::RequestError
|
|
220
245
|
|
|
221
|
-
# @rbs
|
|
222
|
-
# @rbs
|
|
223
|
-
|
|
246
|
+
# @rbs name: String
|
|
247
|
+
# @rbs family: Symbol
|
|
248
|
+
# @rbs capabilities: untyped
|
|
249
|
+
# @rbs return: void
|
|
250
|
+
def check_served: (String name, Symbol family, untyped capabilities) -> void
|
|
224
251
|
|
|
225
|
-
# The
|
|
226
|
-
#
|
|
252
|
+
# The unstable types are referenced while the row is built, so the route can
|
|
253
|
+
# only be served when the caller opted in with `require 'acp/types/unstable'`.
|
|
254
|
+
# It is registered only when a handler serves it: unlike the fs and terminal
|
|
255
|
+
# gates, the mcp gate reads the agent's advertisement, so nothing forces an
|
|
256
|
+
# advertised request to have a handler.
|
|
227
257
|
#
|
|
228
|
-
# @rbs
|
|
229
|
-
|
|
230
|
-
def wait_for_terminal_exit: (untyped params) -> (ACP::Types::WaitForTerminalExitResponse | ACP::RequestError)
|
|
231
|
-
|
|
232
|
-
# @rbs params: untyped
|
|
233
|
-
# @rbs return: (ACP::Types::KillTerminalResponse | ACP::RequestError)
|
|
234
|
-
def kill_terminal: (untyped params) -> (ACP::Types::KillTerminalResponse | ACP::RequestError)
|
|
258
|
+
# @rbs return: Hash[String, ^(untyped) -> (untyped | ACP::RequestError)]
|
|
259
|
+
def mcp_requests: () -> Hash[String, ^(untyped) -> (untyped | ACP::RequestError)]
|
|
235
260
|
|
|
236
|
-
# @rbs
|
|
237
|
-
# @rbs
|
|
238
|
-
|
|
261
|
+
# @rbs type: ACP::Transport::_Parser
|
|
262
|
+
# @rbs result: (Hash[String, untyped] | ACP::RequestError)
|
|
263
|
+
# @rbs return: untyped
|
|
264
|
+
def parse: (ACP::Transport::_Parser type, Hash[String, untyped] | ACP::RequestError result) -> untyped
|
|
239
265
|
|
|
240
|
-
# The
|
|
266
|
+
# The route is registered at start, before connect records the advertised
|
|
241
267
|
# capabilities, so a request for an unadvertised mode answers -32602.
|
|
242
268
|
#
|
|
243
269
|
# @rbs params: untyped
|
|
244
270
|
# @rbs return: (ACP::Types::CreateElicitationResponse | ACP::RequestError)
|
|
245
271
|
def create_elicitation: (untyped params) -> (ACP::Types::CreateElicitationResponse | ACP::RequestError)
|
|
246
272
|
|
|
247
|
-
# The spec requires a completion for an unknown or already-completed
|
|
248
|
-
# elicitation id to be ignored, so only an id registered by a served
|
|
249
|
-
# url-mode request reaches the handler. It runs on the transport's reader
|
|
250
|
-
# thread, so it must return quickly.
|
|
251
|
-
#
|
|
252
|
-
# @rbs params: untyped
|
|
253
|
-
# @rbs return: void
|
|
254
|
-
def complete_elicitation: (untyped params) -> void
|
|
255
|
-
|
|
256
|
-
# @rbs elicitation_id: String
|
|
257
|
-
# @rbs return: void
|
|
258
|
-
def register_elicitation: (String elicitation_id) -> void
|
|
259
|
-
|
|
260
|
-
# The fs capabilities initialize advertises that no injected handler serves.
|
|
261
|
-
#
|
|
262
|
-
# @rbs capabilities: ACP::Types::FileSystemCapabilities?
|
|
263
|
-
# @rbs return: Array[String]
|
|
264
|
-
def unserved_fs_methods: (ACP::Types::FileSystemCapabilities? capabilities) -> Array[String]
|
|
265
|
-
|
|
266
|
-
# The terminal capabilities initialize advertises that no injected handler
|
|
267
|
-
# serves.
|
|
268
|
-
#
|
|
269
|
-
# @rbs capabilities: bool?
|
|
270
|
-
# @rbs return: Array[String]
|
|
271
|
-
def unserved_terminal_methods: (bool? capabilities) -> Array[String]
|
|
272
|
-
|
|
273
|
-
# The elicitation capabilities initialize advertises that no injected
|
|
274
|
-
# handler serves.
|
|
275
|
-
#
|
|
276
273
|
# @rbs capabilities: ACP::Types::ElicitationCapabilities?
|
|
277
274
|
# @rbs return: Array[String]
|
|
278
275
|
def unserved_elicitation_modes: (ACP::Types::ElicitationCapabilities? capabilities) -> Array[String]
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Generated from lib/acp/protocol.rb with RBS::Inline
|
|
2
|
+
|
|
3
|
+
module ACP::Protocol
|
|
4
|
+
PROTOCOL_VERSION: Integer
|
|
5
|
+
|
|
6
|
+
# @rbs capabilities: (ACP::Types::AgentCapabilities | ACP::Types::Unstable::AgentCapabilities | Hash[String, untyped])
|
|
7
|
+
# @rbs return: bool
|
|
8
|
+
def mcp_acp_advertised?: (ACP::Types::AgentCapabilities | ACP::Types::Unstable::AgentCapabilities | Hash[String, untyped] capabilities) -> bool
|
|
9
|
+
end
|
|
@@ -1,8 +1,6 @@
|
|
|
1
1
|
# Generated from lib/acp/request_error.rb with RBS::Inline
|
|
2
2
|
|
|
3
|
-
#
|
|
4
|
-
# RequestError: built by handlers and local refusals, and decoded from a
|
|
5
|
-
# peer's error replies by the transport.
|
|
3
|
+
# Named after the official SDKs' RequestError rather than the schema's Error.
|
|
6
4
|
class ACP::RequestError
|
|
7
5
|
PARSE_ERROR: Integer
|
|
8
6
|
|
|
@@ -52,24 +50,25 @@ class ACP::RequestError
|
|
|
52
50
|
# @rbs return: ACP::RequestError
|
|
53
51
|
def self.invalid_params: (?Array[String]? errors) -> ACP::RequestError
|
|
54
52
|
|
|
55
|
-
# The
|
|
56
|
-
#
|
|
57
|
-
# apart from an unknown method.
|
|
53
|
+
# The message names the capability so the refusal can be told apart from an
|
|
54
|
+
# unknown method, though both use the -32601 code.
|
|
58
55
|
#
|
|
59
56
|
# @rbs capability: String
|
|
60
57
|
# @rbs return: ACP::RequestError
|
|
61
58
|
def self.unadvertised: (String capability) -> ACP::RequestError
|
|
62
59
|
|
|
63
|
-
# The
|
|
64
|
-
#
|
|
65
|
-
#
|
|
66
|
-
# mode in its params, so an unadvertised one is invalid params rather than
|
|
67
|
-
# method not found.
|
|
60
|
+
# The message names the mode so the refusal can be told apart from malformed
|
|
61
|
+
# params. The spec gives elicitation a mode in its params, so an unadvertised
|
|
62
|
+
# one is invalid params rather than method not found.
|
|
68
63
|
#
|
|
69
64
|
# @rbs mode: String
|
|
70
65
|
# @rbs return: ACP::RequestError
|
|
71
66
|
def self.unadvertised_mode: (String mode) -> ACP::RequestError
|
|
72
67
|
|
|
68
|
+
# @rbs capability: String
|
|
69
|
+
# @rbs return: ACP::RequestError
|
|
70
|
+
def self.unadvertised_agent: (String capability) -> ACP::RequestError
|
|
71
|
+
|
|
73
72
|
# @rbs return: ACP::RequestError
|
|
74
73
|
def self.internal_error: () -> ACP::RequestError
|
|
75
74
|
|
|
@@ -80,8 +79,7 @@ class ACP::RequestError
|
|
|
80
79
|
# @rbs return: ACP::RequestError
|
|
81
80
|
def self.invalid_response: (untyped response) -> ACP::RequestError
|
|
82
81
|
|
|
83
|
-
#
|
|
84
|
-
# not speak; the message names both versions so logs can tell it from a
|
|
82
|
+
# The message names both versions so logs can tell this local refusal from a
|
|
85
83
|
# peer's error.
|
|
86
84
|
#
|
|
87
85
|
# @rbs requested: Integer
|
|
@@ -1,9 +1,15 @@
|
|
|
1
1
|
# Generated from lib/acp/transport/cancellation.rb with RBS::Inline
|
|
2
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
3
|
class ACP::Transport::Cancellation
|
|
4
|
+
KEY: Symbol
|
|
5
|
+
|
|
6
|
+
# @rbs return: ACP::Transport::Cancellation?
|
|
7
|
+
def self.current: () -> ACP::Transport::Cancellation?
|
|
8
|
+
|
|
9
|
+
# @rbs cancellation: ACP::Transport::Cancellation?
|
|
10
|
+
# @rbs return: void
|
|
11
|
+
def self.current=: (ACP::Transport::Cancellation? cancellation) -> void
|
|
12
|
+
|
|
7
13
|
@lock: Thread::Mutex
|
|
8
14
|
|
|
9
15
|
@cancelled: bool
|
|
@@ -1,7 +1,5 @@
|
|
|
1
1
|
# Generated from lib/acp/transport/reply.rb with RBS::Inline
|
|
2
2
|
|
|
3
|
-
# A request handler's outcome plus a callback the transport runs once that
|
|
4
|
-
# outcome is on the wire, for messages the peer must only see after the reply.
|
|
5
3
|
class ACP::Transport::Reply
|
|
6
4
|
# @dynamic result
|
|
7
5
|
attr_reader result: ACP::Transport::Stdio::_ToH
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
# Generated from lib/acp/transport/stderr_logger.rb with RBS::Inline
|
|
2
2
|
|
|
3
|
-
# The
|
|
4
|
-
# sanctions agents logging to stderr.
|
|
3
|
+
# The spec sanctions agents logging to stderr.
|
|
5
4
|
class ACP::Transport::StderrLogger
|
|
6
5
|
# @rbs message: String
|
|
7
6
|
# @rbs return: void
|
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
# Generated from lib/acp/transport/stdio.rb with RBS::Inline
|
|
2
2
|
|
|
3
|
-
#
|
|
4
|
-
#
|
|
5
|
-
#
|
|
6
|
-
#
|
|
7
|
-
# that arrive meanwhile.
|
|
3
|
+
# A reader thread dispatches inbound messages while outbound requests are
|
|
4
|
+
# pending, and each inbound request is served on its own thread, so a handler
|
|
5
|
+
# can make an outbound request mid-turn and still see notifications (e.g.
|
|
6
|
+
# session/cancel) that arrive meanwhile.
|
|
8
7
|
class ACP::Transport::Stdio
|
|
9
8
|
@logger: ACP::Transport::_Logger
|
|
10
9
|
|
|
@@ -26,17 +25,12 @@ class ACP::Transport::Stdio
|
|
|
26
25
|
|
|
27
26
|
CONNECTION_CLOSED: ACP::RequestError
|
|
28
27
|
|
|
29
|
-
SERVING_CANCEL: Symbol
|
|
30
|
-
|
|
31
28
|
# @rbs input: _Reader
|
|
32
29
|
# @rbs output: _Writer
|
|
33
30
|
# @rbs logger: ACP::Transport::_Logger
|
|
34
31
|
# @rbs return: void
|
|
35
32
|
def initialize: (input: _Reader, output: _Writer, ?logger: ACP::Transport::_Logger) -> void
|
|
36
33
|
|
|
37
|
-
# Returns the reader thread, which ends at EOF on input after releasing any
|
|
38
|
-
# pending outbound requests.
|
|
39
|
-
#
|
|
40
34
|
# @rbs requests: Hash[String, _Handler]
|
|
41
35
|
# @rbs notifications: Hash[String, _NotificationHandler]
|
|
42
36
|
# @rbs return: Thread
|
|
@@ -44,8 +38,8 @@ class ACP::Transport::Stdio
|
|
|
44
38
|
|
|
45
39
|
# @rbs method: String
|
|
46
40
|
# @rbs params: untyped
|
|
47
|
-
# @rbs return:
|
|
48
|
-
def request: (String method, ?untyped params) ->
|
|
41
|
+
# @rbs return: untyped
|
|
42
|
+
def request: (String method, ?untyped params) -> untyped
|
|
49
43
|
|
|
50
44
|
# @rbs method: String
|
|
51
45
|
# @rbs params: untyped
|
|
@@ -59,11 +53,12 @@ class ACP::Transport::Stdio
|
|
|
59
53
|
# @rbs return: void
|
|
60
54
|
def cancel: (untyped id) -> void
|
|
61
55
|
|
|
62
|
-
#
|
|
63
|
-
#
|
|
64
|
-
# and can end early with ACP::RequestError.request_cancelled; whatever it
|
|
65
|
-
# returns, the transport sends exactly one response.
|
|
56
|
+
# Each id is re-checked against the pending table, so one that settled
|
|
57
|
+
# between the snapshot and its cancel is not cancelled.
|
|
66
58
|
#
|
|
59
|
+
# @rbs return: void
|
|
60
|
+
def cancel_requests: () -> void
|
|
61
|
+
|
|
67
62
|
# @rbs return: ACP::Transport::Cancellation?
|
|
68
63
|
def cancellation: () -> ACP::Transport::Cancellation?
|
|
69
64
|
|
|
@@ -138,9 +133,6 @@ class ACP::Transport::Stdio
|
|
|
138
133
|
# @rbs return: (_ToH | ACP::RequestError | ACP::Transport::Reply)
|
|
139
134
|
def invoke: (_Handler handler, untyped params) -> (_ToH | ACP::RequestError | ACP::Transport::Reply)
|
|
140
135
|
|
|
141
|
-
# The success arm is whatever the handler returned, which the transport only
|
|
142
|
-
# knows serializes with to_h; RequestError picks the error arm of the reply.
|
|
143
|
-
#
|
|
144
136
|
# @rbs id: untyped
|
|
145
137
|
# @rbs outcome: (_ToH | ACP::RequestError)
|
|
146
138
|
# @rbs return: void
|
|
@@ -151,9 +143,9 @@ class ACP::Transport::Stdio
|
|
|
151
143
|
def register: (Thread::Queue queue) -> Integer?
|
|
152
144
|
|
|
153
145
|
# @rbs id: untyped
|
|
154
|
-
# @rbs result:
|
|
155
|
-
# @rbs return:
|
|
156
|
-
def settle: (untyped id,
|
|
146
|
+
# @rbs result: untyped
|
|
147
|
+
# @rbs return: Thread::Queue?
|
|
148
|
+
def settle: (untyped id, untyped result) -> Thread::Queue?
|
|
157
149
|
|
|
158
150
|
# @rbs return: void
|
|
159
151
|
def close: () -> void
|
|
@@ -1,29 +1,3 @@
|
|
|
1
1
|
# Generated from lib/acp/types/audio_content.rb with RBS::Inline
|
|
2
2
|
|
|
3
|
-
class ACP::Types::AudioContent
|
|
4
|
-
# @dynamic annotations
|
|
5
|
-
attr_reader annotations: ACP::Types::Annotations?
|
|
6
|
-
|
|
7
|
-
# @dynamic data
|
|
8
|
-
attr_reader data: String
|
|
9
|
-
|
|
10
|
-
# @dynamic mime_type
|
|
11
|
-
attr_reader mime_type: String
|
|
12
|
-
|
|
13
|
-
# @dynamic meta
|
|
14
|
-
attr_reader meta: Hash[String, untyped]?
|
|
15
|
-
|
|
16
|
-
# @rbs annotations: ACP::Types::Annotations?
|
|
17
|
-
# @rbs data: String
|
|
18
|
-
# @rbs mime_type: String
|
|
19
|
-
# @rbs meta: Hash[String, untyped]?
|
|
20
|
-
# @rbs return: void
|
|
21
|
-
def initialize: (data: String, mime_type: String, ?annotations: ACP::Types::Annotations?, ?meta: Hash[String, untyped]?) -> void
|
|
22
|
-
|
|
23
|
-
# @rbs hash: Hash[String, untyped]
|
|
24
|
-
# @rbs return: ACP::Types::AudioContent
|
|
25
|
-
def self.from_h: (Hash[String, untyped] hash) -> ACP::Types::AudioContent
|
|
26
|
-
|
|
27
|
-
# @rbs return: Hash[String, untyped]
|
|
28
|
-
def to_h: () -> Hash[String, untyped]
|
|
29
|
-
end
|
|
3
|
+
class ACP::Types::AudioContent = ACP::Types::ContentBlock::Audio
|
|
@@ -1,37 +1,3 @@
|
|
|
1
1
|
# Generated from lib/acp/types/auth_method_terminal.rb with RBS::Inline
|
|
2
2
|
|
|
3
|
-
class ACP::Types::AuthMethodTerminal
|
|
4
|
-
# @dynamic id
|
|
5
|
-
attr_reader id: String
|
|
6
|
-
|
|
7
|
-
# @dynamic name
|
|
8
|
-
attr_reader name: String
|
|
9
|
-
|
|
10
|
-
# @dynamic description
|
|
11
|
-
attr_reader description: String?
|
|
12
|
-
|
|
13
|
-
# @dynamic args
|
|
14
|
-
attr_reader args: Array[String]?
|
|
15
|
-
|
|
16
|
-
# @dynamic env
|
|
17
|
-
attr_reader env: Hash[String, String]?
|
|
18
|
-
|
|
19
|
-
# @dynamic meta
|
|
20
|
-
attr_reader meta: Hash[String, untyped]?
|
|
21
|
-
|
|
22
|
-
# @rbs id: String
|
|
23
|
-
# @rbs name: String
|
|
24
|
-
# @rbs description: String?
|
|
25
|
-
# @rbs args: Array[String]?
|
|
26
|
-
# @rbs env: Hash[String, String]?
|
|
27
|
-
# @rbs meta: Hash[String, untyped]?
|
|
28
|
-
# @rbs return: void
|
|
29
|
-
def initialize: (id: String, name: String, ?description: String?, ?args: Array[String]?, ?env: Hash[String, String]?, ?meta: Hash[String, untyped]?) -> void
|
|
30
|
-
|
|
31
|
-
# @rbs hash: Hash[String, untyped]
|
|
32
|
-
# @rbs return: ACP::Types::AuthMethodTerminal
|
|
33
|
-
def self.from_h: (Hash[String, untyped] hash) -> ACP::Types::AuthMethodTerminal
|
|
34
|
-
|
|
35
|
-
# @rbs return: Hash[String, untyped]
|
|
36
|
-
def to_h: () -> Hash[String, untyped]
|
|
37
|
-
end
|
|
3
|
+
class ACP::Types::AuthMethodTerminal = ACP::Types::AuthMethod::Terminal
|