tokens&
For enterprises
Submit a resource
tokens&

Find tools, check provider offers, save a build plan, and share your work when you’re ready.

For buildersFor enterprises

For builders

  • Startup credits and perks
  • Agent Skills
  • Publish a project

For enterprises

  • Start free company workspace
  • Submit a tool, product, or perk

Community

  • Community
  • Newsletter
  • Events
Xin

© 2026 tokensand, LLC. All rights reserved.

  • Terms
  • Privacy
  • Security
  • Data Processing
  • Status
  1. Home
  2. Agent Skills
  3. Gemini managed agents API
GoogleAgents
SKILL.md
License identified

Agent Skill

Gemini managed agents API

Create and manage stateful Gemini agents with files, skills, tools, and server-managed conversations.

geminimanaged-agentstools
Install this skillView repository

Package facts

Sourced from the vendor's own repository.

Vendor
Google
Category
Agents
License
Apache-2.0
License review
License identified
Supported clients
Codex, Cursor, Claude Code, VS Code, GitHub Copilot, Gemini CLI
SKILL.md size
12,794 bytes

Source snapshot: 2026-09-04. This listing does not verify installation, security, vendor participation, or product use.

Raw SKILL.mdSource repositoryInstall the Tokens& Agent Pack

Skill specification

Declared by Google in the package front matter. Trigger conditions are what the coding agent matches on before it loads the skill.

Gemini managed agents API SKILL.md front matter fields
Skill namegemini-agents-api
Trigger conditionsManages 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.
Upstream categoryAiAndMachineLearning

Install gemini-agents-api

In a terminal with Node.js, npm and Git, run the command for your agent. The Skills CLI installs the complete package directory, including referenced files within it. Review its install prompt, then start a new agent session. A skill package does not set up an MCP server connection.

Claude Code

.claude/skills/gemini-agents-api/SKILL.md

Project skills are committed with the repo. Use the user directory for a personal install across every project.

Project install

npx skills add 'https://github.com/google/skills/tree/main/skills/cloud/gemini-agents-api' --skill 'gemini-agents-api' --agent 'claude-code'

Personal install

npx skills add 'https://github.com/google/skills/tree/main/skills/cloud/gemini-agents-api' --skill 'gemini-agents-api' --agent 'claude-code' --global

Codex

.agents/skills/gemini-agents-api/SKILL.md

Codex reads `.agents/skills/` as its primary location, which is also the cross-platform default other clients honour.

Project install

npx skills add 'https://github.com/google/skills/tree/main/skills/cloud/gemini-agents-api' --skill 'gemini-agents-api' --agent 'codex'

Personal install

npx skills add 'https://github.com/google/skills/tree/main/skills/cloud/gemini-agents-api' --skill 'gemini-agents-api' --agent 'codex' --global

Cursor

.agents/skills/gemini-agents-api/SKILL.md

Cursor also loads `.agents/skills/`, `.claude/skills/`, and `.codex/skills/`, so one committed copy can serve several clients.

Project install

npx skills add 'https://github.com/google/skills/tree/main/skills/cloud/gemini-agents-api' --skill 'gemini-agents-api' --agent 'cursor'

Personal install

npx skills add 'https://github.com/google/skills/tree/main/skills/cloud/gemini-agents-api' --skill 'gemini-agents-api' --agent 'cursor' --global

Gemini CLI

.agents/skills/gemini-agents-api/SKILL.md

Gemini CLI reads `.agents/skills/` first when both directories exist.

Project install

npx skills add 'https://github.com/google/skills/tree/main/skills/cloud/gemini-agents-api' --skill 'gemini-agents-api' --agent 'gemini-cli'

Personal install

npx skills add 'https://github.com/google/skills/tree/main/skills/cloud/gemini-agents-api' --skill 'gemini-agents-api' --agent 'gemini-cli' --global

GitHub Copilot

.agents/skills/gemini-agents-api/SKILL.md

The Skills CLI uses the shared `.agents/skills/` directory for Copilot project installs.

Project install

npx skills add 'https://github.com/google/skills/tree/main/skills/cloud/gemini-agents-api' --skill 'gemini-agents-api' --agent 'github-copilot'

Personal install

npx skills add 'https://github.com/google/skills/tree/main/skills/cloud/gemini-agents-api' --skill 'gemini-agents-api' --agent 'github-copilot' --global

SKILL.md

View raw source

Source snapshot fetched 2026-09-04 from github.com/google/skills/tree/main/skills/cloud/gemini-agents-api. The install command fetches the upstream package, which may have changed since this snapshot.

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:

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:

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

{
  "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:

"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.
"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}
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
{
  "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":

{
  "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."
  }
}

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}
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:

{
  "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
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:

{
  "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
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}
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:

{}

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
interaction = client.interactions.create(
    agent="projects/your-project-id/locations/global/agents/my-custom-agent",
    input="Hello! Who are you?"
)
REST / curl Example
{
  "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.

Add the registry badge

Maintainers can link this listing from the skill's own README. Free, no account needed, and it points back at the rendered package for anyone browsing the repo.

Markdown

[![Gemini managed agents API on tokens&](https://tokensand.com/api/badges/skill/google-gemini-agents-api)](https://tokensand.com/agent-skills/google-gemini-agents-api)

HTML

<a href="https://tokensand.com/agent-skills/google-gemini-agents-api" target="_blank" rel="noopener">
  <img src="https://tokensand.com/api/badges/skill/google-gemini-agents-api" alt="Gemini managed agents API on tokens&" />
</a>

More Google Agent Skills

All Agent Skills

Agent Platform eval flywheel

Build eval datasets, choose quality metrics, analyze failures, and compare agent improvements systematically.

Agents

Agent Platform model inference

Call Gemini and OpenMaaS models with current SDKs, correct endpoints, authentication, and error handling.

Models

Agent Platform prompt management

Create, retrieve, version, list, and safely delete managed prompts using repeatable Python workflows.

Agents

Agent Platform RAG engine

Manage RAG corpora and files, retrieve grounded context, and generate corpus-grounded responses.

Docs

Agent Platform skill registry

Discover, register, version, generate, update, and inspect skills in Gemini Enterprise Agent Platform.

Agents

AI Studio to Agent Platform migration

Move Gemini applications from Google AI Studio to cloud IAM, billing, telemetry, and enterprise infrastructure.

Models