Por que integrar o Devin com o GitHub?
Integrar o Devin à sua organização do GitHub permite que ele crie pull requests, responda a comentários em PRs e colabore diretamente nos seus repositórios. Isso permite que o Devin atue como um colaborador pleno na sua equipe de engenharia. Para começar, abra Settings → Connections → GitHub, clique em Add Connection e siga as instruções. Você selecionará quais repositórios o Devin poderá acessar e revisará as permissões necessárias.Usando GitHub Enterprise Server ou GitHub Enterprise Cloud com Data Residency? Veja o guia de integração com GitHub Enterprise Server para instruções de configuração.
Configurando a integração
- Na sua conta no Devin, abra Settings → Connections → GitHub e clique em Add Connection.

- Se você ainda não estiver logado no GitHub, será solicitado que se autentique.

- Selecione a organização do GitHub que você quer conectar ao Devin.

- Escolha se deseja conceder ao Devin acesso a All repositories ou Select repositories para controlar quais repositórios o Devin poderá acessar.

- Depois de concluir a autorização do GitHub, você será redirecionado para as configurações do Devin, onde poderá confirmar que a integração está ativa.

Usando o Devin com a integração com o GitHub
Para usuários do Core e do Teams
Assim que a integração estiver configurada, você poderá mencionar repositórios com @ diretamente nos seus prompts no aplicativo web do Devin.Para usuários Enterprise
Assim que a integração estiver configurada, você pode delegar repositórios a organizações específicas em Settings > Repositories.
Inicie o Devin a partir de um comentário no PR
Você pode delegar tarefas ao Devin sem sair do GitHub. Em qualquer PR aberto em um repositório conectado ao Devin, deixe um comentário que comece com/devin seguido do que você quer que seja feito:
Requisitos:
- Início do comentário — o comando deve ser a primeira coisa do comentário. Ele não diferencia maiúsculas de minúsculas e funciona tanto em comentários da conversa do PR quanto em comentários de revisão inline.
- Somente PRs abertos — comentários em issues ou em PRs fechados ou com merge são ignorados.
- Acesso de escrita — quem comenta precisa de permissão
writeouadminno repositório. - Conta vinculada — a conta do GitHub de quem comenta deve estar vinculada à conta do Devin, e a pessoa precisa ser membro de uma organização do Devin com acesso ao repositório e permissão para usar sessões do Devin.
Se uma sessão do Devin já estiver trabalhando no PR, os comentários
/devin são enviados para essa sessão em vez de iniciar uma nova.Vinculação de usuários
A conexão do GitHub App descrita acima vale para toda a organização. Além dela, cada usuário pode vincular sua própria conta do GitHub ao Devin para que o Devin atue sob sua identidade: os pull requests que o Devin abrir nas sessões desse usuário terão a autoria dele, e os comentários ou revisões que ele enviar pelo Devin Review aparecerão sob sua conta do GitHub. Para vincular uma conta pessoal do GitHub:- Acesse Configurações > Connections nas configurações da sua conta pessoal
- Localize a linha GitHub na lista de contas
- Clique em Link e conclua a autorização no GitHub
A linha do GitHub só aparece se a sua organização tiver uma conexão com o GitHub. Se ela não estiver visível, confirme se você é membro de uma organização do Devin com a integração com o GitHub configurada. Instâncias do GitHub Enterprise Server aparecem como linhas separadas de GitHub Enterprise identificadas pelo host, e são vinculadas da mesma forma.
- Devin: sempre abre pull requests como Devin
- User: abre como o usuário quando a conta git dele está vinculada; caso contrário, como Devin
- Apenas para o usuário: abre como o usuário e falha se a conta git dele não estiver vinculada (automações e service users continuam recorrendo ao Devin)
- Allow PRs to be opened by session participants: permite que o Devin abra um PR em nome de qualquer pessoa que tenha contribuído para a sessão, e não apenas de quem a iniciou.
- Require session access for PR comments: encaminha comentários no PR para uma sessão do Devin somente quando o autor do comentário tem acesso a essa sessão. Os administradores do Enterprise podem tornar essa configuração obrigatória para todas as organizações.
Gerenciando as permissões do Devin no GitHub
Durante a configuração, você pode conceder ao Devin acesso a todos os repositórios da sua organização ou limitar o acesso a repositórios específicos. Você pode ajustar o acesso a repositórios a qualquer momento nas configurações do GitHub:- Navegue até Settings > GitHub Apps da organização no GitHub (por exemplo,
https://github.com/organizations/<org_name>/settings/installations) - Selecione Configure para a integração Devin.ai
- Em Repository access, escolha conceder acesso a todos os repositórios ou selecione repositórios específicos
- Clique em Save para aplicar as alterações

Acesso de leitura e gravação a:
Essas permissões permitem que o Devin trabalhe nos seus repositórios como um colaborador comum — fazendo push de branches, abrindo pull requests (PRs) e participando de discussões de PRs.
Quando o GitHub App do Devin solicita novas permissões, o GitHub envia um e-mail aos administradores da sua organização para que eles as aprovem nas configurações da instalação. Enquanto isso, o Devin continua trabalhando com as permissões já concedidas.
Modelos de Pull Request
Quando o Devin cria um pull request, ele usa um modelo do seu repositório para estruturar a descrição do PR. Se você fornecer um modelo, o Devin seguirá esse formato ao enviar PRs para o GitHub.Modelo específico do Devin (recomendado)
Você pode fornecer ao Devin seu próprio modelo sem modificar seu modelo padrão voltado para pessoas, adicionando um arquivo chamadodevin_pr_template.md em um dos locais compatíveis de PULL_REQUEST_TEMPLATE abaixo. Isso é útil se você quiser que o Devin inclua contexto adicional, como uma lista de verificação para revisores ou um diagrama Mermaid dos arquivos modificados.
Ordem de busca de templates
Devin procura templates na seguinte ordem e usa o primeiro que encontrar:- PULL_REQUEST_TEMPLATE/devin_pr_template.md
- docs/PULL_REQUEST_TEMPLATE/devin_pr_template.md
- .github/PULL_REQUEST_TEMPLATE/devin_pr_template.md
- pull_request_template.md
- docs/pull_request_template.md
- .github/pull_request_template.md
Para saber mais sobre templates de pull request do GitHub (locais suportados, múltiplos templates, parâmetros de query, etc.), consulte a documentação do GitHub: Creating a pull request template for your repository.
Assinatura de commits
Para assinar os commits do Devin com GPG, configure a chave no seu ambiente para que ela persista entre sessões. Gerar a chave no terminal de uma sessão não funciona — toda sessão do Devin é iniciada a partir de uma nova cópia da imagem da máquina, então qualquer chave criada durante a sessão é descartada quando ela termina. Configure isso na camada de nível da organização (ou na camada Enterprise, se todas as suas org precisarem disso) para que todo repositório receba uma configuração de commits assinados:- Crie (ou escolha) uma conta de usuário dedicada no GitHub que será responsável tanto pela identidade do autor do commit quanto pelas credenciais usadas pelo Devin para fazer push — por exemplo,
devin@company.com. Usar uma única conta para ambos simplifica a configuração da assinatura; usar duas divide entre elas a configuração descrita abaixo. - Gere uma chave GPG localmente com o email dessa conta como UID, seguindo as instruções do GitHub.
- Importe a chave pública para a conta do GitHub cujo email verificado corresponde ao UID do GPG, em GitHub Configurações > SSH and GPG keys. O GitHub verifica assinaturas com base na identidade do committer, não na identidade que faz o push — a chave pública precisa estar na conta que é dona do email em
user.email. (Se essa for a mesma conta dedicada usada para fazer push, você só precisa fazer isso uma vez.) - Exporte a chave privada, codifique-a em base64 e adicione-a (junto com os
GIT_USER_NAME/GIT_USER_EMAILcorrespondentes) como segredos em Configurações → Recursos → Secrets. - Na sua configuração de ambiente em nível da organização, importe a chave e ative a assinatura no início de cada sessão. Consulte o exemplo de assinatura de commit com GPG pronto para copiar e colar para ver o YAML completo.
Considerações de segurança
- Proteção de branch: Recomendamos ativar regras de proteção de branch na branch principal para garantir que todas as verificações necessárias sejam concluídas com sucesso antes que o Devin possa mesclar alterações.
- Permissões em nível de organização: O Devin usa as permissões concedidas em nível de organização, não as permissões do usuário que está executando a sessão.
- Acesso consistente: Todos os usuários com acesso tanto à organização no GitHub quanto à organização no Devin compartilham as mesmas permissões de integração do Devin.
- Criação de repositório: O Devin não pode criar novos repositórios na sua conta do GitHub.
Lista de IPs permitidos
Se a sua organização exigir uma lista de IPs permitidos para acesso ao GitHub, adicione os seguintes endereços 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
- 4.204.199.103
- 140.232.64.0/26
Esses endereços IP podem mudar em atualizações futuras. Recomendamos acompanhar nossas notas de versão para quaisquer alterações.
Solução de problemas: organização do GitHub conectada à organização errada do Devin
Se a sua organização do GitHub já estiver conectada a uma organização do Devin à qual você não tem acesso, um administrador da organização no GitHub pode remover a instalação existente e reinstalá-la em outra organização do Devin.-
Acesse github.com/settings/installations e clique em Configure ao lado de Devin.ai Integration.
Se necessário, mude para o contexto correto da organização do GitHub usando o menu suspenso Go to settings page no canto superior direito.

-
Na página de instalação, role até a seção Danger zone e clique em Uninstall para remover a Devin.ai Integration da organização do GitHub.

- Volte para app.devin.ai e atualize a página. Agora você pode reinstalar a integração do GitHub na sua organização do Devin.
Perguntas frequentes sobre a integração com o GitHub
Posso conectar uma conta pessoal do GitHub à conta do Devin da minha organização?
Posso conectar uma conta pessoal do GitHub à conta do Devin da minha organização?
Sim, você pode conectar uma organização do GitHub ou uma conta pessoal do GitHub à sua organização no Devin. No entanto, recomendamos conectar a conta que tenha as permissões apropriadas para o Devin acessar os repositórios de que sua equipe precisa.
Como o app do GitHub lida com a autenticação de usuários?
Como o app do GitHub lida com a autenticação de usuários?
Somente usuários que são membros da organização que instalou a integração com o GitHub podem usá-la em suas sessões do Devin. O Devin herda o acesso à integração com o GitHub com base na associação do usuário à organização.
Como o Devin gerencia e rotaciona chaves de criptografia?
Como o Devin gerencia e rotaciona chaves de criptografia?
As chaves de criptografia são gerenciadas pelo AWS KMS e rotacionadas periodicamente.

