Passa al contenuto principale

Riferimento Strumenti Integrati

Agent è dotato di un insieme di strumenti integrati che l'AI chiama automaticamente durante le conversazioni. Questi strumenti sono disponibili per impostazione predefinita nelle conversazioni persistenti; gli sviluppatori di script di solito non hanno bisogno di chiamarli direttamente — l'AI seleziona lo strumento giusto in base all'intento dell'utente.

Capire cosa possono fare questi strumenti ti aiuta a scrivere prompt di sistema e strumenti personalizzati migliori.

Recupero Dati Web

web_fetch

Recupera il contenuto di un URL, con estrazione da HTML a testo e supporto per riepilogo LLM.

ParametroTipoObbligatorioDescrizione
urlstringURL obiettivo (solo http/https)
promptstringNoPrompt di riepilogo (quando fornito, un LLM viene usato per distillare il contenuto)
max_lengthnumberNoMax caratteri di contenuto

Dettagli del comportamento:

  • Timeout della richiesta di 30 secondi
  • Il contenuto HTML estrae automaticamente il testo principale (rimuove navigazione, barre laterali, ecc.)
  • Le risposte JSON vengono analizzate automaticamente
  • Il testo puro viene restituito così com'è
  • Quando viene fornito prompt, il contenuto recuperato viene inviato a un LLM per il riepilogo

Valore di ritorno:

{
"url": "https://example.com",
"content_type": "text/html",
"content": "Contenuto del corpo estratto...",
"truncated": false,
"final_url": "https://example.com/redirected"
}

Interroga un motore di ricerca e restituisce risultati di ricerca strutturati.

ParametroTipoObbligatorioDescrizione
querystringParole chiave di ricerca
max_resultsnumberNoMassimo numero di risultati (predefinito 5, limite 10)

Motori di ricerca supportati:

MotoreDescrizioneConfigurazione richiesta
DuckDuckGoMotore predefinitoNessuna
BingMicrosoft Bing SearchChiave API richiesta
BaiduBaidu SearchNessuna chiave API richiesta
Google Custom SearchGoogle Custom SearchChiave API + ID CSE richiesti

I motori di ricerca vengono configurati nella pagina di gestione → Agent → Impostazioni.

Valore di ritorno:

[
{
"title": "Titolo del risultato di ricerca",
"url": "https://example.com/result",
"snippet": "Testo di riepilogo del risultato..."
}
]

get_tab_content

Legge il contenuto renderizzato della pagina di una scheda specifica, convertito in Markdown strutturato annotato con selettori CSS.

ParametroTipoObbligatorioDescrizione
tab_idnumberID della scheda
selectorstringNoSelettore CSS; estrae solo la parte corrispondente
promptstringNoPrompt di riepilogo
max_lengthnumberNoMax caratteri di contenuto

Differenza con web_fetch: get_tab_content legge la pagina come già renderizzata dal browser (incluso il contenuto JS dinamico), mentre web_fetch effettua una nuova richiesta HTTP.

Valore di ritorno:

{
"tab_id": 123,
"url": "https://example.com",
"title": "Titolo della pagina",
"content": "Contenuto strutturato...",
"truncated": false,
"used_selector": "main"
}

Gestione Schede

list_tabs

Interroga schede aperte, con supporto per diverse condizioni di filtro.

ParametroTipoObbligatorioDescrizione
url_patternstringNoCorrispondenza regex dell'URL
title_patternstringNoCorrispondenza regex del titolo
activebooleanNoRestituisce solo la scheda attiva
window_idnumberNoFinestra specificata
audiblebooleanNoRestituisce solo le schede che attualmente riproducono audio

open_tab

Apre una nuova scheda o naviga una esistente.

ParametroTipoObbligatorioDescrizione
urlstringURL obiettivo
tab_idnumberNoID di una scheda esistente (se fornito, quella scheda viene navigata; altrimenti viene aperta una nuova scheda)
activebooleanNoSe attivarla (predefinito true)
window_idnumberNoFinestra specificata
wait_until_loadedbooleanNoSe attendere che la pagina finisca di caricare (predefinito true)

close_tab

Chiude una scheda.

ParametroTipoObbligatorioDescrizione
tab_idnumberID della scheda

activate_tab

Attiva una scheda e mette a fuoco la finestra in cui si trova.

ParametroTipoObbligatorioDescrizione
tab_idnumberID della scheda

File System (OPFS)

