Aller au contenu
geekus
ActuOutils dev·4 min de lecture

Sphinx : un hook Git qui teste ta compréhension du code IA

Sphinx te pose une question sur le code de ton agent avant un push sur une branche protégée. Si tu réponds de travers, il t'explique pourquoi. Ça s'installe avec npm et marche avec Claude Code ou Cursor.

sphinx-six-theta.vercel.app/
Capture de la page de Sphinx
Sommaire11 parties

Sphinx est un hook Git pensé pour le développement avec des agents de code : avant que le code de ton agent parte, il te pose une question sur ce que ce code fait vraiment. Si tu réponds juste, le push continue. Si tu te trompes, il t’explique pourquoi et te propose un nouveau scénario.

En bref

  • Sphinx interrompt les push sur les branches protégées et pose une question sur le diff.
  • Le relecteur n’a pas vu ta conversation avec l’agent : il ne lit que les changements.
  • Il s’installe avec npm et fonctionne avec Codex, Claude Code, Cursor, OpenCode, Pi ou Git seul.
  • Tes réponses n’arrivent jamais à l’agent de code, et les fichiers .env et les clés ne sont jamais ouverts.
  • Le projet est présenté comme gratuit et open source.

Sphinx, un hook Git qui vérifie que tu comprends le code

Un agent de code peut modifier des dizaines de fichiers en quelques minutes. Le risque, c’est de pousser un changement que personne n’a vraiment compris. Sphinx s’attaque à ce point précis : il s’insère dans Git et demande à la personne qui pousse d’expliquer ce que le code fait.

Le projet résume son idée par une citation attribuée à Sun Tzu : on peut déléguer sa réflexion, mais pas sa compréhension. Il se présente comme gratuit et open source.

Comment fonctionne Sphinx pendant un push

Le déroulé tient en trois temps. D’abord, tu pousses ton code, ou c’est ton agent qui le fait : Git se met en pause sur les branches que tu protèges.

Ensuite, Sphinx interroge. Un relecteur qui n’a jamais vu ta conversation avec l’agent lit le diff et demande ce que le changement fait quand les choses tournent mal. Enfin, tu réponds : une mauvaise réponse t’amène une explication, puis un nouveau scénario ; une bonne réponse laisse le push se poursuivre.

  • Tu pousses, ou ton agent pousse.
  • Sphinx lit le diff et pose une question.
  • Tu réponds ; le push passe si tu as compris.

Un exemple de question posée par Sphinx

La page du projet donne un échange à titre d’illustration, en précisant que les vraies questions viennent de ton diff. Le cas : un gestionnaire de webhook enregistre l’identifiant d’un événement avant d’appeler charge(). Stripe dépasse le délai et renvoie le même événement. Que se passe-t-il au second passage ?

Une première réponse approximative (« le client est débité deux fois ») est corrigée : le second passage trouve l’identifiant et répond 200 sans débiter. Sphinx relance alors avec un cas plus subtil : si charge() échoue, l’identifiant est déjà enregistré, donc que fait la tentative suivante ? Répondre correctement (le client n’est jamais facturé) valide la compréhension et le push part vers origin/main.

Installer Sphinx et l’utiliser avec Git

Sphinx demande Node 22.19 ou plus récent, et fonctionne sous macOS, Linux ou WSL. L’installation se fait avec npm, puis une commande relie Git à tes agents de code et te demande quel modèle doit servir de relecteur.

Ensuite, tu pousses comme d’habitude. La documentation du projet détaille le reste des réglages.

npm install -g sphinx-understand
sphinx install
git push

Agents de code et modèles compatibles avec Sphinx

Sphinx fonctionne avec Codex, Claude Code, Cursor, OpenCode et Pi, ou avec Git seul, sans agent. Côté modèle, le relecteur peut tourner depuis ton agent de code existant, via OpenRouter ou sur n’importe quel point d’accès compatible avec l’API d’OpenAI.

Le projet indique aussi qu’il est conçu pour consommer peu de jetons (les unités de texte facturées par les modèles). Il ne donne pas, sur cette page, de chiffre de consommation.

Confidentialité de tes réponses et mode sphinx yolo

Deux garanties sont annoncées : tes réponses n’arrivent jamais à l’agent de code, et les fichiers .env ainsi que les clés ne sont jamais ouverts. Le but est que l’agent ne puisse pas « apprendre » tes réponses pour passer le contrôle à ta place.

Quand tu es pressé, sphinx yolo laisse passer les push. Chaque contournement est consigné dans un journal, ce qui garde une trace des fois où la vérification a été sautée.

Prix et réglages de Sphinx

Le projet est affiché comme gratuit et open source. En revanche, la page ne précise ni la licence exacte ni la façon de choisir les branches protégées : ces points sont à chercher dans la documentation. Le coût éventuel du modèle relecteur dépend du fournisseur que tu choisis.

Quelques repères

  • Hook Git : Un hook est un petit programme que Git lance automatiquement à un moment précis, par exemple avant d’envoyer du code vers un serveur. Il peut laisser l’opération se poursuivre ou la bloquer.
  • Diff : Un diff est la liste des différences entre deux versions de fichiers : les lignes ajoutées, supprimées ou modifiées. C’est ce qu’on lit pour relire un changement.

Questions fréquentes

Sphinx est-il gratuit ?

Oui, la page du projet présente Sphinx comme gratuit et open source. Le modèle qui joue le relecteur peut, lui, dépendre du fournisseur que tu choisis.

Comment installer Sphinx ?

Il faut Node 22.19 ou plus récent, sous macOS, Linux ou WSL. Tu installes Sphinx avec npm install -g sphinx-understand, puis tu lances sphinx install pour connecter Git et tes agents.

Sphinx fonctionne-t-il avec Claude Code et Cursor ?

Oui. Sphinx fonctionne avec Codex, Claude Code, Cursor, OpenCode et Pi, ou avec Git seul.

Comment passer outre Sphinx quand on est pressé ?

La commande sphinx yolo laisse passer les push. Chaque contournement est enregistré dans un journal.

À retenir

Sphinx ajoute une étape de compréhension avant un push sur une branche protégée : une question tirée du diff, posée par un relecteur qui n’a pas vu ta conversation avec l’agent. Il s’installe avec npm, fonctionne avec plusieurs agents de code ou Git seul, et garde une trace de chaque contournement.

Sources

githookagentsrevue de codenpm
Dans le même genre

Des fiches proches.

toute la famille
À lire aussi

Les dernières fiches.

tout l'annuaire

Le Carnet de Geekus · chaque vendredi

Les trouvailles de la semaine, dans ta boîte mail.

Un email, cinq minutes de lecture. En français, gratuit, sans publicité.

S'inscrire au Carnet →
  1. Le spécimen de la semaine, expliqué à fond
  2. L'actu IA en bref
  3. Les autres trouvailles et le mot de la semaine