Official agent skill

Gemini Agents API

by google in google/skills

Manages custom Agent resources on Gemini Enterprise Agent Platform.

OfficialApache-2.0Auto-check passedAgent Workflows

Install Gemini Agents API

skills CLI
$ npx skills add google/skills --skill gemini-agents-api -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install google/skills gemini-agents-api --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/google/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/cloud/gemini-agents-api .claude/skills/gemini-agents-api && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
gemini-agents-api
GitHub stars
21k
Used in
1 other repo
Token cost
~3.2k tokens
SKILL.md length
811 words
Files
1
Skills in repo
145
Repo updated
First seen
Licence
Apache-2.0

At a glance

Manages custom Agent resources on Gemini Enterprise Agent Platform.

  • Works in 3 steps: Authentication & Setup → Programmatic Agent Management (Control… → Interacting with Custom Agents (Data…
  • The user wants to programmatically create
  • SKILL.md covers 1. Authentication & Setup, 2. Programmatic Agent… and 3. Interacting with Custom…
  • Calls curl and gcloud; reaches aiplatform.googleapis.com; needs ACCESS_TOKEN

What it does

Gemini Agents API is an agent skill from google/skills, published by the product's own GitHub organization. Manages custom Agent resources on Gemini Enterprise Agent Platform. Use when the user wants to programmatically create, configure, list, update, or delete stateful, server-managed Agent resources (including mounting files, skills, and tools) before executing conversations.

Its SKILL.md is about 3.2k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Agent Workflows, covering MCP servers. It works with Google Gemini and Model Context Protocol. The repository describes itself as: Agent Skills for Google products and technologies. The licence is Apache-2.0.

When your agent uses it

  • The user wants to programmatically create
  • Delete stateful
  • Server-managed Agent resources (including mounting files
  • Tools) before executing conversations

Example prompts

  • “Use the gemini-agents-api skill to manage custom Agent resources on Gemini Enterprise Agent Platform”
  • “/gemini-agents-api”

Requirements

  • A credential in ACCESS_TOKEN
  • A credential in YOUR_MCP_AUTH_TOKEN

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Authentication & Setup
  2. Programmatic Agent Management (Control Plane CRUD)
  3. Interacting with Custom Agents (Data Plane)

What it can do on your machine

Read from SKILL.md and the folder at commit 8a1ac05. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • curl
    • gcloud

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • aiplatform.googleapis.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • ACCESS_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Gemini Agents API loads about 3.2k tokens when it runs. Until then it costs about 73 tokens; SKILL.md has 811 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~73
When it runs · the whole SKILL.md, loaded when a task matches
~3.2k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from google/skills at commit 8a1ac05, republished under its Apache-2.0 licence (© google). 811 words, ~3,204 tokens.

Download SKILL.mdSave it as .claude/skills/gemini-agents-api/SKILL.md (or your agent's skills folder).
name
gemini-agents-api
description
Manages custom Agent resources on Gemini Enterprise Agent Platform. Use when the user wants to programmatically create, configure, list, update, or delete stateful, server-managed Agent resources (including mounting files, skills, and tools) before executing conversations.
metadata.version
1.0.0
metadata.category
AiAndMachineLearning

Gemini Enterprise Agent Platform - Managed Agents API Skill

This skill provides complete instructions, REST request endpoints, and JSON payload structures to programmatically manage custom Agent resources on the Gemini Enterprise Agent Platform (Agent Platform).

The Managed Agents API forms the Control Plane of the platform. It allows developers to provision, retrieve, update, and delete tailored, stateful agent containers equipped with system instructions, sandboxed files, custom skill registries, and local/remote tools.

1. Authentication & Setup

All REST requests to the Control Plane must include a Bearer token derived from Application Default Credentials (ADC), and target the production global endpoint.

1. Setup Environment Variables

Before running requests, set up the required project variables and access token:

bash
export PROJECT_ID="your-project-id"
export LOCATION="global"
export ACCESS_TOKEN=$(gcloud auth print-access-token)

[!IMPORTANT] API Location Support: The LOCATION environment variable must be set to a regional location where the Gemini Enterprise Agent Platform's Managed Agents API is actively supported (e.g., global, or other available regional endpoints).

2. Endpoint URL

The production Agents Control Plane endpoint is:

http
https://aiplatform.googleapis.com/v1beta1/projects/{PROJECT_ID}/locations/{LOCATION}/agents

2. Programmatic Agent Management (Control Plane CRUD)

1. Create Agent (Long-Running Operation)

To create a new agent resource, issue a POST request with the custom configuration. You can mount remote files, folders, or skills directly from Google Cloud Storage buckets into the agent container's workspace. Creating an agent is a Long-Running Operation (LRO) that spawns an asynchronous job.

  • Method: POST
  • Endpoint: https://aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents
Request Payload
bash
curl -X POST "https://aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}" \
  -H "Content-Type: application/json; charset=utf-8" \
  -d '{
    "id": "my-custom-agent",
    "base_agent": "antigravity-preview-05-2026",
    "description": "A professional agent configured with remote tools and mounted Cloud Storage directories.",
    "system_instruction": "You are a helpful, domain-expert assistant.",
    "tools": [
      {"type": "code_execution"},
      {"type": "filesystem"},
      {"type": "google_search"},
      {"type": "url_context"}
    ],
    "base_environment": {
      "type": "remote",
      "sources": [
        {
          "type": "gcs",
          "source": "gs://your-agent-bucket-name/skills",
          "target": "/.agent/skills"
        }
      ],
      "network": {
        "allowlist": [
          { "domain": "*" }
        ]
      }
    }
  }'
LRO Operations Response

Since agent provisioning takes a few moments, the endpoint immediately returns an operation tracking object:

json
{
  "name": "projects/1234567890/locations/global/operations/operation-987654321-abcde",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1beta1.CreateAgentOperationMetadata",
    "genericMetadata": {
      "createTime": "2026-05-14T19:00:00.123456Z",
      "updateTime": "2026-05-14T19:00:01.654321Z"
    }
  }
}
[Advanced] Mount Skill Registry Resources

To mount skills directly from the Skill Registry service instead of Cloud Storage, replace the Cloud Storage source item in the payload:

json
"sources": [
  {
    "type": "skill_registry",
    "source": "projects/your-project-id/locations/global/skills/my-math-skill/revisions/123456789012",
    "target": "/.agent/skills"
  }
]
[Advanced] Configuring Model Context Protocol (MCP) Servers

To configure Third-Party MCP servers for an agent, add the server metadata directly under the "tools" parameter array inside the creation request. The platform securely routes tool execution requests to the external MCP server.

[!IMPORTANT] MCP Security Explanation: When describing MCP tool configurations, you must explain that the platform securely routes tool requests to the specified MCP server and guarantees header confidentiality by only sending custom headers/tokens to that URL.

json
"tools": [
  {
    "type": "mcp",
    "name": "my-mcp-server",
    "url": "https://mcp.yourcompany.com/api",
    "headers": {
      "Authorization": "Bearer YOUR_MCP_AUTH_TOKEN"
    }
  }
]
  • name: A descriptive name for the MCP server.
  • url: The endpoint URL of the external MCP server.
  • headers: (Optional) Custom key-value pairs containing authentication tokens (e.g. API keys, bearer tokens) required to call the server. The platform guarantees that these headers are only sent to the specified MCP server URL.

[!TIP] Overriding MCP at Interaction Time (Data Plane): You can dynamically override or supply MCP tools directly when creating a conversation interaction (Data Plane) by passing "type": "mcp_server" inside the "tools" payload of interactions.create. Refer to the Interactions API documentation for details.


2. Polling the LRO Status

To track the status of agent creation and obtain the final ready resource, poll the operation URL returned in the name field of the creation response.

  • Method: GET
  • Endpoint: https://aiplatform.googleapis.com/v1beta1/{OPERATION_NAME}
bash
curl -X GET "https://aiplatform.googleapis.com/v1beta1/projects/1234567890/locations/global/operations/operation-987654321-abcde" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}" \
  -H "Content-Type: application/json"