opfs_write

Scrive un file nello spazio di lavoro.

ParametroTipoObbligatorioDescrizione
pathstringPercorso del file
contentstringContenuto del file (supporta binario data URL)

opfs_read

Legge un file dallo spazio di lavoro. Per impostazione predefinita, il tipo di file viene rilevato automaticamente: i file di testo restituiscono il loro contenuto, i file binari restituiscono un URL blob.

ParametroTipoObbligatorioDescrizione
pathstringPercorso del file
modestringNo"text" / "blob" / "auto" (predefinito) — forza una modalità di ritorno specifica
offsetnumberNoNumero di riga di inizio (indicizzato da 1), solo modalità testo
limitnumberNoNumero di righe da leggere, solo modalità testo (la paginazione è necessaria una volta che il testo supera 200 righe)

opfs_list

Elenca il contenuto di una directory.

ParametroTipoObbligatorioDescrizione
pathstringNoPercorso della directory (predefinito la directory radice)

opfs_delete

Elimina un file o una directory.

ParametroTipoObbligatorioDescrizione
pathstringPercorso file/directory

Interazione Utente

ask_user

Fa una domanda all'utente, supportando input libero o scelta strutturata.

ParametroTipoObbligatorioDescrizione
questionstringLa domanda
optionsstring[]NoElenco delle opzioni (quando fornito, diventa una domanda a scelta multipla)
multiplebooleanNoSe sono consentite selezioni multiple (predefinito false)

Timeout: restituisce { answer: null, reason: "timeout" } dopo 5 minuti senza risposta.

Valore di ritorno:

{ "answer": "Testo della risposta dell'utente" }

execute_script

Esegue codice JavaScript in una pagina o in un sandbox.

ParametroTipoObbligatorioDescrizione
codestringCodice JavaScript
targetstring"page" o "sandbox"
tab_idnumberNoQuale scheda puntare quando target è page (predefinito la scheda attiva corrente); ignorato per sandbox

Confronto degli ambienti di esecuzione:

AmbienteDOMJS della PaginaURL blob dell'EstensioneIdeale per
target: "page" (sempre mondo MAIN)noLeggere/manipolare il DOM, chiamare funzioni della pagina, leggere variabili della pagina
target: "sandbox"nononoCalcolo puro

La modalità page viene sempre eseguita nel mondo MAIN della pagina, condividendo window con la pagina — quindi non può accedere agli URL blob dell'estensione (ad esempio l'indirizzo che opfs_read restituisce in modalità blob). Usa uno SkillScript quando devi lavorare con un URL blob.

Sub-agenti

agent

Genera un sub-agente indipendente per gestire una sottoattività complessa.

ParametroTipoObbligatorioDescrizione
promptstringDescrizione della sottoattività
descriptionstringNoUn'etichetta breve (qualche parola, per la visualizzazione nell'interfaccia)
typestringNoTipo di sub-agente (vedi sotto), predefinito "general"
tab_idnumberNoID scheda da passare al sub-agente; il sub-agente opererà su quella scheda

Tipi di sub-agente:

tipoDescrizioneStrumenti disponibili
researcherRecupero informazioni (solo lettura)web_search, web_fetch, lettura contenuto pagina
page_operatorAutomazione del browserGestione schede, manipolazione DOM, interazione con la pagina
generalGenerico (predefinito)Tutti gli strumenti

Caratteristiche:

  • Un sub-agente ha il proprio contesto di conversazione indipendente
  • Non può usare ask_user o agent (per prevenire la ricorsione)
  • Gli eventi del sub-agente vengono passati alla conversazione padre tramite sub_agent_event

Gestione Attività

Questo gruppo di strumenti gestisce un elenco temporaneo di attività all'interno di una conversazione (in memoria, non persistito).

create_task

ParametroTipoObbligatorioDescrizione
subjectstringTitolo dell'attività
descriptionstringNoDescrizione dettagliata

update_task

ParametroTipoObbligatorioDescrizione
task_idstringID dell'attività
statusstringNo"pending" / "in_progress" / "completed"
subjectstringNoNuovo titolo
descriptionstringNoNuova descrizione

list_tasks

Nessun parametro; restituisce un elenco breve di tutte le attività.

Gli strumenti di gestione delle attività sono principalmente per l'AI per tracciare il proprio progresso mentre gestisce attività complesse multi-passo; i dati delle attività non vengono persistiti.