Aller au contenu
Maildocs
Sommaire de la documentation

Documentation › L’établi dans l’assistant

L’établi dans l’assistant

Voir en .md

Escouade Mail s’ouvre dans l’assistant. Une fois l’établi ouvert, dites « audiences », « contacts » ou « état des campagnes » : le chat demande la bonne page dans le même établi. Les lectures et les actions ne créent plus une carte à chaque résultat. Il n’y a pas de console séparée.

L’entrée visuelle

VueOutil qui l’ouvreCe qu’elle montre
Établi Escouade Mailopen_workspaceAujourd’hui, les brouillons, les fils, les campagnes, les audiences, les contacts, les boîtes, les domaines, les désinscriptions et l’espace.

Une instance appartient à la conversation qui l’a ouverte et à l’accès qui l’a créée. Deux conversations ne partagent pas une page courante. L’inscription reste un résultat d’outil sans vue.

L’assistant ouvre l’établi une seule fois. Ensuite, il reprend l’identifiant publié par la vue dans le contexte de cette conversation et appelle navigate_workspace. Il ne doit ni inventer cet identifiant, ni reprendre celui d’une autre conversation.

DemandePageArgument de détail, s’il y en a un
« Aujourd’hui »jourAucun
« Mes brouillons »validerAucun
« Boîte mail »filsthread_id ou message_id
« Campagnes »campagnescampaign_id
« État de cette campagne »performancescampaign_id ; sans lui, la liste des campagnes
« Audiences »audiencesaudience_id
« Contacts »contactsquery pour chercher, email pour une fiche
« Boîtes », « Domaines », « Désinscriptions », « Espace »boites, domaines, blocages, espaceSelon la lecture demandée

La réponse pending signifie que la demande est transmise. Elle ne prouve pas que la page est déjà affichée. Une saisie non enregistrée reste en place : la vue propose de la garder, ou de l’abandonner pour ouvrir la page demandée. Une commande plus récente remplace une commande plus ancienne ; un geste de navigation dans la vue prend aussi la priorité sur les demandes déjà en cours.

La vue publie la page, la sélection et l’état de la saisie. Elle ne publie l’identifiant actif que lorsqu’elle est ouverte en grand et visible. Une vue cachée ne consomme pas une demande qu’elle n’a pas montrée.

open_workspace

Ouvre l’instance et charge sa première page. Sans argument, elle commence sur Aujourd’hui. Les permissions de la lecture demandée restent nécessaires : l’ouverture n’accorde aucun accès supplémentaire.

ParamètreTypeObligatoireDescription
pagetextenonRubrique du tableau ci-dessus ; jour par défaut.
argumentsobjetnonArguments de la lecture, 8 Ko au plus. Par exemple {"query":"Alice"} sur la page Contacts.

Le résultat porte _navigation : instance_id, sequence, route et result. Le résultat de lecture est celui de l’outil métier, avec ses permissions habituelles. Voir Référence.

Demande une page dans l’instance existante, sans créer de nouvelle carte et sans envoyer d’e-mail.

ParamètreTypeObligatoireDescription
pagetexteouiRubrique à afficher.
argumentsobjetnonArguments de la lecture de cette rubrique, 8 Ko au plus.
instance_idtexteouiIdentifiant fourni par le contexte de l’établi de cette conversation.

Le résultat est un reçu : status vaut pending ou superseded si une demande plus récente l’a remplacé. Il ne porte pas une nouvelle vue. Voir Référence.

workspace_events

Cet outil est réservé à la vue. Le modèle ne doit pas entretenir lui-même la synchronisation. Une attente dure au plus 18 secondes ; l’instance, les droits et le jeton sont revérifiés avant la réponse.

ParamètreTypeObligatoireDescription
instance_idtexteouiInstance de cette vue.
after_sequenceentierouiDernière commande reçue, à partir de zéro.
ack_sequenceentiernonDernière commande traitée par la vue.
closebooléennonLibère l’instance et réveille les attentes lors de la fermeture.
local_navigationbooléennonMarque une navigation locale et invalide les demandes précédentes.

Une nouvelle page arrive dans _navigation. Sans nouvelle page, la réponse porte unchanged: true, instance_id et sequence. Une fermeture rend closed: true. L’instance expire après 30 minutes sans activité ; un redémarrage du serveur demande également de la rouvrir. Voir Référence et Erreurs.