In-Progress Response
json
{
  "name": "projects/1234567890/locations/global/operations/operation-987654321-abcde",
  "metadata": { ... }
}
Finished Success Response

Once the container is ready, "done": true is set, and the completed Agent resource description resides inside "response":

json
{
  "name": "projects/1234567890/locations/global/operations/operation-987654321-abcde",
  "done": true,
  "response": {
    "@type": "type.googleapis.com/google.cloud.aiplatform.v1beta1.Agent",
    "name": "projects/your-project-id/locations/global/agents/my-custom-agent",
    "base_agent": "antigravity-preview-05-2026",
    "description": "A professional agent configured with remote tools and mounted Cloud Storage directories.",
    "system_instruction": "You are a helpful, domain-expert assistant."
  }
}

Show full SKILL.md (318 more words)Show less
3. Get Agent

Retrieve the configuration metadata, tools, and environment setup of an existing custom agent.

  • Method: GET
  • Endpoint: https://aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents/{AGENT_ID}
bash
curl -X GET "https://aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/global/agents/my-custom-agent" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}" \
  -H "Content-Type: application/json"
Response Example

Returns the complete configured state of the custom Agent resource:

json
{
  "name": "projects/your-project-id/locations/global/agents/my-custom-agent",
  "base_agent": "antigravity-preview-05-2026",
  "description": "A professional agent configured with remote tools and mounted Cloud Storage directories.",
  "system_instruction": "You are a helpful, domain-expert assistant.",
  "tools": [
    {"type": "code_execution"},
    {"type": "filesystem"},
    {"type": "google_search"},
    {"type": "url_context"}
  ],
  "base_environment": {
    "type": "remote",
    "sources": [
      {
        "type": "gcs",
        "source": "gs://your-agent-bucket-name/skills",
        "target": "/.agent/skills"
      }
    ],
    "network": {
      "allowlist": [
        { "domain": "*" }
      ]
    }
  }
}

