Saltar al contenido principal

¿Por qué integrar Devin con GitHub?

Integrar Devin en tu organización de GitHub permite que Devin cree pull requests, lea y responda a tus comentarios en PR, etc. Esto hace que Devin pueda ser un verdadero colaborador en tu equipo de ingeniería. ¡La configuración es sencilla! Ve a app.devin.ai > Settings > Integrations > GitHub, haz clic en Connect y sigue los pasos de integración de la aplicación de GitHub que aparecen en pantalla. Asegúrate de seleccionar el acceso a los repositorios relevantes y de revisar los permisos.
¿Usas GitHub Enterprise Server? Consulta la guía de integración de GitHub Enterprise Server para ver las instrucciones de configuración usando tokens de acceso personal.

Configurar la integración

¿Tienes dificultades? Consulta nuestra página de Problemas comunes para encontrar soluciones a los problemas más habituales.
  1. En tu cuenta de Devin en app.devin.ai, ve a Settings > Integrations > Github, y haz clic en el botón “Connect” para integrar tu organización con la aplicación de Devin para GitHub.
  2. Serás redirigido a GitHub, donde podrás seleccionar la cuenta de GitHub y los repositorios para conectar a Devin y revisar los permisos correspondientes.
    • Si estás configurando la integración de GitHub en nombre de tu organización, asegúrate de seleccionar la cuenta de tu empresa.
Devin
  1. Una vez que hayas completado todos los pasos de configuración en Github, se te redirigirá a la página de configuración de la cuenta de Devin, donde podrás confirmar que la integración se haya configurado correctamente.
Devin
  1. [Solo para clientes Enterprise] Agrega la cuenta de GitHub cognition-team a los repositorios correspondientes. Esto nos permite ayudar a incorporar a Devin a tu base de código y supervisar la actividad de Devin.
Recomendamos habilitar protecciones de rama en master para garantizar que se apliquen las comprobaciones antes de que Devin pueda fusionar cualquier cambio.

Uso de Devin con la integración de GitHub

Una vez que la integración esté configurada, puedes ir a la aplicación web de Devin y deberías poder mencionar el repositorio con @ en tu prompt. Si estás usando un repositorio por primera vez, te recomendamos seguir el proceso de configuración del entorno de desarrollo en el flujo de incorporación para asegurarte de que Devin tenga la información más precisa y actualizada sobre cómo trabajar con tu base de código.
Devin responderá automáticamente a cualquier comentario en un PR siempre que la sesión no haya sido archivada

Plantillas de Pull Request

Cuando Devin crea un pull request, intentará estructurar la descripción del PR utilizando una plantilla de tu repositorio. Si proporcionas una plantilla, Devin seguirá su estructura al redactar la descripción que envía en GitHub.

Plantilla específica de Devin (recomendada)

Puedes darle a Devin su propia plantilla sin cambiar tu plantilla predeterminada para personas, agregando un archivo llamado devin_pr_template.md en una de las ubicaciones PULL_REQUEST_TEMPLATE compatibles que se indican a continuación. Esto es útil si quieres que Devin incluya instrucciones adicionales (por ejemplo, una lista de comprobación para revisores o instrucciones para incluir un diagrama Mermaid de los archivos modificados).

Búsqueda y orden de precedencia

Devin busca el primer archivo existente en el siguiente orden (se usa la primera coincidencia que se encuentre):
  1. PULL_REQUEST_TEMPLATE/devin_pr_template.md
  2. docs/PULL_REQUEST_TEMPLATE/devin_pr_template.md
  3. .github/PULL_REQUEST_TEMPLATE/devin_pr_template.md
  4. pull_request_template.md
  5. docs/pull_request_template.md
  6. .github/pull_request_template.md
Si ninguno de estos archivos existe, Devin recurre a su formato interno predeterminado para la descripción del PR.
Si ya tienes un archivo GitHub pull_request_template.md que quieres que Devin siga exactamente, simplemente cópialo (o crea un symlink) en una de las rutas devin_pr_template.md indicadas arriba.
Para obtener más información sobre las plantillas de pull request de GitHub (ubicaciones admitidas, múltiples plantillas, parámetros de consulta, etc.), consulta la documentación de GitHub: Creating a pull request template for your repository.

Configurar los permisos de Devin

Gestión de permisos

