Class: Gemlings::ManagedAgentTool
Class Method Summary collapse
-
.for(agent) ⇒ Object
Factory that creates an anonymous subclass per agent instance.
Instance Method Summary collapse
- #call(task:, **_kwargs) ⇒ Object
-
#initialize(agent) ⇒ ManagedAgentTool
constructor
A new instance of ManagedAgentTool.
Methods inherited from Tool
description, inherited, input, inputs, output_type, to_prompt, to_schema, tool_name
Constructor Details
#initialize(agent) ⇒ ManagedAgentTool
Returns a new instance of ManagedAgentTool.
315 316 317 |
# File 'lib/gemlings/agent.rb', line 315 def initialize(agent) @agent = agent end |
Class Method Details
.for(agent) ⇒ Object
Factory that creates an anonymous subclass per agent instance
307 308 309 310 311 312 313 |
# File 'lib/gemlings/agent.rb', line 307 def self.for(agent) klass = Class.new(self) do tool_name(agent.name || "agent") description(agent.description || "A managed agent") end klass.new(agent) end |
Instance Method Details
#call(task:, **_kwargs) ⇒ Object
319 320 321 |
# File 'lib/gemlings/agent.rb', line 319 def call(task:, **_kwargs) @agent.run(task) end |