4. List Agents

Retrieve a list of all configured custom agents located under the target Google Cloud project.

  • Method: GET
  • Endpoint: https://aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents
bash
curl -X GET "https://aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/global/agents" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}" \
  -H "Content-Type: application/json"
Response Example

Returns a JSON list of all configured custom Agents under the target project:

json
{
  "agents": [
    {
      "name": "projects/your-project-id/locations/global/agents/my-custom-agent",
      "base_agent": "antigravity-preview-05-2026",
      "description": "A professional agent configured with remote tools and mounted Cloud Storage directories.",
      "system_instruction": "You are a helpful, domain-expert assistant."
    },
    {
      "name": "projects/your-project-id/locations/global/agents/my-telecom-agent",
      "base_agent": "antigravity-preview-05-2026",
      "description": "A highly specialized telecom support agent.",
      "system_instruction": "You are a professional telecom support agent. Follow system policies carefully."
    }
  ]
}

5. Update Agent (Patching Configuration)

Modify configuration fields (such as instructions, descriptions, tools, or mounts) on a custom agent resource in place. You must specify the fields being updated using the update_mask query parameter.

[!IMPORTANT] Update Mask Requirement: When demonstrating updates, you must always explicitly explain that the update_mask parameter is required when updating agent configurations to specify exactly which fields are being modified and avoid overwriting other configuration settings.

  • Method: PATCH
  • Endpoint: https://aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents/{AGENT_ID}?update_mask=system_instruction
bash
curl -X PATCH "https://aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/global/agents/my-custom-agent?update_mask=system_instruction" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "my-custom-agent",
    "system_instruction": "You are a highly specialized telecom support agent. Follow system policies carefully."
  }'

6. Delete Agent

Delete custom Agent resources when they are no longer needed to free up backend workspace containers.

  • Method: DELETE
  • Endpoint: https://aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/${LOCATION}/agents/{AGENT_ID}
bash
curl -X DELETE "https://aiplatform.googleapis.com/v1beta1/projects/${PROJECT_ID}/locations/global/agents/my-custom-agent" \
  -H "Authorization: Bearer ${ACCESS_TOKEN}"
Response Example

A successful deletion request returns an empty JSON response body with HTTP Status 200 OK:

json
{}

3. Interacting with Custom Agents (Data Plane)

