acp-sdk 0.10.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (187) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +29 -0
  3. data/README.md +19 -5
  4. data/lib/acp/agent_connection/client.rb +7 -19
  5. data/lib/acp/agent_connection/optional_method/spec.rb +42 -0
  6. data/lib/acp/agent_connection/optional_method.rb +36 -0
  7. data/lib/acp/agent_connection.rb +17 -40
  8. data/lib/acp/agent_process.rb +0 -13
  9. data/lib/acp/client_connection/streams.rb +183 -0
  10. data/lib/acp/client_connection.rb +227 -384
  11. data/lib/acp/protocol.rb +33 -0
  12. data/lib/acp/request_error.rb +17 -17
  13. data/lib/acp/transport/cancellation.rb +0 -7
  14. data/lib/acp/transport/reply.rb +0 -2
  15. data/lib/acp/transport/stderr_logger.rb +1 -2
  16. data/lib/acp/transport/stdio/serving.rb +18 -0
  17. data/lib/acp/transport/stdio.rb +67 -59
  18. data/lib/acp/types/audio_content.rb +3 -46
  19. data/lib/acp/types/auth_method_terminal.rb +3 -59
  20. data/lib/acp/types/available_commands_update.rb +3 -32
  21. data/lib/acp/types/boolean_property_schema.rb +3 -41
  22. data/lib/acp/types/check.rb +210 -0
  23. data/lib/acp/types/config_option_update.rb +3 -32
  24. data/lib/acp/types/content.rb +3 -29
  25. data/lib/acp/types/{elicitation_url_mode → create_elicitation_request/mode/form}/scope.rb +1 -1
  26. data/lib/acp/types/create_elicitation_request/mode/form.rb +3 -3
  27. data/lib/acp/types/{elicitation_form_mode → create_elicitation_request/mode/url}/scope.rb +1 -1
  28. data/lib/acp/types/create_elicitation_request/mode/url.rb +3 -3
  29. data/lib/acp/types/current_mode_update.rb +3 -29
  30. data/lib/acp/types/diff.rb +3 -41
  31. data/lib/acp/types/elicitation_accept_action.rb +3 -26
  32. data/lib/acp/types/elicitation_form_mode.rb +3 -33
  33. data/lib/acp/types/elicitation_url_mode.rb +3 -35
  34. data/lib/acp/types/embedded_resource.rb +3 -44
  35. data/lib/acp/types/image_content.rb +3 -58
  36. data/lib/acp/types/integer_property_schema.rb +3 -60
  37. data/lib/acp/types/mcp_server_http.rb +3 -44
  38. data/lib/acp/types/mcp_server_sse.rb +3 -44
  39. data/lib/acp/types/multi_select_property_schema.rb +3 -70
  40. data/lib/acp/types/number_property_schema.rb +3 -60
  41. data/lib/acp/types/parse_error.rb +37 -0
  42. data/lib/acp/types/plan.rb +3 -29
  43. data/lib/acp/types/resource_link.rb +3 -79
  44. data/lib/acp/types/selected_permission_outcome.rb +3 -26
  45. data/lib/acp/types/session_config_boolean.rb +3 -21
  46. data/lib/acp/types/session_config_select.rb +3 -33
  47. data/lib/acp/types/session_info_update.rb +3 -42
  48. data/lib/acp/types/string_multi_select_items.rb +3 -29
  49. data/lib/acp/types/string_property_schema.rb +3 -105
  50. data/lib/acp/types/terminal.rb +3 -29
  51. data/lib/acp/types/text_content.rb +3 -40
  52. data/lib/acp/types/tool_call.rb +3 -115
  53. data/lib/acp/types/unstable/compaction_summary_chunk.rb +3 -35
  54. data/lib/acp/types/unstable/compaction_update.rb +3 -56
  55. data/lib/acp/types/unstable/idle_state_update.rb +3 -40
  56. data/lib/acp/types/unstable/mcp_server_acp.rb +3 -35
  57. data/lib/acp/types/unstable/nes_edit_suggestion.rb +3 -61
  58. data/lib/acp/types/unstable/nes_jump_suggestion.rb +3 -45
  59. data/lib/acp/types/unstable/nes_rename_suggestion.rb +3 -51
  60. data/lib/acp/types/unstable/nes_search_and_replace_suggestion.rb +3 -60
  61. data/lib/acp/types/unstable/notice.rb +3 -41
  62. data/lib/acp/types/unstable/plan_file.rb +3 -35
  63. data/lib/acp/types/unstable/plan_items.rb +3 -38
  64. data/lib/acp/types/unstable/plan_markdown.rb +3 -35
  65. data/lib/acp/types/unstable/plan_removed.rb +3 -26
  66. data/lib/acp/types/unstable/plan_update.rb +3 -33
  67. data/lib/acp/types/unstable/requires_action_state_update.rb +3 -21
  68. data/lib/acp/types/unstable/running_state_update.rb +3 -21
  69. data/lib/acp/types/unstable/session_message.rb +3 -56
  70. data/lib/acp/types/unstable/session_message_chunk.rb +3 -53
  71. data/lib/acp/types/unstable/subagent_update.rb +3 -65
  72. data/lib/acp/types/unstable/unknown_state_update.rb +3 -21
  73. data/lib/acp/types/unstable.rb +20 -20
  74. data/lib/acp/types/usage_update.rb +3 -41
  75. data/lib/acp/types.rb +7 -246
  76. data/lib/acp/version.rb +1 -1
  77. data/sig/generated/acp/agent_connection/client.rbs +10 -19
  78. data/sig/generated/acp/agent_connection/optional_method/spec.rbs +32 -0
  79. data/sig/generated/acp/agent_connection/optional_method.rbs +3 -0
  80. data/sig/generated/acp/agent_connection.rbs +16 -24
  81. data/sig/generated/acp/agent_process.rbs +0 -13
  82. data/sig/generated/acp/client_connection/streams.rbs +94 -0
  83. data/sig/generated/acp/client_connection.rbs +100 -159
  84. data/sig/generated/acp/protocol.rbs +9 -0
  85. data/sig/generated/acp/request_error.rbs +15 -17
  86. data/sig/generated/acp/transport/cancellation.rbs +0 -7
  87. data/sig/generated/acp/transport/reply.rbs +0 -2
  88. data/sig/generated/acp/transport/stderr_logger.rbs +1 -2
  89. data/sig/generated/acp/transport/stdio/serving.rbs +14 -0
  90. data/sig/generated/acp/transport/stdio.rbs +31 -35
  91. data/sig/generated/acp/types/audio_content.rbs +1 -27
  92. data/sig/generated/acp/types/auth_method_terminal.rbs +1 -35
  93. data/sig/generated/acp/types/available_commands_update.rbs +1 -19
  94. data/sig/generated/acp/types/boolean_property_schema.rbs +1 -27
  95. data/sig/generated/acp/types/check.rbs +115 -0
  96. data/sig/generated/acp/types/config_option_update.rbs +1 -19
  97. data/sig/generated/acp/types/content.rbs +1 -19
  98. data/sig/generated/acp/types/{elicitation_url_mode → create_elicitation_request/mode/form}/scope.rbs +2 -2
  99. data/sig/generated/acp/types/create_elicitation_request/mode/form.rbs +3 -3
  100. data/sig/generated/acp/types/{elicitation_form_mode → create_elicitation_request/mode/url}/scope.rbs +2 -2
  101. data/sig/generated/acp/types/create_elicitation_request/mode/url.rbs +3 -3
  102. data/sig/generated/acp/types/current_mode_update.rbs +1 -19
  103. data/sig/generated/acp/types/diff.rbs +1 -27
  104. data/sig/generated/acp/types/elicitation_accept_action.rbs +1 -15
  105. data/sig/generated/acp/types/elicitation_form_mode.rbs +1 -19
  106. data/sig/generated/acp/types/elicitation_url_mode.rbs +1 -23
  107. data/sig/generated/acp/types/embedded_resource.rbs +1 -23
  108. data/sig/generated/acp/types/image_content.rbs +1 -31
  109. data/sig/generated/acp/types/integer_property_schema.rbs +1 -35
  110. data/sig/generated/acp/types/mcp_server_http.rbs +1 -27
  111. data/sig/generated/acp/types/mcp_server_sse.rbs +1 -27
  112. data/sig/generated/acp/types/multi_select_property_schema.rbs +1 -39
  113. data/sig/generated/acp/types/number_property_schema.rbs +1 -35
  114. data/sig/generated/acp/types/parse_error.rbs +22 -0
  115. data/sig/generated/acp/types/plan.rbs +1 -19
  116. data/sig/generated/acp/types/resource_link.rbs +1 -43
  117. data/sig/generated/acp/types/selected_permission_outcome.rbs +1 -19
  118. data/sig/generated/acp/types/session_config_boolean.rbs +1 -15
  119. data/sig/generated/acp/types/session_config_select.rbs +1 -19
  120. data/sig/generated/acp/types/session_info_update.rbs +1 -23
  121. data/sig/generated/acp/types/string_multi_select_items.rbs +1 -19
  122. data/sig/generated/acp/types/string_property_schema.rbs +1 -51
  123. data/sig/generated/acp/types/terminal.rbs +1 -19
  124. data/sig/generated/acp/types/text_content.rbs +1 -23
  125. data/sig/generated/acp/types/tool_call.rbs +1 -51
  126. data/sig/generated/acp/types/unstable/compaction_summary_chunk.rbs +1 -23
  127. data/sig/generated/acp/types/unstable/compaction_update.rbs +1 -31
  128. data/sig/generated/acp/types/unstable/idle_state_update.rbs +1 -23
  129. data/sig/generated/acp/types/unstable/mcp_server_acp.rbs +1 -23
  130. data/sig/generated/acp/types/unstable/nes_edit_suggestion.rbs +1 -31
  131. data/sig/generated/acp/types/unstable/nes_jump_suggestion.rbs +1 -27
  132. data/sig/generated/acp/types/unstable/nes_rename_suggestion.rbs +1 -31
  133. data/sig/generated/acp/types/unstable/nes_search_and_replace_suggestion.rbs +1 -35
  134. data/sig/generated/acp/types/unstable/notice.rbs +1 -27
  135. data/sig/generated/acp/types/unstable/plan_file.rbs +1 -23
  136. data/sig/generated/acp/types/unstable/plan_items.rbs +1 -23
  137. data/sig/generated/acp/types/unstable/plan_markdown.rbs +1 -23
  138. data/sig/generated/acp/types/unstable/plan_removed.rbs +1 -19
  139. data/sig/generated/acp/types/unstable/plan_update.rbs +1 -19
  140. data/sig/generated/acp/types/unstable/requires_action_state_update.rbs +1 -15
  141. data/sig/generated/acp/types/unstable/running_state_update.rbs +1 -15
  142. data/sig/generated/acp/types/unstable/session_message.rbs +1 -31
  143. data/sig/generated/acp/types/unstable/session_message_chunk.rbs +1 -31
  144. data/sig/generated/acp/types/unstable/subagent_update.rbs +1 -35
  145. data/sig/generated/acp/types/unstable/unknown_state_update.rbs +1 -15
  146. data/sig/generated/acp/types/usage_update.rbs +1 -27
  147. data/sig/generated/acp/types.rbs +6 -143
  148. data/sig/manual/acp/agent_connection.rbs +0 -30
  149. data/sig/manual/acp/client_connection.rbs +7 -2
  150. data/sig/manual/acp/{agent_connection/optional_method/logout.rbs → protocol.rbs} +3 -3
  151. data/sig/manual/acp/transport/stdio.rbs +0 -2
  152. data/sig/manual/acp/transport.rbs +25 -2
  153. metadata +18 -40
  154. data/lib/acp/agent_connection/optional_method/authenticate.rb +0 -21
  155. data/lib/acp/agent_connection/optional_method/close_session.rb +0 -21
  156. data/lib/acp/agent_connection/optional_method/delete_session.rb +0 -21
  157. data/lib/acp/agent_connection/optional_method/disable_provider.rb +0 -23
  158. data/lib/acp/agent_connection/optional_method/fork_session.rb +0 -23
  159. data/lib/acp/agent_connection/optional_method/list_providers.rb +0 -23
  160. data/lib/acp/agent_connection/optional_method/list_sessions.rb +0 -21
  161. data/lib/acp/agent_connection/optional_method/load_session.rb +0 -21
  162. data/lib/acp/agent_connection/optional_method/logout.rb +0 -21
  163. data/lib/acp/agent_connection/optional_method/resume_session.rb +0 -21
  164. data/lib/acp/agent_connection/optional_method/set_provider.rb +0 -23
  165. data/lib/acp/types/content_chunk.rb +0 -40
  166. data/sig/generated/acp/agent_connection/optional_method/authenticate.rbs +0 -13
  167. data/sig/generated/acp/agent_connection/optional_method/close_session.rbs +0 -13
  168. data/sig/generated/acp/agent_connection/optional_method/delete_session.rbs +0 -13
  169. data/sig/generated/acp/agent_connection/optional_method/disable_provider.rbs +0 -13
  170. data/sig/generated/acp/agent_connection/optional_method/fork_session.rbs +0 -13
  171. data/sig/generated/acp/agent_connection/optional_method/list_providers.rbs +0 -13
  172. data/sig/generated/acp/agent_connection/optional_method/list_sessions.rbs +0 -13
  173. data/sig/generated/acp/agent_connection/optional_method/load_session.rbs +0 -13
  174. data/sig/generated/acp/agent_connection/optional_method/logout.rbs +0 -13
  175. data/sig/generated/acp/agent_connection/optional_method/resume_session.rbs +0 -13
  176. data/sig/generated/acp/agent_connection/optional_method/set_provider.rbs +0 -13
  177. data/sig/generated/acp/types/content_chunk.rbs +0 -25
  178. data/sig/manual/acp/agent_connection/optional_method/authenticate.rbs +0 -6
  179. data/sig/manual/acp/agent_connection/optional_method/close_session.rbs +0 -6
  180. data/sig/manual/acp/agent_connection/optional_method/delete_session.rbs +0 -6
  181. data/sig/manual/acp/agent_connection/optional_method/disable_provider.rbs +0 -6
  182. data/sig/manual/acp/agent_connection/optional_method/fork_session.rbs +0 -6
  183. data/sig/manual/acp/agent_connection/optional_method/list_providers.rbs +0 -6
  184. data/sig/manual/acp/agent_connection/optional_method/list_sessions.rbs +0 -6
  185. data/sig/manual/acp/agent_connection/optional_method/load_session.rbs +0 -6
  186. data/sig/manual/acp/agent_connection/optional_method/resume_session.rbs +0 -6
  187. data/sig/manual/acp/agent_connection/optional_method/set_provider.rbs +0 -6
