Expert guide for building and managing Gemini CLI Extensions. Covers extension anatomy, GEMINI.md context, commands, MCP integration, and publishing. Use when creating Gemini extensions, linking local extensions, packaging MCP servers, or installing extensions from GitHub. Delegates to gemini-cli-docs.
View on GitHubmelodic-software/claude-code-plugins
google-ecosystem
plugins/google-ecosystem/skills/gemini-extension-development/SKILL.md
January 21, 2026
Select agents to install to:
npx add-skill https://github.com/melodic-software/claude-code-plugins/blob/main/plugins/google-ecosystem/skills/gemini-extension-development/SKILL.md -a claude-code --skill gemini-extension-developmentInstallation paths:
.claude/skills/gemini-extension-development/# Gemini Extension Development ## Documentation Delegation > **Documentation Source:** For authoritative extension syntax and current features, query `gemini-cli-docs` skill. > This skill provides development guidance; `gemini-cli-docs` provides official Gemini CLI documentation. ## Overview Expert skill for creating, testing, and distributing Gemini CLI Extensions. Extensions are the primary plugin mechanism for Gemini. ## When to Use This Skill **Keywords:** gemini extension, create extension, gemini extensions link, extension gallery, context files, extension commands, extension releasing, uninstall extension **Use this skill when:** - Creating a new extension (`gemini extensions create`) - Linking a local extension for development (`gemini extensions link`) - Packaging MCP servers into extensions - Adding custom slash commands (`.toml`) to extensions - Installing extensions from GitHub or local paths - Releasing extensions via Git or GitHub Releases ## Extension Anatomy An extension can contain: 1. **`extension.yaml`:** Manifest file. 2. **`GEMINI.md`:** Context "playbook" for the model. 3. **`package.json`:** Dependencies (if using Node.js/TypeScript). **Note:** Use the Unified Google Gen AI SDK (e.g., `google-genai`) as `google-generativeai` is deprecated. 4. **MCP Servers:** Embedded tools. 5. **Commands:** `*.toml` files defining custom slash commands. 6. **Tool Restrictions:** `excludeTools` configuration. ## Development Workflow 1. **Create:** `gemini extensions create my-extension` 2. **Link:** `cd my-extension && gemini extensions link .` (Enables hot-reloading) 3. **Test:** Run `gemini` and use the new capabilities. 4. **Publish:** Push to GitHub (installable via URL). ## Keyword Registry (Delegates to gemini-cli-docs) | Topic | Query Keywords | | :--- | :--- | | **Creation** | `create extension`, `extension template` | | **Manifest** | `extension.yaml schema`, `extension manifest` | | **Commands** | `extension slash commands`, `toml comm