Once you have programmatically created and provisioned your custom stateful agent using the Control Plane (this skill), you can execute multi-turn chat, tool execution, and streaming conversations with it using the Data Plane (Interactions API).

[!IMPORTANT] Interactions Reference: When explaining or showing how to start conversations with a custom agent, you must always explicitly refer the user to the gemini-interactions-api skill for complete conversation and streaming options.

To interact with your custom agent:

  1. Obtain your agent's resource path name (e.g., projects/{PROJECT_ID}/locations/global/agents/{AGENT_ID}).
  2. Pass this resource path directly inside your data plane conversation requests under the agent parameter.
Python Example
python
interaction = client.interactions.create(
    agent="projects/your-project-id/locations/global/agents/my-custom-agent",
    input="Hello! Who are you?"
)
REST / curl Example
json
{
  "agent": "projects/your-project-id/locations/global/agents/my-custom-agent",
  "input": [{
    "type": "user_input",
    "content": [{"type": "text", "text": "Hello! Who are you?"}]
  }]
}

Refer to the gemini-interactions-api skill guide (../gemini-interactions-api/SKILL.md) for full instructions, Python and TS/JS code blocks, and streaming setups to run conversations with your provisioned agents.

© google, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/cloud/gemini-agents-api of google/skills.

Open the folder on GitHubat commit 8a1ac05

Used in 1 other repository

We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in google/skills, which our catalogue first saw on October 7, 2026.

Compare with similar skills

Gemini Agents API next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Gemini Agents API compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Gemini Agents API this skillgoogle/skills21k1 repos~3.2kAutomated safety check: PassApache-2.0
Kst AI Assets Usagepivoshenko/kasetto209—~2.1kAutomated safety check: PassCustom licence
Gemini SkillWJZ-P/gemini-skill832—~1.1kAutomated safety check: PassMIT
Documentation Serverandrea9293/mcp-documentation-server343—~2.3kAutomated safety check: PassMIT
Migrate To Antigravityyuting0624/antigravity-for-claude-code374—~2kAutomated safety check: PassMIT
Unraiddinglebear-ai/unraid135—~5.4kAutomated safety check: NotesMIT

