Setting up Google's Firestore — a hosted database where an app's records live — from choosing which kind and which part of the world it sits in, to shaping the records and wiring an app up to read and write them.
WHEN TO USE
SCOPE
USE FOR
List your project's existing Firestore databases and inspect their settings.
Create a new Firestore database and choose where it's hosted.
Design a data model with fields, relationships, and indexes for your collections.
Connect Firestore to a Web, Python, Android, iOS, or Flutter app's SDK.
NOT FOR
Not for Firebase Hosting, Data Connect, Auth, or Cloud Storage — those are separate skills.
Doesn't cover Crashlytics, Cloud Functions, or BigQuery.
This is a saved copy of the skill's SKILL.md instructions. It may differ from the upstream file or the version you install.
Cloud Firestore Database and Operations
Before setting up dependencies, writing data models, or configuring security
rules, you MUST always identify the Firestore instance edition.
1. Instance Selection and Edition Detection
Run the following command to list current Firestore databases:
bash npx -y firebase-tools@latest firestore:databases:list
A. Instance Found
For each database found, inspect its edition and details:
bash npx -y firebase-tools@latest firestore:databases:get <database-id>
Ask the user which database instance they wish to target or if they would
prefer to create a new instance.
Once the target instance is established:
If the edition is STANDARD, follow the guides under
references/standard/.
If the edition is ENTERPRISE or native mode, follow the guides
under references/enterprise/.
B. No Instance Found (or New Requested)
If no databases exist or the user requests a new one, default to provisioning an
Enterprise edition database and ask the user what location to use. Run
npx -y firebase-tools@latest firestore:locations to get the list of options.
Suggest colocating with other resources if applicable.
Once the location is determined, create the database:
bash npx -y firebase-tools@latest firestore:databases:create <database-id> --edition="enterprise" --location="<selected-location>"
Proceed with using the guides under references/enterprise/.
2. Specialized Guides
Based on the identified or created instance edition, open and read the
corresponding reference guides:
Security Rules: See the firestore-rules-creation skill
SDK Usage:
[!CRITICAL] Mandatory Reference Reading Before writing or modifying any
application code for Firestore Enterprise Edition, you MUST read at
least one of the relevant reference documents below for the target
platform/language to understand specific architectural requirements and
pipeline initialization patterns.
Run npx -y firebase-tools@latest firestore:databases:list (and :get <database-id>) to find existing databases and confirm whether each is Standard or Enterprise edition first.
If no database exists, create one with npx -y firebase-tools@latest firestore:databases:create <database-id> --edition=enterprise --location=<location>, after checking available locations with firestore:locations.
Listed as free
Connected services may require an account or charge fees.
🔌 This skill ships inside the Firebase Agent Skills plugin. Listed package contents include 1 agent and an MCP server. Installed components and skill versions may vary by AI tool.
Install just this skill
Run this outside your AI tool, using Node.js 22.20.0 or newer. Skills CLI 1.7.2 skips skill selection; prompts cancel installation without an interactive terminal. If choosing Project when asked about installation scope, open your project's folder before running this.
Install checklist
Check selected tools if a picker appears; Claude Code may be unchecked under Additional agents. ↑/↓ moves, Space toggles selections, Enter confirms.
Without a tool picker, check Installing to: for your intended tool. Stop if it names a different tool.
If asked, choose Symlink (Recommended) for shared files or Copy to all agents for separate copies; review the summary before confirming installation.
Install the find-skills skill? defaults to Yes, adding another skill for all projects. Choose No if you don't want that extra installation.
Skills CLI 1.7.2 sends install data to skills.sh by default, including the source, skill names, target tools and file details; GitHub sources are reported only when GitHub confirms the repository is public, while other remote sources can also be reported. Confirmed-public GitHub sources also trigger a security-audit request. Before installing, set the environment variable DO_NOT_TRACK=1 or DISABLE_TELEMETRY=1 to disable both.
After installing for Claude Code, open it in the installation project if you chose Project; Global makes the skill available across projects on this computer. Once Claude Code loads the skill, its description helps Claude decide when to use it.
If installation created a top-level skills folder that did not exist when your Claude Code session started, run /reload-skills in that session. Run it again after later changes in that folder.
Install the whole plugin
This route installs the Firebase Agent Skills plugin package selected for your AI tool.
Add the plugin's marketplace, then install it
Install Claude Code first to get the claude command, then run the commands below in your terminal, outside a Claude Code session.
claude plugin marketplace add firebase/agent-skills
claude plugin install firebase@firebase
Add Firebase's marketplace, then install the plugin
Run both lines in a terminal. They add Firebase's marketplace, which is this repository, and install the firebase plugin: Firebase's skills plus the Firebase MCP server.
Plugins work in Codex CLI and the ChatGPT desktop app, not in the Codex IDE extension.
For the desktop app, Firebase has you run the first line, fully restart the app, then install Firebase from Plugins.
Run it in a terminal, not inside a Gemini CLI session. It installs this repository as a Gemini CLI extension with Firebase's skills and the Firebase MCP server.
Install checklist
Installing from GitHub needs git on your computer.
Node.js, because the Firebase MCP server starts through npx.
Skill for converting an installed Firebase Extension (or extension source) into a standalone Cloud Functions for Firebase codebase or publishable npm package, including V1 to V2 trigger upgrades, lifecycle hooks, and declarative securityRead full description
Official skill for integrating Firebase AI Logic (Gemini API) into web applications. Covers setup, multimodal inference, structured output, and security.Read full description
Guide for setting up and using Firebase Authentication. Use this skill when the user's app requires user sign-in, user management, or secure data access using auth rules.Read full description
Provides foundational setup, authentication, and project management workflows for Firebase using the Firebase CLI. Use when checking Firebase CLI version (must use 'npx -y firebase-tools@latest --version'), initializing a Firebase environment, authenticating, setting active projects, or setting up google-services.json or GoogleService-Info.plist files.Read full description
Comprehensive guide for Firebase Crashlytics, including provisioning and SDK usage. Use this skill when the user needs help setting up Crashlytics, adding crash reporting, or using the Crashlytics SDK in their application.Read full description
Official Notion MCP server for searching, reading, creating, and updating Notion pages, databases, and workspace content from AI agents.Read full description