Vai al contenuto principale

Configurare l’integrazione

Integrare Devin con GitHub consente a Devin di accedere ai tuoi repository e aprire 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 di GitHub Enterprise, crea un nuovo account GitHub da usare per Devin. Questo è importante per garantire che tutti gli accessi e l’utilizzo di Devin possano essere tracciati e gestiti correttamente.
  2. Aggiungi il nuovo account di servizio a tutte le organizzazioni GitHub pertinenti come Membro. Verifica che l’account abbia accesso a tutti i repository a cui Devin deve accedere.

Generare un Personal Access Token per Devin

  1. Quando hai effettuato l’accesso 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 i campi Token name ed Expiration.
    Nota: Quando il token scade, Devin perderà immediatamente tutto l’accesso a GitHub e sarà necessario creare un nuovo token.
  6. In Resource owner, seleziona l’organizzazione corretta.
Se non visualizzi l’organizzazione corretta in “Resource owner”, assicurati che l’enterprise e l’organizzazione abbiano abilitato l’uso dei personal access token con ambito fine (fine-grained).

Abilitazione nelle impostazioni Enterprise

Solo gli Enterprise Admin possono aggiornare queste impostazioni. Assicurati che i personal access token siano abilitati anche nelle impostazioni della specifica 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. Nella parte superiore della 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 writeConsenti a Devin di contribuire alla codebase
IssuesRead and writeConsenti a Devin di aprire nuove issue
MetadataRead onlyConsenti a Devin di visualizzare metadati cruciali su un repository, ad esempio chi ne è il proprietario
Pull requestsRead and writeConsenti a Devin di creare nuove PR (pull request)
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: Potrebbe essere necessaria l’approvazione di un admin, a seconda delle impostazioni di GitHub.
  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 a 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, contatta [email protected].

Verificare localmente le autorizzazioni del PAT

Prima di condividere il token con Cognition, verifica che abbia le 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: Validate Devin token permissions"

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

# Crea una pull request (verifica il permesso di scrittura delle pull request)
gh pr create --title "Test: Validate Devin token permissions" \
  --body "This is a test PR to validate token permissions." \
  --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 andare a buon fine 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 quali sotto-organizzazioni di Devin hanno accesso a ciascun repository (consulta Autorizzazioni del repository) Una volta completata l’integrazione, puoi accedere all’applicazione web di Devin e @menzionare qualsiasi repository nei tuoi prompt. Se stai utilizzando 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 una 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 sul branch master per garantire che le verifiche vengano eseguite e rispettate prima che Devin possa eseguire il merge di qualsiasi modifica.
  • Se Devin è connesso all’account GitHub della tua organizzazione, avrà le stesse autorizzazioni di qualsiasi utente con accesso alle organizzazioni GitHub e Devin.
  • Devin non rispecchia le autorizzazioni dell’utente che sta eseguendo una sessione con Devin, ma mantiene le autorizzazioni concesse a livello di organizzazione.
  • Devin non può creare nuovi repository nel tuo account GitHub.