@@ -3,55 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::NesRenameSuggestion
7
- # @dynamic id
8
- attr_reader :id #: String
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::NesRenameSuggestion = ACP::Types::Unstable::NesSuggestion::Rename
9
8
 
10
- # @dynamic uri
11
- attr_reader :uri #: String
12
-
13
- # @dynamic position
14
- attr_reader :position #: ACP::Types::Unstable::Position
15
-
16
- # @dynamic new_name
17
- attr_reader :new_name #: String
18
-
19
- # @dynamic meta
20
- attr_reader :meta #: Hash[String, untyped]?
21
-
22
- # @rbs id: String
23
- # @rbs uri: String
24
- # @rbs position: ACP::Types::Unstable::Position
25
- # @rbs new_name: String
26
- # @rbs meta: Hash[String, untyped]?
27
- # @rbs return: void
28
- def initialize(id:, uri:, position:, new_name:, meta: nil)
29
- @id = id
30
- @uri = uri
31
- @position = position
32
- @new_name = new_name
33
- @meta = meta
34
- freeze
35
- end
36
-
37
- # @rbs hash: Hash[String, untyped]
38
- # @rbs return: ACP::Types::Unstable::NesRenameSuggestion
39
- def self.from_h(hash)
40
- new(
41
- id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'id'), 'id'),
42
- uri: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'uri'), 'uri'),
43
- position: ACP::Types::Check.object(
44
- ACP::Types::Check.key(hash, 'position'),
45
- 'position',
46
- ACP::Types::Unstable::Position
47
- ),
48
- new_name: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'newName'), 'newName'),
49
- meta: hash['_meta']
50
- )
51
- end
52
-
53
- # @rbs return: Hash[String, untyped]
54
- def to_h
55
- { 'id' => id, 'uri' => uri, 'position' => position.to_h, 'newName' => new_name, '_meta' => meta }.compact
56
- end
57
- end
9
+ ACP::Types::Unstable::NesRenameSuggestion = ACP::Types::Unstable::NesSuggestion::Rename
@@ -3,64 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::NesSearchAndReplaceSuggestion
7
- # @dynamic id
8
- attr_reader :id #: String
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::NesSearchAndReplaceSuggestion = ACP::Types::Unstable::NesSuggestion::Searchandreplace
9
8
 
