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:

yaml
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 }}
Importante: si haces un fork o tu repo de la action se llama distinto, cambia la línea 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:

InputDescripciónDefault
github_tokenToken con permiso para crear issues. Usa secrets.GITHUB_TOKEN.requerido
modeauto | push | pull_request | manualauto
base_refRef base para el diff (PR usa rama base; push usa HEAD~1).auto
head_refRef de cabecera del diff.SHA actual
openai_api_keyClave de OpenAI para resumen con IA (opcional).vacío
issue_labelEtiqueta de los issues generados.understanding-code
close_previousCerrar issues anteriores del action.true
enabledDesactivar 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:

yaml
      - 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.