La Ricerca strumenti è una funzionalità sperimentale per agenti PI di OpenClaw. Offre agli agenti PI un modo compatto per scoprire e chiamare cataloghi di strumenti di grandi dimensioni. È utile quando l’esecuzione ha molti strumenti disponibili, ma è probabile che il modello ne abbia bisogno solo di pochi. Questa pagina documenta la Ricerca strumenti PI di OpenClaw. Non è la superficie di ricerca strumenti o strumenti dinamici nativa di Codex. La modalità codice nativa di Codex, la ricerca strumenti, gli strumenti dinamici differiti e le chiamate di strumenti annidate sono superfici stabili dell’harness Codex e non dipendono daDocumentation Index
Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
tools.toolSearch.
Quando è abilitata per PI, il modello riceve per impostazione predefinita uno strumento tool_search_code.
Questo strumento esegue un breve corpo JavaScript in un subprocesso Node isolato con un
bridge openclaw.tools:
Come viene eseguito un turno
In fase di pianificazione il runner PI incorporato costruisce il catalogo effettivo per l’esecuzione:- Risolve la policy strumenti attiva per l’agente, il profilo, la sandbox e la sessione.
- Elenca gli strumenti OpenClaw e plugin idonei.
- Elenca gli strumenti MCP idonei tramite il runtime MCP della sessione.
- Aggiunge gli strumenti client idonei forniti per l’esecuzione corrente.
- Indicizza descrittori compatti per la ricerca.
- Espone al modello il bridge di codice PI oppure gli strumenti di fallback strutturati.
openclaw.tools.call(...) attraversa il bridge e torna nel Gateway, dove continuano ad
applicarsi la normale policy, le approvazioni, gli hook, il logging e la gestione dei risultati.
Modalità
tools.toolSearch ha due modalità visibili al modello:
code: esponetool_search_code, il bridge JavaScript compatto predefinito.tools: esponetool_search,tool_describeetool_callcome semplici strumenti strutturati per provider che non dovrebbero ricevere codice.
code ripiega su tools prima della
compattazione del catalogo.
Entrambe le modalità sono sperimentali. Preferisci l’esposizione diretta degli strumenti per piccoli
cataloghi di strumenti PI, e preferisci le superfici stabili native di Codex per le esecuzioni dell’harness Codex.
Non esiste una configurazione separata per la selezione delle sorgenti. Quando la Ricerca strumenti è abilitata, il
catalogo include gli strumenti OpenClaw, MCP e client idonei dopo il normale filtro delle policy.
Perché esiste
I cataloghi grandi sono utili ma costosi. Inviare ogni schema di strumento al modello rende la richiesta più grande, rallenta la pianificazione e aumenta la selezione accidentale degli strumenti. La Ricerca strumenti cambia la forma:- strumenti diretti: il modello vede ogni schema selezionato prima del primo token
- modalità codice della Ricerca strumenti: il modello vede uno strumento di codice compatto e un breve contratto API
- modalità strumenti della Ricerca strumenti: il modello vede tre strumenti di fallback strutturati compatti
- durante il turno: il modello carica solo gli schemi degli strumenti di cui ha effettivamente bisogno
API
openclaw.tools.search(query, options?)
Cerca nel catalogo effettivo per l’esecuzione corrente. I risultati sono compatti e sicuri
da reinserire nel contesto del prompt.
openclaw.tools.describe(id)
Carica i metadati completi per un risultato di ricerca, incluso lo schema di input esatto.
openclaw.tools.call(id, args)
Chiama uno strumento selezionato tramite OpenClaw.
tool_searchtool_describetool_call
Confine di runtime
Il bridge di codice viene eseguito in un subprocesso Node di breve durata. Il subprocesso si avvia con la modalità permessi di Node abilitata, un ambiente vuoto, nessuna autorizzazione per filesystem o rete e nessuna autorizzazione per processi figli o worker. OpenClaw impone un timeout wall-clock nel processo padre e termina il subprocesso allo scadere del timeout, incluse le continuazioni asincrone successive. Il runtime espone solo:console.log,console.warneconsole.erroropenclaw.tools.searchopenclaw.tools.describeopenclaw.tools.call
- policy di autorizzazione e negazione degli strumenti
- restrizioni sugli strumenti per agente e per sandbox
- gating solo per proprietario
- hook di approvazione
- hook
before_tool_calldel plugin - identità di sessione, log e telemetria
Configurazione
Abilita la Ricerca strumenti per le esecuzioni PI con il bridge di codice predefinito:Prompt e telemetria
La Ricerca strumenti registra telemetria sufficiente per confrontarla con l’esposizione diretta degli strumenti:- byte totali serializzati di strumenti e prompt inviati all’harness
- dimensione del catalogo e suddivisione per sorgente
- conteggi di ricerca, descrizione e chiamata
- chiamate finali agli strumenti eseguite tramite OpenClaw
- id e sorgenti degli strumenti selezionati
- quanti schemi di strumenti il modello ha visto in anticipo
- quante operazioni di ricerca e descrizione ha eseguito
- quale strumento finale è stato chiamato
- se il risultato proveniva da OpenClaw, MCP o da uno strumento client
Validazione E2E
Il runner E2E del Gateway dimostra entrambi i percorsi con l’harness PI:- La modalità diretta può chiamare lo strumento del finto plugin.
- La Ricerca strumenti può chiamare lo stesso strumento del finto plugin.
- La modalità diretta espone gli schemi degli strumenti del finto plugin direttamente al provider.
- La Ricerca strumenti espone solo il bridge compatto.
- Il payload della richiesta della Ricerca strumenti è più piccolo per il grande catalogo finto.
- I log di sessione mostrano i conteggi attesi delle chiamate agli strumenti e la telemetria delle chiamate con bridge.
Comportamento in caso di errore
La Ricerca strumenti dovrebbe fallire in modo chiuso:- se uno strumento non è nella policy effettiva, la ricerca non dovrebbe restituirlo
- se uno strumento selezionato diventa non disponibile,
tool_calldovrebbe fallire - se la policy o l’approvazione blocca l’esecuzione, il risultato della chiamata dovrebbe riportare quel blocco invece di aggirarlo
- se il bridge di codice non può creare un runtime isolato, usa
mode: "tools"oppure disabilita la Ricerca strumenti per quel deployment