10
- # @dynamic uri
11
- attr_reader :uri #: String
12
-
13
- # @dynamic search
14
- attr_reader :search #: String
15
-
16
- # @dynamic replace
17
- attr_reader :replace #: String
18
-
19
- # @dynamic is_regex
20
- attr_reader :is_regex #: bool?
21
-
22
- # @dynamic meta
23
- attr_reader :meta #: Hash[String, untyped]?
24
-
25
- # @rbs id: String
26
- # @rbs uri: String
27
- # @rbs search: String
28
- # @rbs replace: String
29
- # @rbs is_regex: bool?
30
- # @rbs meta: Hash[String, untyped]?
31
- # @rbs return: void
32
- def initialize(id:, uri:, search:, replace:, is_regex: nil, meta: nil)
33
- @id = id
34
- @uri = uri
35
- @search = search
36
- @replace = replace
37
- @is_regex = is_regex
38
- @meta = meta
39
- freeze
40
- end
41
-
42
- # @rbs hash: Hash[String, untyped]
43
- # @rbs return: ACP::Types::Unstable::NesSearchAndReplaceSuggestion
44
- def self.from_h(hash)
45
- new(
46
- id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'id'), 'id'),
47
- uri: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'uri'), 'uri'),
48
- search: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'search'), 'search'),
49
- replace: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'replace'), 'replace'),
50
- is_regex: ACP::Types::Check.boolean(hash['isRegex'], 'isRegex', allow_nil: true),
51
- meta: hash['_meta']
52
- )
53
- end
54
-
55
- # @rbs return: Hash[String, untyped]
56
- def to_h
57
- {
58
- 'id' => id,
59
- 'uri' => uri,
60
- 'search' => search,
61
- 'replace' => replace,
62
- 'isRegex' => is_regex,
63
- '_meta' => meta
64
- }.compact
65
- end
66
- end
9
+ ACP::Types::Unstable::NesSearchAndReplaceSuggestion = ACP::Types::Unstable::NesSuggestion::Searchandreplace
@@ -3,45 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::Notice
7
- # @dynamic severity
8
- attr_reader :severity #: String
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::Notice = ACP::Types::Unstable::SessionUpdate::Notice
9
8
 
