cadenya 0.18.1 → 0.19.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 +8 -0
- data/README.md +1 -1
- data/lib/cadenya/models/tool_set_info.rb +15 -1
- data/lib/cadenya/models/tool_sets/config_http.rb +1 -14
- data/lib/cadenya/models/tool_sets/config_mcp.rb +2 -21
- data/lib/cadenya/models/tool_sets/config_openapi.rb +1 -7
- data/lib/cadenya/models/tool_sets/tool_spec.rb +12 -1
- data/lib/cadenya/models/tool_sets/tool_spec_config.rb +3 -3
- data/lib/cadenya/version.rb +1 -1
- data/rbi/cadenya/models/tool_set_info.rbi +18 -0
- data/rbi/cadenya/models/tool_sets/config_http.rbi +3 -18
- data/rbi/cadenya/models/tool_sets/config_mcp.rbi +1 -42
- data/rbi/cadenya/models/tool_sets/config_openapi.rbi +3 -17
- data/rbi/cadenya/models/tool_sets/tool_spec.rbi +20 -3
- data/rbi/cadenya/models/tool_sets/tool_spec_config.rbi +4 -4
- data/sig/cadenya/models/tool_set_info.rbs +14 -0
- data/sig/cadenya/models/tool_sets/config_http.rbs +3 -10
- data/sig/cadenya/models/tool_sets/config_mcp.rbs +1 -28
- data/sig/cadenya/models/tool_sets/config_openapi.rbs +3 -12
- data/sig/cadenya/models/tool_sets/tool_spec.rbs +10 -3
- data/sig/cadenya/models/tool_sets/tool_spec_config.rbs +5 -5
- metadata +2 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 8a1cd1094416300054791cf69e8674033368d3f3c8f780d2b320fdc2f0188aeb
|
|
4
|
+
data.tar.gz: 1e379a7e547aad3305d2862ee4cc916b0d0e2df1543a4ec43df93bb83bca0f33
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 259dd0100c397323f498c42cd3c9af529acd9fa647a039d4c869bd9a64d02ab154750fee6bd7ab5b67c1374c17dbbd85e6c120453f36a6e6045c0b875718ea13
|
|
7
|
+
data.tar.gz: 73baee1a23b48abf85714213080a3acc32f259601e6e21e5e8328ff6ebc95b02a4b4ea11f9a8d4c3f23679fff537c9753966a7e0caeb26afaacc2d0925c87a6b
|
data/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
|
+
## 0.19.0 (2026-06-18)
|
|
4
|
+
|
|
5
|
+
Full Changelog: [v0.18.1...v0.19.0](https://github.com/cadenya/cadenya-ruby/compare/v0.18.1...v0.19.0)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* **api:** api update ([da7dc73](https://github.com/cadenya/cadenya-ruby/commit/da7dc7340219a440e27f1e41bb140d6a34cac587))
|
|
10
|
+
|
|
3
11
|
## 0.18.1 (2026-06-17)
|
|
4
12
|
|
|
5
13
|
Full Changelog: [v0.18.0...v0.18.1](https://github.com/cadenya/cadenya-ruby/compare/v0.18.0...v0.18.1)
|
data/README.md
CHANGED
|
@@ -3,6 +3,11 @@
|
|
|
3
3
|
module Cadenya
|
|
4
4
|
module Models
|
|
5
5
|
class ToolSetInfo < Cadenya::Internal::Type::BaseModel
|
|
6
|
+
# @!attribute available_tools
|
|
7
|
+
#
|
|
8
|
+
# @return [Integer, nil]
|
|
9
|
+
optional :available_tools, Integer, api_name: :availableTools
|
|
10
|
+
|
|
6
11
|
# @!attribute created_by
|
|
7
12
|
# A profile identifies a user or non-human principal (such as an API key) at the
|
|
8
13
|
# account level. Profiles are account-scoped and can be granted access to multiple
|
|
@@ -11,6 +16,11 @@ module Cadenya
|
|
|
11
16
|
# @return [Cadenya::Models::Profile, nil]
|
|
12
17
|
optional :created_by, -> { Cadenya::Profile }, api_name: :createdBy
|
|
13
18
|
|
|
19
|
+
# @!attribute omitted_tools
|
|
20
|
+
#
|
|
21
|
+
# @return [Integer, nil]
|
|
22
|
+
optional :omitted_tools, Integer, api_name: :omittedTools
|
|
23
|
+
|
|
14
24
|
response_only do
|
|
15
25
|
# @!attribute agent_count
|
|
16
26
|
#
|
|
@@ -28,16 +38,20 @@ module Cadenya
|
|
|
28
38
|
optional :tool_count, Integer, api_name: :toolCount
|
|
29
39
|
end
|
|
30
40
|
|
|
31
|
-
# @!method initialize(agent_count: nil, created_by: nil, last_sync: nil, tool_count: nil)
|
|
41
|
+
# @!method initialize(agent_count: nil, available_tools: nil, created_by: nil, last_sync: nil, omitted_tools: nil, tool_count: nil)
|
|
32
42
|
# Some parameter documentations has been truncated, see
|
|
33
43
|
# {Cadenya::Models::ToolSetInfo} for more details.
|
|
34
44
|
#
|
|
35
45
|
# @param agent_count [Integer]
|
|
36
46
|
#
|
|
47
|
+
# @param available_tools [Integer]
|
|
48
|
+
#
|
|
37
49
|
# @param created_by [Cadenya::Models::Profile] A profile identifies a user or non-human principal (such as an API key)
|
|
38
50
|
#
|
|
39
51
|
# @param last_sync [Time]
|
|
40
52
|
#
|
|
53
|
+
# @param omitted_tools [Integer]
|
|
54
|
+
#
|
|
41
55
|
# @param tool_count [Integer]
|
|
42
56
|
end
|
|
43
57
|
end
|
|
@@ -37,18 +37,7 @@ module Cadenya
|
|
|
37
37
|
# @return [String, nil]
|
|
38
38
|
optional :request_body_template, String, api_name: :requestBodyTemplate
|
|
39
39
|
|
|
40
|
-
# @!
|
|
41
|
-
# The tool name (commonly an "operation id" in OpenAPI specs) to call on the HTTP
|
|
42
|
-
# adapter. This is used to match the tool spec to the correct endpoint on the HTTP
|
|
43
|
-
# adapter. it will be derived from the name of the tool if not provided.
|
|
44
|
-
#
|
|
45
|
-
# @return [String, nil]
|
|
46
|
-
optional :tool_name, String, api_name: :toolName
|
|
47
|
-
|
|
48
|
-
# @!method initialize(request_method:, headers: nil, path: nil, query: nil, request_body_content_type: nil, request_body_template: nil, tool_name: nil)
|
|
49
|
-
# Some parameter documentations has been truncated, see
|
|
50
|
-
# {Cadenya::Models::ToolSets::ConfigHTTP} for more details.
|
|
51
|
-
#
|
|
40
|
+
# @!method initialize(request_method:, headers: nil, path: nil, query: nil, request_body_content_type: nil, request_body_template: nil)
|
|
52
41
|
# @param request_method [Symbol, Cadenya::Models::ToolSets::ConfigHTTP::RequestMethod]
|
|
53
42
|
#
|
|
54
43
|
# @param headers [Hash{Symbol=>String}]
|
|
@@ -60,8 +49,6 @@ module Cadenya
|
|
|
60
49
|
# @param request_body_content_type [String]
|
|
61
50
|
#
|
|
62
51
|
# @param request_body_template [String] These are only used when the request method is a POST, PUT, or PATCH
|
|
63
|
-
#
|
|
64
|
-
# @param tool_name [String] The tool name (commonly an "operation id" in OpenAPI specs) to call on the HTTP
|
|
65
52
|
|
|
66
53
|
# @see Cadenya::Models::ToolSets::ConfigHTTP#request_method
|
|
67
54
|
module RequestMethod
|
|
@@ -3,27 +3,8 @@
|
|
|
3
3
|
module Cadenya
|
|
4
4
|
module Models
|
|
5
5
|
module ToolSets
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
#
|
|
9
|
-
# @return [String, nil]
|
|
10
|
-
optional :tool_description, String, api_name: :toolDescription
|
|
11
|
-
|
|
12
|
-
# @!attribute tool_name
|
|
13
|
-
#
|
|
14
|
-
# @return [String, nil]
|
|
15
|
-
optional :tool_name, String, api_name: :toolName
|
|
16
|
-
|
|
17
|
-
# @!attribute tool_title
|
|
18
|
-
#
|
|
19
|
-
# @return [String, nil]
|
|
20
|
-
optional :tool_title, String, api_name: :toolTitle
|
|
21
|
-
|
|
22
|
-
# @!method initialize(tool_description: nil, tool_name: nil, tool_title: nil)
|
|
23
|
-
# @param tool_description [String]
|
|
24
|
-
# @param tool_name [String]
|
|
25
|
-
# @param tool_title [String]
|
|
26
|
-
end
|
|
6
|
+
# @type [Cadenya::Internal::Type::Converter]
|
|
7
|
+
ConfigMcp = Cadenya::Internal::Type::Unknown
|
|
27
8
|
end
|
|
28
9
|
end
|
|
29
10
|
end
|
|
@@ -9,19 +9,13 @@ module Cadenya
|
|
|
9
9
|
# @return [String, nil]
|
|
10
10
|
optional :method_, String, api_name: :method
|
|
11
11
|
|
|
12
|
-
# @!attribute operation_id
|
|
13
|
-
#
|
|
14
|
-
# @return [String, nil]
|
|
15
|
-
optional :operation_id, String, api_name: :operationId
|
|
16
|
-
|
|
17
12
|
# @!attribute path
|
|
18
13
|
#
|
|
19
14
|
# @return [String, nil]
|
|
20
15
|
optional :path, String
|
|
21
16
|
|
|
22
|
-
# @!method initialize(method_: nil,
|
|
17
|
+
# @!method initialize(method_: nil, path: nil)
|
|
23
18
|
# @param method_ [String]
|
|
24
|
-
# @param operation_id [String]
|
|
25
19
|
# @param path [String]
|
|
26
20
|
end
|
|
27
21
|
end
|
|
@@ -27,7 +27,16 @@ module Cadenya
|
|
|
27
27
|
# @return [Boolean]
|
|
28
28
|
required :requires_approval, Cadenya::Internal::Type::Boolean, api_name: :requiresApproval
|
|
29
29
|
|
|
30
|
-
# @!
|
|
30
|
+
# @!attribute llm_tool_name
|
|
31
|
+
# The name provided to the LLM, which may differ from the metadata.name on the
|
|
32
|
+
# tool. LLMs have specific length and format requirements, and tool set sources
|
|
33
|
+
# may not comply with them, so Cadenya does its best to format names into a usable
|
|
34
|
+
# format.
|
|
35
|
+
#
|
|
36
|
+
# @return [String, nil]
|
|
37
|
+
optional :llm_tool_name, String, api_name: :llmToolName
|
|
38
|
+
|
|
39
|
+
# @!method initialize(config:, description:, parameters:, requires_approval:, llm_tool_name: nil)
|
|
31
40
|
# Some parameter documentations has been truncated, see
|
|
32
41
|
# {Cadenya::Models::ToolSets::ToolSpec} for more details.
|
|
33
42
|
#
|
|
@@ -38,6 +47,8 @@ module Cadenya
|
|
|
38
47
|
# @param parameters [Hash{Symbol=>Object}]
|
|
39
48
|
#
|
|
40
49
|
# @param requires_approval [Boolean]
|
|
50
|
+
#
|
|
51
|
+
# @param llm_tool_name [String] The name provided to the LLM, which may differ from the metadata.name on the too
|
|
41
52
|
end
|
|
42
53
|
end
|
|
43
54
|
end
|
|
@@ -11,8 +11,8 @@ module Cadenya
|
|
|
11
11
|
|
|
12
12
|
# @!attribute mcp
|
|
13
13
|
#
|
|
14
|
-
# @return [
|
|
15
|
-
optional :mcp,
|
|
14
|
+
# @return [Object, nil]
|
|
15
|
+
optional :mcp, Cadenya::Internal::Type::Unknown
|
|
16
16
|
|
|
17
17
|
# @!attribute openapi
|
|
18
18
|
#
|
|
@@ -25,7 +25,7 @@ module Cadenya
|
|
|
25
25
|
# be Http. If the tool is an inline tool, the adapter will be Inline.
|
|
26
26
|
#
|
|
27
27
|
# @param http [Cadenya::Models::ToolSets::ConfigHTTP]
|
|
28
|
-
# @param mcp [
|
|
28
|
+
# @param mcp [Object]
|
|
29
29
|
# @param openapi [Cadenya::Models::ToolSets::ConfigOpenAPI]
|
|
30
30
|
end
|
|
31
31
|
end
|
data/lib/cadenya/version.rb
CHANGED
|
@@ -6,6 +6,12 @@ module Cadenya
|
|
|
6
6
|
OrHash =
|
|
7
7
|
T.type_alias { T.any(Cadenya::ToolSetInfo, Cadenya::Internal::AnyHash) }
|
|
8
8
|
|
|
9
|
+
sig { returns(T.nilable(Integer)) }
|
|
10
|
+
attr_reader :available_tools
|
|
11
|
+
|
|
12
|
+
sig { params(available_tools: Integer).void }
|
|
13
|
+
attr_writer :available_tools
|
|
14
|
+
|
|
9
15
|
# A profile identifies a user or non-human principal (such as an API key) at the
|
|
10
16
|
# account level. Profiles are account-scoped and can be granted access to multiple
|
|
11
17
|
# workspaces.
|
|
@@ -15,6 +21,12 @@ module Cadenya
|
|
|
15
21
|
sig { params(created_by: Cadenya::Profile::OrHash).void }
|
|
16
22
|
attr_writer :created_by
|
|
17
23
|
|
|
24
|
+
sig { returns(T.nilable(Integer)) }
|
|
25
|
+
attr_reader :omitted_tools
|
|
26
|
+
|
|
27
|
+
sig { params(omitted_tools: Integer).void }
|
|
28
|
+
attr_writer :omitted_tools
|
|
29
|
+
|
|
18
30
|
sig { returns(T.nilable(Integer)) }
|
|
19
31
|
attr_reader :agent_count
|
|
20
32
|
|
|
@@ -36,18 +48,22 @@ module Cadenya
|
|
|
36
48
|
sig do
|
|
37
49
|
params(
|
|
38
50
|
agent_count: Integer,
|
|
51
|
+
available_tools: Integer,
|
|
39
52
|
created_by: Cadenya::Profile::OrHash,
|
|
40
53
|
last_sync: Time,
|
|
54
|
+
omitted_tools: Integer,
|
|
41
55
|
tool_count: Integer
|
|
42
56
|
).returns(T.attached_class)
|
|
43
57
|
end
|
|
44
58
|
def self.new(
|
|
45
59
|
agent_count: nil,
|
|
60
|
+
available_tools: nil,
|
|
46
61
|
# A profile identifies a user or non-human principal (such as an API key) at the
|
|
47
62
|
# account level. Profiles are account-scoped and can be granted access to multiple
|
|
48
63
|
# workspaces.
|
|
49
64
|
created_by: nil,
|
|
50
65
|
last_sync: nil,
|
|
66
|
+
omitted_tools: nil,
|
|
51
67
|
tool_count: nil
|
|
52
68
|
)
|
|
53
69
|
end
|
|
@@ -56,8 +72,10 @@ module Cadenya
|
|
|
56
72
|
override.returns(
|
|
57
73
|
{
|
|
58
74
|
agent_count: Integer,
|
|
75
|
+
available_tools: Integer,
|
|
59
76
|
created_by: Cadenya::Profile,
|
|
60
77
|
last_sync: Time,
|
|
78
|
+
omitted_tools: Integer,
|
|
61
79
|
tool_count: Integer
|
|
62
80
|
}
|
|
63
81
|
)
|
|
@@ -43,15 +43,6 @@ module Cadenya
|
|
|
43
43
|
sig { params(request_body_template: String).void }
|
|
44
44
|
attr_writer :request_body_template
|
|
45
45
|
|
|
46
|
-
# The tool name (commonly an "operation id" in OpenAPI specs) to call on the HTTP
|
|
47
|
-
# adapter. This is used to match the tool spec to the correct endpoint on the HTTP
|
|
48
|
-
# adapter. it will be derived from the name of the tool if not provided.
|
|
49
|
-
sig { returns(T.nilable(String)) }
|
|
50
|
-
attr_reader :tool_name
|
|
51
|
-
|
|
52
|
-
sig { params(tool_name: String).void }
|
|
53
|
-
attr_writer :tool_name
|
|
54
|
-
|
|
55
46
|
sig do
|
|
56
47
|
params(
|
|
57
48
|
request_method:
|
|
@@ -60,8 +51,7 @@ module Cadenya
|
|
|
60
51
|
path: String,
|
|
61
52
|
query: String,
|
|
62
53
|
request_body_content_type: String,
|
|
63
|
-
request_body_template: String
|
|
64
|
-
tool_name: String
|
|
54
|
+
request_body_template: String
|
|
65
55
|
).returns(T.attached_class)
|
|
66
56
|
end
|
|
67
57
|
def self.new(
|
|
@@ -71,11 +61,7 @@ module Cadenya
|
|
|
71
61
|
query: nil,
|
|
72
62
|
request_body_content_type: nil,
|
|
73
63
|
# These are only used when the request method is a POST, PUT, or PATCH
|
|
74
|
-
request_body_template: nil
|
|
75
|
-
# The tool name (commonly an "operation id" in OpenAPI specs) to call on the HTTP
|
|
76
|
-
# adapter. This is used to match the tool spec to the correct endpoint on the HTTP
|
|
77
|
-
# adapter. it will be derived from the name of the tool if not provided.
|
|
78
|
-
tool_name: nil
|
|
64
|
+
request_body_template: nil
|
|
79
65
|
)
|
|
80
66
|
end
|
|
81
67
|
|
|
@@ -88,8 +74,7 @@ module Cadenya
|
|
|
88
74
|
path: String,
|
|
89
75
|
query: String,
|
|
90
76
|
request_body_content_type: String,
|
|
91
|
-
request_body_template: String
|
|
92
|
-
tool_name: String
|
|
77
|
+
request_body_template: String
|
|
93
78
|
}
|
|
94
79
|
)
|
|
95
80
|
end
|
|
@@ -3,48 +3,7 @@
|
|
|
3
3
|
module Cadenya
|
|
4
4
|
module Models
|
|
5
5
|
module ToolSets
|
|
6
|
-
|
|
7
|
-
OrHash =
|
|
8
|
-
T.type_alias do
|
|
9
|
-
T.any(Cadenya::ToolSets::ConfigMcp, Cadenya::Internal::AnyHash)
|
|
10
|
-
end
|
|
11
|
-
|
|
12
|
-
sig { returns(T.nilable(String)) }
|
|
13
|
-
attr_reader :tool_description
|
|
14
|
-
|
|
15
|
-
sig { params(tool_description: String).void }
|
|
16
|
-
attr_writer :tool_description
|
|
17
|
-
|
|
18
|
-
sig { returns(T.nilable(String)) }
|
|
19
|
-
attr_reader :tool_name
|
|
20
|
-
|
|
21
|
-
sig { params(tool_name: String).void }
|
|
22
|
-
attr_writer :tool_name
|
|
23
|
-
|
|
24
|
-
sig { returns(T.nilable(String)) }
|
|
25
|
-
attr_reader :tool_title
|
|
26
|
-
|
|
27
|
-
sig { params(tool_title: String).void }
|
|
28
|
-
attr_writer :tool_title
|
|
29
|
-
|
|
30
|
-
sig do
|
|
31
|
-
params(
|
|
32
|
-
tool_description: String,
|
|
33
|
-
tool_name: String,
|
|
34
|
-
tool_title: String
|
|
35
|
-
).returns(T.attached_class)
|
|
36
|
-
end
|
|
37
|
-
def self.new(tool_description: nil, tool_name: nil, tool_title: nil)
|
|
38
|
-
end
|
|
39
|
-
|
|
40
|
-
sig do
|
|
41
|
-
override.returns(
|
|
42
|
-
{ tool_description: String, tool_name: String, tool_title: String }
|
|
43
|
-
)
|
|
44
|
-
end
|
|
45
|
-
def to_hash
|
|
46
|
-
end
|
|
47
|
-
end
|
|
6
|
+
ConfigMcp = T.let(T.anything, Cadenya::Internal::Type::Converter)
|
|
48
7
|
end
|
|
49
8
|
end
|
|
50
9
|
end
|
|
@@ -15,31 +15,17 @@ module Cadenya
|
|
|
15
15
|
sig { params(method_: String).void }
|
|
16
16
|
attr_writer :method_
|
|
17
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
18
|
sig { returns(T.nilable(String)) }
|
|
25
19
|
attr_reader :path
|
|
26
20
|
|
|
27
21
|
sig { params(path: String).void }
|
|
28
22
|
attr_writer :path
|
|
29
23
|
|
|
30
|
-
sig
|
|
31
|
-
|
|
32
|
-
T.attached_class
|
|
33
|
-
)
|
|
34
|
-
end
|
|
35
|
-
def self.new(method_: nil, operation_id: nil, path: nil)
|
|
24
|
+
sig { params(method_: String, path: String).returns(T.attached_class) }
|
|
25
|
+
def self.new(method_: nil, path: nil)
|
|
36
26
|
end
|
|
37
27
|
|
|
38
|
-
sig
|
|
39
|
-
override.returns(
|
|
40
|
-
{ method_: String, operation_id: String, path: String }
|
|
41
|
-
)
|
|
42
|
-
end
|
|
28
|
+
sig { override.returns({ method_: String, path: String }) }
|
|
43
29
|
def to_hash
|
|
44
30
|
end
|
|
45
31
|
end
|
|
@@ -27,12 +27,23 @@ module Cadenya
|
|
|
27
27
|
sig { returns(T::Boolean) }
|
|
28
28
|
attr_accessor :requires_approval
|
|
29
29
|
|
|
30
|
+
# The name provided to the LLM, which may differ from the metadata.name on the
|
|
31
|
+
# tool. LLMs have specific length and format requirements, and tool set sources
|
|
32
|
+
# may not comply with them, so Cadenya does its best to format names into a usable
|
|
33
|
+
# format.
|
|
34
|
+
sig { returns(T.nilable(String)) }
|
|
35
|
+
attr_reader :llm_tool_name
|
|
36
|
+
|
|
37
|
+
sig { params(llm_tool_name: String).void }
|
|
38
|
+
attr_writer :llm_tool_name
|
|
39
|
+
|
|
30
40
|
sig do
|
|
31
41
|
params(
|
|
32
42
|
config: Cadenya::ToolSets::ToolSpecConfig::OrHash,
|
|
33
43
|
description: String,
|
|
34
44
|
parameters: T::Hash[Symbol, T.anything],
|
|
35
|
-
requires_approval: T::Boolean
|
|
45
|
+
requires_approval: T::Boolean,
|
|
46
|
+
llm_tool_name: String
|
|
36
47
|
).returns(T.attached_class)
|
|
37
48
|
end
|
|
38
49
|
def self.new(
|
|
@@ -42,7 +53,12 @@ module Cadenya
|
|
|
42
53
|
config:,
|
|
43
54
|
description:,
|
|
44
55
|
parameters:,
|
|
45
|
-
requires_approval
|
|
56
|
+
requires_approval:,
|
|
57
|
+
# The name provided to the LLM, which may differ from the metadata.name on the
|
|
58
|
+
# tool. LLMs have specific length and format requirements, and tool set sources
|
|
59
|
+
# may not comply with them, so Cadenya does its best to format names into a usable
|
|
60
|
+
# format.
|
|
61
|
+
llm_tool_name: nil
|
|
46
62
|
)
|
|
47
63
|
end
|
|
48
64
|
|
|
@@ -52,7 +68,8 @@ module Cadenya
|
|
|
52
68
|
config: Cadenya::ToolSets::ToolSpecConfig,
|
|
53
69
|
description: String,
|
|
54
70
|
parameters: T::Hash[Symbol, T.anything],
|
|
55
|
-
requires_approval: T::Boolean
|
|
71
|
+
requires_approval: T::Boolean,
|
|
72
|
+
llm_tool_name: String
|
|
56
73
|
}
|
|
57
74
|
)
|
|
58
75
|
end
|
|
@@ -15,10 +15,10 @@ module Cadenya
|
|
|
15
15
|
sig { params(http: Cadenya::ToolSets::ConfigHTTP::OrHash).void }
|
|
16
16
|
attr_writer :http
|
|
17
17
|
|
|
18
|
-
sig { returns(T.nilable(
|
|
18
|
+
sig { returns(T.nilable(T.anything)) }
|
|
19
19
|
attr_reader :mcp
|
|
20
20
|
|
|
21
|
-
sig { params(mcp:
|
|
21
|
+
sig { params(mcp: T.anything).void }
|
|
22
22
|
attr_writer :mcp
|
|
23
23
|
|
|
24
24
|
sig { returns(T.nilable(Cadenya::ToolSets::ConfigOpenAPI)) }
|
|
@@ -33,7 +33,7 @@ module Cadenya
|
|
|
33
33
|
sig do
|
|
34
34
|
params(
|
|
35
35
|
http: Cadenya::ToolSets::ConfigHTTP::OrHash,
|
|
36
|
-
mcp:
|
|
36
|
+
mcp: T.anything,
|
|
37
37
|
openapi: Cadenya::ToolSets::ConfigOpenAPI::OrHash
|
|
38
38
|
).returns(T.attached_class)
|
|
39
39
|
end
|
|
@@ -44,7 +44,7 @@ module Cadenya
|
|
|
44
44
|
override.returns(
|
|
45
45
|
{
|
|
46
46
|
http: Cadenya::ToolSets::ConfigHTTP,
|
|
47
|
-
mcp:
|
|
47
|
+
mcp: T.anything,
|
|
48
48
|
openapi: Cadenya::ToolSets::ConfigOpenAPI
|
|
49
49
|
}
|
|
50
50
|
)
|
|
@@ -3,16 +3,26 @@ module Cadenya
|
|
|
3
3
|
type tool_set_info =
|
|
4
4
|
{
|
|
5
5
|
agent_count: Integer,
|
|
6
|
+
available_tools: Integer,
|
|
6
7
|
created_by: Cadenya::Profile,
|
|
7
8
|
last_sync: Time,
|
|
9
|
+
omitted_tools: Integer,
|
|
8
10
|
tool_count: Integer
|
|
9
11
|
}
|
|
10
12
|
|
|
11
13
|
class ToolSetInfo < Cadenya::Internal::Type::BaseModel
|
|
14
|
+
attr_reader available_tools: Integer?
|
|
15
|
+
|
|
16
|
+
def available_tools=: (Integer) -> Integer
|
|
17
|
+
|
|
12
18
|
attr_reader created_by: Cadenya::Profile?
|
|
13
19
|
|
|
14
20
|
def created_by=: (Cadenya::Profile) -> Cadenya::Profile
|
|
15
21
|
|
|
22
|
+
attr_reader omitted_tools: Integer?
|
|
23
|
+
|
|
24
|
+
def omitted_tools=: (Integer) -> Integer
|
|
25
|
+
|
|
16
26
|
attr_reader agent_count: Integer?
|
|
17
27
|
|
|
18
28
|
def agent_count=: (Integer) -> Integer
|
|
@@ -27,15 +37,19 @@ module Cadenya
|
|
|
27
37
|
|
|
28
38
|
def initialize: (
|
|
29
39
|
?agent_count: Integer,
|
|
40
|
+
?available_tools: Integer,
|
|
30
41
|
?created_by: Cadenya::Profile,
|
|
31
42
|
?last_sync: Time,
|
|
43
|
+
?omitted_tools: Integer,
|
|
32
44
|
?tool_count: Integer
|
|
33
45
|
) -> void
|
|
34
46
|
|
|
35
47
|
def to_hash: -> {
|
|
36
48
|
agent_count: Integer,
|
|
49
|
+
available_tools: Integer,
|
|
37
50
|
created_by: Cadenya::Profile,
|
|
38
51
|
last_sync: Time,
|
|
52
|
+
omitted_tools: Integer,
|
|
39
53
|
tool_count: Integer
|
|
40
54
|
}
|
|
41
55
|
end
|
|
@@ -8,8 +8,7 @@ module Cadenya
|
|
|
8
8
|
path: String,
|
|
9
9
|
query: String,
|
|
10
10
|
request_body_content_type: String,
|
|
11
|
-
request_body_template: String
|
|
12
|
-
tool_name: String
|
|
11
|
+
request_body_template: String
|
|
13
12
|
}
|
|
14
13
|
|
|
15
14
|
class ConfigHTTP < Cadenya::Internal::Type::BaseModel
|
|
@@ -35,18 +34,13 @@ module Cadenya
|
|
|
35
34
|
|
|
36
35
|
def request_body_template=: (String) -> String
|
|
37
36
|
|
|
38
|
-
attr_reader tool_name: String?
|
|
39
|
-
|
|
40
|
-
def tool_name=: (String) -> String
|
|
41
|
-
|
|
42
37
|
def initialize: (
|
|
43
38
|
request_method: Cadenya::Models::ToolSets::ConfigHTTP::request_method,
|
|
44
39
|
?headers: ::Hash[Symbol, String],
|
|
45
40
|
?path: String,
|
|
46
41
|
?query: String,
|
|
47
42
|
?request_body_content_type: String,
|
|
48
|
-
?request_body_template: String
|
|
49
|
-
?tool_name: String
|
|
43
|
+
?request_body_template: String
|
|
50
44
|
) -> void
|
|
51
45
|
|
|
52
46
|
def to_hash: -> {
|
|
@@ -55,8 +49,7 @@ module Cadenya
|
|
|
55
49
|
path: String,
|
|
56
50
|
query: String,
|
|
57
51
|
request_body_content_type: String,
|
|
58
|
-
request_body_template: String
|
|
59
|
-
tool_name: String
|
|
52
|
+
request_body_template: String
|
|
60
53
|
}
|
|
61
54
|
|
|
62
55
|
type request_method =
|
|
@@ -1,34 +1,7 @@
|
|
|
1
1
|
module Cadenya
|
|
2
2
|
module Models
|
|
3
3
|
module ToolSets
|
|
4
|
-
|
|
5
|
-
{ tool_description: String, tool_name: String, tool_title: String }
|
|
6
|
-
|
|
7
|
-
class ConfigMcp < Cadenya::Internal::Type::BaseModel
|
|
8
|
-
attr_reader tool_description: String?
|
|
9
|
-
|
|
10
|
-
def tool_description=: (String) -> String
|
|
11
|
-
|
|
12
|
-
attr_reader tool_name: String?
|
|
13
|
-
|
|
14
|
-
def tool_name=: (String) -> String
|
|
15
|
-
|
|
16
|
-
attr_reader tool_title: String?
|
|
17
|
-
|
|
18
|
-
def tool_title=: (String) -> String
|
|
19
|
-
|
|
20
|
-
def initialize: (
|
|
21
|
-
?tool_description: String,
|
|
22
|
-
?tool_name: String,
|
|
23
|
-
?tool_title: String
|
|
24
|
-
) -> void
|
|
25
|
-
|
|
26
|
-
def to_hash: -> {
|
|
27
|
-
tool_description: String,
|
|
28
|
-
tool_name: String,
|
|
29
|
-
tool_title: String
|
|
30
|
-
}
|
|
31
|
-
end
|
|
4
|
+
ConfigMcp: Cadenya::Internal::Type::Converter
|
|
32
5
|
end
|
|
33
6
|
end
|
|
34
7
|
end
|
|
@@ -1,29 +1,20 @@
|
|
|
1
1
|
module Cadenya
|
|
2
2
|
module Models
|
|
3
3
|
module ToolSets
|
|
4
|
-
type config_openapi =
|
|
5
|
-
{ method_: String, operation_id: String, path: String }
|
|
4
|
+
type config_openapi = { method_: String, path: String }
|
|
6
5
|
|
|
7
6
|
class ConfigOpenAPI < Cadenya::Internal::Type::BaseModel
|
|
8
7
|
attr_reader method_: String?
|
|
9
8
|
|
|
10
9
|
def method_=: (String) -> String
|
|
11
10
|
|
|
12
|
-
attr_reader operation_id: String?
|
|
13
|
-
|
|
14
|
-
def operation_id=: (String) -> String
|
|
15
|
-
|
|
16
11
|
attr_reader path: String?
|
|
17
12
|
|
|
18
13
|
def path=: (String) -> String
|
|
19
14
|
|
|
20
|
-
def initialize: (
|
|
21
|
-
?method_: String,
|
|
22
|
-
?operation_id: String,
|
|
23
|
-
?path: String
|
|
24
|
-
) -> void
|
|
15
|
+
def initialize: (?method_: String, ?path: String) -> void
|
|
25
16
|
|
|
26
|
-
def to_hash: -> { method_: String,
|
|
17
|
+
def to_hash: -> { method_: String, path: String }
|
|
27
18
|
end
|
|
28
19
|
end
|
|
29
20
|
end
|
|
@@ -6,7 +6,8 @@ module Cadenya
|
|
|
6
6
|
config: Cadenya::ToolSets::ToolSpecConfig,
|
|
7
7
|
description: String,
|
|
8
8
|
parameters: ::Hash[Symbol, top],
|
|
9
|
-
requires_approval: bool
|
|
9
|
+
requires_approval: bool,
|
|
10
|
+
llm_tool_name: String
|
|
10
11
|
}
|
|
11
12
|
|
|
12
13
|
class ToolSpec < Cadenya::Internal::Type::BaseModel
|
|
@@ -18,18 +19,24 @@ module Cadenya
|
|
|
18
19
|
|
|
19
20
|
attr_accessor requires_approval: bool
|
|
20
21
|
|
|
22
|
+
attr_reader llm_tool_name: String?
|
|
23
|
+
|
|
24
|
+
def llm_tool_name=: (String) -> String
|
|
25
|
+
|
|
21
26
|
def initialize: (
|
|
22
27
|
config: Cadenya::ToolSets::ToolSpecConfig,
|
|
23
28
|
description: String,
|
|
24
29
|
parameters: ::Hash[Symbol, top],
|
|
25
|
-
requires_approval: bool
|
|
30
|
+
requires_approval: bool,
|
|
31
|
+
?llm_tool_name: String
|
|
26
32
|
) -> void
|
|
27
33
|
|
|
28
34
|
def to_hash: -> {
|
|
29
35
|
config: Cadenya::ToolSets::ToolSpecConfig,
|
|
30
36
|
description: String,
|
|
31
37
|
parameters: ::Hash[Symbol, top],
|
|
32
|
-
requires_approval: bool
|
|
38
|
+
requires_approval: bool,
|
|
39
|
+
llm_tool_name: String
|
|
33
40
|
}
|
|
34
41
|
end
|
|
35
42
|
end
|
|
@@ -4,7 +4,7 @@ module Cadenya
|
|
|
4
4
|
type tool_spec_config =
|
|
5
5
|
{
|
|
6
6
|
http: Cadenya::ToolSets::ConfigHTTP,
|
|
7
|
-
mcp:
|
|
7
|
+
mcp: top,
|
|
8
8
|
openapi: Cadenya::ToolSets::ConfigOpenAPI
|
|
9
9
|
}
|
|
10
10
|
|
|
@@ -15,9 +15,9 @@ module Cadenya
|
|
|
15
15
|
Cadenya::ToolSets::ConfigHTTP
|
|
16
16
|
) -> Cadenya::ToolSets::ConfigHTTP
|
|
17
17
|
|
|
18
|
-
attr_reader mcp:
|
|
18
|
+
attr_reader mcp: top?
|
|
19
19
|
|
|
20
|
-
def mcp=: (
|
|
20
|
+
def mcp=: (top) -> top
|
|
21
21
|
|
|
22
22
|
attr_reader openapi: Cadenya::ToolSets::ConfigOpenAPI?
|
|
23
23
|
|
|
@@ -27,13 +27,13 @@ module Cadenya
|
|
|
27
27
|
|
|
28
28
|
def initialize: (
|
|
29
29
|
?http: Cadenya::ToolSets::ConfigHTTP,
|
|
30
|
-
?mcp:
|
|
30
|
+
?mcp: top,
|
|
31
31
|
?openapi: Cadenya::ToolSets::ConfigOpenAPI
|
|
32
32
|
) -> void
|
|
33
33
|
|
|
34
34
|
def to_hash: -> {
|
|
35
35
|
http: Cadenya::ToolSets::ConfigHTTP,
|
|
36
|
-
mcp:
|
|
36
|
+
mcp: top,
|
|
37
37
|
openapi: Cadenya::ToolSets::ConfigOpenAPI
|
|
38
38
|
}
|
|
39
39
|
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: cadenya
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.
|
|
4
|
+
version: 0.19.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Cadenya
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-06-
|
|
11
|
+
date: 2026-06-18 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: cgi
|