TaskManager и ActionHandler. TaskManager отвечает за управление последовательностью шагов сценария, а ActionHandler служит абстрактным компонентом для обработки отдельного взаимодействия пользователя. От него наследуются конкретные обработчики (например, ButtonHandler для нажатия кнопки, GrabHandler для захвата объекта и т. д.). TaskManager хранит упорядоченный список действий и контролирует их выполнение, переходя к следующему шагу после завершения текущего.
Взаимодействие компонентов построено по событийной модели: экземпляры ActionHandler генерируют события при активации или завершении действий, а TaskManager, подписавшись на эти события, отслеживает прогресс и переключает этапы сценария.