Class: LittleGhost::SwarmBuilder

Inherits:
AssemblyBuilder show all
Defined in:
lib/little_ghost/assembly_builder.rb

Overview

Builds a Swarm at runtime while keeping its members Agent-only.

swarm = LittleGhost::SwarmBuilder.new(id: "problem_solver")
swarm.member TriageAgent
swarm.member BillingAgent
swarm.start TriageAgent
swarm.handoff TriageAgent, to: BillingAgent
swarm.validate!

Instance Attribute Summary

Attributes inherited from AssemblyBuilder

#runtime

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from AssemblyBuilder

#as_tool, #ask, #assembly_id, #assembly_kind, #build, #call, #definition, #description, #start_execution, #stream, #stream_ask, #validate!

Constructor Details

#initialize(**options) ⇒ SwarmBuilder

Creates a mutable dynamic Swarm definition.



392
393
394
395
# File 'lib/little_ghost/assembly_builder.rb', line 392

def initialize(**options)
  super
  @declarations = []
end

Class Method Details

.assembly_kindObject

:nodoc:



388
# File 'lib/little_ghost/assembly_builder.rb', line 388

def assembly_kind = :swarm