Dans la conversation, et en grand

  • Dans la conversation, la carte reste courte, sans champs de saisie ni navigation complète. Les listes de campagnes, d’audiences et de contacts montrent deux éléments au plus.
  • En grand, l’établi dispose de champs, d’un menu qui se replie en icônes et d’une navigation horizontale dans une fenêtre étroite. Le contenu défile dans sa propre zone. Les boutons restent plus grands sur écran tactile.
  • Chaque objet porte sa main courante : qui a fait quoi, et quand. Voir La main courante.
  • Les commandes d’affichage suivent l’hôte : les gestes pour agrandir ou réduire sont adaptés aux modes qu’il fournit.

Valider depuis la vue

« Valider » appelle approve_message avec la version du brouillon affiché (revision). Si le brouillon a changé, le serveur refuse avec draft_changed. « Refuser » appelle cancel_message. On ne valide que le message montré en entier.

Sans la permission approve, le geste de validation n’est pas disponible. Le serveur revérifie cette permission à chaque appel. Voir Connecteur.

Affichage et erreurs

Un e-mail HTML est rendu dans une feuille isolée : ses images extérieures restent masquées, ses liens inactifs et aucun script ne s’exécute. Son texte et son code restent lisibles. Le contenu reçu ne peut ajouter aucun geste à la vue. L’application n’utilise aucune ressource extérieure et suit le thème clair ou sombre de l’assistant.

Si une lecture échoue, la rubrique reste identifiable et propose de réessayer. Une interruption de synchronisation conserve la page disponible. Une instance expirée propose de rouvrir Escouade Mail ; elle ne crée pas silencieusement une nouvelle carte.

Sans prise en charge des vues

Un assistant doit prendre en charge MCP Apps pour afficher l’établi. Sans cette capacité, les outils métier restent utilisables par la conversation et rendent leur texte et leur objet structuré. Le changement de page dans un établi dépend de l’hôte et d’une instance active.

Pour qui construit un client

  • open_workspace annonce _meta.ui.resourceUri et _meta["openai/outputTemplate"] avec ui://subagent/workspace-v12.html. Il est aussi proposé comme entrée de panneau de conversation aux hôtes qui la prennent en charge.
  • navigate_workspace est visible au modèle et à l’application. workspace_events annonce _meta.ui.visibility: ["app"] ; les deux sont sans ressource visuelle.
  • Les outils utilisables depuis la vue annoncent la visibilité app et _meta["openai/widgetAccessible"]: true.
  • Les ressources se lisent avec resources/read et se listent avec resources/list. Leur type est text/html;profile=mcp-app. Les anciennes adresses de v2 à v10 restent lisibles pour les cartes déjà présentes ; elles servent l’application actuelle.
  • Les données gardées pour accélérer une lecture restent cloisonnées par accès. Une évolution des droits invalide ce contexte ; une page n’est pas autorisée parce qu’elle figurait dans un cache.

Outils sans nouvelle vue

Les outils ci-dessous rendent des données et du texte. Leurs résultats peuvent alimenter l’établi existant ; ils ne demandent plus à l’hôte d’afficher une carte supplémentaire.

  • Inscription : sign_up, verify, attach_human.
  • Navigation et préparation : navigate_workspace, workspace_events, workspace_snapshot.
  • Aujourd’hui et boîtes : inbox_status, activity_report, list_events, list_inboxes, create_inbox, update_inbox, delete_inbox, request_inbox_review, create_app_password, list_app_passwords, revoke_app_password.
  • Domaines : add_domain, verify_domain, list_domains, domain_quality, remove_domain, inspect_domain.
  • Messages : send_email, list_threads, get_thread, reply_to_thread, classify_thread, close_thread, get_message, list_drafts, update_draft, approve_message, cancel_message, attach_files, remove_attachment, get_attachment.
  • Contacts et audiences : list_contacts, get_contact, save_contact, set_contact_audiences, list_audiences, get_audience, save_audience, import_contacts, remove_audience_contact.
  • Campagnes : list_campaigns, list_campaign_templates, get_campaign, preview_campaign, campaign_metrics, save_campaign, campaign_action, campaign_history, save_campaign_template.
  • Désinscriptions : list_suppressions, add_suppression, remove_suppression.
  • Espace et forfait : get_settings, update_settings, list_keys, create_key, revoke_key, set_webhook, remove_webhook, event_feed, close_space, billing_status, subscribe, cancel_subscription.
Cette page en Markdown : /mail/docs/vues.md Toute la documentation pour un agent : /mail/docs/llms.txt Mentions légales · Conditions générales · Confidentialité · Signaler un abus