Wyszukiwanie narzędzi to eksperymentalna funkcja agenta PI w OpenClaw. Daje agentom PI jeden zwięzły sposób odkrywania i wywoływania dużych katalogów narzędzi. Przydaje się, gdy uruchomienie ma wiele dostępnych narzędzi, ale model prawdopodobnie będzie potrzebował tylko kilku z nich. Ta strona dokumentuje wyszukiwanie narzędzi PI w OpenClaw. Nie jest to natywne dla Codex wyszukiwanie narzędzi ani powierzchnia narzędzi dynamicznych. Natywny dla Codex tryb kodu, wyszukiwanie narzędzi, odroczone narzędzia dynamiczne i zagnieżdżone wywołania narzędzi są stabilnymi powierzchniami harnessu Codex i nie zależą odDocumentation 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.
Po włączeniu dla PI model domyślnie otrzymuje jedno narzędzie tool_search_code.
To narzędzie uruchamia krótki kod JavaScript w izolowanym podprocesie Node z
mostem openclaw.tools:
Jak działa tura
W czasie planowania osadzony runner PI buduje efektywny katalog dla uruchomienia:- Rozwiązuje aktywną politykę narzędzi dla agenta, profilu, sandboxa i sesji.
- Wypisuje kwalifikujące się narzędzia OpenClaw i pluginów.
- Wypisuje kwalifikujące się narzędzia MCP przez runtime MCP sesji.
- Dodaje kwalifikujące się narzędzia klienta dostarczone dla bieżącego uruchomienia.
- Indeksuje zwięzłe deskryptory do wyszukiwania.
- Udostępnia modelowi most kodu PI albo strukturalne narzędzia awaryjne.
openclaw.tools.call(...) przechodzi przez most z powrotem do Gateway, gdzie
nadal obowiązują normalne zasady polityk, zatwierdzania, hooków, logowania i obsługi wyników.
Tryby
tools.toolSearch ma dwa tryby widoczne dla modelu:
code: udostępniatool_search_code, domyślny zwięzły most JavaScript.tools: udostępniatool_search,tool_describeitool_calljako zwykłe narzędzia strukturalne dla providerów, którzy nie powinni otrzymywać kodu.
code przechodzi na tools przed
kompaktowaniem katalogu.
Oba tryby są eksperymentalne. Preferuj bezpośrednie udostępnianie narzędzi dla małych katalogów narzędzi PI
i preferuj natywne stabilne powierzchnie Codex dla uruchomień harnessu Codex.
Nie ma osobnej konfiguracji wyboru źródeł. Gdy wyszukiwanie narzędzi jest włączone,
katalog obejmuje kwalifikujące się narzędzia OpenClaw, MCP i klienta po normalnym
filtrowaniu polityk.
Dlaczego to istnieje
Duże katalogi są przydatne, ale kosztowne. Wysyłanie każdego schematu narzędzia do modelu powiększa żądanie, spowalnia planowanie i zwiększa ryzyko przypadkowego wyboru narzędzia. Wyszukiwanie narzędzi zmienia kształt:- narzędzia bezpośrednie: model widzi każdy wybrany schemat przed pierwszym tokenem
- tryb kodu wyszukiwania narzędzi: model widzi jedno zwięzłe narzędzie kodowe i krótki kontrakt API
- tryb narzędzi wyszukiwania narzędzi: model widzi trzy zwięzłe strukturalne narzędzia awaryjne
- podczas tury: model ładuje tylko schematy narzędzi, których faktycznie potrzebuje
API
openclaw.tools.search(query, options?)
Przeszukuje efektywny katalog dla bieżącego uruchomienia. Wyniki są zwięzłe i bezpieczne
do ponownego umieszczenia w kontekście promptu.
openclaw.tools.describe(id)
Ładuje pełne metadane dla jednego wyniku wyszukiwania, w tym dokładny schemat wejściowy.
openclaw.tools.call(id, args)
Wywołuje wybrane narzędzie przez OpenClaw.
tool_searchtool_describetool_call
Granica runtime
Most kodu działa w krótkotrwałym podprocesie Node. Podproces uruchamia się z włączonym trybem uprawnień Node, pustym środowiskiem, bez uprawnień do systemu plików ani sieci oraz bez uprawnień do podprocesów lub workerów. OpenClaw wymusza limit czasu ściennego w procesie nadrzędnym i zabija podproces po przekroczeniu limitu, także po kontynuacjach async. Runtime udostępnia tylko:console.log,console.warniconsole.erroropenclaw.tools.searchopenclaw.tools.describeopenclaw.tools.call
- polityki zezwalania i odmawiania narzędzi
- ograniczenia narzędzi per agent i per sandbox
- bramkowanie tylko dla właścicieli
- hooki zatwierdzania
- hooki pluginu
before_tool_call - tożsamość sesji, logi i telemetria
Konfiguracja
Włącz wyszukiwanie narzędzi dla uruchomień PI z domyślnym mostem kodu:Prompt i telemetria
Wyszukiwanie narzędzi zapisuje wystarczającą telemetrię, aby porównać je z bezpośrednim udostępnianiem narzędzi:- łączna liczba bajtów zserializowanych narzędzi i promptu wysłanych do harnessu
- rozmiar katalogu i podział według źródeł
- liczba operacji wyszukiwania, opisu i wywołań
- końcowe wywołania narzędzi wykonane przez OpenClaw
- wybrane identyfikatory narzędzi i źródła
- ile schematów narzędzi model zobaczył z góry
- ile operacji wyszukiwania i opisu wykonał
- które końcowe narzędzie zostało wywołane
- czy wynik pochodził z OpenClaw, MCP czy narzędzia klienta
Walidacja E2E
Runner E2E Gateway sprawdza obie ścieżki z harnessuem PI:- Tryb bezpośredni może wywołać narzędzie fałszywego pluginu.
- Wyszukiwanie narzędzi może wywołać to samo narzędzie fałszywego pluginu.
- Tryb bezpośredni udostępnia schematy narzędzi fałszywego pluginu bezpośrednio providerowi.
- Wyszukiwanie narzędzi udostępnia tylko zwięzły most.
- Payload żądania wyszukiwania narzędzi jest mniejszy dla dużego fałszywego katalogu.
- Logi sesji pokazują oczekiwane liczby wywołań narzędzi i telemetrię wywołań przez most.
Zachowanie przy błędach
Wyszukiwanie narzędzi powinno kończyć się bezpiecznie:- jeśli narzędzie nie jest w efektywnej polityce, wyszukiwanie nie powinno go zwrócić
- jeśli wybrane narzędzie stanie się niedostępne,
tool_callpowinno się nie udać - jeśli polityka lub zatwierdzenie blokuje wykonanie, wynik wywołania powinien zgłosić tę blokadę zamiast ją omijać
- jeśli most kodu nie może utworzyć izolowanego runtime, użyj
mode: "tools"albo wyłącz wyszukiwanie narzędzi dla tego wdrożenia