Module: SignalWire::Contexts

Defined in:
lib/signalwire/contexts/context_builder.rb

Defined Under Namespace

Classes: Context, ContextBuilder, GatherInfo, GatherQuestion, Step

Constant Summary collapse

MAX_CONTEXTS =
50
MAX_STEPS_PER_CONTEXT =
100
RESERVED_NATIVE_TOOL_NAMES =

Reserved tool names auto-injected by the runtime when contexts/steps are present. User-defined SWAIG tools must not collide with these names.

- next_step / change_context are injected when valid_steps or
  valid_contexts is set so the model can navigate the flow.
- gather_submit is injected while a step's gather_info is
  collecting answers.

ContextBuilder#validate! rejects any agent that registers a user tool sharing one of these names — the runtime would never call the user tool because the native one wins.

%w[next_step change_context gather_submit].freeze

Class Method Summary collapse

Class Method Details

.create_simple_context(name = 'default') ⇒ Object

Helper to create a standalone context (not via ContextBuilder).



857
858
859
# File 'lib/signalwire/contexts/context_builder.rb', line 857

def self.create_simple_context(name = 'default')
  Context.new(name)
end