56 results available
Sign in
Skills directory

gemini-api

google

·

Last changed
Hardened

This skill has been hardened by Chainguard

Last changed

This version passed the hardening gate. Hardening applied 5 targeted changes and preserved all other text. Classified findings before hardening: 3. Classified findings closed: 1. Classified findings remaining: 2. Unclassified scanner findings remaining: 0. Review findings closed: 6. Review findings remaining: 16.


Open before hardening

3

Low
Open after hardening

2

Low

Expand
File
Group
Subtype
Severity
Status
SKILL.md

Malicious Code & Command Execution

—

Low
Open
references/advanced_features.md

Tool & MCP Manipulation

MCP configuration abuse

Low
Closed
SKILL.md

Supply Chain & Install-Time Trust

Install-time download and execute

Low
Open

3 findings


SKILL.md

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>

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.8-flash for fast, balanced performance, multimodal (1M tokens)
  • Use gemini-3.1-pro-preview (which replaces gemini-3-pro-preview) for complex reasoning, coding, research (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.7-flash
  • gemini-3.6-flash
  • 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

Quick Start

Python

from google import genai

client = genai.Client()
response = client.models.generate_content(
    model="gemini-3.8-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.8-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.8-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.8-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.8-flash",
    "Explain quantum computing"
);

Console.WriteLine(response.Text);

API spec & Documentation

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).

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

Install

Install with chainctl
chainctl skill install public/google/gemini-api:latest
Get started with chainctl
View source

Harden your own skills

Bring Chainguard's hardening pipeline to your first-party skills — custom rulesets, automated remediation, full audit trail.

Provenance

Upstream sourcehttps://github.com/google/skills
Upstream commitbecc4b8aa459803f4a9ee7974d8d33286de733a8
OCI reference

skills.cgr.dev/public/github.com/google/skills/cloud/gemini-api:latest

License

Apache-2.0

Files

HARDENING.md

LICENSE

SKILL.md

references/advanced_features.md

references/bounding_box.md

references/embeddings.md

references/live_api.md

references/media_generation.md

references/model_tuning.md

references/safety.md

references/structured_and_tools.md

references/text_and_multimodal.md


The trusted source for open source

Talk to an expert
PrivacyTerms

Product

Chainguard ContainersChainguard LibrariesChainguard VMsChainguard OS PackagesChainguard ActionsChainguard Agent SkillsIntegrationsPricing
© 2026 Chainguard, Inc. All Rights Reserved.
Chainguard® and the Chainguard logo are registered trademarks of Chainguard, Inc. in the United States and/or other countries.
The other respective trademarks mentioned on this page are owned by the respective companies and use of them does not imply any affiliation or endorsement.