cadenya 0.2.0 → 0.4.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 +25 -0
- data/README.md +6 -6
- data/lib/cadenya/client.rb +18 -0
- data/lib/cadenya/internal/cursor_pagination.rb +2 -2
- data/lib/cadenya/models/agent_spec.rb +19 -4
- data/lib/cadenya/models/agents/webhook_delivery_data.rb +1 -0
- data/lib/cadenya/models/agents/webhook_delivery_list_params.rb +1 -0
- data/lib/cadenya/models/ai_provider_key.rb +30 -0
- data/lib/cadenya/models/ai_provider_key_create_params.rb +41 -0
- data/lib/cadenya/models/ai_provider_key_delete_params.rb +26 -0
- data/lib/cadenya/models/ai_provider_key_list_params.rb +61 -0
- data/lib/cadenya/models/ai_provider_key_retrieve_params.rb +26 -0
- data/lib/cadenya/models/ai_provider_key_spec.rb +36 -0
- data/lib/cadenya/models/ai_provider_key_update_params.rb +56 -0
- data/lib/cadenya/models/approval_requirement_filter.rb +26 -0
- data/lib/cadenya/models/attribute_filter.rb +38 -0
- data/lib/cadenya/models/objective_data.rb +21 -1
- data/lib/cadenya/models/objective_event_data.rb +32 -1
- data/lib/cadenya/models/objective_list_params.rb +2 -1
- data/lib/cadenya/models/objective_status.rb +2 -1
- data/lib/cadenya/models/profile_spec.rb +1 -0
- data/lib/cadenya/models/string_matcher.rb +47 -0
- data/lib/cadenya/models/tool_filter.rb +35 -0
- data/lib/cadenya/models/tool_set_adapter.rb +7 -1
- data/lib/cadenya/models/tool_set_adapter_mcp.rb +11 -33
- data/lib/cadenya/models/tool_set_adapter_openapi.rb +79 -0
- data/lib/cadenya/models/tool_set_get_openapi_spec_params.rb +26 -0
- data/lib/cadenya/models/tool_set_get_openapi_spec_response.rb +17 -0
- data/lib/cadenya/models/tool_sets/config_openapi.rb +29 -0
- data/lib/cadenya/models/tool_sets/tool_spec_config.rb +7 -1
- data/lib/cadenya/models/workspace.rb +27 -1
- data/lib/cadenya/models/workspace_admin/member_add_params.rb +39 -0
- data/lib/cadenya/models/workspace_admin/member_list_params.rb +39 -0
- data/lib/cadenya/models/workspace_admin/member_remove_params.rb +28 -0
- data/lib/cadenya/models/workspace_admin/profile_list_params.rb +44 -0
- data/lib/cadenya/models/workspace_admin_archive_params.rb +20 -0
- data/lib/cadenya/models/workspace_admin_create_params.rb +70 -0
- data/lib/cadenya/models/workspace_admin_list_params.rb +42 -0
- data/lib/cadenya/models/workspace_admin_retrieve_params.rb +20 -0
- data/lib/cadenya/models/workspace_admin_update_params.rb +85 -0
- data/lib/cadenya/models/workspace_member.rb +53 -0
- data/lib/cadenya/models.rb +40 -2
- data/lib/cadenya/resources/ai_provider_keys.rb +168 -0
- data/lib/cadenya/resources/tool_sets.rb +31 -0
- data/lib/cadenya/resources/workspace_admin/members.rb +107 -0
- data/lib/cadenya/resources/workspace_admin/profiles.rb +54 -0
- data/lib/cadenya/resources/workspace_admin.rb +173 -0
- data/lib/cadenya/resources/workspaces.rb +4 -0
- data/lib/cadenya/version.rb +1 -1
- data/lib/cadenya.rb +29 -1
- data/rbi/cadenya/client.rbi +16 -0
- data/rbi/cadenya/models/agent_spec.rbi +21 -4
- data/rbi/cadenya/models/agents/webhook_delivery_data.rbi +5 -0
- data/rbi/cadenya/models/agents/webhook_delivery_list_params.rbi +5 -0
- data/rbi/cadenya/models/ai_provider_key.rbi +51 -0
- data/rbi/cadenya/models/ai_provider_key_create_params.rbi +65 -0
- data/rbi/cadenya/models/ai_provider_key_delete_params.rbi +43 -0
- data/rbi/cadenya/models/ai_provider_key_list_params.rbi +96 -0
- data/rbi/cadenya/models/ai_provider_key_retrieve_params.rbi +46 -0
- data/rbi/cadenya/models/ai_provider_key_spec.rbi +56 -0
- data/rbi/cadenya/models/ai_provider_key_update_params.rbi +82 -0
- data/rbi/cadenya/models/approval_requirement_filter.rbi +45 -0
- data/rbi/cadenya/models/attribute_filter.rbi +84 -0
- data/rbi/cadenya/models/objective_data.rbi +26 -0
- data/rbi/cadenya/models/objective_event_data.rbi +52 -0
- data/rbi/cadenya/models/objective_list_params.rbi +7 -2
- data/rbi/cadenya/models/objective_status.rbi +4 -2
- data/rbi/cadenya/models/profile_spec.rbi +5 -0
- data/rbi/cadenya/models/string_matcher.rbi +84 -0
- data/rbi/cadenya/models/tool_filter.rbi +66 -0
- data/rbi/cadenya/models/tool_set_adapter.rbi +14 -3
- data/rbi/cadenya/models/tool_set_adapter_mcp.rbi +16 -62
- data/rbi/cadenya/models/tool_set_adapter_openapi.rbi +127 -0
- data/rbi/cadenya/models/tool_set_get_openapi_spec_params.rbi +46 -0
- data/rbi/cadenya/models/tool_set_get_openapi_spec_response.rbi +33 -0
- data/rbi/cadenya/models/tool_sets/config_openapi.rbi +48 -0
- data/rbi/cadenya/models/tool_sets/tool_spec_config.rbi +11 -3
- data/rbi/cadenya/models/workspace.rbi +39 -3
- data/rbi/cadenya/models/workspace_admin/member_add_params.rbi +68 -0
- data/rbi/cadenya/models/workspace_admin/member_list_params.rbi +68 -0
- data/rbi/cadenya/models/workspace_admin/member_remove_params.rbi +48 -0
- data/rbi/cadenya/models/workspace_admin/profile_list_params.rbi +75 -0
- data/rbi/cadenya/models/workspace_admin_archive_params.rbi +38 -0
- data/rbi/cadenya/models/workspace_admin_create_params.rbi +127 -0
- data/rbi/cadenya/models/workspace_admin_list_params.rbi +70 -0
- data/rbi/cadenya/models/workspace_admin_retrieve_params.rbi +38 -0
- data/rbi/cadenya/models/workspace_admin_update_params.rbi +144 -0
- data/rbi/cadenya/models/workspace_member.rbi +80 -0
- data/rbi/cadenya/models.rbi +40 -2
- data/rbi/cadenya/resources/ai_provider_keys.rbi +125 -0
- data/rbi/cadenya/resources/tool_sets.rbi +18 -0
- data/rbi/cadenya/resources/workspace_admin/members.rbi +83 -0
- data/rbi/cadenya/resources/workspace_admin/profiles.rbi +42 -0
- data/rbi/cadenya/resources/workspace_admin.rbi +131 -0
- data/rbi/cadenya/resources/workspaces.rbi +4 -0
- data/sig/cadenya/client.rbs +4 -0
- data/sig/cadenya/models/agent_spec.rbs +12 -5
- data/sig/cadenya/models/agents/webhook_delivery_data.rbs +2 -0
- data/sig/cadenya/models/agents/webhook_delivery_list_params.rbs +2 -0
- data/sig/cadenya/models/ai_provider_key.rbs +22 -0
- data/sig/cadenya/models/ai_provider_key_create_params.rbs +36 -0
- data/sig/cadenya/models/ai_provider_key_delete_params.rbs +28 -0
- data/sig/cadenya/models/ai_provider_key_list_params.rbs +61 -0
- data/sig/cadenya/models/ai_provider_key_retrieve_params.rbs +28 -0
- data/sig/cadenya/models/ai_provider_key_spec.rbs +28 -0
- data/sig/cadenya/models/ai_provider_key_update_params.rbs +54 -0
- data/sig/cadenya/models/approval_requirement_filter.rbs +20 -0
- data/sig/cadenya/models/attribute_filter.rbs +44 -0
- data/sig/cadenya/models/objective_data.rbs +14 -0
- data/sig/cadenya/models/objective_event_data.rbs +21 -0
- data/sig/cadenya/models/objective_list_params.rbs +4 -2
- data/sig/cadenya/models/objective_status.rbs +4 -2
- data/sig/cadenya/models/profile_spec.rbs +5 -1
- data/sig/cadenya/models/string_matcher.rbs +57 -0
- data/sig/cadenya/models/tool_filter.rbs +41 -0
- data/sig/cadenya/models/tool_set_adapter.rbs +15 -3
- data/sig/cadenya/models/tool_set_adapter_mcp.rbs +16 -32
- data/sig/cadenya/models/tool_set_adapter_openapi.rbs +73 -0
- data/sig/cadenya/models/tool_set_get_openapi_spec_params.rbs +28 -0
- data/sig/cadenya/models/tool_set_get_openapi_spec_response.rbs +15 -0
- data/sig/cadenya/models/tool_sets/config_openapi.rbs +30 -0
- data/sig/cadenya/models/tool_sets/tool_spec_config.rbs +12 -3
- data/sig/cadenya/models/workspace.rbs +24 -3
- data/sig/cadenya/models/workspace_admin/member_add_params.rbs +38 -0
- data/sig/cadenya/models/workspace_admin/member_list_params.rbs +38 -0
- data/sig/cadenya/models/workspace_admin/member_remove_params.rbs +30 -0
- data/sig/cadenya/models/workspace_admin/profile_list_params.rbs +40 -0
- data/sig/cadenya/models/workspace_admin_archive_params.rbs +23 -0
- data/sig/cadenya/models/workspace_admin_create_params.rbs +58 -0
- data/sig/cadenya/models/workspace_admin_list_params.rbs +38 -0
- data/sig/cadenya/models/workspace_admin_retrieve_params.rbs +23 -0
- data/sig/cadenya/models/workspace_admin_update_params.rbs +76 -0
- data/sig/cadenya/models/workspace_member.rbs +46 -0
- data/sig/cadenya/models.rbs +40 -2
- data/sig/cadenya/resources/ai_provider_keys.rbs +45 -0
- data/sig/cadenya/resources/tool_sets.rbs +6 -0
- data/sig/cadenya/resources/workspace_admin/members.rbs +29 -0
- data/sig/cadenya/resources/workspace_admin/profiles.rbs +16 -0
- data/sig/cadenya/resources/workspace_admin.rbs +42 -0
- metadata +89 -5
- data/lib/cadenya/models/mcp_tool_filter.rb +0 -111
- data/rbi/cadenya/models/mcp_tool_filter.rbi +0 -235
- data/sig/cadenya/models/mcp_tool_filter.rbs +0 -138
|
@@ -9,10 +9,10 @@ module Cadenya
|
|
|
9
9
|
end
|
|
10
10
|
|
|
11
11
|
# Top-level filter with simple boolean logic (no nesting)
|
|
12
|
-
sig { returns(T.nilable(Cadenya::
|
|
12
|
+
sig { returns(T.nilable(Cadenya::ToolFilter)) }
|
|
13
13
|
attr_reader :exclude_tools
|
|
14
14
|
|
|
15
|
-
sig { params(exclude_tools: Cadenya::
|
|
15
|
+
sig { params(exclude_tools: Cadenya::ToolFilter::OrHash).void }
|
|
16
16
|
attr_writer :exclude_tools
|
|
17
17
|
|
|
18
18
|
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
@@ -22,21 +22,19 @@ module Cadenya
|
|
|
22
22
|
attr_writer :headers
|
|
23
23
|
|
|
24
24
|
# Top-level filter with simple boolean logic (no nesting)
|
|
25
|
-
sig { returns(T.nilable(Cadenya::
|
|
25
|
+
sig { returns(T.nilable(Cadenya::ToolFilter)) }
|
|
26
26
|
attr_reader :include_tools
|
|
27
27
|
|
|
28
|
-
sig { params(include_tools: Cadenya::
|
|
28
|
+
sig { params(include_tools: Cadenya::ToolFilter::OrHash).void }
|
|
29
29
|
attr_writer :include_tools
|
|
30
30
|
|
|
31
|
-
# Approval filters that will automatically set the approval requirement on
|
|
32
|
-
#
|
|
33
|
-
sig { returns(T.nilable(Cadenya::
|
|
31
|
+
# Approval filters that will automatically set the approval requirement on tools
|
|
32
|
+
# synced from an external source
|
|
33
|
+
sig { returns(T.nilable(Cadenya::ApprovalRequirementFilter)) }
|
|
34
34
|
attr_reader :tool_approvals
|
|
35
35
|
|
|
36
36
|
sig do
|
|
37
|
-
params(
|
|
38
|
-
tool_approvals: Cadenya::ToolSetAdapterMcp::ToolApprovals::OrHash
|
|
39
|
-
).void
|
|
37
|
+
params(tool_approvals: Cadenya::ApprovalRequirementFilter::OrHash).void
|
|
40
38
|
end
|
|
41
39
|
attr_writer :tool_approvals
|
|
42
40
|
|
|
@@ -48,10 +46,10 @@ module Cadenya
|
|
|
48
46
|
|
|
49
47
|
sig do
|
|
50
48
|
params(
|
|
51
|
-
exclude_tools: Cadenya::
|
|
49
|
+
exclude_tools: Cadenya::ToolFilter::OrHash,
|
|
52
50
|
headers: T::Hash[Symbol, String],
|
|
53
|
-
include_tools: Cadenya::
|
|
54
|
-
tool_approvals: Cadenya::
|
|
51
|
+
include_tools: Cadenya::ToolFilter::OrHash,
|
|
52
|
+
tool_approvals: Cadenya::ApprovalRequirementFilter::OrHash,
|
|
55
53
|
url: String
|
|
56
54
|
).returns(T.attached_class)
|
|
57
55
|
end
|
|
@@ -61,8 +59,8 @@ module Cadenya
|
|
|
61
59
|
headers: nil,
|
|
62
60
|
# Top-level filter with simple boolean logic (no nesting)
|
|
63
61
|
include_tools: nil,
|
|
64
|
-
# Approval filters that will automatically set the approval requirement on
|
|
65
|
-
#
|
|
62
|
+
# Approval filters that will automatically set the approval requirement on tools
|
|
63
|
+
# synced from an external source
|
|
66
64
|
tool_approvals: nil,
|
|
67
65
|
url: nil
|
|
68
66
|
)
|
|
@@ -71,60 +69,16 @@ module Cadenya
|
|
|
71
69
|
sig do
|
|
72
70
|
override.returns(
|
|
73
71
|
{
|
|
74
|
-
exclude_tools: Cadenya::
|
|
72
|
+
exclude_tools: Cadenya::ToolFilter,
|
|
75
73
|
headers: T::Hash[Symbol, String],
|
|
76
|
-
include_tools: Cadenya::
|
|
77
|
-
tool_approvals: Cadenya::
|
|
74
|
+
include_tools: Cadenya::ToolFilter,
|
|
75
|
+
tool_approvals: Cadenya::ApprovalRequirementFilter,
|
|
78
76
|
url: String
|
|
79
77
|
}
|
|
80
78
|
)
|
|
81
79
|
end
|
|
82
80
|
def to_hash
|
|
83
81
|
end
|
|
84
|
-
|
|
85
|
-
class ToolApprovals < Cadenya::Internal::Type::BaseModel
|
|
86
|
-
OrHash =
|
|
87
|
-
T.type_alias do
|
|
88
|
-
T.any(
|
|
89
|
-
Cadenya::ToolSetAdapterMcp::ToolApprovals,
|
|
90
|
-
Cadenya::Internal::AnyHash
|
|
91
|
-
)
|
|
92
|
-
end
|
|
93
|
-
|
|
94
|
-
sig { returns(T.nilable(T::Boolean)) }
|
|
95
|
-
attr_reader :always
|
|
96
|
-
|
|
97
|
-
sig { params(always: T::Boolean).void }
|
|
98
|
-
attr_writer :always
|
|
99
|
-
|
|
100
|
-
# Top-level filter with simple boolean logic (no nesting)
|
|
101
|
-
sig { returns(T.nilable(Cadenya::McpToolFilter)) }
|
|
102
|
-
attr_reader :only
|
|
103
|
-
|
|
104
|
-
sig { params(only: Cadenya::McpToolFilter::OrHash).void }
|
|
105
|
-
attr_writer :only
|
|
106
|
-
|
|
107
|
-
# Approval filters that will automatically set the approval requirement on the
|
|
108
|
-
# tools synced from the MCP server
|
|
109
|
-
sig do
|
|
110
|
-
params(
|
|
111
|
-
always: T::Boolean,
|
|
112
|
-
only: Cadenya::McpToolFilter::OrHash
|
|
113
|
-
).returns(T.attached_class)
|
|
114
|
-
end
|
|
115
|
-
def self.new(
|
|
116
|
-
always: nil,
|
|
117
|
-
# Top-level filter with simple boolean logic (no nesting)
|
|
118
|
-
only: nil
|
|
119
|
-
)
|
|
120
|
-
end
|
|
121
|
-
|
|
122
|
-
sig do
|
|
123
|
-
override.returns({ always: T::Boolean, only: Cadenya::McpToolFilter })
|
|
124
|
-
end
|
|
125
|
-
def to_hash
|
|
126
|
-
end
|
|
127
|
-
end
|
|
128
82
|
end
|
|
129
83
|
end
|
|
130
84
|
end
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Cadenya
|
|
4
|
+
module Models
|
|
5
|
+
class ToolSetAdapterOpenAPI < Cadenya::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(Cadenya::ToolSetAdapterOpenAPI, Cadenya::Internal::AnyHash)
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
# Base URL for dispatching tool calls. If set, overrides the server resolved from
|
|
12
|
+
# the spec's servers array.
|
|
13
|
+
sig { returns(T.nilable(String)) }
|
|
14
|
+
attr_reader :base_url
|
|
15
|
+
|
|
16
|
+
sig { params(base_url: String).void }
|
|
17
|
+
attr_writer :base_url
|
|
18
|
+
|
|
19
|
+
# Top-level filter with simple boolean logic (no nesting)
|
|
20
|
+
sig { returns(T.nilable(Cadenya::ToolFilter)) }
|
|
21
|
+
attr_reader :exclude_tools
|
|
22
|
+
|
|
23
|
+
sig { params(exclude_tools: Cadenya::ToolFilter::OrHash).void }
|
|
24
|
+
attr_writer :exclude_tools
|
|
25
|
+
|
|
26
|
+
# Headers sent when fetching the spec from a URL and when dispatching tool calls.
|
|
27
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
28
|
+
attr_reader :headers
|
|
29
|
+
|
|
30
|
+
sig { params(headers: T::Hash[Symbol, String]).void }
|
|
31
|
+
attr_writer :headers
|
|
32
|
+
|
|
33
|
+
# Top-level filter with simple boolean logic (no nesting)
|
|
34
|
+
sig { returns(T.nilable(Cadenya::ToolFilter)) }
|
|
35
|
+
attr_reader :include_tools
|
|
36
|
+
|
|
37
|
+
sig { params(include_tools: Cadenya::ToolFilter::OrHash).void }
|
|
38
|
+
attr_writer :include_tools
|
|
39
|
+
|
|
40
|
+
# Name of the server entry in the spec's servers array (OpenAPI 3.2 server.name
|
|
41
|
+
# field). Used to select which server URL to dispatch to when base_url is not set.
|
|
42
|
+
# If unset, the first server is used. Ignored when base_url is set.
|
|
43
|
+
sig { returns(T.nilable(String)) }
|
|
44
|
+
attr_reader :server_name
|
|
45
|
+
|
|
46
|
+
sig { params(server_name: String).void }
|
|
47
|
+
attr_writer :server_name
|
|
48
|
+
|
|
49
|
+
# Approval filters that will automatically set the approval requirement on tools
|
|
50
|
+
# synced from an external source
|
|
51
|
+
sig { returns(T.nilable(Cadenya::ApprovalRequirementFilter)) }
|
|
52
|
+
attr_reader :tool_approvals
|
|
53
|
+
|
|
54
|
+
sig do
|
|
55
|
+
params(tool_approvals: Cadenya::ApprovalRequirementFilter::OrHash).void
|
|
56
|
+
end
|
|
57
|
+
attr_writer :tool_approvals
|
|
58
|
+
|
|
59
|
+
# ID of a COMPLETE Upload containing the OpenAPI spec document.
|
|
60
|
+
sig { returns(T.nilable(String)) }
|
|
61
|
+
attr_reader :upload_id
|
|
62
|
+
|
|
63
|
+
sig { params(upload_id: String).void }
|
|
64
|
+
attr_writer :upload_id
|
|
65
|
+
|
|
66
|
+
# URL to fetch the OpenAPI spec from. Synced automatically every hour.
|
|
67
|
+
sig { returns(T.nilable(String)) }
|
|
68
|
+
attr_reader :url
|
|
69
|
+
|
|
70
|
+
sig { params(url: String).void }
|
|
71
|
+
attr_writer :url
|
|
72
|
+
|
|
73
|
+
sig do
|
|
74
|
+
params(
|
|
75
|
+
base_url: String,
|
|
76
|
+
exclude_tools: Cadenya::ToolFilter::OrHash,
|
|
77
|
+
headers: T::Hash[Symbol, String],
|
|
78
|
+
include_tools: Cadenya::ToolFilter::OrHash,
|
|
79
|
+
server_name: String,
|
|
80
|
+
tool_approvals: Cadenya::ApprovalRequirementFilter::OrHash,
|
|
81
|
+
upload_id: String,
|
|
82
|
+
url: String
|
|
83
|
+
).returns(T.attached_class)
|
|
84
|
+
end
|
|
85
|
+
def self.new(
|
|
86
|
+
# Base URL for dispatching tool calls. If set, overrides the server resolved from
|
|
87
|
+
# the spec's servers array.
|
|
88
|
+
base_url: nil,
|
|
89
|
+
# Top-level filter with simple boolean logic (no nesting)
|
|
90
|
+
exclude_tools: nil,
|
|
91
|
+
# Headers sent when fetching the spec from a URL and when dispatching tool calls.
|
|
92
|
+
headers: nil,
|
|
93
|
+
# Top-level filter with simple boolean logic (no nesting)
|
|
94
|
+
include_tools: nil,
|
|
95
|
+
# Name of the server entry in the spec's servers array (OpenAPI 3.2 server.name
|
|
96
|
+
# field). Used to select which server URL to dispatch to when base_url is not set.
|
|
97
|
+
# If unset, the first server is used. Ignored when base_url is set.
|
|
98
|
+
server_name: nil,
|
|
99
|
+
# Approval filters that will automatically set the approval requirement on tools
|
|
100
|
+
# synced from an external source
|
|
101
|
+
tool_approvals: nil,
|
|
102
|
+
# ID of a COMPLETE Upload containing the OpenAPI spec document.
|
|
103
|
+
upload_id: nil,
|
|
104
|
+
# URL to fetch the OpenAPI spec from. Synced automatically every hour.
|
|
105
|
+
url: nil
|
|
106
|
+
)
|
|
107
|
+
end
|
|
108
|
+
|
|
109
|
+
sig do
|
|
110
|
+
override.returns(
|
|
111
|
+
{
|
|
112
|
+
base_url: String,
|
|
113
|
+
exclude_tools: Cadenya::ToolFilter,
|
|
114
|
+
headers: T::Hash[Symbol, String],
|
|
115
|
+
include_tools: Cadenya::ToolFilter,
|
|
116
|
+
server_name: String,
|
|
117
|
+
tool_approvals: Cadenya::ApprovalRequirementFilter,
|
|
118
|
+
upload_id: String,
|
|
119
|
+
url: String
|
|
120
|
+
}
|
|
121
|
+
)
|
|
122
|
+
end
|
|
123
|
+
def to_hash
|
|
124
|
+
end
|
|
125
|
+
end
|
|
126
|
+
end
|
|
127
|
+
end
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Cadenya
|
|
4
|
+
module Models
|
|
5
|
+
class ToolSetGetOpenAPISpecParams < Cadenya::Internal::Type::BaseModel
|
|
6
|
+
extend Cadenya::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include Cadenya::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
Cadenya::ToolSetGetOpenAPISpecParams,
|
|
13
|
+
Cadenya::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
sig { returns(String) }
|
|
18
|
+
attr_accessor :workspace_id
|
|
19
|
+
|
|
20
|
+
sig { returns(String) }
|
|
21
|
+
attr_accessor :tool_set_id
|
|
22
|
+
|
|
23
|
+
sig do
|
|
24
|
+
params(
|
|
25
|
+
workspace_id: String,
|
|
26
|
+
tool_set_id: String,
|
|
27
|
+
request_options: Cadenya::RequestOptions::OrHash
|
|
28
|
+
).returns(T.attached_class)
|
|
29
|
+
end
|
|
30
|
+
def self.new(workspace_id:, tool_set_id:, request_options: {})
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
sig do
|
|
34
|
+
override.returns(
|
|
35
|
+
{
|
|
36
|
+
workspace_id: String,
|
|
37
|
+
tool_set_id: String,
|
|
38
|
+
request_options: Cadenya::RequestOptions
|
|
39
|
+
}
|
|
40
|
+
)
|
|
41
|
+
end
|
|
42
|
+
def to_hash
|
|
43
|
+
end
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Cadenya
|
|
4
|
+
module Models
|
|
5
|
+
class ToolSetGetOpenAPISpecResponse < Cadenya::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
Cadenya::Models::ToolSetGetOpenAPISpecResponse,
|
|
10
|
+
Cadenya::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
# The consumed OpenAPI specification as a JSON string.
|
|
15
|
+
sig { returns(T.nilable(String)) }
|
|
16
|
+
attr_reader :spec
|
|
17
|
+
|
|
18
|
+
sig { params(spec: String).void }
|
|
19
|
+
attr_writer :spec
|
|
20
|
+
|
|
21
|
+
sig { params(spec: String).returns(T.attached_class) }
|
|
22
|
+
def self.new(
|
|
23
|
+
# The consumed OpenAPI specification as a JSON string.
|
|
24
|
+
spec: nil
|
|
25
|
+
)
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
sig { override.returns({ spec: String }) }
|
|
29
|
+
def to_hash
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Cadenya
|
|
4
|
+
module Models
|
|
5
|
+
module ToolSets
|
|
6
|
+
class ConfigOpenAPI < Cadenya::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(Cadenya::ToolSets::ConfigOpenAPI, Cadenya::Internal::AnyHash)
|
|
10
|
+
end
|
|
11
|
+
|
|
12
|
+
sig { returns(T.nilable(String)) }
|
|
13
|
+
attr_reader :method_
|
|
14
|
+
|
|
15
|
+
sig { params(method_: String).void }
|
|
16
|
+
attr_writer :method_
|
|
17
|
+
|
|
18
|
+
sig { returns(T.nilable(String)) }
|
|
19
|
+
attr_reader :operation_id
|
|
20
|
+
|
|
21
|
+
sig { params(operation_id: String).void }
|
|
22
|
+
attr_writer :operation_id
|
|
23
|
+
|
|
24
|
+
sig { returns(T.nilable(String)) }
|
|
25
|
+
attr_reader :path
|
|
26
|
+
|
|
27
|
+
sig { params(path: String).void }
|
|
28
|
+
attr_writer :path
|
|
29
|
+
|
|
30
|
+
sig do
|
|
31
|
+
params(method_: String, operation_id: String, path: String).returns(
|
|
32
|
+
T.attached_class
|
|
33
|
+
)
|
|
34
|
+
end
|
|
35
|
+
def self.new(method_: nil, operation_id: nil, path: nil)
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
sig do
|
|
39
|
+
override.returns(
|
|
40
|
+
{ method_: String, operation_id: String, path: String }
|
|
41
|
+
)
|
|
42
|
+
end
|
|
43
|
+
def to_hash
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -21,23 +21,31 @@ module Cadenya
|
|
|
21
21
|
sig { params(mcp: Cadenya::ToolSets::ConfigMcp::OrHash).void }
|
|
22
22
|
attr_writer :mcp
|
|
23
23
|
|
|
24
|
+
sig { returns(T.nilable(Cadenya::ToolSets::ConfigOpenAPI)) }
|
|
25
|
+
attr_reader :openapi
|
|
26
|
+
|
|
27
|
+
sig { params(openapi: Cadenya::ToolSets::ConfigOpenAPI::OrHash).void }
|
|
28
|
+
attr_writer :openapi
|
|
29
|
+
|
|
24
30
|
# Config defines the adapter to use for the tool. This is used to determine how
|
|
25
31
|
# the tool is called. For example, if the tool is an HTTP tool, the adapter will
|
|
26
32
|
# be Http. If the tool is an inline tool, the adapter will be Inline.
|
|
27
33
|
sig do
|
|
28
34
|
params(
|
|
29
35
|
http: Cadenya::ToolSets::ConfigHTTP::OrHash,
|
|
30
|
-
mcp: Cadenya::ToolSets::ConfigMcp::OrHash
|
|
36
|
+
mcp: Cadenya::ToolSets::ConfigMcp::OrHash,
|
|
37
|
+
openapi: Cadenya::ToolSets::ConfigOpenAPI::OrHash
|
|
31
38
|
).returns(T.attached_class)
|
|
32
39
|
end
|
|
33
|
-
def self.new(http: nil, mcp: nil)
|
|
40
|
+
def self.new(http: nil, mcp: nil, openapi: nil)
|
|
34
41
|
end
|
|
35
42
|
|
|
36
43
|
sig do
|
|
37
44
|
override.returns(
|
|
38
45
|
{
|
|
39
46
|
http: Cadenya::ToolSets::ConfigHTTP,
|
|
40
|
-
mcp: Cadenya::ToolSets::ConfigMcp
|
|
47
|
+
mcp: Cadenya::ToolSets::ConfigMcp,
|
|
48
|
+
openapi: Cadenya::ToolSets::ConfigOpenAPI
|
|
41
49
|
}
|
|
42
50
|
)
|
|
43
51
|
end
|
|
@@ -20,17 +20,29 @@ module Cadenya
|
|
|
20
20
|
sig { params(spec: Cadenya::WorkspaceSpec::OrHash).void }
|
|
21
21
|
attr_writer :spec
|
|
22
22
|
|
|
23
|
+
# Lifecycle status of the workspace. Archived workspaces reject all requests
|
|
24
|
+
# scoped to them. Server-populated.
|
|
25
|
+
sig { returns(T.nilable(Cadenya::Workspace::Status::TaggedSymbol)) }
|
|
26
|
+
attr_reader :status
|
|
27
|
+
|
|
28
|
+
sig { params(status: Cadenya::Workspace::Status::OrSymbol).void }
|
|
29
|
+
attr_writer :status
|
|
30
|
+
|
|
23
31
|
sig do
|
|
24
32
|
params(
|
|
25
33
|
metadata: Cadenya::AccountResourceMetadata::OrHash,
|
|
26
|
-
spec: Cadenya::WorkspaceSpec::OrHash
|
|
34
|
+
spec: Cadenya::WorkspaceSpec::OrHash,
|
|
35
|
+
status: Cadenya::Workspace::Status::OrSymbol
|
|
27
36
|
).returns(T.attached_class)
|
|
28
37
|
end
|
|
29
38
|
def self.new(
|
|
30
39
|
# AccountResourceMetadata is used to represent a resource that is associated to an
|
|
31
40
|
# account but not to a workspace.
|
|
32
41
|
metadata:,
|
|
33
|
-
spec
|
|
42
|
+
spec:,
|
|
43
|
+
# Lifecycle status of the workspace. Archived workspaces reject all requests
|
|
44
|
+
# scoped to them. Server-populated.
|
|
45
|
+
status: nil
|
|
34
46
|
)
|
|
35
47
|
end
|
|
36
48
|
|
|
@@ -38,12 +50,36 @@ module Cadenya
|
|
|
38
50
|
override.returns(
|
|
39
51
|
{
|
|
40
52
|
metadata: Cadenya::AccountResourceMetadata,
|
|
41
|
-
spec: Cadenya::WorkspaceSpec
|
|
53
|
+
spec: Cadenya::WorkspaceSpec,
|
|
54
|
+
status: Cadenya::Workspace::Status::TaggedSymbol
|
|
42
55
|
}
|
|
43
56
|
)
|
|
44
57
|
end
|
|
45
58
|
def to_hash
|
|
46
59
|
end
|
|
60
|
+
|
|
61
|
+
# Lifecycle status of the workspace. Archived workspaces reject all requests
|
|
62
|
+
# scoped to them. Server-populated.
|
|
63
|
+
module Status
|
|
64
|
+
extend Cadenya::Internal::Type::Enum
|
|
65
|
+
|
|
66
|
+
TaggedSymbol =
|
|
67
|
+
T.type_alias { T.all(Symbol, Cadenya::Workspace::Status) }
|
|
68
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
69
|
+
|
|
70
|
+
STATUS_ENABLED =
|
|
71
|
+
T.let(:STATUS_ENABLED, Cadenya::Workspace::Status::TaggedSymbol)
|
|
72
|
+
STATUS_DISABLED =
|
|
73
|
+
T.let(:STATUS_DISABLED, Cadenya::Workspace::Status::TaggedSymbol)
|
|
74
|
+
STATUS_ARCHIVED =
|
|
75
|
+
T.let(:STATUS_ARCHIVED, Cadenya::Workspace::Status::TaggedSymbol)
|
|
76
|
+
|
|
77
|
+
sig do
|
|
78
|
+
override.returns(T::Array[Cadenya::Workspace::Status::TaggedSymbol])
|
|
79
|
+
end
|
|
80
|
+
def self.values
|
|
81
|
+
end
|
|
82
|
+
end
|
|
47
83
|
end
|
|
48
84
|
end
|
|
49
85
|
end
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Cadenya
|
|
4
|
+
module Models
|
|
5
|
+
module WorkspaceAdmin
|
|
6
|
+
class MemberAddParams < Cadenya::Internal::Type::BaseModel
|
|
7
|
+
extend Cadenya::Internal::Type::RequestParameters::Converter
|
|
8
|
+
include Cadenya::Internal::Type::RequestParameters
|
|
9
|
+
|
|
10
|
+
OrHash =
|
|
11
|
+
T.type_alias do
|
|
12
|
+
T.any(
|
|
13
|
+
Cadenya::WorkspaceAdmin::MemberAddParams,
|
|
14
|
+
Cadenya::Internal::AnyHash
|
|
15
|
+
)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :workspace_id
|
|
20
|
+
|
|
21
|
+
# Email address to add (resolve-or-invite). Mutually exclusive with profile_id.
|
|
22
|
+
sig { returns(T.nilable(String)) }
|
|
23
|
+
attr_reader :email
|
|
24
|
+
|
|
25
|
+
sig { params(email: String).void }
|
|
26
|
+
attr_writer :email
|
|
27
|
+
|
|
28
|
+
# An existing account profile to add. Mutually exclusive with email.
|
|
29
|
+
sig { returns(T.nilable(String)) }
|
|
30
|
+
attr_reader :profile_id
|
|
31
|
+
|
|
32
|
+
sig { params(profile_id: String).void }
|
|
33
|
+
attr_writer :profile_id
|
|
34
|
+
|
|
35
|
+
sig do
|
|
36
|
+
params(
|
|
37
|
+
workspace_id: String,
|
|
38
|
+
email: String,
|
|
39
|
+
profile_id: String,
|
|
40
|
+
request_options: Cadenya::RequestOptions::OrHash
|
|
41
|
+
).returns(T.attached_class)
|
|
42
|
+
end
|
|
43
|
+
def self.new(
|
|
44
|
+
workspace_id:,
|
|
45
|
+
# Email address to add (resolve-or-invite). Mutually exclusive with profile_id.
|
|
46
|
+
email: nil,
|
|
47
|
+
# An existing account profile to add. Mutually exclusive with email.
|
|
48
|
+
profile_id: nil,
|
|
49
|
+
request_options: {}
|
|
50
|
+
)
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
sig do
|
|
54
|
+
override.returns(
|
|
55
|
+
{
|
|
56
|
+
workspace_id: String,
|
|
57
|
+
email: String,
|
|
58
|
+
profile_id: String,
|
|
59
|
+
request_options: Cadenya::RequestOptions
|
|
60
|
+
}
|
|
61
|
+
)
|
|
62
|
+
end
|
|
63
|
+
def to_hash
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Cadenya
|
|
4
|
+
module Models
|
|
5
|
+
module WorkspaceAdmin
|
|
6
|
+
class MemberListParams < Cadenya::Internal::Type::BaseModel
|
|
7
|
+
extend Cadenya::Internal::Type::RequestParameters::Converter
|
|
8
|
+
include Cadenya::Internal::Type::RequestParameters
|
|
9
|
+
|
|
10
|
+
OrHash =
|
|
11
|
+
T.type_alias do
|
|
12
|
+
T.any(
|
|
13
|
+
Cadenya::WorkspaceAdmin::MemberListParams,
|
|
14
|
+
Cadenya::Internal::AnyHash
|
|
15
|
+
)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :workspace_id
|
|
20
|
+
|
|
21
|
+
# Pagination cursor from previous response
|
|
22
|
+
sig { returns(T.nilable(String)) }
|
|
23
|
+
attr_reader :cursor
|
|
24
|
+
|
|
25
|
+
sig { params(cursor: String).void }
|
|
26
|
+
attr_writer :cursor
|
|
27
|
+
|
|
28
|
+
# Maximum number of results to return
|
|
29
|
+
sig { returns(T.nilable(Integer)) }
|
|
30
|
+
attr_reader :limit
|
|
31
|
+
|
|
32
|
+
sig { params(limit: Integer).void }
|
|
33
|
+
attr_writer :limit
|
|
34
|
+
|
|
35
|
+
sig do
|
|
36
|
+
params(
|
|
37
|
+
workspace_id: String,
|
|
38
|
+
cursor: String,
|
|
39
|
+
limit: Integer,
|
|
40
|
+
request_options: Cadenya::RequestOptions::OrHash
|
|
41
|
+
).returns(T.attached_class)
|
|
42
|
+
end
|
|
43
|
+
def self.new(
|
|
44
|
+
workspace_id:,
|
|
45
|
+
# Pagination cursor from previous response
|
|
46
|
+
cursor: nil,
|
|
47
|
+
# Maximum number of results to return
|
|
48
|
+
limit: nil,
|
|
49
|
+
request_options: {}
|
|
50
|
+
)
|
|
51
|
+
end
|
|
52
|
+
|
|
53
|
+
sig do
|
|
54
|
+
override.returns(
|
|
55
|
+
{
|
|
56
|
+
workspace_id: String,
|
|
57
|
+
cursor: String,
|
|
58
|
+
limit: Integer,
|
|
59
|
+
request_options: Cadenya::RequestOptions
|
|
60
|
+
}
|
|
61
|
+
)
|
|
62
|
+
end
|
|
63
|
+
def to_hash
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Cadenya
|
|
4
|
+
module Models
|
|
5
|
+
module WorkspaceAdmin
|
|
6
|
+
class MemberRemoveParams < Cadenya::Internal::Type::BaseModel
|
|
7
|
+
extend Cadenya::Internal::Type::RequestParameters::Converter
|
|
8
|
+
include Cadenya::Internal::Type::RequestParameters
|
|
9
|
+
|
|
10
|
+
OrHash =
|
|
11
|
+
T.type_alias do
|
|
12
|
+
T.any(
|
|
13
|
+
Cadenya::WorkspaceAdmin::MemberRemoveParams,
|
|
14
|
+
Cadenya::Internal::AnyHash
|
|
15
|
+
)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :workspace_id
|
|
20
|
+
|
|
21
|
+
sig { returns(String) }
|
|
22
|
+
attr_accessor :profile_id
|
|
23
|
+
|
|
24
|
+
sig do
|
|
25
|
+
params(
|
|
26
|
+
workspace_id: String,
|
|
27
|
+
profile_id: String,
|
|
28
|
+
request_options: Cadenya::RequestOptions::OrHash
|
|
29
|
+
).returns(T.attached_class)
|
|
30
|
+
end
|
|
31
|
+
def self.new(workspace_id:, profile_id:, request_options: {})
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
sig do
|
|
35
|
+
override.returns(
|
|
36
|
+
{
|
|
37
|
+
workspace_id: String,
|
|
38
|
+
profile_id: String,
|
|
39
|
+
request_options: Cadenya::RequestOptions
|
|
40
|
+
}
|
|
41
|
+
)
|
|
42
|
+
end
|
|
43
|
+
def to_hash
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|