10
- # @dynamic title
11
- attr_reader :title #: String
12
-
13
- # @dynamic description
14
- attr_reader :description #: String?
15
-
16
- # @dynamic meta
17
- attr_reader :meta #: Hash[String, untyped]?
18
-
19
- # @rbs severity: String
20
- # @rbs title: String
21
- # @rbs description: String?
22
- # @rbs meta: Hash[String, untyped]?
23
- # @rbs return: void
24
- def initialize(severity:, title:, description: nil, meta: nil)
25
- @severity = severity
26
- @title = title
27
- @description = description
28
- @meta = meta
29
- freeze
30
- end
31
-
32
- # @rbs hash: Hash[String, untyped]
33
- # @rbs return: ACP::Types::Unstable::Notice
34
- def self.from_h(hash)
35
- new(
36
- severity: ACP::Types::Check.key(hash, 'severity'),
37
- title: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'title'), 'title'),
38
- description: ACP::Types::Check.string(hash['description'], 'description', allow_nil: true),
39
- meta: hash['_meta']
40
- )
41
- end
42
-
43
- # @rbs return: Hash[String, untyped]
44
- def to_h
45
- { 'severity' => severity, 'title' => title, 'description' => description, '_meta' => meta }.compact
46
- end
47
- end
9
+ ACP::Types::Unstable::Notice = ACP::Types::Unstable::SessionUpdate::Notice
@@ -3,39 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::PlanFile
7
- # @dynamic plan_id
8
- attr_reader :plan_id #: String
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::PlanFile = ACP::Types::Unstable::PlanUpdateContent::File
9
8
 
