Sphinx: la IA te toma examen antes del push.

Te frena el `git push` y te hace una pregunta sobre el código que cambió, para que no subas nada que no entiendas.

maticastro.ar/sphinx-examen
Want to follow it with your AI?

Copy the whole guide and paste it into Claude, ChatGPT or Codex: it walks you through it and helps when something doesn't work.

Qué es

Sphinx es una herramienta de código abierto (licencia MIT) que se mete en git push. Antes de subir, mira lo que cambió y te hace una pregunta sobre ese cambio. Si la contestás bien, sube. Si la contestás mal, te explica el código y te hace otra pregunta.

Sirve para cuando programás con IA y aceptás cambios porque andan, sin saber bien qué hacen.

Dato Valor
Paquete npm sphinx-understand
Versión revisada 0.1.19
Licencia MIT
Sistemas macOS, Linux o WSL
Requisito Node 22.19 o más nuevo
Web sphinx-six-theta.vercel.app
Código github.com/parthh01/sphinx

Con qué IA funciona

Funciona con Codex, Claude Code, Cursor, OpenCode y Pi, o solo con git. Las preguntas las corrige un modelo económico:

Agente Modelo que corrige
Claude Code Haiku
Codex GPT-6 Luna

Por defecto (--cli-billing plan) usa el plan con el que ya iniciaste sesión en tu IA, no una API key. También acepta OpenRouter o un endpoint compatible con OpenAI.

La herramienta no se paga, pero cada corrección gasta tokens de tu plan: en la prueba, un cambio de 6 líneas usó unos 9 400.

Instalación

  1. Instalá el paquete. Corré npm install -g sphinx-understand.
  2. Activalo. Corré sphinx install y elegí tu IA en el asistente.
  3. Listo para todos tus proyectos. sphinx install instala hooks de git globales (core.hooksPath), así que cubre los repos que ya tenés y los nuevos. Los hooks que ya tenías corren primero.

Cómo se usa

  1. Hacé el push como siempre. Corré git push.
  2. Abrí el cuestionario. Sphinx levanta un cuestionario local en el navegador e imprime su URL en la terminal («Sphinx questionnaire: http://127.0.0.1:…»).
  3. Contestá la pregunta. Es sobre tu propio cambio, por ejemplo qué pasa en un caso raro. La pregunta cambia en cada corrida.
  4. Seguí con el push. Si contestaste bien, te pregunta si seguís con el push. Si contestaste mal, te explica y te hace otra pregunta.

En el cuestionario tenés estas opciones:

Opción Para qué
Show hint Ver una pista
Explain this Pedir que te explique
Dispute question Discutir la pregunta
Skip this time Saltear esta vez
Stop push Cancelar el push

Ejemplo de la prueba

Cambio de 6 líneas en precio.js que agrega los cupones HOLA10 y VERANO25. Sphinx lo marcó como «small change» e hizo 1 pregunta:

Con tu cambio, si llamás precioFinal(1000, "HOLA10 ") (con un espacio al final), ¿qué devuelve y se lanza algún error? Decime qué pasa y por qué.

Respuesta correcta: devuelve 1000 y no da error, porque «HOLA10 » con el espacio no está en la lista de cupones.

Preguntas en español

Por defecto las preguntas salen en inglés. Para que salgan en español, agregá una línea en ~/.config/sphinx/context.md, por ejemplo:

Hacé todas las preguntas y explicaciones en español rioplatense (voseo).

La interfaz del cuestionario sigue en inglés.

Privacidad

  • Tus respuestas no le llegan al agente que escribe el código: solo ve si pasaste.
  • No abre los .env ni las claves.

Si algo falla

  • Si no instala, revisá que tengas Node 22.19 o más nuevo y que estés en macOS, Linux o WSL.
  • Si no se abre el navegador, copiá la URL que imprime la terminal («Sphinx questionnaire: http://127.0.0.1:…») y abrila a mano.
  • Si las preguntas salen en inglés, agregá la línea en ~/.config/sphinx/context.md.
  • Si querés sacarlo, corré sphinx uninstall: quita los hooks y restaura los que tenías antes.

Web oficial de Sphinx, `sphinx install --help` y `sphinx answer --help` (0.1.19), npm `sphinx-understand`, Show HN (2026-10-18) y prueba propia; revisado el 2026-10-28.

Want to follow it with your AI?

Copy the whole guide and paste it into Claude, ChatGPT or Codex: it walks you through it and helps when something doesn't work.

A new tip every day on my socialsTikTok @matidevvInstagram @matidevv

Let's talk about your project

Write to me describing what you need and I will reply. If a call or a meeting works better for you, we can arrange that too.

Message sent

Thanks for writing. I will reply to the email you left, and if a call is easier for you we can arrange one.
  • Email
    maticastrook@gmail.com
  • Where
    San Juan, Argentina · remote
  • Languages
    Native Spanish · technical English