OpenAI
Esta página se tradujo automáticamente. Ver el artículo original en inglés.

Configurar la plantilla de app de GitHub Enterprise en ChatGPT

Aprende cómo los administradores de espacios de trabajo pueden configurar la plantilla de app de GitHub Enterprise en ChatGPT con la GitHub App de su organización.

Última actualización: 7 days ago

Descripción general

Usa esta guía si eres administrador de un espacio de trabajo de ChatGPT y configuras la plantilla de app Enterprise de GitHub para tu organización. Una plantilla no es la app final que usan los miembros. Es un flujo de configuración que crea una app en borrador específica del espacio de trabajo después de que proporcionas la configuración requerida de GitHub Enterprise.

Para GitHub Enterprise, la configuración conecta ChatGPT con el host de GitHub Enterprise de tu organización. Creas una GitHub App, registras la URL de callback de ChatGPT, generas credenciales y luego pegas esos valores en el flujo de configuración de la plantilla de ChatGPT. Después de que ChatGPT crea la app en borrador, puedes publicarla y administrarla como otras apps del espacio de trabajo.

Qué estás configurando

Estás creando una app de GitHub Enterprise específica del espacio de trabajo en ChatGPT. La app usa:

  • Una GitHub App registrada en tu host de GitHub Enterprise.

  • El ID de cliente y el secreto de cliente de GitHub App para la autorización OAuth del usuario.

  • La clave privada de GitHub App para que ChatGPT pueda emitir tokens de instalación para operaciones de repositorio.

  • Un secreto de webhook y una URL de webhook para que GitHub Enterprise pueda enviar eventos de instalación y repositorio de vuelta a ChatGPT.

  • Tu hostname de GitHub Enterprise, como github.example.com.

Crea una GitHub App, no una GitHub OAuth App independiente. La configuración de la plantilla de ChatGPT requiere credenciales de GitHub App, una clave privada y configuración de webhook.

Antes de empezar

Necesitas:

  • Acceso de administrador o propietario del espacio de trabajo de ChatGPT.

  • Acceso de administrador de GitHub Enterprise o propietario de la organización que pueda crear e instalar GitHub Apps.

  • Solo el hostname de GitHub Enterprise, sin https:// ni ruta.

  • Una decisión sobre qué acciones de repositorio debe admitir ChatGPT, como búsqueda de repositorios de solo lectura, workflows de pull requests, workflows de issues, ediciones de archivos, GitHub Actions o workflows más amplios de Codex.

  • Un lugar seguro para manejar la clave privada y el secreto de cliente de GitHub App.

Mantén ChatGPT y GitHub Enterprise abiertos en pestañas separadas. No inventes la URL de callback. Copia la URL de callback exacta que se muestra en ChatGPT.

Valores para preparar

  • Hostname de GitHub Enterprise: por ejemplo, github.example.com.

  • URL de callback: cópiala del flujo de configuración de la plantilla de ChatGPT.

  • ID de cliente de GitHub App.

  • Secreto de cliente de GitHub App.

  • Clave privada PEM de GitHub App.

  • Secreto de webhook generado por ChatGPT.

  • URL de webhook generada después de crear la app en borrador en ChatGPT.

Iniciar la configuración de la plantilla en ChatGPT

  1. En ChatGPT, cambia al espacio de trabajo donde debe estar disponible la app.

  2. Abre Configuración del espacio de trabajo > Apps.

  3. Selecciona Directorio.

  4. Busca GitHub Enterprise.

  5. Selecciona la plantilla de app de GitHub Enterprise e inicia la configuración.

  6. Ingresa un nombre y una descripción claros para la app, como GitHub Enterprise o GitHub Enterprise - Engineering.

  7. Ingresa el hostname de GitHub Enterprise, como github.example.com.

  8. Copia la URL de callback que se muestra en ChatGPT. Mantén esta pestaña abierta.

  9. Copia el secreto de webhook generado si se muestra durante la configuración.

