Файл, похоже, в формате json. Гуглите "json <ваш язык прогаммирования>", чтобы найти библиотеку для парсинга этого формата. Потом надо обрабатывать семантику языка.
Поля "$designer" похоже можно игнорировать. Дальше у каждого важного элемента есть поле "$kind". Читайте описание в схеме, которая по ссылке в конце файла "
https://raw.githubusercontent.com/microsoft/BotFra..."
Фактически это задана программа на весьма неудобном для человека языке программирования. Каждое действие - это узел в json. Он имеет kind, который определяет, что это за инструкция и всякие дополнительные поля, которые описывают параметры этой инструкции. Типа инструкция ветвления содержит команды для обеих веток исполнения и условие. В этом языке, похоже есть циклы, встроенные функции. Похоже, пользователь может задать какие-то свои функции, вызов которых вам тоже придется обрабатывать.
После разбора файла json-парсером, надо писать обработку каждого типа действия, которое есть в этом файле. Это будет полноценный интерпретатор этого странного языка программирования.
Например, "Microsoft.ForEach". Поищите эту строчку в схеме, она будет встречаться 6 раз. Интересное место №3 - там расписано, какие поля могут быть у этого типа действия. Там куча очевидных полей вроде designer и kind, но есть нужное нам "actions". Описание говорит, что это массив действий, которые будут вызваны для всех элементов списка. Т.е. встретив в файле узел foreach, надо взять поле "actions" и применить все действия оттуда ко всем элементам входного списка.
И так надо по каждому "kind" действия писать обработку. Проще всего его будет писать на каком-то интерпретируемом языке, где есть что-то типа eval(). Потому что, например, в IfCondition есть поле condition, которое придется вычислять. Надо будет поддерживать какой-то словарь для всех переменных, локальных и глобальных, поддерживать стек вызова и словарь всех известных пользовательских подпрограм.