@alexis-reillo/git-helper
v1.0.0
Published
Analiza Pull Requests de GitHub usando Inteligencia Artificial, desde la terminal.
Maintainers
Readme
git-helper (CLI)
Analiza Pull Requests de GitHub usando Inteligencia Artificial, directamente desde la terminal — con una interfaz interactiva a pantalla completa estilo Claude Code.
Instalación
# Uso puntual, sin instalar
npx @alexis-reillo/git-helper
# Instalación global
npm i -g @alexis-reillo/git-helper
git-helperRequiere Node.js >= 18.
Inicio rápido (interfaz interactiva)
Ejecuta git-helper sin argumentos para abrir la TUI a pantalla completa:
git-helper- La primera vez un asistente te guía en dos pasos: eliges tu proveedor de IA (Gemini, OpenAI, Claude, Kimi o MiniMax) y pegas su API key, y conectas tu cuenta de GitHub (ver Token de GitHub). Todo se guarda y no vuelve a pedirse.
- Verás la lista de tus PRs pendientes. Navega con
↑↓, pulsa⏎para analizar uno con IA,rpara refrescar yqpara salir.
Tip visual: usa una terminal moderna (Windows Terminal, iTerm2…) con una Nerd Font para que la mascota y los iconos se vean perfectos.
Token de GitHub (primer uso)
git-helper necesita acceso a tu cuenta de GitHub para listar tus Pull Requests pendientes. Tienes tres formas de dárselo (de más a menos cómoda):
- Automática (recomendada): abre
git-helpery elige "Iniciar sesión con el navegador": se abre github.com, autorizas y la terminal continúa sola — sin crear ningún token a mano. Si no hay navegador disponible (SSH, contenedores), el enlace y el código quedan visibles para abrirlo donde sea. - Con el comando
config(persiste en~/.config/git-helper/.env, permisos0600):git-helper config set GITHUB_TOKEN ghp_xxx - Variable de entorno (puntual, no se guarda):
export GITHUB_TOKEN=ghp_xxx # bash/zsh $env:GITHUB_TOKEN="ghp_xxx" # PowerShell
Cómo crear el token: ve a
github.com/settings/tokens → Generate new
token → marca el scope repo (o un fine-grained con lectura de repos y PRs).
El token se guarda solo en tu equipo. Para verlo/borrarlo:
git-helper config list(enmascarado) ·git-helper config unset GITHUB_TOKEN.
Comandos (modo no interactivo)
Además de la TUI, todo está disponible como comandos sueltos (útil para scripting):
| Comando | Alias | Descripción |
| ------------------- | --------- | -------------------------------------------- |
| git-helper | — | Abre la interfaz interactiva a pantalla completa. |
| git-helper list | ls | Lista tus Pull Requests pendientes (requiere GITHUB_TOKEN). |
| git-helper review | analyze | Analiza un PR concreto con IA. |
| git-helper config | — | Gestiona la configuración guardada (claves y tokens). |
review
git-helper review --owner <owner> --repo <repo> --pr <number>| Opción | Alias | Descripción |
| ----------------- | ----- | ------------------------------------ |
| --owner <owner> | -o | Propietario del repo (ej: vercel) |
| --repo <repo> | -r | Nombre del repositorio (ej: next.js) |
| --pr <number> | -p | Número del Pull Request |
| --json | — | Imprime el resultado en JSON (sin formato visual) |
| --no-optimize | — | Envía el diff íntegro, sin podar ruido no revisable (lockfiles, generados, binarios…). Gasta más tokens |
list
git-helper list # tabla bonita
git-helper list --json # salida JSON para scriptsconfig
git-helper config set GITHUB_TOKEN ghp_...
git-helper config set GOOGLE_GENERATIVE_AI_API_KEY ...
git-helper config list # secretos enmascarados
git-helper config unset OPENAI_API_KEY
git-helper config path # ruta del archivoConfiguración (variables de entorno)
Prioridad: variables de entorno reales > .env del directorio actual >
config global guardada (config set).
| Variable | Requerida | Descripción |
| --------------------------------- | ------------------- | -------------------------------------------------------------- |
| GITHUB_TOKEN | Para list y la TUI | Token de GitHub (scope repo). Sube el rate limit y permite repos privados. |
| AI_PROVIDER | No (gemini) | Proveedor de IA: gemini, openai, anthropic, kimi o minimax. |
| GOOGLE_GENERATIVE_AI_API_KEY | Si AI_PROVIDER=gemini | Clave de Google AI Studio. |
| OPENAI_API_KEY | Si AI_PROVIDER=openai | Clave de OpenAI. |
| ANTHROPIC_API_KEY | Si AI_PROVIDER=anthropic | Clave de Anthropic. |
| MOONSHOT_API_KEY | Si AI_PROVIDER=kimi | Clave de Moonshot. |
| MINIMAX_API_KEY | Si AI_PROVIDER=minimax | Clave de MiniMax. |
| AI_MODEL | No | Fuerza un modelo concreto (por defecto, el recomendado del proveedor, p. ej. gemini-2.5-flash). |
| AI_BASE_URL | No | Base URL alternativa para kimi/minimax (proveedores compatibles con la API de OpenAI). |
| AI_ENSEMBLE_RUNS | No (3) | Nº de ejecuciones del ensemble por análisis (mediana). 1 lo desactiva. |
| GITHUB_CLIENT_ID / GITHUB_CLIENT_SECRET | No | Credenciales de una OAuth App de GitHub para habilitar "Iniciar sesión con el navegador". |
