Provides foundational Firebase CLI setup, CLI installation, version checks (`firebase-tools@latest --version`), CLI login (including --no-localhost), project creation, project selection (`firebase use`), and app config file downloads (`google-services.json`, `GoogleService-Info.plist`). Use ONLY for CLI login, project creation/switching, or downloading app config files. Don't use for Firebase Hosting deploy, Firestore, Auth, App Hosting, Data Connect, Crashlytics, or Remote Config.
68
83%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
Complete these setup steps before proceeding:
Local Environment Setup: Verify the environment is properly set up so we can use Firebase tools:
npx -y firebase-tools@latest --version to check if the Firebase CLI
is installed.Authentication: Ensure you are logged in to Firebase so that commands
have the correct permissions. Run npx -y firebase-tools@latest login. For
environments without a browser (e.g., remote shells), use
npx -y firebase-tools@latest login --no-localhost.
Active Project: Most Firebase tasks require an active project context.
[!IMPORTANT] For Agents: Before proceeding with project configuration, you MUST pause and ask the developer if they prefer to:
- Provide an existing Firebase Project ID, or
- Create a new Firebase project.
If using an existing Project ID:
Check the current project by running npx -y firebase-tools@latest use.
If the command outputs Active Project: <project-id>, confirm with the
user if this is the intended project.
If not, or if no project is active, set the project provided by the user:
npx -y firebase-tools@latest use <PROJECT_ID>If creating a new project: Run the following command to create it:
npx -y firebase-tools@latest projects:create <project-id> --display-name "<display-name>"Note: The <project-id> must be 6-30 characters, lowercase, and can
contain digits and hyphens. It must be globally unique.
Adhere to these principles:
npx -y firebase-tools@latest
instead of just firebase. For example, use
npx -y firebase-tools@latest --version. NEVER suggest the naked firebase
command as an alternative.developerknowledge_search_documents MCP tool before falling
back to Google Search or your internal knowledge base. Including "Firebase"
in your search query significantly improves relevance.google-services.json
or GoogleService-Info.plist. Instead, use the Firebase CLI to fetch the
config programmatically:
npx -y firebase-tools@latest apps:sdkconfig ANDROID <APP_ID> --project <PROJECT_ID>npx -y firebase-tools@latest apps:sdkconfig IOS <APP_ID> --project <PROJECT_ID>
Save the output to the appropriate location (e.g.,
app/google-services.json for Android, or a path to be linked by
xcode-project-setup for iOS).Login Issues: If the browser fails to open during the login step, use
npx -y firebase-tools@latest login --no-localhost instead.
Genkit: If using Genkit, install the skills:
npx skills add genkit-ai/skillsa0b4e14
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.