Cycle de vie d'un agent

agents serve et agents deploy créent un agent sur Mistral. agents chat, agents list et agents logs permettent de le tester et de le gérer. agents shutdown le supprime.

Tester l'agent

Tester l'agent

agents chat permet de dialoguer avec un agent depuis le terminal. Sans nom, la commande exécute l'agent du projet courant dans ce processus : rien n'est déployé ni enregistré.

agents chat              # the project's agent, in this process
agents chat hello-agent  # a deployed agent, by name
Talking to hello-agent (session 01a1a89e-c09f-7043-85a7-af2170ff112d). Ctrl+D or /exit to quit.
> What is the weather in Paris?
→ get_weather {"city": "Paris"}
← get_weather done
It's currently **18°C and sunny** in Paris! ☀️

La réponse s'affiche en streaming à mesure que l'agent la rédige, et chaque appel d'outil s'affiche pendant son exécution. Lorsque l'agent utilise permission_mode="ask", la conversation demande votre autorisation avant chaque appel : répondez y pour l'autoriser une seule fois, a pour l'autoriser jusqu'à la fin de la session, ou n pour le refuser. Ctrl+C interrompt le tour de l'agent sans fermer la session. Ctrl+D ou /exit termine la conversation.

Pour envoyer un seul message puis quitter, dans un script ou pour une vérification rapide, utilisez -m :

agents chat hello-agent -m "What is the weather in Paris?"

Pour un agent doté d'outils côté client, utilisez une session dans votre application : agents chat refuse les appels d'outils côté client, et le tour se poursuit sans exécuter l'appel.

Lister vos agents

Lister vos agents

agents list affiche les agents de votre espace de travail, leur mode d'exécution et indique s'ils sont en cours d'exécution :

NAME         KIND      STATUS
hello-agent  deployed  running
draft-agent  served    not observed

not observed signifie que Mistral n'a détecté aucun processus exécutant l'agent : il est arrêté, ou son statut n'a pas pu être lu.

Lire les logs

Lire les logs

agents logs affiche les dernières lignes de log d'un agent exécuté par agents deploy. --follow affiche les nouvelles lignes à mesure qu'elles arrivent :

agents logs hello-agent --follow
Instance created. Preparing to start... [platform]
2026/11/04 20:30:00 env: loaded /mnt/runtime-init/env.json (version 1, 22 env keys, 0 config files)
2026/11/04 20:30:00 env: exec ["agents" "run-worker"]
Instance is healthy [platform]

Les lignes qui se terminent par [platform] proviennent de la plateforme Mistral lors du démarrage de l'agent ; les autres correspondent à ce qu'affiche le conteneur de l'agent.

Les logs d'un agent servi ne sont pas disponibles ici : ils se trouvent dans le terminal qui exécute agents serve. Pour filtrer par niveau, afficher du JSON ou ajouter des horodatages, consultez agents logs.

Mettre à jour un agent déployé

Mettre à jour un agent déployé

Le nom de l'agent est sa référence stable, unique dans chaque espace de travail. Chaque nouveau commit ou nouvelle configuration déployés sous ce nom créent un nouvel agent, avec un nouvel identifiant, et retirent celui qui portait ce nom :

Commande exécutéeNouvel identifiant d'agent ?Sessions ouvertes
agents deploy avec un nouveau commit ou une nouvelle configurationouileur prochain message est traité avec le nouveau code
agents deploy avec le même commit et la même configuration, avec la même version du SDKnoninchangées
agents serve à nouveau avec un nouveau codeouileur prochain message est traité avec le nouveau code
agents serve à nouveau, ou un réplica, avec le même codenoninchangées

agents serve distingue les codes par leur version de code : AGENTS_SDK_CODE_VERSION si vous la définissez, par exemple sur le commit à partir duquel votre image est construite ; sinon, un hash du projet.

Un tour en cours lors du redéploiement peut échouer ou rester Running jusqu'à ce qu'une limite de session y mette fin ; redéployez lorsqu'aucun tour n'est en cours.

Arrêter un agent

Arrêter un agent

L'arrêt libère le nom et empêche les nouvelles sessions d'accéder à l'agent. La suite dépend de son hébergeur :

agents deploy (géré par Mistral)agents serve (auto-hébergé)
Nom libéré✓✓
Nouvelles sessionsrefusésrefusés
Ce qui exécute l'agentsupprimé par Mistralcontinue de s'exécuter
Sessions déjà ouvertesne peuvent plus être pilotéescontinuent de fonctionner
Pour reveniragents deploy à nouveauagents serve à nouveau

Mistral supprime ce qu'il héberge. Votre processus agents serve reste sous votre contrôle : Mistral ne peut pas l'arrêter, et il continue d'attendre des sessions.

agents shutdown hello-agent
Agent hello-agent is shut down. Sessions can no longer reach it.
  Its managed deployment hello-agent was deleted.
  Deploy again to bring the agent back, under a new agent id.
Agent hello-agent is shut down. Sessions can no longer reach it.
  Its worker on agents-sdk-hello-agent is not managed here and may still be running.
  If it is, stop that process yourself. Running `agents serve` again re-registers the name.

:::warning L'arrêt est irréversible Pour revenir en arrière, vous devez déployer ou servir l'agent à nouveau, ce qui crée un nouvel agent avec un nouvel identifiant. La CLI demande confirmation avant d'agir ; utilisez --yes pour ignorer cette demande dans un script. :::

Les sessions déjà ouvertes

Les sessions déjà ouvertes

L'arrêt n'annule rien de ce qui est en cours d'exécution.

Pour les agents Auto-hébergés, votre processus agents serve reste actif ; une session ouverte continue donc de répondre jusqu'à ce que vous arrêtiez le processus.

Pour un agent géré par Mistral, plus rien ne l'exécute. Plutôt que d'accepter des tâches qui ne pourront jamais s'exécuter, Mistral refuse les nouveaux messages sur ces sessions, et le SDK lève agents.SessionTerminatedError :

SessionTerminatedError: Agent session <id> cannot accept commands because agent 'hello-agent' was shut down and its deployment was deleted

Laissez les sessions ouvertes se terminer avant d'arrêter un agent géré par Mistral. Un nouveau déploiement sous le même nom rend ces sessions de nouveau accessibles, avec le nouveau code.

Libérer un nom

Libérer un nom

Les noms sont uniques par espace de travail, donc un serve qui échoue ainsi est généralement bloqué par un agent qu'un agents deploy antérieur a créé :

Cannot serve agent: registration failed at https://api.mistral.ai/v2/agents: the name hello-agent is already bound to another workflow or deployment

Arrêtez cet agent, ou servez sous un nom libre avec --name hello-agent-dev.

Et après

Et après