Salta ai contenuti

IA, HTTP e strumenti

MetodoFirmaDescrizione
g.http.makeHttpRequest(options) → Promise<HttpResponse>Esegue una richiesta HTTP

HttpRequestOptions:

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

HttpResponse:

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

Richiede un servizio LLM configurato.

MetodoFirmaDescrizione
g.llm.promptLocalLlm(model, prompt, options?) → Promise<string>Invia un prompt all’LLM configurato
g.llm.abortLocalLlm()Annulla una richiesta LLM in corso
g.llm.getLocalLlmModels() → Promise<OllamaModelInfo[]>Elenca i modelli disponibili

OllamaOptions:

{
timeout?: number // millisecondi
image?: string // immagine codificata base64 per modelli vision
}

Vedi Credenziali di accesso per i dettagli completi.

MetodoFirmaDescrizione
g.secrets.getSecret(secretName) → Promise<string>Ottiene il valore decrittato di una credenziale di accesso

OcrOptions (per g.page.ocr):

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

MetodoFirmaDescrizione
g.log(message) → voidScrive nel pannello Console
g.wait(milliseconds?) → PromiseAttende per una durata
g.generateApiDocs(outputDirectory?) → stringGenera scripting-api.d.ts

g.generateApiDocs() è una funzione di supporto avanzata solo TypeScript (advanced TypeScript-only helper). Per il pacchetto completo di supporto allo scripting, usa Strumenti > Sviluppatore > Genera file di supporto allo scripting… (Tools > Developer > Generate Scripting Support Files...) per generare definizioni TypeScript, guide Lua e Janet, istruzioni LLM dello spazio di lavoro e file di base per scrivere in TypeScript.


Disponibile quando uno script viene invocato come strumento MCP personalizzato.

ProprietàTipoDescrizione
g.tool.argsany | nullParametri passati dall’agente IA (null se non invocato come strumento)

Questi globali di primo livello sono disponibili nei motori JavaScript e Lua, non sotto g.*.

API URL WHATWG basata su System.Uri. In JS usa new URL(...), in Lua usa URL(...) (restituisce una tabella).

Proprietà 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"
// Risoluzione URL relativa
const api = new URL("/api/data", "https://example.com");
g.log(api.href); // "https://example.com/api/data"

Codifica e decodifica Base64 (UTF-8).

const encoded = btoa("Ciao, mondo!"); // "Q2lhbywgbW9uZG8h"
const decoded = atob(encoded); // "Ciao, mondo!"

Genera una stringa UUID v4.

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

Windows Speech Synthesis. Sempre disponibile (non legata allo spazio di lavoro).

MetodoFirmaAsyncDescrizione
speak(text, options?) → PromisePronuncia il testo ad alta voce
getVoices() → string[]NoElenca i nomi delle voci disponibili
stop()NoFerma la voce corrente

SpeakOptions:

{
voice?: string // es. "Microsoft David"
rate?: number // da -10 a 10, predefinito 0
}

Il motore STT Whisper locale permette agli script di ascoltare comandi vocali dell’utente o trascrivere file audio. Tutta l’elaborazione avviene localmente sulla CPU.

MetodoFirmaAsyncDescrizione
listen(ms) → Promise<string>Registra audio dal microfono selezionato per una durata (in millisecondi) e restituisce il testo trascritto.
transcribeFile(path) → Promise<string>Legge un file .wav esistente dal disco e restituisce il testo trascritto.
async function main() {
g.log("Ascolto per 5 secondi...");
try {
const text = await g.stt.listen(5000);
g.log("Hai detto: " + text);
if (text.toLowerCase().includes("ciao")) {
g.log("Ciao anche a te!");
}
} catch (e) {
g.log("Errore STT: " + e.message);
}
}