Ejemplo de URL de callback: https://chatgpt.com/connector/oauth/<callback_id>

No elimines el ID de callback, no agregues una barra final ni lo reemplaces por una URL genérica de ChatGPT.

Crear la GitHub App en GitHub Enterprise

  1. Abre tu host de GitHub Enterprise, como https://github.example.com.

  2. Ve a la organización o cuenta que debe ser propietaria de la app.

  3. Abre Configuración > Configuración de desarrollador > GitHub Apps.

  4. Selecciona Nueva GitHub App.

  5. Ingresa un nombre claro para la app, como ChatGPT GitHub Enterprise Connector.

  6. Ingresa una URL de página principal. Si no hay una página interna dedicada, usa la URL de la organización de GitHub Enterprise.

  7. En URL de callback, pega la URL de callback exacta copiada de ChatGPT.

  8. Mantén habilitada la opción Expirar tokens de autorización de usuario, a menos que tu equipo de seguridad tenga un motivo específico para cambiarla.

  9. Habilita Solicitar autorización del usuario durante la instalación para que los usuarios puedan autorizar la app durante el flujo de instalación o conexión.

  10. En la sección Dónde puede instalarse esta GitHub App, elige la opción más restringida que se ajuste a tu implementación.

  11. Crea la GitHub App.

Configurar permisos y eventos

Elige los permisos mínimos necesarios para las acciones de ChatGPT que planeas habilitar.

Para el descubrimiento de repositorios y las preguntas y respuestas de solo lectura, comienza con permisos de lectura como:

  • Metadatos: solo lectura. GitHub requiere metadatos para GitHub Apps.

  • Contenido: solo lectura, para acceder a archivos y contenido de repositorios.

  • Issues: solo lectura, si se necesita buscar o leer issues.

  • Pull requests: solo lectura, si se necesita buscar pull requests o contexto de revisión.

  • Actions: solo lectura, si se necesitan el estado de ejecuciones de workflows, jobs, registros o artefactos.

Para workflows de escritura, agrega permisos de escritura solo donde se necesiten, como Contenido, Pull requests, Issues, Actions o Workflows. Usa los permisos más restringidos que admitan las acciones previstas de ChatGPT.

Los eventos de webhook deben coincidir con los workflows que admites. Los eventos comunes incluyen Installation, Installation repositories, Push, Pull request, Issues, Issue comment, Workflow run y Workflow job.

Generar y copiar credenciales de GitHub App

  1. En la configuración de GitHub App, copia el ID de cliente.

  2. Genera un secreto de cliente y cópialo de inmediato.

  3. En Claves privadas, genera una clave privada.

  4. Descarga el archivo .pem y guárdalo de forma segura.

  5. Abre el archivo .pem localmente y copia el texto PEM completo, incluidas las líneas de inicio y fin.

La clave privada es confidencial. Trátala como una credencial. Si se expone, genera una clave privada nueva, actualiza la configuración de la app de ChatGPT y elimina la clave comprometida en GitHub Enterprise.

Finalizar la configuración en ChatGPT

  1. Vuelve a la pestaña de configuración de la plantilla de ChatGPT.

  2. Pega el ID de cliente de GitHub App en ID de cliente de OAuth.

  3. Pega el secreto de cliente de GitHub App en secreto de cliente de OAuth.

  4. Deja Alcances sin cambios, a menos que tu organización necesite anular intencionalmente los valores predeterminados de la plantilla.

  5. Confirma que el hostname de GitHub Enterprise contenga solo el hostname, como github.example.com.

  6. Pega o sube la clave privada PEM de GitHub App en Clave privada de GitHub App.

  7. Confirma que el secreto de webhook generado esté presente.

  8. Crea la app en borrador.

  9. Abre los detalles de la app en borrador creada en ChatGPT y copia la URL de webhook generada.

La URL de webhook debería verse así: https://connectors.api.openai.org/connectors/<connector_id>/webhook

