1. Demandez à Claude
Votre message à Claude est écrit en langage courant :
Demande à Codex de relire db/migrations/0042_orders.sql pour repérer des problèmes de verrouillage, puis corrige ce qu'il trouve.
Claude sait que la commande existe si votre CLAUDE.md renvoie à overvibe --help, ou si vous avez installé le skill.
2. Claude lance une session Codex attachée
$ overvibe new --attach --tool codex --cwd ~/code/shop --name "shop: codex review" \
--prompt "Review db/migrations/0042_orders.sql for table locks and long transactions on a busy orders table. List each problem with the line and a fix. When done, run: overvibe send \"$OVERVIBE_SESSION\" \"<findings>\""
started "shop: codex review" in ~/code/shop (session pending, tmux d7a01e44), attached to this session
close it when you no longer need it: overvibe stop "shop: codex review"--attach fait de la session Codex un enfant de shop: lead, imbriqué sous elle dans la barre latérale. $OVERVIBE_SESSION est développé dans le shell de Claude avant l'exécution de la commande, donc Codex reçoit l'id tmux de Claude comme adresse de réponse.
3. Claude termine son tour
C'est l'étape que tout le monde saute. La réponse est tapée dans le prompt de Claude, et Claude ne la lit qu'à la fin de son tour en cours. Une session qui dort ou interroge en boucle pour obtenir le résultat bloque le message qu'elle attend.
Pendant ce temps, shop: codex review apparaît comme occupée dans la barre latérale, et vous pouvez l'ouvrir pour regarder Codex lire le fichier.
4. Codex fait son rapport
# Codex, when it is done $ overvibe send "d3b2c9f0" "Two problems. Line 12: ADD COLUMN with a default rewrites the whole table under a lock. Line 30: build the index CONCURRENTLY." # what lands in Claude's prompt [overvibe message from "shop: codex review" (codex); reply with: overvibe send "shop: codex review" "<reply>"] Two problems. Line 12: ADD COLUMN with a default rewrites the whole table under a lock. Line 30: build the index CONCURRENTLY.
Claude commence un nouveau tour avec ce message en entrée, corrige la migration et peut poser une question de suivi de la même façon :
$ overvibe send "shop: codex review" "Fixed both. Does the new version still lock anything?"5. Fermez l'assistant
$ overvibe stop "shop: codex review"
stopped "shop: codex review" and hid it from the list (conversation kept)La conversation est conservée : si une question se pose la semaine prochaine, vous pouvez reprendre la session Codex depuis son historique. overvibe stop --children ferme d'un coup tous les assistants lancés par une session.
Les mêmes commandes dans tous les sens
Codex peut lancer agy, agy peut écrire à Claude, et une session principale peut faire tourner plusieurs assistants en parallèle. Retirez --attach quand la nouvelle session doit survivre à son parent ou appartient à son propre groupe de projet. La vue Agent map dessine chaque message sous forme de flèche : après un après-midi chargé, vous voyez qui a délégué quoi.
Questions
Pourquoi ne pas utiliser un sous-agent Claude ?
Un sous-agent est toujours le même outil que son parent et n'a pas de prompt où vous pouvez taper. Ici, le relecteur est Codex, et vous pouvez ouvrir sa session pour le corriger en pleine revue.
L'assistant peut-il poser une question à Claude en retour ?
Oui. Chaque message porte la commande de réponse exacte dans son en-tête, donc chaque côté peut poursuivre l'échange.
Et si je ferme la session Codex trop tôt ?
overvibe stop garde la conversation. Reprenez-la depuis la barre latérale et elle continue là où elle en était.