10
- # @dynamic uri
11
- attr_reader :uri #: String
12
-
13
- # @dynamic meta
14
- attr_reader :meta #: Hash[String, untyped]?
15
-
16
- # @rbs plan_id: String
17
- # @rbs uri: String
18
- # @rbs meta: Hash[String, untyped]?
19
- # @rbs return: void
20
- def initialize(plan_id:, uri:, meta: nil)
21
- @plan_id = plan_id
22
- @uri = uri
23
- @meta = meta
24
- freeze
25
- end
26
-
27
- # @rbs hash: Hash[String, untyped]
28
- # @rbs return: ACP::Types::Unstable::PlanFile
29
- def self.from_h(hash)
30
- new(
31
- plan_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'planId'), 'planId'),
32
- uri: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'uri'), 'uri'),
33
- meta: hash['_meta']
34
- )
35
- end
36
-
37
- # @rbs return: Hash[String, untyped]
38
- def to_h
39
- { 'planId' => plan_id, 'uri' => uri, '_meta' => meta }.compact
40
- end
41
- end
9
+ ACP::Types::Unstable::PlanFile = ACP::Types::Unstable::PlanUpdateContent::File
@@ -3,42 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::PlanItems
7
- # @dynamic plan_id
8
- attr_reader :plan_id #: String
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::PlanItems = ACP::Types::Unstable::PlanUpdateContent::Items
9
8
 
10
- # @dynamic entries
11
- attr_reader :entries #: Array[ACP::Types::PlanEntry]
12
-
13
- # @dynamic meta
14
- attr_reader :meta #: Hash[String, untyped]?
15
-
16
- # @rbs plan_id: String
17
- # @rbs entries: Array[ACP::Types::PlanEntry]
18
- # @rbs meta: Hash[String, untyped]?
19
- # @rbs return: void
20
- def initialize(plan_id:, entries:, meta: nil)
21
- @plan_id = plan_id
22
- @entries = entries
23
- @meta = meta
24
- freeze
25
- end
26
-
27
- # @rbs hash: Hash[String, untyped]
28
- # @rbs return: ACP::Types::Unstable::PlanItems
29
- def self.from_h(hash)
30
- entries = ACP::Types::Check.array(ACP::Types::Check.key(hash, 'entries'), 'entries') do |item, path|
31
- ACP::Types::Check.object(item, path, ACP::Types::PlanEntry)
32
- end
33
- new(
34
- plan_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'planId'), 'planId'),
35
- entries:,
36
- meta: hash['_meta']
37
- )
38
- end
39
-
40
- # @rbs return: Hash[String, untyped]
41
- def to_h
42
- { 'planId' => plan_id, 'entries' => entries.map(&:to_h), '_meta' => meta }.compact
43
- end
44
- end
9
+ ACP::Types::Unstable::PlanItems = ACP::Types::Unstable::PlanUpdateContent::Items
@@ -3,39 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::PlanMarkdown
7
- # @dynamic plan_id
8
- attr_reader :plan_id #: String
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::PlanMarkdown = ACP::Types::Unstable::PlanUpdateContent::Markdown
9
8
 
