Skip to content

gemini-cli-extensions/firestore-native

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

99 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Firestore Native Agent Skills

Note

Currently in beta (pre-v1.0), and may see breaking changes until the first stable release (v1.0).

This repository provides a set of agent skills to interact with Firestore databases. These skills can be used with various AI agents, including Antigravity, Claude Code and Codex, to manage your databases, collections, and documents using natural language prompts.

Important

We Want Your Feedback! Please share your thoughts with us by filling out our feedback form. Your input is invaluable and helps us improve the project for everyone.

Table of Contents

Why Use Firestore Native Agent Skills?

  • Seamless Workflow: Integrates seamlessly into your AI agent's environment. No need to constantly switch contexts for common database tasks.
  • Natural Language Queries: Stop wrestling with complex commands. Explore schemas and query data by describing what you want in plain English.
  • Data Management: Manage your Firestore data directly from your agent.
  • Code Generation: Accelerate development by asking your agent to generate data classes and other code snippets based on your document structures.

๐Ÿ“บ Video Walkthrough

Follow this step-by-step video walkthrough to setup and use the Firestore Native Extension.

Video Tutorial

Prerequisites

Before you begin, ensure you have the following:

  • One of these AI agents installed
  • A Google Cloud project with the Firestore API enabled.
  • Ensure Application Default Credentials are available in your environment.
  • IAM Permissions:
    • Cloud Datastore User (roles/datastore.user)
    • Firebase Rules Viewer (roles/firebaserules.viewer)

Getting Started

Configuration

Please keep these env vars handy during the installation process:

  • FIRESTORE_PROJECT: The GCP project ID.
  • FIRESTORE_DATABASE: (Optional) The Firestore database ID. Defaults to (default).

Note

Installation & Usage

To start interacting with your database, install the skills for your preferred AI agent, then launch the agent and use natural language to ask questions or perform tasks.

For the latest version, check the releases page.

Antigravity

You can use either of these two agents for Antigravity:

๐Ÿ’ก Tip โ€” Migrating from Gemini CLI?
If you previously installed this extension with gemini extensions install, you can convert it to an Antigravity plugin instead of reinstalling from scratch:
  • On first launch of Antigravity CLI, accept the Migration Options prompt to automatically convert your installed Gemini CLI extensions to Antigravity plugins.
  • Or, from your terminal, run:
    agy plugin import gemini
See Migrating from Gemini CLI for details on plugins, context files (GEMINI.md / AGENTS.md), and MCP server config differences.

Antigravity 2.0 (IDE)

1. Clone the Repo:

git clone --branch 0.3.0 https://github.com/gemini-cli-extensions/firestore-native.git

2. Install the skills:

Choose a location for the skills:

  • Global (all workspaces): ~/.gemini/antigravity/skills/
  • Workspace-specific: <workspace-root>/.agents/skills/

Copy the skill folders from the cloned repository's skills/ directory to your chosen location:

cp -R firestore-native/skills/* ~/.gemini/antigravity/skills/

3. Set env vars: Set your environment vars as described in the configuration section.

(Tip: Antigravity 2.0 automatically discovers skills in these directories at the start of a session. You can verify they are active by running the /skills command in your active session.)

Antigravity CLI

1. Clone the Repo:

git clone --branch 0.3.0 https://github.com/gemini-cli-extensions/firestore-native.git

2. Install the skills:

Choose a location for the skills:

  • Global (all workspaces): ~/.gemini/antigravity-cli/skills/
  • Workspace-specific: <workspace-root>/.agents/skills/

Copy the skill folders from the cloned repository's skills/ directory to your chosen location:

cp -R firestore-native/skills/* ~/.gemini/antigravity-cli/skills/

3. Set env vars: Set your environment vars as described in the configuration section.

(Tip: Antigravity CLI automatically discovers skills in these directories at the start of a session. You can verify they are active by running the /skills command in your active session.)

Claude Code

1. Set env vars: In your terminal, set your environment vars as described in the configuration section.

2. Start the agent:

claude

3. Add the marketplace:

/plugin marketplace add https://github.com/gemini-cli-extensions/firestore-native.git#0.3.0

4. Install the plugin:

/plugin install firestore-native@firestore-native-marketplace

(Tip: Run /plugin list inside Claude Code to verify the plugin is active, or /reload-plugins if you just installed it.)

Codex

1. Clone the Repo:

git clone --branch 0.3.0 git@github.com:gemini-cli-extensions/firestore-native.git

2. Install the plugin:

mkdir -p ~/.codex/plugins
cp -R /absolute/path/to/firestore-native ~/.codex/plugins/firestore-native

3. Set env vars: Enter your environment vars as described in the configuration section.

4. Create or update marketplace.json: ~/.agents/plugins/marketplace.json

{
  "name": "my-data-cloud-google-marketplace",
  "interface": {
    "displayName": "Google Data Cloud Skills"
  },
  "plugins": [
    {
      "name": "firestore-native",
      "source": {
        "source": "local",
        "path": "./plugins/firestore-native"
      },
      "policy": {
        "installation": "AVAILABLE",
        "authentication": "ON_INSTALL"
      },
      "category": "Database"
    }
  ]
}

(Tip: Run codex plugin list or use the /plugins interactive menu to verify your installed plugins.)

## Installing using [open agent skills tool](https://github.com/vercel-labs/skills)

You can install skills using the npx skills command.

Run the following command in your terminal to automatically download and register the skills:

npx skills add https://github.com/gemini-cli-extensions/firestore-native/tree/0.3.0

For detailed info check out the Skills npm package.

2. Set env vars: Set your environment vars as described in the configuration section.

Usage Examples

Interact with Firestore using natural language:

  • Document and Data Retrieval:
    • "Show me the Firestore data for the test users qa_user_123 and qa_user_456 from the users-staging collection."
    • "Find all users in the users-staging collection whose wishlist contains product-glasses."
  • Document Updates and Cleanup:
    • "For all 20 test users you just found, please remove product-glasses(inactive) from their wishlist."
    • "Update the document with ID order-987 in the orders collection to set the status to 'Shipped'."

Supported Skills

The following skills are available in this repository:

  • Firestore Data - Handles NoSQL document operations and collection hierarchy exploration. Use for CRUD tasks and data retrieval. Provides flexible document manipulation and structured querying.

Additional Agent Skills

Find additional skills to support your entire software development lifecycle at github.com/gemini-cli-extensions.

Troubleshooting

Use the debug mode of your agent (e.g., gemini --debug) to enable debugging.

Common issues:

  • "failed to find default credentials: google: could not find default credentials.": Ensure Application Default Credentials are available in your environment. See Set up Application Default Credentials for more information.
  • "โœ– Error during discovery for server: MCP error -32000: Connection closed": The database connection has not been established. Ensure your configuration is set via environment variables.
  • "โœ– MCP ERROR: Error: spawn .../toolbox ENOENT": The Toolbox binary did not download correctly. Ensure you are using the latest version of your agent.
  • "cannot execute binary file": The Toolbox binary did not download correctly. Ensure the correct binary for your OS/Architecture has been downloaded. See Installing the server for more information.

Packages

 
 
 

Contributors