Documentación
Guía de Understanding Code
Instala, configura y empieza a recibir análisis automáticos de tu repositorio en menos de un minuto.
¿Qué es?
Understanding Code es una GitHub Action que ejecuta un análisis estático de tu repositorio y del último cambio (push o PR) y publica los resultados en un issue nuevo. Incluye métricas, detección de lenguajes, complejidad ciclomática, TODOs y sugerencias.
Funciona gratis dentro de GitHub Actions, sin base de datos ni servidores externos. Si añades una clave de OpenAI, los resúmenes pasan a ser generados por IA.
Instalación
Crea el archivo .github/workflows/understanding-code.yml en tu repositorio:
name: Understanding Code
on:
push:
pull_request:
permissions:
contents: read
issues: write
jobs:
understanding-code:
runs-on: ubuntu-latest
name: Analizar y publicar issue
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Understanding Code
uses: DevLabs-Team/Understanding-Code@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}uses: DevLabs-Team/Understanding-Code@v1 por la ruta de tu fork, p. ej. tu-usuario/Understanding-Code@v1.Haz commit y push. En unos segundos verás el primer issue con el análisis de tu repositorio.
Configuración
Todos los inputs disponibles:
| Input | Descripción | Default |
|---|---|---|
| github_token | Token con permiso para crear issues. Usa secrets.GITHUB_TOKEN. | requerido |
| mode | auto | push | pull_request | manual | auto |
| base_ref | Ref base para el diff (PR usa rama base; push usa HEAD~1). | auto |
| head_ref | Ref de cabecera del diff. | SHA actual |
| openai_api_key | Clave de OpenAI para resumen con IA (opcional). | vacío |
| issue_label | Etiqueta de los issues generados. | understanding-code |
| close_previous | Cerrar issues anteriores del action. | true |
| enabled | Desactivar el action sin borrarlo del workflow. | true |
Resumen con IA
Añade el input openai_api_key y crea un repository secret llamado OPENAI_API_KEY:
- name: Understanding Code
uses: DevLabs-Team/Understanding-Code@v1
with:
github_token: ${{ secrets.GITHUB_TOKEN }}
openai_api_key: ${{ secrets.OPENAI_API_KEY }}Ejemplo de issue
Un issue generado incluye: resumen del repositorio, lenguajes principales, los cambios del último push/PR, el análisis (heurístico o IA) y sugerencias.
🧠 Understanding Code · acme/web — push main
248
archivos
12.4k
LOC
1.1k
comentarios
28
TODOs
El lenguaje principal es TypeScript. En el último cambio se tocaron 3 archivos (214 adiciones, 56 eliminaciones).
💡 Sugerencia: el endpoint /auth/login creció en complejidad, considera refactorizarlo.