# Travail en cours

Comment le travail passe de la demande à la modification fusionnée, et les trois façons de le lancer.

Canonical page: https://beeuni.ai/docs/fr/work

Beeuni effectue le travail dans une [session](/docs/fr/work/sessions) : une branche et un environnement isolé pour une unité de travail. Une session se termine lorsque sa [demande de modification](/docs/fr/work/change-requests) (CR) est fusionnée dans la branche par défaut. Cette page décrit le cycle, puis présente les trois façons de démarrer une session.

- [Sessions](/docs/fr/work/sessions): Une branche et un environnement isolé pour une unité de travail.
- [Demandes de modification](/docs/fr/work/change-requests): La fusion dans la branche par défaut, après examen.
- [Environnement d’exécution](/docs/fr/work/runtime): Variables d’environnement, jetons et image de l’environnement isolé dans lequel s’exécute une session.

<a id="what-happens-when-a-session-starts"></a>

## Que se passe-t-il au démarrage d’une session ?

1. Beeuni crée l’entrée de session et crée une branche à partir de la branche par défaut. Le nom de la branche correspond à l’identifiant de la session.
2. Beeuni sélectionne une image pour l’environnement isolé : l’image par défaut ou la vôtre, `.beeuni/Dockerfile`, si le manifeste en déclare une.
3. L’environnement isolé démarre. Son démon, `beeuni-agent`, clone le dépôt dans `/workspace`. Il lance le [harness](/docs/fr/work/harnesses) de la session.
   Le statut de la session devient `running`.
4. L’agent travaille. Il utilise les [secrets](/docs/fr/project/secrets) via les variables d’environnement définies par Beeuni, puis valide ses modifications et les pousse vers la branche de la session.
5. L’agent ouvre une [demande de modification](/docs/fr/work/change-requests). Vous l’examinez et la fusionnez : c’est le seul moyen d’intégrer le travail dans la branche par défaut.

> **Git est le seul enregistrement durable**
>
> L’arrêt d’une session met l’environnement isolé en pause, mais conserve ses fichiers. La suppression d’une session détruit définitivement l’environnement isolé. Seul le travail validé et poussé vers la branche est conservé ; seule une demande de modification fusionnée le rend permanent.

<a id="three-ways-work-runs"></a>

## Trois façons d’exécuter le travail

Une session démarre de l’une de ces trois façons.

| Mode | Fonctionnement |
|---|---|
| À la demande | Vous faites une demande dans le chat et obtenez le résultat immédiatement. |
| Avec intervention humaine | L’agent travaille et vous consulte pour les décisions importantes. |
| Automatisé | Un [déclencheur](/docs/fr/connect/triggers) — une planification ou un webhook — lance la session de bout en bout. |

<a id="related"></a>

## Voir aussi

- [Projets](/docs/fr/project): Un dépôt git avec un manifeste.
- [Agents](/docs/fr/project/agents): Un persona au format Markdown avec des outils à portée définie.
- [Modèles](/docs/fr/project/models): Quel modèle utilise une session et qui paie.
- [Déclencheurs](/docs/fr/connect/triggers): Planifications et webhooks qui démarrent des sessions.
- [Connecteurs](/docs/fr/connect/connectors): Accès limité aux applications externes.
- [Slack et canaux](/docs/fr/connect/slack): Interfaces de chat qui démarrent des sessions.
- [Ordinateurs](/docs/fr/connect/computers): Machines distinctes des environnements isolés des sessions.
- [Comptes](/docs/fr/accounts): Identités, rôles et attributions : qui peut faire quoi.