10
- # @dynamic content
11
- attr_reader :content #: String
12
-
13
- # @dynamic meta
14
- attr_reader :meta #: Hash[String, untyped]?
15
-
16
- # @rbs plan_id: String
17
- # @rbs content: String
18
- # @rbs meta: Hash[String, untyped]?
19
- # @rbs return: void
20
- def initialize(plan_id:, content:, meta: nil)
21
- @plan_id = plan_id
22
- @content = content
23
- @meta = meta
24
- freeze
25
- end
26
-
27
- # @rbs hash: Hash[String, untyped]
28
- # @rbs return: ACP::Types::Unstable::PlanMarkdown
29
- def self.from_h(hash)
30
- new(
31
- plan_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'planId'), 'planId'),
32
- content: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'content'), 'content'),
33
- meta: hash['_meta']
34
- )
35
- end
36
-
37
- # @rbs return: Hash[String, untyped]
38
- def to_h
39
- { 'planId' => plan_id, 'content' => content, '_meta' => meta }.compact
40
- end
41
- end
9
+ ACP::Types::Unstable::PlanMarkdown = ACP::Types::Unstable::PlanUpdateContent::Markdown
@@ -3,30 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::PlanRemoved
7
- # @dynamic plan_id
8
- attr_reader :plan_id #: String
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::PlanRemoved = ACP::Types::Unstable::SessionUpdate::PlanRemoved
9
8
 
10
- # @dynamic meta
11
- attr_reader :meta #: Hash[String, untyped]?
12
-
13
- # @rbs plan_id: String
14
- # @rbs meta: Hash[String, untyped]?
15
- # @rbs return: void
16
- def initialize(plan_id:, meta: nil)
17
- @plan_id = plan_id
18
- @meta = meta
19
- freeze
20
- end
21
-
22
- # @rbs hash: Hash[String, untyped]
23
- # @rbs return: ACP::Types::Unstable::PlanRemoved
24
- def self.from_h(hash)
25
- new(plan_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'planId'), 'planId'), meta: hash['_meta'])
26
- end
27
-
28
- # @rbs return: Hash[String, untyped]
29
- def to_h
30
- { 'planId' => plan_id, '_meta' => meta }.compact
31
- end
32
- end
9
+ ACP::Types::Unstable::PlanRemoved = ACP::Types::Unstable::SessionUpdate::PlanRemoved
@@ -3,37 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::PlanUpdate
7
- # @dynamic plan
8
- attr_reader :plan #: ACP::Types::Unstable::PlanUpdateContent::t
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::PlanUpdate = ACP::Types::Unstable::SessionUpdate::PlanUpdate
9
8
 
10
- # @dynamic meta
11
- attr_reader :meta #: Hash[String, untyped]?
12
-
13
- # @rbs plan: ACP::Types::Unstable::PlanUpdateContent::t
14
- # @rbs meta: Hash[String, untyped]?
15
- # @rbs return: void
16
- def initialize(plan:, meta: nil)
17
- @plan = plan
18
- @meta = meta
19
- freeze
20
- end
21
-
22
- # @rbs hash: Hash[String, untyped]
23
- # @rbs return: ACP::Types::Unstable::PlanUpdate
24
- def self.from_h(hash)
25
- new(
26
- plan: ACP::Types::Check.object(
27
- ACP::Types::Check.key(hash, 'plan'),
28
- 'plan',
29
- ACP::Types::Unstable::PlanUpdateContent
30
- ),
31
- meta: hash['_meta']
32
- )
33
- end
34
-
35
- # @rbs return: Hash[String, untyped]
36
- def to_h
37
- { 'plan' => plan.to_h, '_meta' => meta }.compact
38
- end
39
- end
9
+ ACP::Types::Unstable::PlanUpdate = ACP::Types::Unstable::SessionUpdate::PlanUpdate
@@ -3,25 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::RequiresActionStateUpdate
7
- # @dynamic meta
8
- attr_reader :meta #: Hash[String, untyped]?
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::RequiresActionStateUpdate = ACP::Types::Unstable::StateUpdate::RequiresAction
9
8
 
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::RequiresActionStateUpdate
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
9
+ ACP::Types::Unstable::RequiresActionStateUpdate = ACP::Types::Unstable::StateUpdate::RequiresAction
@@ -3,25 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::RunningStateUpdate
7
- # @dynamic meta
8
- attr_reader :meta #: Hash[String, untyped]?
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::RunningStateUpdate = ACP::Types::Unstable::StateUpdate::Running
9
8
 
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::RunningStateUpdate
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
9
+ ACP::Types::Unstable::RunningStateUpdate = ACP::Types::Unstable::StateUpdate::Running
@@ -3,60 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::SessionMessage
7
- # @dynamic message_id
8
- attr_reader :message_id #: String
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::SessionMessage = ACP::Types::Unstable::SessionUpdate::SessionMessage
9
8
 
