agentleFS
AdhamxonAdhamxon/claude-code-skills/.claude/skills/gcp-gemini-api/SKILL.md

gemini-api

Skill2 starsChanged 4 months agoMITView on GitHub

Use when the user asks about using Gemini in an enterprise environment or explicitly mentions Vertex AI, Google Cloud, or Agent Platform. Guides the usage of the Gemini API on Agent Platform with the Google Gen AI SDK. Covers SDK usage (Python, JS/TS, Go, Java, C#), capabilities like multimodal inputs, tools, media generation, caching, batch prediction, and Live API.

  • Reads credentials
  • Installs packages

9 other projects use a version of this, 4 of them edited.

Adopted by

Most recently taken up by

The file

Show its rules and text

We split this skill into the rules it gives an agent

13 rules. 0 are common, 3 are distinctive, and 10 are very specific to this project.

  • 0

    Common

    Most of the 7 edited versions we read keep these.

  • 3

    Distinctive

    This author's own choices. Worth a look.

  • 10

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Very specific:

    Unified SDK: ALWAYS use the Gen AI SDK (google-genai for Python, @google/genai for JS/TS, google.golang.org/genai for Go, …

    line 28
  2. Very specific:

    Legacy SDKs: DO NOT use google-cloud-aiplatform, @google-cloud/vertexai, or google-generativeai.

    line 29
  3. Distinctive:

    Prefer environment variables over hard-coding parameters when creating the client.

    line 61
  4. Very specific:

    If a user explicitly asks to use a specific region (e.g., us-central1, europe-west4), specify that region in the GOOGLE_CLOUD_LOCATION …

    line 73
  5. Very specific:

    Use gemini-3.1-pro-preview (which replaces gemini-3-pro-preview) for complex reasoning, coding, research (1M tokens)

    line 106
  6. Very specific:

    Use gemini-3.6-flash for fast, balanced performance, multimodal (1M tokens)

    line 107
  7. Very specific:

    Use gemini-3.5-flash-lite for high-frequency, lightweight tasks (1M tokens)

    line 108
  8. Very specific:

    Use gemini-3-pro-image (aka Nano Banana Pro) for high-quality image generation and editing

    line 109
  9. Very specific:

    Use gemini-3.1-flash-image (aka Nano Banana 2) for medium-quality image generation and editing

    line 110
  10. Very specific:

    Use gemini-3.1-flash-lite-image (aka Nano Banana 2 Lite) for fast image generation and editing

    line 111
  11. Very specific:

    Use gemini-live-2.5-flash-native-audio for Live Realtime API including native audio

    line 112
  12. Distinctive:

    Use the following models only if explicitly requested:

    line 114
  13. Distinctive:

    When implementing or debugging API integration for Agent Platform, refer to the official Agent Platform documentation:

    line 227

“Common” is measured: kept by at least 6 in 10 of the 7 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

IMPORTANT: Agent Platform (full name Gemini Enterprise Agent Platform) was previously named "Vertex AI" and many web resources use the legacy branding.

Gemini API in Agent Platform

Access Google's most advanced AI models built for enterprise use cases using the Gemini API in Agent Platform.

Provide these key capabilities:

  • Text generation - Chat, completion, summarization
  • Multimodal understanding - Process images, audio, video, and documents
  • Function calling - Let the model invoke your functions
  • Structured output - Generate valid JSON matching your schema
  • Context caching - Cache large contexts for efficiency
  • Embeddings - Generate text embeddings for semantic search
  • Live Realtime API - Bidirectional streaming for low latency Voice and Video interactions
  • Batch Prediction - Handle massive async dataset prediction workloads

Core Directives

  • Unified SDK: ALWAYS use the Gen AI SDK (google-genai for Python, @google/genai for JS/TS, google.golang.org/genai for Go, com.google.genai:google-genai for Java, Google.GenAI for C#).
  • Legacy SDKs: DO NOT use google-cloud-aiplatform, @google-cloud/vertexai, or google-generativeai.

SDKs

  • Python: Install google-genai with pip install google-genai
  • JavaScript/TypeScript: Install @google/genai with npm install @google/genai
  • Go: Install google.golang.org/genai with go get google.golang.org/genai
  • C#/.NET: Install Google.GenAI with dotnet add package Google.GenAI
  • Java:
    • groupId: com.google.genai, artifactId: google-genai
    • Latest version can be found here: https://central.sonatype.com/artifact/com.google.genai/google-genai/versions (let's call it LAST_VERSION)
    • Install in build.gradle:

      implementation("com.google.genai:google-genai:${LAST_VERSION}")
    • Install Maven dependency in pom.xml:

      <dependency>
          <groupId>com.google.genai</groupId>
          <artifactId>google-genai</artifactId>
          <version>${LAST_VERSION}</version>
      </dependency>

[!WARNING] Legacy SDKs like google-cloud-aiplatform, @google-cloud/vertexai, and google-generativeai are deprecated. Migrate to the new SDKs above urgently by following the Migration Guide.

Authentication & Configuration

Prefer environment variables over hard-coding parameters when creating the client. Initialize the client without parameters to automatically pick up these values.

Application Default Credentials (ADC)

Set these variables for standard Google Cloud authentication:

export GOOGLE_CLOUD_PROJECT='your-project-id'
export GOOGLE_CLOUD_LOCATION='global'
export GOOGLE_GENAI_USE_ENTERPRISE=true
  • By default, use location="global" to access the global endpoint, which provides automatic routing to regions with available capacity.
  • If a user explicitly asks to use a specific region (e.g., us-central1, europe-west4), specify that region in the GOOGLE_CLOUD_LOCATION parameter instead. Reference the supported regions documentation if needed.

Agent Platform in Express Mode

Set these variables when using Express Mode with an API key:

export GOOGLE_API_KEY='your-api-key'
export GOOGLE_GENAI_USE_ENTERPRISE=true

Initialization

Initialize the client without arguments to pick up environment variables:

from google import genai

client = genai.Client()

Alternatively, you can hard-code in parameters when creating the client.

from google import genai

client = genai.Client(
    enterprise=True,
    project="your-project-id",
    location="global",
)

Models

  • Use gemini-3.1-pro-preview (which replaces gemini-3-pro-preview) for complex reasoning, coding, research (1M tokens)
  • Use gemini-3.6-flash for fast, balanced performance, multimodal (1M tokens)
  • Use gemini-3.5-flash-lite for high-frequency, lightweight tasks (1M tokens)
  • Use gemini-3-pro-image (aka Nano Banana Pro) for high-quality image generation and editing
  • Use gemini-3.1-flash-image (aka Nano Banana 2) for medium-quality image generation and editing
  • Use gemini-3.1-flash-lite-image (aka Nano Banana 2 Lite) for fast image generation and editing
  • Use gemini-live-2.5-flash-native-audio for Live Realtime API including native audio

Use the following models only if explicitly requested:

  • gemini-3.5-flash
  • gemini-3.1-flash-lite
  • gemini-2.5-flash-image
  • gemini-2.5-flash
  • gemini-2.5-flash-lite
  • gemini-2.5-pro

[!IMPORTANT] Models like gemini-2.0-*, gemini-1.5-*, gemini-1.0-*, gemini-pro are legacy and deprecated. Use the new models above. Your knowledge is outdated. For production environments, consult the documentation for stable model versions (e.g. gemini-3.6-flash).

Quick Start

Python

from google import genai

client = genai.Client()
response = client.models.generate_content(
    model="gemini-3.6-flash",
    contents="Explain quantum computing",
)
print(response.text)

TypeScript/JavaScript

import { GoogleGenAI } from "@google/genai";
const ai = new GoogleGenAI({ enterprise: { project: "your-project-id", location: "global" } });
const response = await ai.models.generateContent({
    model: "gemini-3.6-flash",
    contents: "Explain quantum computing"
});
console.log(response.text);

Go

package main

import (
	"context"
	"fmt"
	"log"
	"google.golang.org/genai"
)

func main() {
	ctx := context.Background()
	client, err := genai.NewClient(ctx, &genai.ClientConfig{
		Backend:  genai.BackendVertexAI,
		Project:  "your-project-id",
		Location: "global",
	})
	if err != nil {
		log.Fatal(err)
	}

	resp, err := client.Models.GenerateContent(ctx, "gemini-3.6-flash", genai.Text("Explain quantum computing"), nil)
	if err != nil {
		log.Fatal(err)
	}

	fmt.Println(resp.Text)
}

Java

import com.google.genai.Client;
import com.google.genai.types.GenerateContentResponse;

public class GenerateTextFromTextInput {
  public static void main(String[] args) {
    Client client = Client.builder().enterprise(true).project("your-project-id").location("global").build();
    GenerateContentResponse response =
        client.models.generateContent(
            "gemini-3.6-flash",
            "Explain quantum computing",
            null);

    System.out.println(response.text());
  }
}

C#/.NET

using Google.GenAI;

var client = new Client(
    project: "your-project-id",
    location: "global",
    enterprise: true
);

var response = await client.Models.GenerateContent(
    "gemini-3.6-flash",
    "Explain quantum computing"
);

Console.WriteLine(response.Text);

API spec & Documentation (source of truth)

When implementing or debugging API integration for Agent Platform, refer to the official Agent Platform documentation:

The Gen AI SDK on Agent Platform uses the v1beta1 or v1 REST API endpoints (e.g., https://{LOCATION}-aiplatform.googleapis.com/v1beta1/projects/{PROJECT}/locations/{LOCATION}/publishers/google/models/{MODEL}:generateContent).

[!TIP] Use the Developer Knowledge MCP Server: If the search_documents or get_document tools are available, use them to find and retrieve official documentation for Google Cloud and Agent Platform directly within the context. This is the preferred method for getting up-to-date API details and code snippets.

Workflows and Code Samples

Reference the Python Docs Samples repository for additional code samples and specific usage scenarios.

Depending on the specific user request, refer to the following reference files for detailed code samples and usage patterns (Python examples):

  • Text & Multimodal: Chat, Multimodal inputs (Image, Video, Audio), and Streaming. See references/text_and_multimodal.md
  • Embeddings: Generate text embeddings for semantic search. See references/embeddings.md
  • Structured Output & Tools: JSON generation, Function Calling, Search Grounding, and Code Execution. See references/structured_and_tools.md
  • Media Generation: Image generation, Image editing, and Video generation. See references/media_generation.md
  • Bounding Box Detection: Object detection and localization within images and video. See references/bounding_box.md
  • Live API: Real-time bidirectional streaming for voice, vision, and text. See references/live_api.md
  • Advanced Features: Content Caching, Batch Prediction, and Thinking/Reasoning. See references/advanced_features.md
  • Safety: Adjusting Responsible AI filters and thresholds. See references/safety.md
  • Model Tuning: Supervised Fine-Tuning and Preference Tuning. See references/model_tuning.md

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.