Quel est l'objectif principal de l'intégration des outils avec Claude ?	Permettre à Claude d'utiliser plusieurs outils différents pour répondre à une requête complexe.
Que doit faire l'application lorsque Claude répond avec un bloc d'utilisation d'outil ?	Exécuter l'outil correspondant, puis renvoyer le résultat à Claude.
Quel mécanisme doit être mis en place pour gérer les appels d'outils successifs ?	Une fonction (comme `runConversation`) utilisant une boucle `while` pour itérer les réponses.
Pourquoi les fonctions `add user message` et `add assistant message` ont-elles été refactorées ?	Pour pouvoir gérer des messages contenant plusieurs blocs (y compris des blocs d'outils), et non plus seulement du texte simple.
Que doit retourner la fonction `chat` après la mise à jour pour supporter les outils ?	Le message complet reçu de Claude, y compris tous ses blocs de contenu.
Quel est le rôle de la nouvelle fonction `text from message` ?	Extraire et joindre tout le texte contenu dans les différents blocs d'un message.
Que doit vérifier l'application dans la réponse de Claude pour déterminer la fin d'une conversation ?	Si Claude ne demande plus l'utilisation d'un outil.
