ask_user
Quand un agent a besoin d’une décision de votre part, il la demande avec une carte de question : la question, un bouton par choix, et de la place pour une réponse en texte libre. Vous répondez d’un seul appui, depuis n’importe quel appareil, et l’agent continue avec votre réponse.
Derrière la carte se trouve un outil que l’agent appelle. Lequel dépend du
fournisseur : certains apportent leur propre outil de question, dont OAR fait
une carte ; pour les autres, OAR en fournit un appelé ask_. C’est le seul
outil d’agent pour lequel les fournisseurs diffèrent par plus que le nom.
Ce que vous voyez #
- Une carte dans la conversation avec la question et ses choix. Un choix répond d’un seul clic.
- Une question qui accepte plusieurs réponses affiche des cases à cocher et un seul bouton Reply with selection (Répondre avec la sélection). La réponse liste chaque choix coché, plus tout ce que vous avez tapé.
- Une demande de plusieurs valeurs à la fois s’affiche sous forme de formulaire, avec un champ par valeur.
- Une notification push, si vous les avez activées pour les questions.
- Le turn attend tant que la carte est ouverte. Un turn qui attend sur une carte n’est jamais considéré comme bloqué.
Par fournisseur #
| Fournisseur | L’outil derrière la carte | Plusieurs réponses | Plusieurs questions en un appel |
|---|---|---|---|
| Claude, Claude Cloud | le propre Ask de Claude |
oui | oui, une carte après l’autre |
| DeepSeek Ajouté en 0.9.17 | le Ask de Claude Code, comme sur Claude |
oui | oui, une carte après l’autre |
| GitHub Copilot et OpenAI, moteur SDK | le ask_ d’OAR, à la place de l’outil intégré |
oui, avec multi_ Ajouté en 0.9.3, ou quand la question dit « select all that apply » |
non |
| GitHub Copilot et OpenAI, moteur d’extension | le propre ask_ de Copilot |
non ; seulement un champ de formulaire qui accepte une liste | des formulaires à plusieurs champs |
| Cursor | le ask_ d’OAR |
oui, avec multi |
oui, de 1 à 4, une carte après l’autre |
| Grok | aucun |
Grok n’a pas de cartes de question. Son protocole d’agent n’a aucun moyen d’interroger l’utilisateur : un agent Grok ne peut donc poser sa question que dans le texte de sa réponse, puis attendre votre message suivant.
Sur le moteur SDK de Copilot, chaque carte qui a deux choix ou plus a aussi un interrupteur Select several (Sélectionner plusieurs) : vous pouvez ainsi donner plus d’une réponse même quand l’agent ne l’a pas demandé.
Combien de temps une carte attend #
Une carte attend une réponse pendant 8 heures ; sur le moteur d’extension de Copilot, 2 heures. Ensuite, l’agent est informé que personne n’a répondu et continue selon le mode du relais de la conversation.
Ce qu’on dit aux agents #
- De poser la question via l’outil de question, jamais en texte brut dans une réponse. Une question en texte brut n’affiche aucun bouton et termine le turn.
- De donner une courte liste de choix, et de ne s’en passer que lorsque la réponse doit être en texte libre.
- De demander même en autopilot (mode du relais) quand votre avis est vraiment nécessaire.
Paramètres #
Le ask_user d’OAR sur le moteur SDK de Copilot #
| Paramètre | Type | |
|---|---|---|
question |
texte, obligatoire | la question |
choices |
liste de textes | un bouton par choix ; le relais garde les 8 premiers et abandonne le reste |
multi_ |
true | false | vous pouvez en choisir plusieurs ; la réponse liste chaque choix, séparés par , |
{
"question": "Which database should the new service use?",
"choices": ["PostgreSQL", "SQLite", "Keep the current one"]
}
L’agent reçoit en retour User selected: Postgre, ou User responded: …
pour une réponse en texte libre.
Le ask_user d’OAR sur Cursor #
| Paramètre | Type | |
|---|---|---|
questions |
liste de 1 à 4 questions, obligatoire | |
questions[]. |
texte, obligatoire | la question |
questions[]. |
texte | un court libellé au-dessus de la question |
questions[]. |
liste de 2 à 6, obligatoire | chacune avec un label (obligatoire) et une description |
questions[]. |
true | false, false par défaut | vous pouvez en choisir plusieurs |
{
"questions": [
{
"header": "Database",
"question": "Which database should the new service use?",
"options": [
{ "label": "PostgreSQL", "description": "What the other services use" },
{ "label": "SQLite", "description": "No server to run" }
]
}
]
}
Vous pouvez toujours répondre en texte libre au lieu de choisir une option. L’agent reçoit chaque question avec sa réponse.
Les propres outils des fournisseurs #
Le Ask de Claude (également utilisé par les chats DeepSeek, qui
font tourner Claude Code) et le ask_ intégré de Copilot appartiennent à ces fournisseurs ; c’est à eux d’en définir les paramètres, qui peuvent changer avec une
mise à jour du fournisseur. OAR prend la question telle que le fournisseur la
transmet, affiche la carte et renvoie votre réponse sous la forme qu’attend le
fournisseur.
Questions venant d’autres sessions #
Une carte de question peut aussi recevoir la réponse d’un autre agent, quand vous laissez des agents
travailler avec d’autres sessions : l’action
answer_ de relay_.
Les agents ont pour consigne de vous demander d’abord, sauf si vous leur avez
dit de décider. Les propres
cartes d’approbation d’un relais (pour démarrer des sessions, pour les surveiller, et les approbations ask et plan)
ne peuvent recevoir de réponse que de vous.