Questions fréquentes
Des réponses directes sur ce que fait Agents Never Sleep, ce qu'il ne fait pas, et où se situent ses limites honnêtes.

Qu'est-ce qu'Agents Never Sleep ?
Agents Never Sleep (ANS) est une couche de gouvernance open source qui permet à un agent de code de traiter un backlog de tickets jusqu'au bout, sans supervision. Elle donne à l'exécution une machine à états durable par ticket, des portes de test déterministes, une réversibilité fondée sur git, et un contrat d'autonomie ASK/PARK/HALT, afin qu'une seule question sans réponse ne gèle jamais le reste du backlog. Elle n'écrit pas de code elle-même — elle régit le comportement d'un agent qui écrit du code pendant que personne ne surveille.
Est-il sûr de faire tourner des agents sans supervision ?
ANS réduit le risque, il ne l'élimine pas. Les portes déterministes attrapent ce que vos tests attrapent, les instantanés git rendent chaque modification réversible, et des hooks de refus bloquent les actions carrément irréversibles comme les force-push ou le SQL destructeur. Mais la porte déterministe ne vaut que ce que vaut votre suite de tests, et une hypothèse mal classée reste possible — c'est exactement pourquoi chaque hypothèse que fait l'exécution est commitée, afin de pouvoir être annulée en plein jour. Votre environnement d'exécution (un conteneur, un clone jetable, un utilisateur à droits minimaux) reste la couche de sécurité principale ; ANS suppose que vous en avez un.
Comment configurer ANS pour un projet — et puis-je pré-autoriser certaines actions ?
Exécutez ans-run init dans un dépôt fraîchement cloné : il détecte votre CLI d'agent et vos portes de test, affiche un avis honnête de maturité d'application, et échafaude la configuration par projet (.claude/agents-never-sleep.json) avec l'autonomie sur OFF, plus quelques tickets d'exemple inertes qui ne seront jamais exécutés automatiquement. Il n'écrit rien dans votre configuration hôte ou globale. Pour la configuration interactive complète, un court assistant écrit la même configuration et, une fois par utilisateur, enregistre que vous lui faites confiance. C'est délibérément une étape manuelle assurée par un humain — une exécution non supervisée ne peut jamais rédiger ni approuver sa propre configuration. Lors de la configuration, vous pouvez aussi pré-autoriser une classe spécifique du socle de liste de refus — par exemple permettre à l'exécution de vider une instance Redis jetable — sous forme d'un consentement explicite et opt-in. Ce consentement est stocké en dehors du dépôt, figé au lancement, et ne lève une action de PARK vers autorisé que lorsqu'elle correspond à une classe pour laquelle vous avez consenti ; si c'est manquant ou malformé, le socle tient bon. Tout le reste du socle — force-push, suppression de branche distante, SQL destructeur — reste bloqué dans tous les cas. La configuration est aussi le moment où vous choisissez quelles catégories Hard-PARK peuvent bénéficier d'une tentative de résolution assistée par consensus avant de se mettre de côté.
Quels agents de code sont pris en charge aujourd'hui ?
Claude Code est la seule plateforme où les hooks d'application (deny-irreversible, never-stop, never-ASK) sont vérifiés en direct sur l'outil réel. Gemini CLI, OpenAI Codex CLI, GitHub Copilot CLI, Cursor et Windsurf sont construits selon le contrat de hooks documenté de chaque plateforme et couverts par la suite de tests hermétique, mais pas encore confirmés sur l'outil réel. Aider est pris en charge via un wrapper de préréglage du lanceur (options de lancement plus réversibilité par git-revert) plutôt que par des hooks natifs. Le support de Hermes figure sur la feuille de route, il n'est pas livré.
Que se passe-t-il quand une porte déterministe (test) échoue ?
Le harness classe l'échec. S'il semble introduit par le diff actuel, la modification est annulée jusqu'au dernier commit vert et le ticket est consigné FAILED_RETRYABLE afin de pouvoir être retenté. Si l'échec semble préexistant, instable ou lié à l'environnement, le travail est conservé mais la confiance est abaissée et c'est noté comme un angle mort plutôt que comme une réussite propre. ANS ne supprime ni ne saute jamais un test en échec pour forcer un résultat vert — cela cacherait précisément le signal que la porte existe pour révéler.
Quel genre de choses sont mises de côté plutôt que décidées automatiquement ?
Tout ce qui a un grand rayon d'impact : dans quelle direction une migration de base de données doit aller, une modification d'un contrat d'API public ou partagé, tout ce qui touche une limite de sécurité ou d'isolation des locataires, et tout ce qui concerne l'argent, la facturation ou la tarification. Une mise de côté n'est pas un échec — elle consigne pourquoi, les interprétations candidates, et la décision exacte qui attend un humain, puis l'exécution passe au prochain ticket indépendant.
Qu'est-ce que le rapport d'exécution ?
Un résumé unique et classé (night-report.md) écrit quand l'exécution se termine. Il liste ce qui est terminé et fiable, ce qui est terminé mais nécessite une révision de jour, ce qui est mis de côté (avec la décision exacte nécessaire), ce qui est bloqué par l'environnement, et tout angle mort rencontré en cours de route. Il existe pour qu'un humain examine des décisions et des résultats, pas un flux brut de journaux.
ANS a-t-il besoin d'une clé API ou d'un abonnement ?
Non. Le harness open source est sous licence MIT, n'utilise que la bibliothèque standard Python, sans dépendance d'exécution, et fonctionne avec les identifiants que votre agent de code utilise déjà. Il existe une étape optionnelle de révision déléguée qui peut appeler la passerelle Tokonomix pour un second avis sur un diff à haut risque, mais c'est optionnel et soumis à un budget — le harness principal fonctionne pleinement avec vos propres clés sans cela.
Sous quelle licence Agents Never Sleep est-il publié ?
MIT. Le code source est public sur GitHub.
En quoi est-ce différent de simplement faire tourner un agent en boucle ?
Une boucle nue n'a pas de réponse de principe à la question de ce qu'il faut faire quand l'agent n'est pas sûr — soit elle s'arrête et attend, sans personne pour répondre, soit elle devine et risque de faire quelque chose d'irréversible. ANS remplace cette lacune par une machine à états durable par ticket, une porte déterministe comme seul blocage strict, un instantané-et-annulation fondé sur git à chaque modification, et un contrat ASK/PARK/HALT explicite appliqué au niveau de l'outil plutôt que laissé au jugement de l'agent en cours d'exécution. La boucle reste les deux mêmes commandes ; ce qui change, c'est tout ce qui régit ce qui se passe entre elles.
Qu'est-ce que Managed ANS ?
Managed ANS est en développement, pas encore disponible. Il est prévu comme une couche de gouvernance par-dessus le harness open source pour les équipes faisant tourner des flottes d'agents non supervisés : un jeton par flotte, un plafond de budget strict appliqué à la passerelle, des listes d'autorisation de modèles et de fournisseurs, un routage à résidence des données UE, ainsi qu'une facturation centralisée et une visibilité sur l'usage. Le harness open source reste pleinement fonctionnel avec vos propres clés, que vous utilisiez ou non un jour le palier managé. En savoir plus →
ANS peut-il pousser du code en production ou vers un dépôt distant ?
Non — c'est voulu. ANS ne pousse jamais vers une branche distante ; le travail reste sous forme de commits git locaux et réversibles, qu'un humain peut examiner et pousser délibérément. Des hooks de refus bloquent en outre les actions sortantes ou irréversibles comme les force-push et la suppression de branches distantes au niveau de l'outil. C'est toujours un humain qui décide quand le travail quitte la machine.
Où puis-je signaler un bug ou poser une question ?
Ouvrez une issue sur le dépôt GitHub. C'est aussi là que sont suivis les éléments de la feuille de route comme l'application élargie à d'autres plateformes et la publication PyPI.

Contact
Des questions, ou envie de participer ?
L'assistant ANS répond à partir de la documentation — et peut vous mettre en relation avec l'équipe.