CommunityRédaction et éditiongithub.com

Agent-Sync

Synchronisez la mémoire de vos agents de codage IA afin de pouvoir vous arrêter dans un agent et reprendre dans un autre.

Qu'est-ce que Agent-Sync ?

Cette compétence, agent-sync, résout le problème de la coordination entre plusieurs agents de codage IA en organisant leur travail de manière structurée et sécurisée, avec un coordinateur humain. Elle repose sur un protocole de transfert de tâches via fichiers : le coordinateur rédige une spécification (task.md), un agent autonome l'exécute sans interaction, puis produit un résultat (result.md). La compétence prend en charge les agents Claude Code, Codex CLI et Gemini CLI, et gère la concurrence via des verrous de répertoire ou des worktrees Git pour éviter les conflits. Son utilité principale est de permettre la délégation fiable de sous-tâches à des agents spécialisés, tout en gardant le contrôle et la responsabilité de la revue finale.

Compatible avec✓Claude Code✓Codex CLI~Cursor✓Gemini CLI
npx skills add hibeekaey/agent-sync

Installed? Explore more Rédaction et édition skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Coordonner le travail entre agents de codage

Vous êtes le coordinateur : vous possédez la définition de la tâche, examinez chaque livrable et décidez de la suite. Chaque autre agent est un travailleur : il reçoit un cahier des charges, produit un artefact et s'arrête. Il n'existe pas de bus de messages inter-fournisseurs, donc la coordination se fait au tour par tour et par l'intermédiaire de fichiers :

vous écrivez task.md -> le travailleur s'exécute sans interaction -> le travailleur écrit result.md ->
vous lisez, vérifiez, décidez du prochain tour

Si agent-sync est installé, exécutez agent sync avant de déléguer afin que chaque travailleur commence avec la même mémoire synthétisée que vous.

1. Écrire le répertoire de la tâche

task/
  task.md      # le cahier des charges (voir le contrat ci-dessous)
  ...entrées... # tout ce dont le travailleur a besoin ; les travailleurs n'ont aucun autre contexte
  result.md    # le travailleur écrit ce fichier ; son existence signale la fin

task.md est un brief pour sous-traitant et doit contenir :

  • l'objectif, en un paragraphe ;
  • le livrable exact (un fichier nommé) ;
  • une définition vérifiable de ce qui est terminé ;
  • l'instruction de s'arrêter après avoir écrit le livrable ;
  • les règles de verrou ou de worktree de la section 2 lorsque le travailleur modifie un arbre partagé.

2. Choisir le mode de partage AVANT d'invoquer quiconque

Règle zéro : deux agents ne doivent jamais modifier le même arbre de travail en même temps.

SituationMode
Le travailleur lit seulement (révision, analyse, second avis)Même répertoire, pas de verrou
Éditions alternées sur un même arbreMême répertoire + verrou mkdir
Tentatives parallèles ou sous-tâches parallèles touchant des fichiersUn git worktree par travailleur
Deux agents modifiant un arbre simultanémentJamais ; restructurer

Verrou dans le même répertoire (mkdir est atomique ; mettez ces instructions dans task.md aussi) :

until mkdir .agent-lock 2>/dev/null; do sleep 1; done   # acquérir
echo "$(whoami):$$" > .agent-lock/owner
# ... travail ...
rm -rf .agent-lock                                       # libérer

Ne jamais faire expirer automatiquement un verrou par âge : un travailleur lent est identique à un travailleur mort. Vérifiez que le processus du travailleur est mort avant de supprimer un verrou périmé.

Mode Worktree : git worktree add ../task-<worker> -b agent/<worker> par travailleur, les travailleurs ne poussent jamais et ne touchent jamais aux arbres des autres, le checkout principal reste en lecture seule, et vous (le coordinateur) effectuez toutes les fusions comme étape sérialisée unique.

3. Invoquer le travailleur sans interaction

TravailleurCommande
Claude Codeclaude -p "Lisez task.md dans ce répertoire et terminez-le."
Codex CLIcodex exec --skip-git-repo-check --sandbox workspace-write "Lisez task.md dans ce répertoire et terminez-le." </dev/null
Gemini CLIgemini -p "Lisez task.md dans ce répertoire et terminez-le."

Règles apprises à la dure :

  • Exécutez le travailleur depuis l'intérieur du répertoire de la tâche et limitez son accès en écriture à celui-ci.
  • Fermez stdin (</dev/null) pour tout travailleur en arrière-plan, sinon il peut rester bloqué en attendant une entrée.
  • Codex refuse les répertoires non suivis par Git sans --skip-git-repo-check.

4. Vérifier, puis décider

  • La parole du travailleur n'est pas le livrable. Lisez result.md et vérifiez-le par rapport à la définition de ce qui est terminé ; pour le code, exécutez vous-même les tests.
  • Un livrable manquant ou incorrect donne lieu à un nouveau tour avec un cahier des charges plus précis, pas à une réexécution du même.
  • Vous restez responsable de tout ce que vous acceptez : examinez le diff d'un travailleur comme vous le feriez pour la PR d'un sous-traitant humain.

Limites

  • Ne donnez jamais à un travailleur des identifiants, des droits de déploiement ou un accès à des publics réels ; les travailleurs produisent des artefacts, le coordinateur (avec l'utilisateur) les livre.
  • N'exécutez jamais ce protocole pour paralléliser des modifications dans un seul arbre sans verrous ou worktrees, même pour des tâches "rapides".
  • L'utilisateur décide quel agent joue le rôle de coordinateur ; ne déléguez pas la coordination à un travailleur.

Skills associés