Мастер
A мастер — это bash-скрипт, который пошагово проводит человека через ручную процедуру, которая рутинна для выполнения вручную и тосклива для повторного объяснения ИИ каждый раз. Он открывает каждый URL, точно говорит, что кликнуть и что скопировать, захватывает значения, записывает их туда, где они принадлежат (.env, секреты GitHub), подтверждает на каждом этапе и показывает, сколько осталось. Он может настраивать сторонние сервисы, выполнять одноразовую миграцию или переносить проект из одного состояния в другое.
Удобный UX уже решён с помощью template.sh — прогресс с учётом оставшегося времени, пороги подтверждения, кросс-платформенное открытие URL (включая WSL), скрытый ввод секрета, идемпотентные обновления .env, записи gh secret/gh variable, и итоговое резюме. Ваша задача — лишь определить область процедуры и авторизовать её этапы. Библиотека выше маркера STAGES идентична в каждом мастере; именно в этом и заключается последовательность — никогда не редактируйте её вручную.
Мастер по умолчанию является временным — создан для одного запуска, сохраняется во временном месте или по пути scripts/, удаляется по завершении задачи. Коммитите его только тогда, когда пользователь хочет повторяемый путь настройки, который должен жить в репозитории.
Процесс
1. Определение объема процедуры
Разработайте каждый ручной шаг, который должен выполнить человек, и каждое значение, которое будет зафиксировано по ходу. Сначала прочитайте репозиторий — не просите наугад:
-
Для настройки:
.env,.env.example,.env.*,README,docker-compose*, конфигурация фреймворка и.github/workflows/*(каждое упоминаниеsecrets.*/vars.*— это значение, которое мастер должен произвести). -
Для миграции или перехода: текущее состояние, целевое состояние и необратимые действия между ними.
Затем покажите пользователю упорядоченный список этапов и значения, которые каждый из них выдаёт, и подтвердите — они могут добавить, удалить или изменить порядок.