Pour lancer Claude Code la nuit, donnez-lui de petites tâches avec des critères d’acceptation clairs, une configuration de permissions qui ne dépend pas de vous, des tests pour vérifier son propre travail et sa propre branche. Gardez ensuite l’ordinateur éveillé et relisez le résultat le matin. Le plus dur n’est pas de lancer le run. C’est de s’assurer que l’agent n’attende pas sept heures un « oui », ne soit pas à court de quota à 2 h du matin, ou ne vous laisse pas une branche à laquelle vous ne pouvez pas vous fier.
Ce guide traite chacun de ces points dans l’ordre : planification, permissions, limites, garde-fous, planification des runs et relecture du matin. La dernière partie montre comment le night shift d’AgentVera gère les mêmes étapes.
Planifiez la nuit avant de la lancer
Un agent de nuit ne peut rien vous demander. Tout ce dont il a besoin doit être dans la tâche.
Écrivez des tâches que l’agent peut finir seul
Les bonnes tâches de nuit sont petites, claires et vérifiables :
- « Ajoute une validation des entrées aux trois formulaires de
src/settings/. Terminé quandpnpm testpasse et que chaque formulaire rejette un e-mail vide. » - « Migre
utils/date.tsde moment vers date-fns. Aucun changement de comportement. Tous les tests existants doivent passer. » - « Écris des tests pour
billing/invoice.tsjusqu’à ce que la couverture de ce fichier dépasse l’actuelle. Ne modifie pas la source. »
Les mauvaises tâches de nuit sont vagues ou exigent une décision : « nettoie l’API », « améliore les performances », « choisis une bibliothèque d’état ». L’agent fera un choix qui ne vous plaira pas, ou s’arrêtera pour attendre.
Rédigez les critères d’acceptation
Pour chaque tâche, notez quand elle est considérée comme terminée :
- Quels tests ou vérifications doivent passer.
- Quels fichiers elle peut toucher, et lesquels elle ne doit pas toucher.
- Que faire en cas de blocage. Par exemple : « Si tu n’arrives pas à la faire passer, commite ce que tu as et écris pourquoi dans NOTES.md. »
Mettez les règles du projet là où l’agent les lit
Conventions, commandes de test et zones interdites ont leur place dans CLAUDE.md pour que chaque session les voie. Restez bref. La nuit, c’est votre seule voix dans la pièce.
Préférez plusieurs petites tâches à une grosse
Cinq tâches indépendantes d’une heure vous donnent cinq branches relisibles. Une tâche de cinq heures vous donne un seul gros diff et une seule chance qu’il tourne mal.
Décidez comment les permissions fonctionnent pendant que vous dormez
Dans une session interactive, une demande de permission attend simplement. La nuit, cela signifie une nuit entière perdue pour une seule question. Réglez cela avant d’aller vous coucher.
Pour les runs non interactifs (claude -p), la référence de la CLI vous donne ces options :
| Option | Ce qu’elle fait |
|---|---|
--allowedTools "Bash(npm test)" "Read" "Edit" | Ces outils s’exécutent sans demande |
--permission-mode dontAsk | Seuls les outils pré-approuvés s’exécutent ; tout le reste est refusé |
--permission-mode auto | Un classifieur vérifie chaque action ; les actions bloquées ne s’exécutent pas et Claude continue |
--permission-prompts none | Les demandes sont refusées au lieu d’attendre une réponse (v2.1.259 ou plus récente) |
--dangerously-skip-permissions | Aucune demande ; uniquement pour des conteneurs ou VM isolés |
Un bon défaut pour le travail de nuit est dontAsk avec une liste d’autorisations serrée, plus une règle de refus pour git push. Si vous songez à ignorer totalement les permissions, lisez d’abord ce que —dangerously-skip-permissions ignore vraiment.
Posez des limites au run
Deux flags du mode print évitent qu’un run ne dure indéfiniment :
--max-turns 40s’arrête après ce nombre de tours agentiques et se termine avec une erreur. Il n’y a pas de limite par défaut.--max-budget-usd 5.00s’arrête quand la dépense API estimée atteint ce montant. C’est une estimation côté client et la dépense peut le dépasser : prévoyez de la marge. Cela compte si vous payez à l’appel d’API, pas avec un abonnement.
Une commande de nuit complète peut ressembler à ceci :
git worktree add ../night-validate-forms -b night/validate-forms
cd ../night-validate-forms
claude -p "$(cat tasks/validate-forms.md)" \
--permission-mode dontAsk \
--allowedTools "Read" "Edit" "Bash(pnpm test *)" "Bash(git add *)" "Bash(git commit *)" \
--max-turns 60 \
--output-format json > ../logs/validate-forms.json
Le run se déroule dans son propre worktree git, il ne touche donc jamais votre copie de travail. Pour les sessions interactives, claude -w <name> crée le worktree pour vous.
Tenez compte des limites d’usage
Avec un abonnement, Claude Code a une limite glissante de 5 heures et une limite hebdomadaire. Une longue nuit peut atteindre l’une ou l’autre, et le run s’arrête jusqu’à la réinitialisation de la fenêtre. Nous détaillons cela dans les limites d’usage de Claude Code.
Quelques habitudes aident :
- Lancez le travail lourd tôt dans la soirée, pour qu’une réinitialisation tombe dans la nuit.
- Utilisez un modèle moins cher pour les tâches simples comme tests, docs et renommages.
- Gardez le contexte petit. Des tâches courtes et un CLAUDE.md léger brûlent moins de tokens. Voir la consommation de tokens de Claude Code.
- N’empilez pas dix agents sur un compte en espérant que tous finissent.
Utilisez les tests comme garde-fous
Sans tests, « terminé » veut seulement dire que l’agent s’est arrêté. Avec des tests, vous avez quelque chose à vérifier.
- Faites des tests une partie de la définition de « terminé ». « Terminé quand
pnpm testetpnpm typecheckpassent. » - Interdisez de modifier les tests pour les faire passer, sauf si c’est la tâche. Dites-le dans la tâche et dans CLAUDE.md.
- Commitez après chaque étape qui passe. Les petits commits sont faciles à relire et à annuler.
- Ne poussez et ne déployez jamais. Refusez
git pushet tout ce qui touche la production. Le matin sert à décider de ce qui part.
Planifiez le run
Si vous lancez les runs à la main à minuit, vous arrêterez au bout d’une semaine. Deux façons de planifier :
- cron ou launchd. Une ligne de crontab comme
0 23 * * 1-5 /path/to/night.shlance un script les soirs de semaine. Le script exécute unclaude -ppar fichier de tâche et écrit les logs. - Un orchestrateur qui tient une file, lance des tâches en parallèle, réessaie et écrit un rapport. C’est ce que couvre le reste de cet article.
Dans les deux cas, la machine doit être allumée et non en veille. Sur Mac, caffeinate ou un réglage de maintien d’éveil suffit.
Relisez le matin
Prévoyez 20 à 30 minutes de relecture :
- Lisez d’abord le résumé : ce qui est fini, ce qui est bloqué, ce qui tourne encore.
- Pour chaque branche terminée, lisez le diff, pas seulement le message de l’agent. Vérifiez que les tests ont tourné.
- Cherchez les changements risqués : migrations, auth, dépendances, config CI,
.env. - Fusionnez ce qui est bon, renvoyez ce qui ne l’est pas avec une note, et remettez en file ce qui est resté bloqué avec une tâche plus claire.
Comment le night shift d’AgentVera gère tout cela
AgentVera réunit ces étapes en un seul endroit. Le night shift est inclus dans les offres Pro et Team.
Une file par projet
Ouvrez la page Details d’un projet et allez à l’onglet Night shift, ou utilisez le bouton Night shift de l’écran d’accueil. Chaque projet et chaque groupe a son propre shift. Vous saisissez une tâche sous Add a task for tonight et appuyez sur Add to queue. Le texte indicatif résume la règle : « Write the acceptance criteria; the agent can’t ask questions at night. »
Pour chaque tâche, vous choisissez qui la fait :
- Un agent ouvert. Il travaille dans son propre dossier et sa propre conversation, et n’est pas fermé ensuite. Les tâches confiées au même agent s’exécutent dans l’ordre.
- Open a new agent. Un agent Claude Code ou Codex dans son propre worktree, sur une branche
night/<date>-<slug>. Il se ferme quand la tâche est terminée.
Les options comprennent Run each task in its own worktree and branch (recommended), Open a GitHub PR for finished tasks et As a draft PR.
La fenêtre et les règles
La fenêtre par défaut va de 23:00 à 07:00. Avec Start automatically every night, le shift démarre tout seul. At most at once définit combien de tâches tournent en parallèle : 2 par défaut, jusqu’à 6. Vous pouvez aussi appuyer sur Start now, ou End the shift plus tôt. Y mettre fin signifie que rien de nouveau ne démarre, que les agents en cours terminent et que le rapport est écrit.
Les agents du night shift suivent des règles fixes :
- On leur dit que vous dormez, ils ne posent donc pas de questions.
- Ils commitent mais ne poussent pas.
- Ils lancent les tests.
- Ils terminent par un marqueur « done » ou « stuck ». Sans marqueur, l’agent est relancé jusqu’à deux fois, puis la tâche est marquée comme bloquée.
- Les demandes qui nécessitent une approbation ne sont pas approuvées pendant la nuit. Elles sont listées dans le rapport du matin.
Chaque tâche affiche un statut : Queued, Running, Done, Stuck, Error ou Cancelled. Une tâche bloquée peut être remise en file avec Requeue.
Pour réduire les approbations qui attendent jusqu’au matin, réglez le niveau Permissions de l’agent sur Auto. Avec Pro et Team, vous pouvez aussi laisser l’approbation automatique répondre aux demandes sûres comme les lectures, les tests et le lint.
Gardez la machine éveillée
Le night shift ne tourne pas ordinateur éteint. L’application doit être ouverte et l’ordinateur éveillé. Activez Keep the computer awake dans Settings → Notifications. Cela fonctionne comme caffeinate : le Mac ne se met pas en veille tant qu’AgentVera est ouvert, même si l’écran peut s’éteindre.
Tâches planifiées pour le travail récurrent
Pour les travaux qui se répètent, comme une vérification nocturne des dépendances ou un nettoyage hebdomadaire, utilisez les tâches planifiées. Elles se trouvent sur la page Details du projet sous Scheduled, et sont disponibles dans toutes les offres.
- Choisissez un préréglage ou écrivez une expression cron. Un aperçu montre les prochains runs.
- Si l’agent est occupé à l’heure dite, choisissez d’attendre, d’envoyer quand même ou d’ignorer.
- L’agent peut être démarré s’il est arrêté, et Run now lance une tâche immédiatement.
- Les runs échoués peuvent être signalés sur Telegram.
Comme le night shift, elles ne tournent que tant que l’application est ouverte. Les runs manqués pendant que l’application était fermée ne sont pas rattrapés ensuite.
Quand un compte atteint sa limite
Avec la bascule de comptes (Pro et Team), vous configurez une chaîne d’au moins deux comptes Claude ou Codex. Quand l’un a 3 % ou moins de sa limite de 5 heures ou hebdomadaire, les agents passent au compte suivant, et la conversation peut les suivre. Les connexions expirées sont ignorées. Si vous avez configuré une chaîne, un agent qui atteint sa limite pendant la nuit continue sur le compte suivant au lieu de s’arrêter. Vérifiez les conditions de votre fournisseur avant d’utiliser plusieurs comptes.
Être prévenu des problèmes, pas de tout
Telegram peut envoyer les erreurs, les demandes d’approbation, les avertissements de limite, les tâches planifiées échouées et le rapport du matin du night shift. /night affiche la file, ajoute une tâche ou démarre le shift depuis votre téléphone. Voir notifications et approbations pour la liste complète.
Le rapport du matin et la boîte de revue
À la fin du shift, vous recevez une notification de bureau et un rapport Markdown enregistré sur le disque. Les rapports passés sont listés sous Morning reports. La version Telegram ne contient que des compteurs : terminées, PR ouvertes, bloquées et encore en cours.
Le travail terminé arrive aussi dans la boîte de revue, un onglet du panneau de droite qui couvre tous les agents et projets. Chaque carte affiche :
- les fichiers modifiés,
- des notes de risque pour les migrations, l’auth, les dépendances, la CI et
.env, - des notes de taille, par exemple 800 lignes modifiées ou plus, 300 supprimées ou plus, ou pas de tests,
- le résultat de Verify et la dernière réponse de l’agent.
Depuis chaque carte, vous pouvez Approve, Send to queue pour mettre la branche dans la merge queue, ou Send back avec une note pour l’agent.
Checklist de nuit
- Chaque tâche est petite, indépendante et a des critères d’acceptation écrits.
- CLAUDE.md liste les commandes de test et les fichiers à ne pas toucher.
- Les permissions sont réglées : liste d’autorisations,
dontAskou auto, etgit pushrefusé. - Chaque tâche tourne sur sa propre branche ou son propre worktree.
- Des limites de tours ou de budget sont définies pour les runs scriptés.
- Le travail lourd tient dans vos limites d’usage, ou un second compte est prêt.
- L’ordinateur reste allumé et éveillé.
- Vous serez prévenu des erreurs sans être réveillé à chaque tour.
- Du temps de relecture est réservé pour le matin.
Pour conclure
Lancer Claude Code la nuit marche quand la nuit est planifiée. Cela suppose de petites tâches avec des conditions de fin claires, des permissions qui n’attendent pas après vous, des tests qui vérifient le travail, des branches qui protègent main et une relecture du matin qui décide de ce qui part. Vous pouvez tout faire avec claude -p, cron et quelques flags. Le night shift d’AgentVera réunit la file, les règles, les limites et le rapport du matin en un seul endroit, pour que vous passiez la matinée à relire plutôt qu’à tout préparer.
Pour aller plus loin :
Pour essayer AgentVera, commencez par la page d’accueil.