Référence API

Documentation complète de l'API Gemini CLI avec descriptions détaillées des méthodes, paramètres et exemples pratiques.

Sections API

Naviguer dans les différentes catégories d'API

API Principale

API principale pour interagir avec les modèles Gemini et gérer les conversations

API Plugin

API pour développer des plugins et extensions personnalisés

API de Configuration

API pour gérer la configuration et les paramètres CLI

API des Outils

API pour gérer et exécuter les outils intégrés

API Principale

API principale pour interagir avec les modèles Gemini et gérer les conversations

chat()

Démarrer une session de chat interactive avec Gemini

Signature :

chat(options?: ChatOptions): Promise<ChatSession>

Exemple :

import { GeminiCLI } from '@google/generative-ai-cli';

const cli = new GeminiCLI();
const session = await cli.chat({
  model: 'gemini-pro',
  temperature: 0.7
});

ask()

Envoyer une invite et recevoir une réponse

Signature :

ask(prompt: string, options?: AskOptions): Promise<string>

Exemple :

const response = await cli.ask("Qu'est-ce que l'apprentissage automatique ?", {
  maxTokens: 1000,
  temperature: 0.5
});

analyze()

Analyser des fichiers ou du code avec l'assistance IA

Signature :

analyze(files: string[], options?: AnalyzeOptions): Promise<AnalysisResult>

Exemple :

const analysis = await cli.analyze(['src/main.js'], {
  type: 'code-review',
  includeMetrics: true
});

API Plugin

API pour développer des plugins et extensions personnalisés

registerPlugin()

Enregistrer un nouveau plugin avec le CLI

Signature :

registerPlugin(plugin: Plugin): void

Exemple :

const myPlugin = {
  name: 'my-custom-plugin',
  version: '1.0.0',
  commands: {
    'custom-command': async (args) => {
      // Logique du plugin ici
      return 'Plugin exécuté avec succès';
    }
  }
};

cli.registerPlugin(myPlugin);

createTool()

Créer un outil personnalisé pour l'IA

Signature :

createTool(definition: ToolDefinition): Tool

Exemple :

const weatherTool = cli.createTool({
  name: 'get_weather',
  description: 'Obtenir la météo actuelle pour un lieu',
  parameters: {
    location: { type: 'string', required: true }
  },
  execute: async ({ location }) => {
    // Récupérer les données météo
    return `Météo à ${location}: Ensoleillé, 25°C`;
  }
});

API de Configuration

API pour gérer la configuration et les paramètres CLI

getConfig()

Obtenir les valeurs de configuration actuelles

Signature :

getConfig(key?: string): any

Exemple :

// Obtenir toute la config
const config = cli.getConfig();

// Obtenir une valeur de config spécifique
const model = cli.getConfig('model');

setConfig()

Définir les valeurs de configuration

Signature :

setConfig(key: string, value: any): void

Exemple :

// Définir le modèle
cli.setConfig('model', 'gemini-pro');

// Définir plusieurs valeurs
cli.setConfig('temperature', 0.8);
cli.setConfig('maxTokens', 2000);

resetConfig()

Réinitialiser la configuration aux valeurs par défaut

Signature :

resetConfig(key?: string): void

Exemple :

// Réinitialiser toute la config
cli.resetConfig();

// Réinitialiser une clé spécifique
cli.resetConfig('temperature');

API des Outils

API pour gérer et exécuter les outils intégrés

listTools()

Obtenir la liste des outils disponibles

Signature :

listTools(): Tool[]

Exemple :

const tools = cli.listTools();
console.log(tools.map(t => t.name));
// ['read_file', 'write_file', 'run_shell_command', ...]

executeTool()

Exécuter un outil spécifique

Signature :

executeTool(name: string, args: any): Promise<any>

Exemple :

// Lire un fichier
const content = await cli.executeTool('read_file', {
  path: './package.json'
});

// Exécuter une commande shell
const result = await cli.executeTool('run_shell_command', {
  command: 'ls -la'
});

Types Communs

Interfaces et types TypeScript utilisés dans l'API

ChatOptions

Options pour démarrer une session de chat

model

string

Modèle à utiliser (ex: "gemini-pro")

temperature

number

Niveau de créativité (0-1)

maxTokens

number

Longueur maximale de réponse

systemPrompt

string

Instructions système

ToolDefinition

Définition pour créer des outils personnalisés

name

string

Nom unique de l'outil

description

string

Description de l'outil pour l'IA

parameters

object

Schéma des paramètres

execute

function

Fonction d'exécution de l'outil

Ressources Supplémentaires

Explorer plus de documentation et d'exemples