PluginBench
Skill
Official
Review
Audit score 70

firebase-firestore

firebase/agent-skills

Set up, query, and manage Cloud Firestore databases with security rules, indexes, and SDK integrations.

What is firebase-firestore?

Manages Cloud Firestore database provisioning, data modeling, security configuration, and SDK integration across Web, Python, iOS, Android, and Flutter. Use this when creating or configuring Firestore instances, defining data models and indexes, writing queries, or integrating Firestore SDKs into applications.

  • List and inspect existing Firestore databases and their editions
  • Create new Standard or Enterprise edition Firestore databases in specified locations
  • Configure data models and indexes for Standard and Enterprise editions
  • Write and integrate Firestore SDK queries for Web, Python, iOS, Android, and Flutter
  • Delegate Firestore Security Rules authoring to specialized subagents or use firestore-rules-creation skill

How to install firebase-firestore

npx skills add https://github.com/firebase/agent-skills --skill firebase-firestore
Prerequisites
  • Firebase CLI (npx firebase-tools@latest) for database management commands
  • Active Firebase project with appropriate permissions
  • Target platform SDK (Web, Python, iOS, Android, or Flutter) for SDK integration
Claude Code
Cursor
Windsurf
Cline

How to use firebase-firestore

  1. 1.Run 'npx -y firebase-tools@latest firestore:databases:list' to identify existing Firestore instances
  2. 2.Inspect the edition (Standard or Enterprise) of each database using 'firestore:databases:get'
  3. 3.If creating a new database, run 'firestore:locations' to select a location, then create with 'firestore:databases:create' specifying edition and location
  4. 4.Read the appropriate reference guide (Standard or Enterprise) for provisioning, data modeling, and SDK setup
  5. 5.For Security Rules, delegate to firestore-rules-author subagent if available, otherwise follow firestore-rules-creation skill
  6. 6.Implement SDK queries and integrations using the platform-specific reference guides (web_sdk_usage.md, python_sdk_usage.md, etc.)
  7. 7.Configure indexes following the indexes.md guide for your database edition

Use cases

Good for
  • Provisioning a new Firestore database for a mobile or web application
  • Querying and managing data across multiple Firestore collections
  • Setting up indexes to optimize query performance on large datasets
  • Integrating Firestore SDKs into existing Web, Python, or mobile applications
  • Configuring database-level settings and security rules for different editions
Who it's for
  • Backend developers building applications with Firestore
  • Mobile developers integrating Firestore into iOS, Android, or Flutter apps
  • Full-stack developers setting up real-time databases for web applications
  • DevOps engineers provisioning and managing Firestore infrastructure

firebase-firestore FAQ

What's the difference between Standard and Enterprise editions?

Standard edition is for smaller workloads with automatic scaling and pay-per-use pricing. Enterprise edition supports larger-scale applications with dedicated capacity, advanced features, and native mode support. The skill defaults to Enterprise when creating new databases.

Do I need Firebase CLI installed to use this skill?

No, the skill does not require pre-installation of Firebase CLI. It accesses Firebase CLI via 'npx -y firebase-tools@latest' commands, which download and run the latest version on demand.

How do I write Firestore Security Rules?

If subagent delegation is available, delegate to the firestore-rules-author subagent. Otherwise, follow the firestore-rules-creation skill to author firestore.rules directly.

Which SDK reference should I read for my platform?

Read the reference guide matching your target platform: web_sdk_usage.md for Web, python_sdk_usage.md for Python, android_sdk_usage.md for Android, ios_setup.md for iOS, or flutter_setup.md for Flutter.

What tasks are outside the scope of this skill?

This skill does not cover Firebase Hosting, Data Connect, Authentication, Cloud Storage/GCS, Crashlytics, Cloud Functions, or BigQuery integration.

Full instructions (SKILL.md)

Source of truth, from firebase/agent-skills.


name: firebase-firestore description: >- Sets up, manages, queries, and configures Cloud Firestore databases (Standard/Enterprise edition), including data modeling, security rules, indexes, and SDK integrations (Web, Python, iOS, Android, Flutter). Use when creating/listing Firestore databases, defining data models/indexes, writing SDK queries, or integrating Firestore SDKs. For authoring or modifying Firestore Security Rules (firestore.rules), delegate to the firestore-rules-author subagent if subagent delegation is available, or use firestore-rules-creation otherwise. Don't use for Firebase Hosting, Data Connect, Auth, Storage/GCS, Crashlytics, Functions, or BigQuery. compatibility: This skill is best used with the Firebase CLI, but does not require it. Firebase CLI can be accessed through npx -y firebase-tools@latest. metadata: category: Databases

Cloud Firestore Database and Operations

[!IMPORTANT] Security Rules Authoring (firestore.rules) Whenever your task requires creating, authoring, or modifying firestore.rules:

  • If subagent delegation AND the firestore-rules-author subagent are available: delegate authoring firestore.rules to the firestore-rules-author subagent rather than writing firestore.rules directly in the main agent.
  • If subagent delegation is unavailable (e.g., subagents not enabled in the IDE) OR firestore-rules-author is not installed: read and follow the firestore-rules-creation skill to write firestore.rules directly.

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:

npx -y firebase-tools@latest firestore:databases:list

A. Instance Found

  1. For each database found, inspect its edition and details:

    npx -y firebase-tools@latest firestore:databases:get <database-id>
    
  2. Ask the user which database instance they wish to target or if they would prefer to create a new instance.

  3. 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:

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:

Standard Edition (references/standard/)

Enterprise Edition / Native Mode (references/enterprise/)