10
- # @dynamic sender_session_id
11
- attr_reader :sender_session_id #: String?
12
-
13
- # @dynamic recipient_session_id
14
- attr_reader :recipient_session_id #: String?
15
-
16
- # @dynamic content
17
- attr_reader :content #: Array[ACP::Types::ContentBlock::t]?
18
-
19
- # @dynamic meta
20
- attr_reader :meta #: Hash[String, untyped]?
21
-
22
- # @rbs message_id: String
23
- # @rbs sender_session_id: String?
24
- # @rbs recipient_session_id: String?
25
- # @rbs content: Array[ACP::Types::ContentBlock::t]?
26
- # @rbs meta: Hash[String, untyped]?
27
- # @rbs return: void
28
- def initialize(message_id:, sender_session_id: nil, recipient_session_id: nil, content: nil, meta: nil)
29
- @message_id = message_id
30
- @sender_session_id = sender_session_id
31
- @recipient_session_id = recipient_session_id
32
- @content = content
33
- @meta = meta
34
- freeze
35
- end
36
-
37
- # @rbs hash: Hash[String, untyped]
38
- # @rbs return: ACP::Types::Unstable::SessionMessage
39
- def self.from_h(hash)
40
- content = ACP::Types::Check.array(hash['content'], 'content', allow_nil: true) do |item, path|
41
- ACP::Types::Check.object(item, path, ACP::Types::ContentBlock)
42
- end
43
- new(
44
- message_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'messageId'), 'messageId'),
45
- sender_session_id: ACP::Types::Check.string(hash['senderSessionId'], 'senderSessionId', allow_nil: true),
46
- recipient_session_id: ACP::Types::Check.string(hash['recipientSessionId'], 'recipientSessionId', allow_nil: true),
47
- content:,
48
- meta: hash['_meta']
49
- )
50
- end
51
-
52
- # @rbs return: Hash[String, untyped]
53
- def to_h
54
- {
55
- 'messageId' => message_id,
56
- 'senderSessionId' => sender_session_id,
57
- 'recipientSessionId' => recipient_session_id,
58
- 'content' => content&.map(&:to_h),
59
- '_meta' => meta
60
- }.compact
61
- end
62
- end
9
+ ACP::Types::Unstable::SessionMessage = ACP::Types::Unstable::SessionUpdate::SessionMessage
@@ -3,57 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::SessionMessageChunk
7
- # @dynamic message_id
8
- attr_reader :message_id #: String
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::SessionMessageChunk = ACP::Types::Unstable::SessionUpdate::SessionMessageChunk
9
8
 
