Aller au contenu

IA, HTTP et outils

MéthodeSignatureDescription
g.http.makeHttpRequest(options) → Promise<HttpResponse>Effectue une requête HTTP

HttpRequestOptions :

{
url: string // required
method?: string // "GET" (default), "POST", "PUT", "PATCH", "DELETE", "HEAD", "OPTIONS"
body?: string
headers?: Record<string, string>
timeout?: number // milliseconds
}

HttpResponse :

{
status: number
statusText: string
body: string
headers: Record<string, string>
}

Exige qu’un fournisseur LLM soit configuré.

MéthodeSignatureDescription
g.llm.promptLocalLlm(model, prompt, options?) → Promise<string>Envoie un prompt au LLM configuré
g.llm.abortLocalLlm()Annule une requête LLM en cours
g.llm.getLocalLlmModels() → Promise<OllamaModelInfo[]>Liste les modèles disponibles

OllamaOptions :

{
timeout?: number // milliseconds
image?: string // base64-encoded image for vision models
}

Voir Identifiants d’accès pour les détails complets.

MéthodeSignatureDescription
g.secrets.getSecret(secretName) → Promise<string>Récupère la valeur déchiffrée d’une entrée

OcrOptions pour g.page.ocr :

{
x?: number
y?: number
width?: number
height?: number
lang?: string // default: "eng"
browserTabId?: string
}

MéthodeSignatureDescription
g.log(message) → voidÉcrit dans le panneau Console
g.wait(milliseconds?) → PromiseAttend une durée
g.generateApiDocs(outputDirectory?) → stringGénère scripting-api.d.ts

g.generateApiDocs() est un helper avancé réservé à TypeScript (advanced TypeScript-only helper). Pour le paquet complet de support du scripting, utilisez Tools > Developer > Generate Scripting Support Files… afin de générer les définitions TypeScript, guides Lua et Janet, instructions LLM de l’espace de travail et fichiers de base pour l’écriture TypeScript.


Disponible lorsqu’un script est appelé comme outil MCP personnalisé.

PropriétéTypeDescription
g.tool.argsany | nullParamètres passés par l’agent IA, ou null si le script n’est pas invoqué comme outil

Ces globals de haut niveau sont disponibles dans les moteurs JavaScript et Lua ; ils ne se trouvent pas sous g.*.

API URL WHATWG appuyée par System.Uri. En JS, utilisez new URL(...); en Lua, utilisez URL(...), qui renvoie une table.

Propriétés URL : href, origin, protocol, hostname, host, port, pathname, search, hash, username, password, searchParams

const url = new URL("https://example.com/path?q=hello&page=2");
const q = url.searchParams.get("q"); // "hello"
g.log(url.hostname); // "example.com"
g.log(url.pathname); // "/path"
// Relative URL resolution
const api = new URL("/api/data", "https://example.com");
g.log(api.href); // "https://example.com/api/data"

Encode et décode en Base64 (UTF-8).

const encoded = btoa("Hello, World!"); // "SGVsbG8sIFdvcmxkIQ=="
const decoded = atob(encoded); // "Hello, World!"

Génère une chaîne UUID v4.

const id = crypto.randomUUID(); // "3b241101-e2bb-4d7a-8613-e9a3fdc1e2b3"

Synthèse vocale Windows. Toujours disponible, sans portée limitée à l’espace de travail.

MéthodeSignatureAsyncDescription
speak(text, options?) → PromiseOuiPrononce un texte à voix haute
getVoices() → string[]NonListe les noms des voix disponibles
stop()NonArrête la parole en cours

SpeakOptions :

{
voice?: string // e.g., "Microsoft David"
rate?: number // -10 to 10, default 0
}

Le moteur STT local Whisper permet aux scripts d’écouter des commandes vocales utilisateur ou de transcrire des fichiers audio. Tout le traitement s’exécute localement sur votre CPU.

MéthodeSignatureAsyncDescription
listen(ms) → Promise<string>OuiEnregistre l’audio du microphone sélectionné pendant une durée en millisecondes et renvoie le texte transcrit
transcribeFile(path) → Promise<string>OuiLit un fichier .wav existant sur disque et renvoie le texte transcrit
async function main() {
g.log("Listening for 5 seconds...");
try {
const text = await g.stt.listen(5000);
g.log("You said: " + text);
if (text.toLowerCase().includes("hello")) {
g.log("Hello to you too!");
}
} catch (e) {
g.log("STT Error: " + e.message);
}
}