Sessions
Un worktree par branche
Créer un worktree pour isoler le travail d’un agent sur sa branche, y lancer des sessions, le fusionner dans la branche principale et confier les conflits à un agent.
Pourquoi un worktree
Deux agents dans le même dossier finissent par modifier les mêmes fichiers, et Soreno ne les isole pas l’un de l’autre. Un worktree règle le problème : une copie de travail de plus, sur sa propre branche, qui partage le même dépôt. Soreno n’en crée jamais sans vous.
Créer un worktree
Dans la colonne des projets, le + d’une ligne de projet, Créer un worktree, ouvre le formulaire. Il rappelle la branche courante et crée une nouvelle branche à partir de son dernier commit.
- Branche : le nom de la nouvelle branche ;
- Dossier parent : par défaut, celui qui contient le dépôt ;
- Dossier du worktree : par défaut, le nom du dépôt suivi de celui de la branche. Le chemin complet s’affiche dessous.
Le bouton est grisé pour un projet SSH déconnecté. Dans le panneau Git, la vue Branches propose aussi Créer un worktree : à côté du champ de nouvelle branche, ou sur une branche existante.
Travailler dans un worktree
Le worktree apparaît sous son projet, nommé d’après sa branche. C’est un projet à part entière : cliquez dessus, lancez-y des agents comme ailleurs, son panneau Git montre ses propres changements. Les sessions d’un même worktree partagent son dossier, donc sa branche.
Un worktree créé hors de Soreno figure aussi sous le projet, marqué Worktree externe · Ouvrir : un clic l’ajoute à vos projets et l’ouvre.
Fusionner et supprimer
Quand le travail est fini, faites un clic droit sur le worktree : Fusionner dans main et supprimer, avec le nom de la branche du worktree principal. Soreno fusionne la branche du worktree dans cette branche, puis supprime le dossier du worktree et sa branche locale.

- des sessions tournent encore dans le worktree : la confirmation l’indique et le bouton devient Arrêter les sessions et fusionner ;
- des changements non commités, dans le worktree ou dans le worktree principal, bloquent la fusion : commitez-les ou remisez-les là où Soreno l’indique, puis réessayez.
Supprimer le worktree, dans le même menu, supprime son dossier et sa branche locale sans fusionner : ses commits non fusionnés sont perdus, et des changements non commités bloquent la suppression. Le worktree principal ne peut pas être supprimé depuis Soreno.
Confier un conflit à un agent
Si la fusion bute sur un conflit, la branche principale n’est pas touchée : les conflits restent en cours dans le worktree. Si le worktree est ouvert dans Soreno, la notification propose Résoudre avec un agent ; un worktree créé hors de Soreno et jamais ouvert n’a pas cette action.

Soreno ouvre alors dans le worktree une session « Conflits · Claude Code », par exemple, avec l’agent de la session la plus récemment créée dans ce worktree. L’agent résout chaque fichier en gardant l’intention des deux branches, lance les vérifications utiles et commite la fusion, sans l’annuler, rebaser, réinitialiser ni pousser. S’il ne peut pas trancher, il vous demande. Une fois la fusion commitée, relancez Fusionner dans main et supprimer.
Vous préférez les régler vous-même ? Affichez le worktree, ouvrez Changements dans le panneau Git, résolvez chaque fichier puis Marquer résolu…, commitez la fusion et relancez.