10
- # @dynamic sender_session_id
11
- attr_reader :sender_session_id #: String?
12
-
13
- # @dynamic recipient_session_id
14
- attr_reader :recipient_session_id #: String?
15
-
16
- # @dynamic content
17
- attr_reader :content #: ACP::Types::ContentBlock::t
18
-
19
- # @dynamic meta
20
- attr_reader :meta #: Hash[String, untyped]?
21
-
22
- # @rbs message_id: String
23
- # @rbs sender_session_id: String?
24
- # @rbs recipient_session_id: String?
25
- # @rbs content: ACP::Types::ContentBlock::t
26
- # @rbs meta: Hash[String, untyped]?
27
- # @rbs return: void
28
- def initialize(message_id:, content:, sender_session_id: nil, recipient_session_id: nil, meta: nil)
29
- @message_id = message_id
30
- @sender_session_id = sender_session_id
31
- @recipient_session_id = recipient_session_id
32
- @content = content
33
- @meta = meta
34
- freeze
35
- end
36
-
37
- # @rbs hash: Hash[String, untyped]
38
- # @rbs return: ACP::Types::Unstable::SessionMessageChunk
39
- def self.from_h(hash)
40
- new(
41
- message_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'messageId'), 'messageId'),
42
- sender_session_id: ACP::Types::Check.string(hash['senderSessionId'], 'senderSessionId', allow_nil: true),
43
- recipient_session_id: ACP::Types::Check.string(hash['recipientSessionId'], 'recipientSessionId', allow_nil: true),
44
- content: ACP::Types::Check.object(ACP::Types::Check.key(hash, 'content'), 'content', ACP::Types::ContentBlock),
45
- meta: hash['_meta']
46
- )
47
- end
48
-
49
- # @rbs return: Hash[String, untyped]
50
- def to_h
51
- {
52
- 'messageId' => message_id,
53
- 'content' => content.to_h,
54
- 'senderSessionId' => sender_session_id,
55
- 'recipientSessionId' => recipient_session_id,
56
- '_meta' => meta
57
- }.compact
58
- end
59
- end
9
+ ACP::Types::Unstable::SessionMessageChunk = ACP::Types::Unstable::SessionUpdate::SessionMessageChunk
@@ -3,69 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::SubagentUpdate
7
- # @dynamic session_id
8
- attr_reader :session_id #: String
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::SubagentUpdate = ACP::Types::Unstable::SessionUpdate::SubagentUpdate
9
8
 
10
- # @dynamic title
11
- attr_reader :title #: String?
12
-
13
- # @dynamic description
14
- attr_reader :description #: String?
15
-
16
- # @dynamic capabilities
17
- attr_reader :capabilities #: ACP::Types::Unstable::SubagentSessionCapabilities?
18
-
19
- # @dynamic state
20
- attr_reader :state #: ACP::Types::Unstable::StateUpdate::t?
21
-
22
- # @dynamic meta
23
- attr_reader :meta #: Hash[String, untyped]?
24
-
25
- # @rbs session_id: String
26
- # @rbs title: String?
27
- # @rbs description: String?
28
- # @rbs capabilities: ACP::Types::Unstable::SubagentSessionCapabilities?
29
- # @rbs state: ACP::Types::Unstable::StateUpdate::t?
30
- # @rbs meta: Hash[String, untyped]?
31
- # @rbs return: void
32
- def initialize(session_id:, title: nil, description: nil, capabilities: nil, state: nil, meta: nil)
33
- @session_id = session_id
34
- @title = title
35
- @description = description
36
- @capabilities = capabilities
37
- @state = state
38
- @meta = meta
39
- freeze
40
- end
41
-
42
- # @rbs hash: Hash[String, untyped]
43
- # @rbs return: ACP::Types::Unstable::SubagentUpdate
44
- def self.from_h(hash)
45
- new(
46
- session_id: ACP::Types::Check.string(ACP::Types::Check.key(hash, 'sessionId'), 'sessionId'),
47
- title: ACP::Types::Check.string(hash['title'], 'title', allow_nil: true),
48
- description: ACP::Types::Check.string(hash['description'], 'description', allow_nil: true),
49
- capabilities: ACP::Types::Check.object(
50
- hash['capabilities'],
51
- 'capabilities',
52
- ACP::Types::Unstable::SubagentSessionCapabilities,
53
- allow_nil: true
54
- ),
55
- state: ACP::Types::Check.object(hash['state'], 'state', ACP::Types::Unstable::StateUpdate, allow_nil: true),
56
- meta: hash['_meta']
57
- )
58
- end
59
-
60
- # @rbs return: Hash[String, untyped]
61
- def to_h
62
- {
63
- 'sessionId' => session_id,
64
- 'title' => title,
65
- 'description' => description,
66
- 'capabilities' => capabilities&.to_h,
67
- 'state' => state&.to_h,
68
- '_meta' => meta
69
- }.compact
70
- end
71
- end
9
+ ACP::Types::Unstable::SubagentUpdate = ACP::Types::Unstable::SessionUpdate::SubagentUpdate
@@ -3,25 +3,7 @@
3
3
  # Generated by bin/types from schema/schema.unstable.json. Do not edit.
4
4
  # Unstable: not part of the ACP spec, may change or disappear at any point.
5
5
 
6
- class ACP::Types::Unstable::UnknownStateUpdate
7
- # @dynamic meta
8
- attr_reader :meta #: Hash[String, untyped]?
6
+ # @rbs!
7
+ # class ACP::Types::Unstable::UnknownStateUpdate = ACP::Types::Unstable::StateUpdate::Unknown
9
8
 
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
9
+ ACP::Types::Unstable::UnknownStateUpdate = ACP::Types::Unstable::StateUpdate::Unknown