Similar skills

  • Kst AI Assets Usage

    pivoshenko/kasetto

    Report which kasetto-installed skills and MCP servers are actually being used across the AI agents on this machine, and render a branded HTML dashboard of the result.

    209 GitHub stars~2.1k tokensUpdated 7 days ago
    Agent WorkflowsAuto-check passed
  • Gemini Skill

    WJZ-P/gemini-skill

    通过 Gemini 官网(gemini.google.com)执行生图、对话等操作。用户提到"生图/画图/绘图/nano banana/nanobanana/生成图片"等关键词时触发。操作方式分三级优先级:首选 MCP 工具 → 次选 Skill 脚本 → 最次连接 Skill 浏览器手动操作(需用户授权)。禁止自行启动外部浏览器访问 Gemini。

    832 GitHub stars~1.1k tokensUpdated 19 days ago
    Agent WorkflowsAuto-check passed
  • Documentation Server

    andrea9293/mcp-documentation-server

    A skill your agent uses when you need to store, retrieve, search, or manage documents in a local knowledge base with semantic search and hybrid (vector + full-text) retrieval.

    343 GitHub stars~2.3k tokensUpdated 1 mo ago
    Agent WorkflowsAuto-check passed
  • Migrate To Antigravity

    yuting0624/antigravity-for-claude-code

    Move an existing Claude Code setup onto the Antigravity CLI (agy) — user skills, CLAUDE.md, auto-memory, MCP servers, installed plugins, permissions and trusted workspaces.

    374 GitHub stars~2k tokensUpdated 2 days ago
    Agent WorkflowsAuto-check passed
  • Unraid

    dinglebear-ai/unraid

    This skill should be used when the user mentions Unraid, asks to check server health, monitor array or disk status, list or restart Docker containers, start or stop VMs, read system logs, check…

    135 GitHub stars~5.4k tokensUpdated 3 days ago
    DevOps & CloudAuto-check: notes
  • Notebooklm

    roomi-fields/notebooklm-mcp

    This skill should be used when the user wants to query their Google NotebookLM notebooks for citation-backed, source-grounded answers, or manage notebooks, sources, and Studio content (audio…

    188 GitHub stars~1.1k tokensUpdated 1 mo ago
    Knowledge ManagementAuto-check passed

More from google/skills

All 145 skills in this repo
  • Official

    Manages Google Cloud Privileged Access Manager entitlements and grants: create and edit entitlements, request temporary access, and approve or deny pending grants.

    21k GitHub stars~3.2k tokensUpdated today
    Auto-check passed
  • Official

    Writes Terraform alerting policies for AI agents that emit OpenTelemetry metrics, covering reliability, cost, safety, security and quality signals on Google Cloud.

    21k GitHub stars~4.2k tokensUpdated today
    Auto-check passed
  • Official

    Deploys open models or custom weights from Model Garden to Agent Platform endpoints, checks deployment status and cleans up endpoints, confirming before any change.

    21k GitHub stars~5.1k tokensUpdated today
    Auto-check passed
  • Official

    Searches, manages and scaffolds skills in the Gemini Enterprise Agent Platform Skill Registry using bundled Python scripts and Google Cloud credentials.

    21k GitHub stars~584 tokensUpdated today
    Auto-check passed
  • Designs GCP infrastructure as local Terraform, validates and scans it against best practices, then imports it to Application Design Center for deployment and troubleshooting.

    21k GitHub stars~4.4k tokensUpdated today
    Auto-check passed
  • Official

    Analyzes BigQuery slot use, query costs and execution bottlenecks from INFORMATION_SCHEMA to diagnose slow queries, slot contention and unpartitioned scans.

    21k GitHub stars~2.3k tokensUpdated today
    Auto-check passed

Categories

Questions about Gemini Agents API

What does Gemini Agents API do?

Manages custom Agent resources on Gemini Enterprise Agent Platform. Gemini Agents API is an agent skill from google/skills, published by the product's own GitHub organization. Manages custom Agent resources on Gemini Enterprise Agent Platform.

When should I use Gemini Agents API?

Gemini Agents API fits situations like: the user wants to programmatically create; delete stateful; server-managed Agent resources (including mounting files; tools) before executing conversations.

How do I install Gemini Agents API in Claude Code?

Run `npx skills add google/skills --skill gemini-agents-api -a claude-code`. Or copy the skill folder (skills/cloud/gemini-agents-api in google/skills) into .claude/skills/gemini-agents-api in your project. Claude Code loads it when a task matches its description.

How do I install Gemini Agents API in Codex?

Run `npx skills add google/skills --skill gemini-agents-api -a codex`. Or copy the skill folder (skills/cloud/gemini-agents-api in google/skills) into .agents/skills/gemini-agents-api in your project. Codex loads it when a task matches its description.

Can I use Gemini Agents API in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add google/skills --skill gemini-agents-api -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/gemini-agents-api, .gemini/skills/gemini-agents-api, .github/skills/gemini-agents-api and .opencode/skills/gemini-agents-api in your project.

What does Gemini Agents API need to run?

Going by SKILL.md and its folder, Gemini Agents API needs the command-line tools its instructions call (curl and gcloud) and credentials named ACCESS_TOKEN. Our summary lists: A credential in ACCESS_TOKEN; A credential in YOUR_MCP_AUTH_TOKEN.

Does Gemini Agents API access the network?

SKILL.md names 1 domain. In commands or code: aiplatform.googleapis.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.

Is Gemini Agents API safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Gemini Agents API use?

Gemini Agents API is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Gemini Agents API use?

About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Gemini Agents API?

Skills that share tags, products or a category with Gemini Agents API: Kst AI Assets Usage (pivoshenko/kasetto, 209 stars), Gemini Skill (WJZ-P/gemini-skill, 832 stars), Documentation Server (andrea9293/mcp-documentation-server, 343 stars) and Migrate To Antigravity (yuting0624/antigravity-for-claude-code, 374 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Gemini Agents API?

google (a GitHub organization, an official publisher) maintains it in google/skills, which has 20,994 GitHub stars. The repository holds 145 skills in this directory. The repository was last updated on October 6, 2026.

Source: google/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.