Finalizar la configuración del webhook en GitHub Enterprise

  1. Vuelve a la configuración de GitHub App en GitHub Enterprise.

  2. Abre la configuración general de GitHub App.

  3. Habilita Webhooks activos si aún no están habilitados.

  4. Pega la URL de webhook de ChatGPT en URL de webhook.

  5. Pega el secreto de webhook de ChatGPT en Secreto de webhook.

  6. Mantén habilitada la verificación SSL.

  7. Confirma que los eventos de webhook suscritos coincidan con los permisos y las acciones que habilitaste.

  8. Guarda los cambios.

Publicar y administrar la app en ChatGPT

Crear la app en borrador no la pone automáticamente a disposición de los miembros. Después de revisar el borrador:

  1. Publica la app en borrador.

  2. Confirma que la app aparezca en Configuración del espacio de trabajo > Apps > Habilitadas.

  3. Configura Acceso de usuarios para los roles que deberían usarla.

  4. Revisa Control de acciones para las acciones de lectura y escritura.

  5. Revisa Permisos de la app para elegir cuándo ChatGPT pregunta a los miembros antes de usar la app.

  6. Pídele a un usuario de prueba permitido que abra Apps en ChatGPT y confirme que la app aparece.

Estos permisos de la app se aplican a las conversaciones de ChatGPT. Los agentes del espacio de trabajo usan controles por agente definidos por el creador del agente para determinar qué acciones de la app están disponibles y cuándo se solicita a los usuarios finales que las aprueben. Para el comportamiento de agentes, consulta: Agentes de espacio de trabajo de ChatGPT para Enterprise y Business.

Instalar y probar la GitHub App

  1. En GitHub Enterprise, instala la app de GitHub en la organización o cuenta.

  2. Elige todos los repositorios o repositorios seleccionados según la política del espacio de trabajo.

  3. Inicia el flujo de conexión desde ChatGPT como usuario permitido.

  4. Autoriza la app de GitHub cuando se te solicite.

  5. Ejecuta primero una pequeña acción de lectura, como enumerar repositorios accesibles u obtener un pull request conocido.

  6. Si las acciones de escritura están habilitadas, prueba con un repositorio de bajo riesgo antes de una implementación más amplia.

Hostname y comportamiento de OAuth

ChatGPT usa el hostname para derivar los puntos de acceso de GitHub Enterprise. Ingresa solo el host, como github.example.com o octocorp.ghe.com.

No ingreses una ruta de API, una ruta de repositorio ni github.com, a menos que ese sea el host exacto de GitHub Enterprise para esta app.

Solución de problemas

  • La URI de redirección no coincide: confirma que la URL de callback de GitHub App coincida exactamente con la URL de callback que se muestra en ChatGPT.

  • ChatGPT no puede crear ni guardar la app en borrador: confirma que todos los campos obligatorios estén presentes, incluidos hostname, ID de cliente de OAuth, secreto de cliente de OAuth, clave privada y secreto de webhook.

  • La autenticación se realiza correctamente, pero las llamadas al repositorio fallan: confirma que GitHub App esté instalada y tenga acceso al repositorio.

  • La API devuelve 403 o permisos insuficientes: agrega el permiso faltante de GitHub App y pide al propietario de la instalación que apruebe los permisos actualizados si se le solicita.

  • No aparecen repositorios: confirma que la instalación de la app incluya los repositorios esperados y que el usuario que autoriza en ChatGPT tenga acceso a ellos.

  • Fallan las entregas de webhook: confirma que la URL de webhook y el secreto de webhook coincidan con los valores de ChatGPT, mantén habilitada la verificación SSL y asegúrate de que el host de GitHub Enterprise pueda acceder a connectors.api.openai.org.

  • Errores de clave privada: confirma que se haya copiado el contenido PEM completo, incluidas las líneas de inicio y fin.

Referencias

¿Este artículo te fue útil?