Pilotar tareas y arbitrajes desde tu agente

Por el equipo de OrgGen AI

Un agente puede crear tareas y plantear una pregunta por decidir — nunca responderla él mismo. Esta guía muestra el ciclo exacto (propone → arbitra → en curso → cerrado), los cinco verbos que el agente puede invocar, y por qué esto no es una norma de conducta sino un bloqueo verificado en tiempo de compilación.

El texto completo de esta guía existe por ahora solo en francés. El título y el resumen de arriba sí están traducidos.

Deux types de travail, un seul outil de création

Une tâche OrgGen est soit une tâche ORDINAIRE (un travail confié, avec une échéance possible), soit un ARBITRAGE (une question posée avec des réponses pré-définies, que quelqu'un doit trancher). Les deux se créent par le même outil, `create_tasks` — un arbitrage se distingue par un champ `arbitrage: { question, options }` supplémentaire.

create_tasks({
  title: "Quelle stratégie de refacturation entre filiales ?",
  cellId: "filiale-tech",
  arbitrage: {
    question: "Refacturation au coût réel ou au forfait mensuel ?",
    options: [
      { id: "cout-reel", label: "Au coût réel, mesuré chaque mois" },
      { id: "forfait", label: "Forfait mensuel fixe" },
    ],
  },
})
Poser une question à trancher, deux options

L'agent peut aussi proposer jusqu'à deux options recommandées, chacune avec sa justification (`recommended: { justification }`) — une aide à la décision, jamais une décision prise à l'avance.

Le cycle : qui a le droit de poser quelle étape

Un arbitrage traverse jusqu'à six étapes, et chacune appartient à un camp précis — jamais l'un à la place de l'autre.

ÉtapePosée parCe qu'elle veut dire
proposeagentla question est posée, avec ses options
arbitrehumainl'humain a choisi — l'agent peut commencer
contestehumainl'humain refuse — l'agent doit reformuler
en_coursagentl'agent a démarré le travail
closagentle travail est fait, preuve à l'appui
caducl'un ou l'autrela question ne se pose plus

Le trajet normal est `propose → arbitre → en_cours → clos`. Si l'humain conteste au lieu d'arbitrer, l'agent reformule la question (`repropose`) et le cycle repart de `propose`. Rien ne force un aller simple : une question mal posée se corrige sans perdre l'historique.

Le verrou : deux vocabulaires qui ne se rencontrent jamais

`validate`, `choose` et `contest` — les trois verbes qui font AVANCER un arbitrage vers une décision — n'existent, dans le code, que dans un type accessible à l'interface humaine. L'agent appelle une fonction DIFFÉRENTE, qui n'accepte qu'un second vocabulaire : `start`, `close`, `repropose`, `moot`, et un cinquième verbe décrit plus bas.

update_task({ taskId: "tk-refacturation", arbitrageAction: { type: "start" } })

update_task({
  taskId: "tk-refacturation",
  arbitrageAction: { type: "close", summary: "Migré vers le coût réel, effectif ce mois." },
})
Ce que l'agent peut appeler (update_task.arbitrageAction)

Il ne s'agit pas d'une règle qu'un développeur pourrait oublier d'appliquer un jour : les deux vocabulaires sont deux unions Zod disjointes, consommées par deux fonctions distinctes. Passer `type: "choose"` à la fonction agent est une erreur de TYPE — le code ne compile pas. Le verrou tient à la compilation, pas à la discipline de qui l'a écrit.

Le cinquième verbe : une décision déjà prise ailleurs

Le cycle formel suppose que la question soit tranchée VIA le panneau — quelqu'un clique une option. Mais une décision se prend parfois en conversation, avant même que l'agent ait ouvert un panneau d'arbitrage. `record_external_decision` couvre exactement ce cas : il clôt un arbitrage directement depuis `propose`, sans passer par `arbitre`/`en_cours`, à condition de citer la preuve.

update_task({
  taskId: "tk-refacturation",
  arbitrageAction: {
    type: "record_external_decision",
    verbatim: "On part au coût réel, Marc l'a validé en réunion ce matin.",
    source: "Réunion produit du 12/09",
    decidedAt: "2026-09-12",
  },
})
Enregistrer une décision prise en conversation

Ce que ce verbe ne fait PAS : il ne marque jamais l'arbitrage comme « validé via le panneau » (le champ `decision` réservé à ce mécanisme reste intact). La preuve rapportée par l'agent et une validation formelle humaine restent deux faits distincts, pour toujours, dans l'historique de la tâche.

Pruébalo con tu propio caso

Describe tu situación en una frase — OrgGen construye el diagrama y hace el cálculo.

Pruébalo con tu propio caso