firebase-remote-config-basics
Этот навык описывает Firebase Remote Config для Android и iOS: облачный шаблон параметров, feature flags, условия, стратегии загрузки и работу SDK. Remote Config позволяет менять поведение и внешний вид приложения без выпуска новой версии, но область навыка ограничена именно этой службой. Он не предназначен для Firebase Hosting, Authentication, Firestore, Data Connect, Crashlytics или App Hosting. Для provisioning нужны Firebase-проект и зарегистрированное Android- или iOS-приложение, а управление шаблоном и условиями из терминала выполняется через Firebase CLI. Перед началом важно проверить окружение. Основной способ запуска — npx -y firebase-tools@latest; если registry возвращает 403, источник предписывает сообщить об ошибке и использовать локальную команду firebase только после подтверждения, что она установлена глобально. Если CLI сообщает, что активный проект не выбран, сначала проверяют login:list, затем запрашивают точный Project ID и передают --project PROJECT_ID каждому последующему вызову. Это не заменяет разрешения Firebase: наличие установленного CLI или URL проекта само по себе не даёт права читать или публиковать Remote Config. Для клиентского приложения источник предлагает два основных режима загрузки. Можно активировать ранее полученные значения при старте, а новую конфигурацию запрашивать в фоне для следующего запуска — это сокращает ожидание пользователя. Если конфигурация должна применяться сразу при серверном изменении, используется real-time listener. В приложении также нужны in-app defaults, чтобы поведение оставалось определённым офлайн или до первого fetch. Выбор между этими вариантами зависит от допустимой задержки, критичности параметров и того, может ли интерфейс безопасно обновиться без перезапуска; сам навык не решает за продукт, какие флаги должны быть аварийно отключаемыми. Для аудита или изменения шаблона используется remoteconfig:get -o remote_config.json. Полученный JSON можно изучить локально, а условия и map параметров редактируются явно, например по device.country или процентной группе. Перед публикацией есть обязательная граница: изменения в remote_config.json должен проверить человек, и только после отдельного подтверждения допустимо deploy --only remoteconfig. Если в каталоге нет firebase.json, источник показывает минимальное сопоставление remoteconfig.template с локальным JSON. После deployment историю проверяют командой remoteconfig:versions:list. Такой порядок сохраняет локальный артефакт, даёт возможность сверить conditions и parameters и не превращает подготовку файла в незаметную live-запись. Навык полезен для feature flags, постепенного продвижения конфигурации между окружениями и настройки SDK, но не подтверждает корректность продуктовой логики, безопасности проекта, схемы параметров или ожидаемого покрытия пользователей. Условия могут затронуть реальные сегменты, поэтому нужно перепроверять Project ID, целевую среду, значения по умолчанию и порядок активации до deployment. Он также не выполняет независимый аудит токенов, правил доступа, совместимости конкретного приложения и стоимости инфраструктуры. Без явного намерения безопасный путь заканчивается чтением шаблона, локальной правкой и ручным review; публикация остаётся отдельным осознанным действием с последующей проверкой версии.
Для чего подходит
- Создание шаблонов Remote Config
- Настройка feature flags и условий
- Продвижение конфигурации между окружениями
Установка
Сначала прочитайте SKILL.md и scripts в исходном репозитории. Затем выполните команду в каталоге проекта:
npx skills add https://github.com/firebase/agent-skills/tree/main/skills/firebase-remote-config-basics