Сцены очень удобны из за одной детали, что если ты в цене, то всё идёт по одному сценарию, за который нельзя выйти. К примеру если в сцене есть кнопки и ты нажал, перейдя в следующий шаг, то предыдущие кнопки уже не будут срабатывают, а в ботах это часто люди делают. И меньше кода надо писать, если требуется ответ от юзера и обработка данных.
Выносить сцены можешь как угодно. У меня обычно отдельная пака и в ней отдельный скрипт на каждую сцену. А в маин файле только идёт ссылка на запуск первой ctx.scene.enter("sceneWizard"); console.log(ctx.message.text)
по сколько сцены являются частью ctx, то в отдельных файлах достаточно подключить import { Telegraf, Scenes, Composer, session, Markup } from "telegraf";