Logiciel de gestion pour agents IA : comment savoir s’il tient la route
Un CRM IA désignait autrefois un CRM doté d’IA intégrée. Avec des agents comme Claude Code, Codex et Cursor, le terme désigne de plus en plus un logiciel de gestion que votre propre agent peut piloter : clients, commandes, factures et paiements. Une question se pose alors avant toute autre : peut-il le faire en sécurité ? En juillet 2025, l’agent IA du service de développement Replit a supprimé la base de données de production d’un utilisateur pendant un gel du code explicite. Il a ensuite affirmé qu’une restauration était impossible, alors qu’une sauvegarde existait. Replit a réagi en séparant automatiquement les bases de développement et de production (heise online, 25 juil. 2025). La leçon : une consigne dans un prompt n’est pas un verrou. Qu’un agent puisse causer des dégâts dépend du logiciel qu’il pilote. Dans un logiciel de gestion, une erreur ne reste pas dans le code, elle atteint votre client. Les huit critères ci-dessous valent pour tout logiciel que vous confiez à un agent. À la fin, vous voyez comment Time Momentum traite chacun d’eux.
1. Une interface que l’agent peut lire
Un agent qui clique dans des écrans ou extrait du HTML devine. Vérifiez qu’il existe une ligne de commande ou une API qui renvoie du JSON et expose son propre schéma : quelles commandes existent, quels champs sont obligatoires, quelles valeurs sont admises. Les erreurs doivent aussi être lisibles par une machine, avec un code qui indique à l’agent s’il doit corriger l’appel, attendre ou vous demander.
Vérifiez aussi la couverture. Ce qui ne fonctionne que dans l’interface, l’agent le fait par un détour ou pas du tout.
2. Des droits séparés
L’agent a besoin de sa propre clé, révocable à tout moment, pas de votre mot de passe. Mieux encore si la clé est échangée contre un jeton de courte durée au lieu de voyager avec chaque requête.
Certaines actions n’ont rien à faire entre les mains d’un agent : créer de nouvelles clés, supprimer le compte, changer le mot de passe. Le logiciel doit les bloquer côté serveur pour l’accès agent, pas seulement les déconseiller dans la documentation.
3. Une confirmation pour tout ce qui est irréversible
Une facture émise ne se reprend pas, elle s’annule. Le logiciel doit marquer ces étapes comme destructives et ne les exécuter qu’avec une confirmation explicite. Cette confirmation doit se trouver dans l’outil lui-même ; chez Replit, une phrase dans le prompt n’a pas protégé la base de données.
4. Simulation
Avant de modifier quoi que ce soit d’important, l’agent doit pouvoir vous montrer exactement ce qu’il enverrait : méthode, adresse, corps de la requête. Vous approuvez alors ce que vous avez vu plutôt qu’une intention formulée en mots.
5. Idempotence
Les agents réessaient. Si la connexion tombe, l’agent recommence, et sans protection la saisie de temps ou le paiement se retrouve deux fois dans le système. Vérifiez si la création d’un enregistrement accepte un identifiant de votre choix qui permet au serveur de reconnaître une nouvelle tentative, et si les opérations groupées réussissent entièrement ou pas du tout. Là où une étape ne doit pas être répétée, l’erreur doit le dire.
6. Des traces exploitables
Après coup, vous voulez savoir ce qui s’est passé. Cela suppose que chaque action soit une commande lisible que vous pouvez exécuter vous-même, que les requêtes puissent être journalisées à la demande sans exposer la clé, et que vous voyiez quelle clé était active et quand. Une clé par agent rend cela sans ambiguïté.
7. Retour en arrière
Les erreurs arrivent. Ce qui compte, c’est la façon de les corriger : modifier ou supprimer des brouillons, corriger des écritures, annuler ce qui a été émis, avec une pièce plutôt qu’un écrasement silencieux. Ce qui est déjà facturé doit être verrouillé, pour qu’une correction à un endroit ne modifie pas une facture terminée.
8. Limites de l’offre
Quand l’agent atteint une limite, comme une fonction hors de votre offre ou trop de requêtes, le logiciel doit le dire clairement : avec une raison, et en précisant si attendre suffit ou si vous devez décider. Un agent qui prend une limite pour une erreur continue de réessayer ou cherche un contournement.
Les huit critères dans Time Momentum
Votre agent pilote Time Momentum via la ligne de commande tm.
- Quelles commandes existent, lesquelles sont destructives ?
tm --json - Quels champs une facture accepte-t-elle ?
tm schema invoices --json - Montre-moi la requête avant de l’émettre
tm invoices finalize <invoice-id> --dry-run - C’est bon, émets-la
tm invoices finalize <invoice-id> --yes - Saisis les 90 minutes de ce matin
tm timers add --project-id <project-id> --started-at "today 09:00" --duration 1:30 --client-id <uuid> - Annule la facture
tm invoices cancel <invoice-id> --reason "Wrong service period" --yes - Quelle clé a été active en dernier ?
tm api-keys list
L’accès des agents fait partie de Pro.
| Critère | Dans Time Momentum |
|---|---|
| 1. Interface | Chaque opération de l’API a exactement une commande tm, et un test le vérifie à chaque modification. Sorties et erreurs en JSON, tm schema liste commandes et champs, et le code de sortie indique à l’agent s’il doit corriger l’appel, vous demander, attendre ou réessayer. |
| 2. Droits séparés | Une clé API par agent, créée dans l’application web et révocable à tout moment. tm l’échange contre un jeton valable une heure ; révoquer la clé met fin à la session immédiatement. Créer des clés et supprimer le compte sont bloqués côté serveur pour cet accès. Une clé de lecture n’atteint que certaines routes de lecture et les minuteurs. |
| 3. Confirmation | Émettre, annuler, supprimer et révoquer sont marqués comme destructifs. Dans un terminal, tm demande ; un agent a besoin d’un --yes explicite, sinon tm s’arrête sans rien envoyer. Le serveur refuse une facture électronique à laquelle manquent des mentions obligatoires, et elle reste un brouillon. |
| 4. Simulation | --dry-run montre la méthode, l’adresse et le corps de la requête sans l’envoyer et sans la clé. |
| 5. Idempotence | Les saisies de temps acceptent un identifiant de votre choix (--client-id), si bien que les nouvelles tentatives ne créent pas de doublons. Un paiement groupé sur plusieurs factures réussit entièrement ou pas du tout. Si la création d’une facture échoue après l’existence du brouillon, l’erreur nomme le brouillon à reprendre. |
| 6. Traces | Chaque action est une commande lisible que vous pouvez exécuter vous-même. --verbose journalise chaque requête, jamais la clé ni le jeton. La liste des clés indique quand chacune a été utilisée pour la dernière fois. Il n’existe pas de journal d’activité séparé par agent. |
| 7. Retour en arrière | Les brouillons se modifient et se suppriment, les paiements se corrigent ou se retirent. Par défaut, une facture émise ne peut qu’être annulée, avec sa propre pièce d’annulation. Le temps figurant sur des factures émises et des rapports d’activité figés est verrouillé. |
| 8. Limites de l’offre | Une fonction Pro sans Pro renvoie upgrade_required en nommant la fonction, trop de requêtes renvoient rate_limited avec un temps d’attente. Le code de sortie indique à l’agent s’il doit vous demander ou attendre. |
Ce qu’aucun logiciel ne fait à votre place
Donnez à chaque agent sa propre clé avec aussi peu de droits que nécessaire, une clé de lecture là où lire suffit. N’autorisez l’irréversible que lorsque vous le demandez, et regardez la simulation avant d’approuver. L’accès des agents à Time Momentum fait partie de Pro.
Pour aller plus loin
Le meilleur CRM pour agents IA
Ce qu’on entend par CRM pour agents IA, et où se situent les grands CRM et Time Momentum.
Lire le guideMCP ou CLI pour les agents IA
Pourquoi une ligne de commande convient souvent mieux aux agents qu’un serveur MCP.
Lire le guide
Questions fréquentes
Qu’est-ce qu’un CRM IA ?
Soit un CRM doté de fonctions IA intégrées, comme des e-mails pré-rédigés ou le scoring de leads, soit un CRM que votre propre agent IA peut piloter via une API, un serveur MCP ou une ligne de commande. Ce guide traite du second type.
Pourquoi l’agent de Replit a-t-il supprimé la base de données ?
Selon les comptes rendus, il a lancé la commande de base de données npm run db:push pendant un gel du code, sans autorisation. À l’époque, préversion, tests et production partageaient la même base (heise online). La consigne de ne rien modifier n’existait que dans la conversation, pas dans le logiciel.
Suffit-il de dire à l’agent de ne rien supprimer ?
Non. Un prompt est une demande, pas un verrou. Seules les limites imposées par le serveur vous protègent : droits manquants, confirmation obligatoire, données facturées verrouillées.
Que se passe-t-il si mon agent se trompe dans Time Momentum ?
Vous modifiez ou supprimez les brouillons, corrigez les paiements et annulez une facture émise avec sa propre pièce d’annulation. Le temps facturé reste verrouillé en permanence.
Laissez votre agent facturer en sécurité
- 30 jours de Pro
- Sans carte bancaire
- Ensuite, vous continuez avec Free