# Firebase Firestore > 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. Don't use for Firebase Hosting, Data Connect, Auth, Storage/GCS, Crashlytics, Functions, or BigQuery. Source: https://skillsagentes.com/skills/firebase/agent-skills/firebase-firestore Repository: https://github.com/firebase/agent-skills Author: firebase License: Apache-2.0 Updated: hace 8 días Context cost: 110 tok installed, 991 tok once triggered, 30.5k tok with every bundled file Bundle: 17 files, 119 KB Permissions requested: none declared ## Install ```bash npx -y skills add firebase/agent-skills --skill firebase-firestore --agent claude-code ``` ## What it does - Detecta la edición de la instancia de Firestore (Standard o Enterprise) antes de configurar nada - Crea o lista bases de datos Firestore mediante firebase-tools - Guía el modelado de datos, reglas de seguridad e índices según la edición detectada - Dirige a guías específicas de SDK para Web, Python, iOS, Android y Flutter ## Use it when - Al crear o listar bases de datos Firestore - Al definir modelos de datos o índices - Al escribir consultas SDK - Al integrar SDKs de Firestore ## Don't bother when - Firebase Hosting, Data Connect, Auth, Storage/GCS, Crashlytics, Functions o BigQuery ## What triggers it - "Quiero crear una base de datos Firestore Enterprise" - "Ayúdame a definir las reglas de seguridad de Firestore" - "Necesito configurar el SDK de Firestore para Flutter" - "Cómo listo las instancias de Firestore existentes" - "Quiero crear índices para mi colección en Firestore" ## Before you install - Funciona mejor con Firebase CLI (accesible vía `npx -y firebase-tools@latest`), aunque no es obligatorio. ## Files - SKILL.md — 4 KB - references/enterprise/android_sdk_usage.md — 9 KB - references/enterprise/data_model.md — 3 KB - references/enterprise/flutter_setup.md — 5 KB - references/enterprise/indexes.md — 5 KB - references/enterprise/ios_setup.md — 6 KB - references/enterprise/provisioning.md — 3 KB - references/enterprise/python_sdk_usage.md — 3 KB - references/enterprise/security_rules.md — 26 KB - references/enterprise/web_sdk_usage.md — 4 KB - references/standard/android_sdk_usage.md — 5 KB - references/standard/flutter_setup.md — 5 KB - references/standard/indexes.md — 4 KB - references/standard/ios_setup.md — 5 KB - references/standard/provisioning.md — 3 KB - references/standard/security_rules.md — 26 KB - references/standard/web_sdk_usage.md — 4 KB ## SKILL.md Reproduced verbatim from firebase/agent-skills under Apache-2.0. This section is the upstream document and is in English. # 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 1. For each database found, inspect its edition and details: `bash npx -y firebase-tools@latest firestore:databases:get ` 1. Ask the user which database instance they wish to target or if they would prefer to create a new instance. 1. 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 --edition="enterprise" --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/`) - **Provisioning**: Read [provisioning.md](references/standard/provisioning.md) - **Security Rules**: Read [security_rules.md](references/standard/security_rules.md) - **SDK Usage**: Read [web_sdk_usage.md](references/standard/web_sdk_usage.md), [android_sdk_usage.md](references/standard/android_sdk_usage.md), [ios_setup.md](references/standard/ios_setup.md), or [flutter_setup.md](references/standard/flutter_setup.md) - **Indexes**: Read [indexes.md](references/standard/indexes.md) ### Enterprise Edition / Native Mode (`references/enterprise/`) - **Provisioning**: Read [provisioning.md](references/enterprise/provisioning.md) - **Data Model**: Read [data_model.md](references/enterprise/data_model.md) - **Security Rules**: Read [security_rules.md](references/enterprise/security_rules.md) - **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. Read [web_sdk_usage.md](references/enterprise/web_sdk_usage.md), [python_sdk_usage.md](references/enterprise/python_sdk_usage.md), [android_sdk_usage.md](references/enterprise/android_sdk_usage.md), [ios_setup.md](references/enterprise/ios_setup.md), or [flutter_setup.md](references/enterprise/flutter_setup.md) - **Indexes**: Read [indexes.md](references/enterprise/indexes.md) --- Skills Agentes — https://skillsagentes.com/skills/firebase/agent-skills/firebase-firestore