· Matthieu Rousseaux · think2lab · 7 min read
Les instructions pour Agentforce : retour d’expérience et nos bonnes pratiques
Ce que nos travaux sur Agentforce nous ont appris ? Des instructions pour tout et partout. Découvrez nos enseignements et nos choix pour garantir une efficacité sur le long terme.

Les instructions : les rouages des agents IA
Les instructions sont l’élément critique pour que l’agent réponde correctement au cas d’usage ou au problème qu’il doit résoudre. Elle donne le quoi et le comment interagir avec les interlocutrices et interlocuteurs, ainsi que le quoi et le comment activer les différentes actions et données à sa disposition.
L’Agentforce (default) s’appuie sur plusieurs actions standards (visibles par l’utilisateur ou non) qui ne sont disponibles que pour lui, dommage. Cet article, visant à guider les utilisateurs vers la création la plus large possible, se focalise sur notre expérience de l’implémentation d’un service agent. Il reste néanmoins valable pour l’Agentforce (default).
Les instructions se situent sur 3 niveaux dans l’agent et peuvent être écrites à 4 étapes distinctes lors de sa création :
- Agent
- Topic
- Action
- Fonctionnalité
Des approches différentes peuvent donc être mises en place, d’autant plus qu’une instruction peut bien fonctionner qu’elle soit au niveau du topic ou de l’action. Cette flexibilité comporte néanmoins le risque de disperser les instructions, ce qui peut vite devenir un cauchemar pour les évolutions futures. Le défi consiste à structurer le périmètre et le rôle des instructions à chaque niveau et étape. Voici la nomenclature que nous utilisons chez Think2.
Agent
L’agent est ce qui encapsule les topics. Les canaux de communication sont définis à ce niveau et c’est donc à ce niveau que l’on décide qui peut accéder à cet agent et où.
Ce niveau, hormis quelques champs de contexte, est principalement une couche d’administration afin de séparer les processus vis-à-vis des personnes pouvant y accéder.
On y retrouve le rôle de l’agent et l’entreprise. Les deux donnent du contexte au moteur de raisonnement sur la personnalité que l’on souhaite donner à l’agent et sur l’entreprise pour laquelle il va devoir agir.
Topic
Les topics sont les cas d’usage, processus, ou jobs-to-be-done de l’agent. Ils regroupent les actions qui, réalisées en fonction des demandes utilisateurs, vont répondre à l’objectif. Les instructions sont découpées ici en trois types :
La classification sert au moteur de raisonnement d’Agentforce pour identifier le bon topic à activer en fonction de la demande de l’utilisateur. Il est donc crucial de s’assurer que les classifications de chacun des topics soient bien distinctes. Il est tout à fait normal de créer les topics un par un; il est donc important de réitérer sur la classification de chaque topic lorsque l’agent est complet ou bien en cas d’ajout d’un nouveau.
Retour d’expérience :
Nous recommandons de ne mettre aucune phrase négative dans le champ classification, pour appuyer encore plus sur la distinction syntaxique entre les classifications de chaque topic :
Topic 1 - Topic for password reset
Topic 2 - Do not perform password reset
→ Confusion possible due à la présence des mêmes mots.
Le scope ou périmètre n’est pas une surprise : il définit ce que l’agent est capable de réaliser à l’intérieur de ce topic. Ce champ ne sera lu qu’une fois le topic sélectionné, d’où l’importance de la classification. Le scope sert donc de garde-fou, mais s’il n’est pas recommandé d’une manière générale d’ajouter des négations dans les instructions, il est possible d’en ajouter dans cette partie.
Notre choix s’est porté sur une liste à puces des différents processus gérés dans le topic.
Les instructions décrivent comment utiliser les actions pour répondre efficacement aux demandes, et donc tout ce qui peut aider l’agent à faire les bons choix est à mettre à ce niveau. Ces instructions étant au-dessus des actions, nous avons fait le choix de les concentrer principalement sur leur orchestration :
- If the user asks … then use the action …
- First use the action 1 and then the action 2
- Always ask for confirmation from the user before using the action…
Action
Les actions lient les fonctionnalités de votre instance Salesforce et les topics de l’agent. Il est impossible de rendre disponible une fonctionnalité à un agent sans créer une action.
Le contenu de l’action reprend toutes les instructions définies au niveau de la fonctionnalité : inputs, outputs, générales. Notre choix est d’éviter de modifier les instructions des inputs et outputs au niveau des actions. Si une précision vous semble nécessaire, il y a de fortes chances qu’elle soit pertinente pour la fonctionnalité.
Retour d’expérience:
Actuellement, la création ou suppression d’un input ou output d’une fonctionnalité requiert la création d’une nouvelle action (et donc rend l’action précédente obsolète). Les instructions de la fonctionnalité ne servent que de pré-remplissage. C’est une raison de plus de s’appuyer au maximum sur les instructions de fonctionnalités pour ne pas avoir à les recopier de l’action obsolète à la nouvelle…
Si le fonctionnement est le même pour les instructions globales de l’action, nous avons fait le choix de les utiliser, afin d’y insérer des instructions métiers propres à la fonctionnalité. En effet, au niveau de l’action, nous sommes déjà dans l’optique de répondre au cas d’usage, et il y a donc des règles propres à la résolution du problème par l’agent qui sont inhérentes à l’action uniquement.
Exemples : comment l’utiliser, quels champs deviennent obligatoires pour ce besoin, quelles valeurs utiliser dans ce cas précis (limiter le choix dans les valeurs de picklist), valeur par défaut, etc.
Le besoin de plus de précisions au niveau de l’action (et donc de l’utilisation de la fonctionnalité) dans le cadre du processus est une exception qui nous semble justifier une modification des instructions à ce niveau. Il est possible de créer plusieurs actions s’appuyant sur une seule fonctionnalité et donc d’allier précision fonctionnelle et fonctionnalité généraliste.
Notre conseil reste de l’éviter au maximum pour ne pas s’y perdre plus tard et rendre la maintenance difficile.
Fonctionnalité
L’agent doit pouvoir réaliser des tâches, lire des données, modifier des enregistrements ou déclencher des automatismes. Pour ce faire, il faut donc disposer d’une bibliothèque de Flow, Invocable Method, API et Prompt. Ils définissent le niveau le plus technique, et nous avons choisi d’aligner les instructions sur des descriptions techniques.
Notre choix est de concentrer les instructions de fonctionnalités sur le format des champs, les valeurs de picklists, la longueur, etc.
Retours d’expérience:
Dans le cadre d’un Flow, les inputs de type picklist et multi-picklist ne sont pas gérés au niveau des actions et doivent être remplacés par des variables texte. Nous avons observé une nette amélioration dans l’utilisation de l’action par l’agent décrivant les valeurs disponibles et, si nécessaire, leur ordre au niveau de l’instructions d’input.
De la même manière, même si elles sont techniquement gérées, l’agent a plus de difficultés avec les variables record ou collection des Flow. Nous recommendons donc d’utiliser uniquement des variables simples : Texte, Date et Numérique.
Ces conseils valent aussi pour les API et Invocable Method, même s’il est plus sûr de « nettoyer » les inputs directement dans le code lui-même.
Les instructions pour les outputs peuvent rester plus simples, car elles sont bien gérées en l’état par l’agent.
Les Prompts sont un cas particulier. Les inputs, même de type record, sont très bien gérés, et un Prompt est capable d’intégrer d’autres fonctionnalités. Ils s’appuient sur les « grands » modèles (donc plus gourmands) fournis par OpenAI, Gemini, etc., comparé au modèle optimisé utilisé par Agentforce. Les instructions vont donc se concentrer sur la génération du texte de sortie. Elles doivent être nombreuses et précises afin de formater le style, le contenu, la forme… L’output étant un format non structuré et même créatif, il est logique d’avoir besoin de plus de règles pour atteindre le résultat souhaité.
Conclusion
Structurer les instructions dans Agentforce est un exercice d’équilibre entre flexibilité et maintenabilité. Elles sont l’ingrédient au cœur du fonctionnement de chaque élément qui composent la solution Agentforce. Mettre en place des pratiques stables dans les équipes et donc crucial pour la bonne évolution de vos agents. D’autant plus qu’elles devraient encore prendre plus de place avec le multi-agent, à comprendre multi-topic à notre avis.