Clienttools
Clienttools stellen je assistent in staat functies aan de clientzijde uit te voeren. Anders dan webhooktools kunnen clienttools de assistent acties laten uitvoeren, zoals browserevents activeren, functies aan de clientzijde uitvoeren of meldingen naar een UI sturen.
Overzicht
Applicaties kunnen vereisen dat assistenten rechtstreeks met de omgeving van de gebruiker communiceren. Tools aan de clientzijde geven je assistent de mogelijkheid om bewerkingen aan de clientzijde uit te voeren.
Hier zijn enkele voorbeelden waarbij clienttools nuttig kunnen zijn:
- UI-events activeren: Laat een assistent browserevents activeren, zoals waarschuwingen, modals of meldingen.
- Interactie met de DOM: Laat een assistent het Document Object Model (DOM) aanpassen voor dynamische contentupdates of om gebruikers door complexe interfaces te begeleiden.
Gebruik webhook- tools om API’s aan de serverzijde aan te roepen.
Handleiding
Vereisten
- Een ElevenLabs-account
- Een geconfigureerde ElevenLabs conversatieagent (maak er hier een)
Een nieuwe tool aan de clientzijde maken
Configureer een clienttool met de naam logMessage en een verplichte stringparameter message (“Het bericht dat naar de console moet worden gelogd”).
Toevoegen via het dashboard
Toevoegen via de CLI
Toevoegen via de API
Ga naar het dashboard van je agent. Klik in het gedeelte Tools op Add Tool. Zorg dat Tool Type is ingesteld op Client. Configureer vervolgens het volgende:
Maak vervolgens een nieuwe parameter message met de volgende configuratie:

De clienttool in je code registreren
Anders dan webhooktools moeten clienttools in je code worden geregistreerd.
Gebruik de volgende code om de clienttool te registreren:
De namen van de tool en parameters in de agentconfiguratie zijn hoofdlettergevoelig en moeten overeenkomen met de namen die in je code zijn geregistreerd.
Testen
Start een gesprek met je agent en zeg bijvoorbeeld:
Log een bericht in de console met de tekst Hello World
Je zou een Hello World-log in je console moeten zien verschijnen.
Volgende stappen
Nu je een basis-event aan de clientzijde hebt ingesteld, kun je:
- Complexere clienttools verkennen, zoals modals openen, naar pagina’s navigeren of interactie met de DOM.
- Clienttools combineren met webhooks aan de serverzijde voor full-stackinteracties.
- Clienttools gebruiken om gebruikersbetrokkenheid te vergroten en tijdens gesprekken realtime feedback te geven.
Resultaten van clienttools doorgeven aan de gesprekscontext
Wanneer je wilt dat je agent gegevens van een clienttool terugkrijgt, zorg er dan voor dat je in de toolconfiguratie de optie Wait for response aanvinkt.

Zodra de clienttool is toegevoegd, wacht de agent bij het aanroepen van de functie op de reactie en voegt deze toe aan de gesprekscontext.
In dit voorbeeld wordt de functie uitgevoerd op de client wanneer de agent getCustomerDetails aanroept. De agent ontvangt de geretourneerde gegevens, die vervolgens worden gebruikt als onderdeel van de gesprekscontext. De waarden uit de reactie kunnen optioneel ook worden toegewezen aan dynamische variabelen, vergelijkbaar met webhooktools. Let op: systeemtools kunnen dynamische variabelen niet bijwerken.
Problemen oplossen
Tools worden niet geactiveerd
- Zorg dat de namen van de tool en parameters in de agentconfiguratie overeenkomen met de namen die in je code zijn geregistreerd.
- Bekijk het gesprekstranscript in het agentdashboard om te controleren of de tool wordt uitgevoerd.
Consolefouten
- Open de browserconsole om op fouten te controleren.
- Zorg dat je code de nodige foutafhandeling bevat voor ongedefinieerde of onverwachte parameters.
Best practices
Geef tools intuïtieve namen met gedetailleerde beschrijvingen
Als je merkt dat de assistent niet de juiste tools aanroept, moet je mogelijk de toolnamen en beschrijvingen bijwerken zodat de assistent duidelijker begrijpt wanneer elke tool moet worden geselecteerd. Gebruik geen afkortingen of acroniemen om tool- en argumentnamen in te korten.
Je kunt ook gedetailleerd beschrijven wanneer een tool moet worden aangeroepen. Bij complexe tools moet je beschrijvingen voor elk argument opnemen, zodat de assistent weet welke informatie hij aan de gebruiker moet vragen om dat argument te verzamelen.
Geef toolparameters intuïtieve namen met gedetailleerde beschrijvingen
Gebruik duidelijke en beschrijvende namen voor toolparameters. Geef indien van toepassing in de beschrijving de verwachte indeling voor een parameter op (bijvoorbeeld YYYY-mm-dd of dd/mm/yy voor een datum).
Overweeg om in de systeemprompt van je assistent aanvullende informatie te geven over hoe en wanneer tools moeten worden aangeroepen
Duidelijke instructies in je systeemprompt kunnen de nauwkeurigheid van toolaanroepen door de assistent aanzienlijk verbeteren. Geef de assistent bijvoorbeeld instructies zoals de volgende:
Geef context voor complexe scenario’s. Bijvoorbeeld:
LLM-selectie
Bij het gebruik van tools raden we aan om modellen met hoge intelligentie te kiezen, zoals GPT 6 of Claude Sonnet 5.5.
Het is belangrijk om te weten dat de keuze van LLM bepalend is voor het succes van functieaanroepen. Sommige LLM’s kunnen moeite hebben met het extraheren van de relevante parameters uit het gesprek.