Skip to main content
Transition rules define how and when the robot switches between operational modes. Each rule specifies a source mode, a target mode, a trigger mechanism, and an execution priority. The system continuously evaluates these rules and executes the most appropriate transition based on current inputs, elapsed time, and contextual conditions. Transition rules are defined as an array of rule objects under the transition_rules configuration.

Rule Schema

Each transition rule is represented as an object with required and optional fields.

Required Fields

FieldTypeRequiredDescription
from_modestringYesThe operational mode in which this transition rule is evaluated
to_modestringYesThe target mode to transition into when the rule is triggered
transition_typestringYesDefines how the transition is triggered. Supported values: input_triggered, time_based, context_aware
priorityintegerYesDetermines rule precedence when multiple transition rules are eligible (higher value takes precedence)
trigger_keywordsarray<string>NoList of keywords or phrases that can trigger the transition via user input; applicable to input_triggered and time_based transitions
cooldown_secondsnumberNoMinimum time in seconds before the same transition rule can be triggered again, preventing rapid or repeated transitions
context_conditionsobjectNoContextual conditions that must be satisfied for a context_aware transition to be eligible
Supported Operators in context_conditions
OperatorValue TypeDescription
minnumberMinimum allowed numeric value
maxnumberMaximum allowed numeric value
containsstring or arrayChecks whether a string contains a substring or an array contains a value
one_ofarrayEvaluates to true if the context value matches any value in the array
notanyNegates the specified condition

Priority Resolution

When multiple transition rules are eligible:
  • Rules are sorted by priority (higher values take precedence)
  • The highest-priority rule is selected