Class: Cadenya::Resources::ToolSets
- Inherits:
-
Object
- Object
- Cadenya::Resources::ToolSets
- Defined in:
- lib/cadenya/resources/tool_sets.rb,
lib/cadenya/resources/tool_sets/tools.rb,
lib/cadenya/resources/tool_sets/secrets.rb
Overview
Manage tool sets and the tools they contain. Tool sets group related tools, and tools define specific capabilities available to agents.
When a tool set is managed, only API key actors can modify its tools; human (profile) actors cannot.
Defined Under Namespace
Instance Attribute Summary collapse
-
#secrets ⇒ Cadenya::Resources::ToolSets::Secrets
readonly
Manage tool sets and the tools they contain.
-
#tools ⇒ Cadenya::Resources::ToolSets::Tools
readonly
Manage tool sets and the tools they contain.
Instance Method Summary collapse
-
#archive(id, workspace_id:, request_options: {}) ⇒ Cadenya::Models::ToolSet
Some parameter documentations has been truncated, see Models::ToolSetArchiveParams for more details.
-
#create(workspace_id, metadata:, spec:, request_options: {}) ⇒ Cadenya::Models::ToolSet
Some parameter documentations has been truncated, see Models::ToolSetCreateParams for more details.
-
#delete(id, workspace_id:, request_options: {}) ⇒ nil
Some parameter documentations has been truncated, see Models::ToolSetDeleteParams for more details.
-
#get_openapi_spec(tool_set_id, workspace_id:, request_options: {}) ⇒ Cadenya::Models::ToolSetGetOpenAPISpecResponse
Some parameter documentations has been truncated, see Models::ToolSetGetOpenAPISpecParams for more details.
-
#initialize(client:) ⇒ ToolSets
constructor
private
A new instance of ToolSets.
-
#list(workspace_id, cursor: nil, include_info: nil, limit: nil, prefix: nil, query: nil, sort_order: nil, state: nil, request_options: {}) ⇒ Cadenya::Internal::CursorPagination<Cadenya::Models::ToolSet>
Some parameter documentations has been truncated, see Models::ToolSetListParams for more details.
-
#list_events(tool_set_id, workspace_id:, cursor: nil, include_info: nil, limit: nil, sort_order: nil, request_options: {}) ⇒ Cadenya::Internal::CursorPagination<Cadenya::Models::ToolSetEvent>
Some parameter documentations has been truncated, see Models::ToolSetListEventsParams for more details.
-
#retrieve(id, workspace_id:, request_options: {}) ⇒ Cadenya::Models::ToolSet
Some parameter documentations has been truncated, see Models::ToolSetRetrieveParams for more details.
-
#unarchive(id, workspace_id:, request_options: {}) ⇒ Cadenya::Models::ToolSet
Some parameter documentations has been truncated, see Models::ToolSetUnarchiveParams for more details.
-
#update(id, workspace_id:, metadata: nil, spec: nil, update_mask: nil, request_options: {}) ⇒ Cadenya::Models::ToolSet
Some parameter documentations has been truncated, see Models::ToolSetUpdateParams for more details.
Constructor Details
#initialize(client:) ⇒ ToolSets
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
Returns a new instance of ToolSets.
335 336 337 338 339 |
# File 'lib/cadenya/resources/tool_sets.rb', line 335 def initialize(client:) @client = client @tools = Cadenya::Resources::ToolSets::Tools.new(client: client) @secrets = Cadenya::Resources::ToolSets::Secrets.new(client: client) end |
Instance Attribute Details
#secrets ⇒ Cadenya::Resources::ToolSets::Secrets (readonly)
Manage tool sets and the tools they contain. Tool sets group related tools, and tools define specific capabilities available to agents.
When a tool set is managed, only API key actors can modify its tools; human (profile) actors cannot.
25 26 27 |
# File 'lib/cadenya/resources/tool_sets.rb', line 25 def secrets @secrets end |
#tools ⇒ Cadenya::Resources::ToolSets::Tools (readonly)
Manage tool sets and the tools they contain. Tool sets group related tools, and tools define specific capabilities available to agents.
When a tool set is managed, only API key actors can modify its tools; human (profile) actors cannot.
17 18 19 |
# File 'lib/cadenya/resources/tool_sets.rb', line 17 def tools @tools end |
Instance Method Details
#archive(id, workspace_id:, request_options: {}) ⇒ Cadenya::Models::ToolSet
Some parameter documentations has been truncated, see Models::ToolSetArchiveParams for more details.
Transitions a tool set to STATE_ARCHIVED. Syncing stops, the tool set is hidden from list results, its tools are no longer offered to objectives, and new variation assignments are rejected. Existing assignments are retained, and history is preserved — unlike delete, archiving works while the tool set is still assigned to agent variations.
214 215 216 217 218 219 220 221 222 223 224 225 226 |
# File 'lib/cadenya/resources/tool_sets.rb', line 214 def archive(id, params) parsed, = Cadenya::ToolSetArchiveParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :post, path: ["v1/workspaces/%1$s/tool_sets/%2$s:archive", workspace_id, id], model: Cadenya::ToolSet, options: ) end |
#create(workspace_id, metadata:, spec:, request_options: {}) ⇒ Cadenya::Models::ToolSet
Some parameter documentations has been truncated, see Models::ToolSetCreateParams for more details.
Creates a new tool set in the workspace
45 46 47 48 49 50 51 52 53 54 |
# File 'lib/cadenya/resources/tool_sets.rb', line 45 def create(workspace_id, params) parsed, = Cadenya::ToolSetCreateParams.dump_request(params) @client.request( method: :post, path: ["v1/workspaces/%1$s/tool_sets", workspace_id], body: parsed, model: Cadenya::ToolSet, options: ) end |
#delete(id, workspace_id:, request_options: {}) ⇒ nil
Some parameter documentations has been truncated, see Models::ToolSetDeleteParams for more details.
Deletes a tool set in the workspace
180 181 182 183 184 185 186 187 188 189 190 191 192 |
# File 'lib/cadenya/resources/tool_sets.rb', line 180 def delete(id, params) parsed, = Cadenya::ToolSetDeleteParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :delete, path: ["v1/workspaces/%1$s/tool_sets/%2$s", workspace_id, id], model: NilClass, options: ) end |
#get_openapi_spec(tool_set_id, workspace_id:, request_options: {}) ⇒ Cadenya::Models::ToolSetGetOpenAPISpecResponse
Some parameter documentations has been truncated, see Models::ToolSetGetOpenAPISpecParams for more details.
Retrieves the current OpenAPI specification JSON that has been consumed by the tool set. Only applicable to tool sets using the OpenAPI adapter.
245 246 247 248 249 250 251 252 253 254 255 256 257 |
# File 'lib/cadenya/resources/tool_sets.rb', line 245 def get_openapi_spec(tool_set_id, params) parsed, = Cadenya::ToolSetGetOpenAPISpecParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :get, path: ["v1/workspaces/%1$s/tool_sets/%2$s/openapi_spec", workspace_id, tool_set_id], model: Cadenya::Models::ToolSetGetOpenAPISpecResponse, options: ) end |
#list(workspace_id, cursor: nil, include_info: nil, limit: nil, prefix: nil, query: nil, sort_order: nil, state: nil, request_options: {}) ⇒ Cadenya::Internal::CursorPagination<Cadenya::Models::ToolSet>
Some parameter documentations has been truncated, see Models::ToolSetListParams for more details.
Lists all tool sets in the workspace
151 152 153 154 155 156 157 158 159 160 161 162 |
# File 'lib/cadenya/resources/tool_sets.rb', line 151 def list(workspace_id, params = {}) parsed, = Cadenya::ToolSetListParams.dump_request(params) query = Cadenya::Internal::Util.encode_query_params(parsed) @client.request( method: :get, path: ["v1/workspaces/%1$s/tool_sets", workspace_id], query: query.transform_keys(include_info: "includeInfo", sort_order: "sortOrder"), page: Cadenya::Internal::CursorPagination, model: Cadenya::ToolSet, options: ) end |
#list_events(tool_set_id, workspace_id:, cursor: nil, include_info: nil, limit: nil, sort_order: nil, request_options: {}) ⇒ Cadenya::Internal::CursorPagination<Cadenya::Models::ToolSetEvent>
Some parameter documentations has been truncated, see Models::ToolSetListEventsParams for more details.
Lists all events (including sync status) for a tool set
283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 |
# File 'lib/cadenya/resources/tool_sets.rb', line 283 def list_events(tool_set_id, params) parsed, = Cadenya::ToolSetListEventsParams.dump_request(params) query = Cadenya::Internal::Util.encode_query_params(parsed) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :get, path: ["v1/workspaces/%1$s/tool_sets/%2$s/events", workspace_id, tool_set_id], query: query.transform_keys(include_info: "includeInfo", sort_order: "sortOrder"), page: Cadenya::Internal::CursorPagination, model: Cadenya::ToolSetEvent, options: ) end |
#retrieve(id, workspace_id:, request_options: {}) ⇒ Cadenya::Models::ToolSet
Some parameter documentations has been truncated, see Models::ToolSetRetrieveParams for more details.
Retrieves a tool set by ID from the workspace
72 73 74 75 76 77 78 79 80 81 82 83 84 |
# File 'lib/cadenya/resources/tool_sets.rb', line 72 def retrieve(id, params) parsed, = Cadenya::ToolSetRetrieveParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :get, path: ["v1/workspaces/%1$s/tool_sets/%2$s", workspace_id, id], model: Cadenya::ToolSet, options: ) end |
#unarchive(id, workspace_id:, request_options: {}) ⇒ Cadenya::Models::ToolSet
Some parameter documentations has been truncated, see Models::ToolSetUnarchiveParams for more details.
Transitions an archived tool set back to STATE_ACTIVE. Managed tool sets resume syncing on their next cycle and their tools become available to objectives again.
318 319 320 321 322 323 324 325 326 327 328 329 330 |
# File 'lib/cadenya/resources/tool_sets.rb', line 318 def unarchive(id, params) parsed, = Cadenya::ToolSetUnarchiveParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :post, path: ["v1/workspaces/%1$s/tool_sets/%2$s:unarchive", workspace_id, id], model: Cadenya::ToolSet, options: ) end |
#update(id, workspace_id:, metadata: nil, spec: nil, update_mask: nil, request_options: {}) ⇒ Cadenya::Models::ToolSet
Some parameter documentations has been truncated, see Models::ToolSetUpdateParams for more details.
Updates a tool set in the workspace
108 109 110 111 112 113 114 115 116 117 118 119 120 121 |
# File 'lib/cadenya/resources/tool_sets.rb', line 108 def update(id, params) parsed, = Cadenya::ToolSetUpdateParams.dump_request(params) workspace_id = parsed.delete(:workspace_id) do raise ArgumentError.new("missing required path argument #{_1}") end @client.request( method: :patch, path: ["v1/workspaces/%1$s/tool_sets/%2$s", workspace_id, id], body: parsed, model: Cadenya::ToolSet, options: ) end |