Debes ser administrador de la organización de GitHub donde está instalada la integración de Devin para gestionar permisos
Al configurar la integración, puedes elegir otorgar permisos para que Devin pueda acceder a todos los repositorios de la organización o solo a un conjunto específico de repositorios.
Siempre puedes ajustar los permisos desde la página de configuración de la integración en GitHub una vez que la aplicación esté conectada:
  • Paso 1: Ve a la configuración de integraciones de GitHub
  • Paso 2: Busca Devin.ai Integration y haz clic en “Configure”
  • Paso 3: Desplázate hasta la sección “Repository access” para gestionar los permisos
Devin
Devin requiere los siguientes permisos: Acceso de lectura a:
PermisoDescripción
dependabot alertsPermite que Devin resuelva alertas de Dependabot en tu nombre (es decir, actualizando versiones de dependencias)
actionsPermite que Devin vea las acciones configuradas para un repositorio con el fin de entender si los cambios de Devin pasan CI
checksPermite que Devin vea las comprobaciones configuradas para un repositorio con el fin de entender si los cambios de Devin pasan CI
commit statusesPermite que Devin vea si un commit pasa CI
deploymentsPermite que Devin vea qué versiones de un repositorio se han desplegado
metadataPermite que Devin vea metadatos cruciales sobre un repositorio, como quién es el propietario
packagesPermite que Devin vea qué versiones de un repositorio se han publicado como paquete
pagesPermite que Devin consulte páginas asociadas con un repositorio, p. ej., para ver documentación
repository advisoriesPermite que Devin vea avisos de seguridad relacionados con un repositorio para ayudar a corregir problemas de seguridad
repository hooksPermite que Devin vea los hooks configurados para un repositorio, p. ej., linting y verificación de tipos
repository projectsPermite que Devin vea proyectos asociados con un repositorio, p. ej., para recuperar información sobre una tarea
Acceso de lectura y escritura a:
PermisoDescripción
codePermite que Devin contribuya al código base
discussionsPermite que Devin contribuya a las discusiones
issuesPermite que Devin abra nuevos issues
pull requestsPermite que Devin cree nuevos PRs
workflowsPermite que Devin configure nuevos workflows, p. ej., para ayudar a configurar CI/CD
Solicitamos estos permisos para que Devin pueda trabajar en tu repositorio igual que un colaborador habitual. En concreto, permitimos que Devin suba nuevas ramas, abra PRs y contribuya a las discusiones de PRs, lo cual es esencial para que Devin pueda contribuir de forma productiva a tu código base.

Firma de commits

Durante la configuración de tu repositorio, puedes usar la terminal de Devin para generar una clave GPG que se utilizará para firmar commits, según el proceso de GPG descrito en la documentación de GitHub. Recomendamos crear una cuenta de GitHub ficticia en tu organización para cargar allí la clave GPG (por ejemplo, [email protected]), de modo que puedas verificar qué commits provienen de Devin.
Devin

Consideraciones de seguridad

Información adicional sobre los permisos de Devin en GitHub:
  • Recomendamos habilitar protecciones de rama en master para garantizar que se apliquen las comprobaciones antes de que Devin pueda fusionar cualquier cambio.
  • Si Devin está conectado a la cuenta de GitHub de tu organización, entonces tendrá los mismos permisos que tiene cualquier usuario con acceso a las organizaciones de GitHub y Devin.
  • Devin no reflejará los permisos del usuario que ejecute una sesión con Devin; conservará los permisos otorgados a nivel de organización.
  • Devin no puede crear repositorios nuevos en tu cuenta de GitHub.

Lista de IP permitidas

Si necesita autorizar los servicios de Devin para que accedan a los recursos de GitHub de su organización, agregue las siguientes direcciones IP:
  • 100.20.50.251
  • 44.238.19.62
  • 52.10.84.81
  • 52.183.72.253
  • 20.172.46.235
  • 52.159.232.99
(Tenga en cuenta que estas direcciones IP pueden cambiar en futuras actualizaciones.)

Preguntas frecuentes sobre la integración con GitHub

Sí, un usuario puede optar por conectar una organización de GitHub o una cuenta personal a la cuenta de Devin de su organización, pero recomendamos conectar la cuenta que tenga los permisos necesarios para que Devin ejecute sesiones en nombre de la organización.
Solo los usuarios autenticados que tengan acceso/permisos a la organización con la que se configuró la integración de GitHub pueden usarla en sus ejecuciones de Devin. En otras palabras, Devin solo tendrá acceso a una integración de GitHub si lo inician personas que formen parte de las organizaciones que instalaron esa integración de GitHub.
Las claves de cifrado son gestionadas por AWS KMS y se rotan periódicamente.