Exemples
Les exemples sont des programmes complets qui accomplissent une tâche concrète : exécutez-les tels quels, puis adaptez-les. Les guides pratiques sont plus courts. Chacun présente une approche que vous pouvez reprendre dans votre propre programme.
À découvrir
Une version minimale de Mistral Vibe en environ 350 lignes. Saisissez une tâche dans votre dépôt ; l'agent modifie les fichiers, exécute les commandes en lecture seule et demande votre autorisation pour les autres. Vous pouvez saisir une instruction en cours d'exécution pour le réorienter. Un onglet du navigateur affiche la même session et permet aussi de répondre à ses demandes d'autorisation.

Un agent par issue ouverte d'un dépôt réel, soit 300 au total, qui communiquent uniquement par un tableau de messages avec deux outils. Ils résument leurs issues, repèrent les doublons, puis un rédacteur écrit le rapport. Vous suivez le tableau en direct, sur votre machine ou sur Mistral Apps.

Le système de surveillance d'une banque signale un paiement. Un agent consulte de manière autonome l'alerte, l'historique du compte, le profil KYC, les listes de sanctions et les informations défavorables dans les médias, puis attend l'intervention d'un analyste avant d'ouvrir un dossier. L'analyste pose ensuite des questions complémentaires dans la même session.
Waiting for an analyst: Allow tools.client.open_case?
summary: Boulangerie Martin SARL (a low-risk retail bakery in Lyon) initiated a 48,500.00 EUR transfer to a first-time foreign beneficiary, Northwind Trading FZE, in the UAE (high-risk jurisdiction). [...]
Review: Completed: The case file has been opened successfully. [...]
Case files: ['CASE-4711']Exemples
| Exemple | Ce qu'il fait |
|---|---|
| Mini Vibe | Un agent de codage dans votre terminal et un onglet du navigateur, avec des demandes d'autorisation et la possibilité de le réorienter |
| Essaim | 300 agents trient les issues ouvertes d'un dépôt sur un tableau de messages commun, adossé à Postgres |
| Analyse d'un paiement suspect | Un agent examine une alerte de surveillance et attend l'intervention d'un analyste avant d'ouvrir un dossier |
| Majordome | Un assistant personnel sur Telegram ou dans votre terminal qui consulte de manière autonome vos e-mails et votre calendrier, et n'écrit que lorsque vous appuyez pour l'autoriser |
| Agent de relecture de PR dans la CI | Une relecture typée pour chaque diff, et une politique qui réserve une approbation à une personne |
| Agent de nettoyage d'un dépôt privé | Un agent de codage qui travaille dans un seul dépôt GitHub privé et ouvre une pull request |
| Bot de tri des retours sur Slack | Un thread Slack conservé dans une seule session, avec Linear via son serveur MCP |
| Bot météo sur Telegram | Un agent déployé accessible via un bot Telegram |
| Recherche de voitures d'occasion | Un appel par annonce, une sortie structurée et des vérifications dans le code |
Guides pratiques
| Guide pratique | L'approche |
|---|---|
| Valider une sortie structurée | Un hook qui vérifie la réponse finale et demande à l'agent de la corriger |
| Plusieurs clients pour une même session | Des vues en direct d'une même session qui tentent de répondre en premier à une demande d'autorisation |
| Une politique d'autorisation pour tous les sous-agents | Une politique définie sur la session de l'agent principal qui répond aux demandes d'autorisation de ses sous-agents |
| Protection des données privées | Un hook avec état qui refuse la recherche sur le Web dès que l'agent a lu des données privées |
| Arrêter un agent qui se répète | Un hook avec état qui bloque un outil après deux appels dans un tour, puis termine le tour |
| Progression en direct | Un hook qui transmet chaque étape terminée à une barre de progression dans votre application |
| Une clé partagée pour un connecteur | Un connecteur qui utilise une seule clé API stockée pour l'espace de travail |
| Arrêter un tour et y répondre par son identifiant | Une mise à niveau de dépendance dans un notebook : une attente interrompue, le même tour retrouvé en réexécutant une cellule, et la modification approuvée depuis un autre noyau avec uniquement ses identifiants |
| Bot Slack : une session par thread | Un bot qui associe chaque thread à sa session par identifiant et reprend à partir d'un curseur enregistré après un redémarrage |
Exécuter un exemple
Chaque exemple est un programme que vous pouvez exécuter tel quel. Installez le SDK une seule fois, puis suivez la ligne Exécuter en haut de chaque page.
Vous avez besoin de :
-
Le SDK pour les agents, installé comme l'explique le guide de démarrage.
-
Une clé API Mistral dans
MISTRAL_API_KEY:export MISTRAL_API_KEY=...
Un exemple à fichier unique présente l'intégralité du programme sur sa page. Rassemblez, dans l'ordre et dans un seul fichier, les blocs de code dont le titre correspond au nom de fichier indiqué à la ligne Exécuter, puis exécutez-le :
python pr_reviewer.pyLe test présenté sur une page utilise un modèle au comportement scripté et ne nécessite donc aucune clé API. Placez-le dans un fichier à côté du
programme, puis exécutez-le après avoir installé pytest et pytest-asyncio :
pytest -o asyncio_mode=auto test_pr_reviewer.pyUn exemple de projet, comme Mini Vibe ou le bot de tri des retours sur Slack, comporte plusieurs fichiers et son propre
pyproject.toml. Sa page répertorie les fichiers et fournit les commandes à exécuter depuis le dossier
indiqué à la ligne Exécuter.