Vai al contenuto principale

Configurare l’integrazione

Integrare Devin con il tuo account GitHub consente a Devin di accedere ai tuoi repository e creare pull request. In questo modo Devin può diventare un vero collaboratore del tuo team di ingegneria.

Crea un account di servizio per Devin

  1. All’interno della tua istanza GitHub Enterprise, crea un nuovo account GitHub che Devin possa utilizzare. Questo è importante per garantire che tutti gli accessi e l’uso di Devin possano essere correttamente tracciati e gestiti.
  2. Aggiungi il nuovo account di servizio creato a tutte le organizzazioni GitHub pertinenti in qualità di Member. Verifica che l’account abbia accesso a tutti i repository a cui Devin deve accedere.

Generare un Personal Access Token per Devin

  1. Quando sei connesso con l’account di servizio, fai clic sull’immagine del profilo nell’angolo in alto a destra, quindi fai clic su Settings.
  2. Nella barra laterale sinistra, fai clic su Developer settings.
  3. Nella barra laterale sinistra, sotto Personal access tokens, fai clic su Fine-grained tokens.
  4. Fai clic su Generate new token.
  5. Compila Token name e Expiration.
    Nota: Quando il token scade, Devin perderà immediatamente qualsiasi accesso a GitHub e sarà necessario creare un nuovo token.
  6. In Resource owner, seleziona l’organizzazione corretta.
Se non vedi l’organizzazione corretta in “Resource owner”, assicurati che nell’enterprise e nell’organizzazione sia abilitato l’uso dei fine-grained personal access tokens.

Abilitazione nelle impostazioni Enterprise

Solo gli Enterprise Admin possono aggiornare queste impostazioni. Assicurati che i personal access token siano abilitati anche nelle impostazioni specifiche dell’organizzazione.
  1. Nell’angolo in alto a destra di GitHub Enterprise Server, fai clic sulla tua immagine del profilo, quindi fai clic su Enterprise settings.
  2. In cima alla pagina, fai clic su Policies.
  3. In Policies, fai clic su Personal access tokens.
  4. Seleziona la scheda Fine-grained tokens.
  5. In Fine-grained personal access tokens, abilita l’accesso.
  6. Fai clic su Save.

Abilitazione nelle impostazioni dell’organizzazione

Solo gli Organization Admin possono aggiornare queste impostazioni. Assicurati che i personal access token siano abilitati anche nelle impostazioni Enterprise.
  1. Nell’angolo in alto a destra di GitHub, fai clic sulla tua immagine del profilo, quindi fai clic su Organizations.
  2. Accanto all’organizzazione, fai clic su Settings.
  3. Nella barra laterale sinistra, sotto Personal access tokens, fai clic su Settings.
  4. Seleziona la scheda Fine-grained tokens.
  5. In Fine-grained personal access tokens, abilita l’accesso per la tua organizzazione.
  6. Fai clic su Save.
  1. In Repository access, seleziona i repository con cui vuoi che Devin lavori. I token includono sempre l’accesso in sola lettura a tutti i repository pubblici su GitHub.
  2. Assicurati che il token abbia le seguenti autorizzazioni, necessarie affinché Devin funzioni correttamente:
PermissionAccess levelDescription
ContentsRead and writeConsente a Devin di contribuire alla codebase
IssuesRead and writeConsente a Devin di aprire nuove issue
MetadataRead onlyConsente a Devin di visualizzare i metadati fondamentali di un repository, ad esempio chi ne è il proprietario
Pull requestsRead and writeConsente a Devin di creare nuove PR
Autorizzazioni aggiuntive aiuteranno Devin a collaborare meglio con il tuo team, a seconda del tipo di lavoro che gli chiedi di svolgere.
  1. Fai clic su Generate Token e salva il token visualizzato.
    Nota: A seconda delle impostazioni di GitHub, potrebbe essere necessaria l’approvazione di un Admin.
  2. Per verificare che il token abbia tutti gli accessi e le autorizzazioni necessari, crea e fai il push di un branch di test dalla tua macchina locale verso un repository dell’organizzazione.
  3. Una volta che il token è stato generato e testato, contatta il tuo referente Cognition per completare il processo di configurazione. Se al momento non stai lavorando direttamente con il nostro team, contattaci all’indirizzo [email protected].

Verifica locale delle autorizzazioni del PAT

Prima di condividere il token con Cognition, assicurati che disponga delle autorizzazioni corrette eseguendo il push di un branch di test:
# Autenticati con gh CLI utilizzando il tuo token
export GH_TOKEN=your_personal_access_token
export GH_HOST=your-github-enterprise-server.com

# Clona il repository
gh repo clone your-organization/your-repository
cd your-repository

# Crea un branch di test
git checkout -b test-devin-token-$(date +%s)

# Apporta una piccola modifica
echo "# Test" >> TEST.md
git add TEST.md
git commit -m "Test: Convalida permessi token Devin"

# Esegui il push del branch (verifica il permesso di scrittura sui contenuti)
git push origin HEAD

# Crea una pull request (verifica il permesso di scrittura sulle pull request)
gh pr create --title "Test: Convalida permessi token Devin" \
  --body "Questa è una PR di test per convalidare i permessi del token." \
  --base main

# Pulizia: chiudi la PR di test ed elimina il branch di test
gh pr close pr-number --delete-branch
Risultati attesi: Il push e la creazione della PR devono riuscire senza errori di autenticazione. Se il push non riesce, verifica che il token abbia l’autorizzazione “Contents: Read and write”. Se la creazione della PR non riesce, verifica che il token abbia l’autorizzazione “Pull requests: Read and write”.

Utilizzare Devin con l’integrazione GitHub

Ora che GitHub è integrato, puoi configurare a quali sotto-organizzazioni di Devin concedere l’accesso a ciascun repository (consulta Enterprise GitHub Permissions). Una volta configurata l’integrazione, puoi accedere all’applicazione web di Devin e @menzionare qualsiasi repository nel tuo prompt. Se utilizzi un repository per la prima volta, ti consigliamo di seguire il processo di configurazione dell’ambiente di sviluppo nel flusso di onboarding per garantire che Devin disponga delle informazioni più accurate e aggiornate su come lavorare con la tua codebase.
Devin risponderà automaticamente a qualsiasi commento su PR finché la sessione non viene archiviata.

Considerazioni sulla sicurezza

Alcune informazioni aggiuntive riguardo alle autorizzazioni di Devin in GitHub:
  • Consigliamo di abilitare le protezioni dei branch sul branch master per garantire che i check vengano eseguiti e superati prima che Devin possa effettuare il merge di qualsiasi modifica.
  • Se Devin è connesso all’account GitHub della vostra organizzazione, avrà le stesse autorizzazioni di un utente che ha accesso sia all’organizzazione GitHub che a quella Devin.
  • Devin non replicherà le autorizzazioni dell’utente che avvia una sessione con Devin, ma manterrà le autorizzazioni concesse a livello di organizzazione.
  • Devin non può creare nuovi repository nel vostro account GitHub.