Per iniziare
Prerequisiti: Devin deve avere accesso ai tuoi repository prima che tu possa configurarne l’ambiente. Se non hai ancora configurato l’integrazione Git, consulta Prima di iniziare per i passaggi di configurazione. Gli utenti Enterprise devono anche concedere a ogni org l’accesso ai rispettivi repo in Enterprise Settings > Autorizzazioni repository.
Usi ancora la configurazione classica? Puoi passare alla configurazione dichiarativa in qualsiasi momento. Devin può gestire per te gran parte della migrazione. Consulta Migrazione alla configurazione dichiarativa
.
- Lascia fare a Devin (consigliato)
- Configurazione manuale
Ideale per la maggior parte degli utenti. Devin analizza il tuo progetto, determina quali strumenti e dipendenze sono necessari e genera il blueprint per te. Tu devi solo rivederlo e approvarlo.
Avvia una sessione Devin
Apri una nuova sessione e chiedi a Devin di configurare il repository. Ad esempio: “Configura l’ambiente per questo repo.”
Rivedi e approva
Devin propone un blueprint. Vedrai delle schede di suggerimento nella tua timeline. Esaminale e fai clic su Approva.
Come funziona
| Concetto | Cos’è | Analogia |
|---|---|---|
| Blueprint | Una configurazione YAML che descrive cosa installare e come configurare l’ambiente di Devin | Dockerfile |
| Build | Il processo che esegue il blueprint, clona le repo e produce uno snapshot | docker build |
| Snapshot | Un’immagine immutabile e avviabile dell’ambiente da cui vengono avviate le sessioni | Docker image |
Sezioni del blueprint
clone facoltativo per i blueprint a livello di repo:
| Sezione | Scopo | Quando viene eseguita |
|---|---|---|
initialize | Installa strumenti, runtime e pacchetti di sistema | Solo durante le build. I risultati vengono salvati nello snapshot. |
maintenance | Installa/aggiorna le dipendenze del progetto, scrive le configurazioni delle credenziali | Durante le build. Viene mostrato all’agente all’inizio della sessione (non eseguito automaticamente). |
knowledge | Informazioni di riferimento per Devin (comandi di lint, test e build) | Non viene eseguito. Caricato nel contesto di Devin all’inizio della sessione. |
clone | Esegue l’override dei valori predefiniti di git clone per il repository (solo a livello di repo) | Applicato durante il passaggio di clone della build. |
initialize è pensato per le operazioni che devono avvenire una sola volta: runtime dei linguaggi, pacchetti di sistema, strumenti CLI globali.
maintenance è pensato per l’installazione delle dipendenze che devono rimanere aggiornate. Viene eseguito durante le build e mostrato all’agente all’inizio della sessione, così può eseguirlo di nuovo se le dipendenze sono cambiate (ad es. dopo aver recuperato la versione più recente del codice). I comandi non vengono eseguiti automaticamente all’inizio della sessione, ma devono comunque essere rapidi e incrementali (usa npm install, non npm ci).
knowledge contiene informazioni di riferimento e non viene eseguito. È qui che indichi a Devin i comandi corretti per lint, testing e build. Mantieni le voci leggere e focalizzate sui comandi eseguibili.
clone (solo a livello di repo) esegue l’override dei valori predefiniti che Devin usa quando clona la repo nello snapshot — ad esempio, facendo il checkout di un branch non predefinito (ref), cambiando la destinazione del clone (path) o saltando sottomoduli od oggetti LFS. Ogni campo è facoltativo. Per l’elenco completo dei campi, vedi riferimento del blueprint → clone.
Knowledge qui vs la funzionalità di prodotto Knowledge: La sezione
knowledge del blueprint serve per brevi riferimenti ai comandi legati all’ambiente. Per documenti di architettura, convenzioni e
flussi di lavoro del team, usa invece la funzionalità Knowledge standalone.YAML multi-documento: L’editor del blueprint supporta YAML multi-documento usando il separatore
---. Questo ti consente di organizzare blueprint complessi in sezioni logiche all’interno di un singolo editor.Ambito dei blueprint
| Livello | Dove configurare | Cosa inserire qui |
|---|---|---|
| Organizzazione | Settings > Environment > Blueprints > Configurazione a livello di org | Strumenti condivisi tra tutte le repo: runtime dei linguaggi, gestori di pacchetti, autenticazione Docker |
| Repository | Settings > Environment > Blueprints > [nome repo] | Configurazione specifica del progetto: npm install, comandi lint/test/build |
maintenance di una repo può usare gli strumenti installati nell’initialize della org. Se solo una repo ha bisogno di uno strumento, inseriscilo nel blueprint di quella repo. Se invece serve a tutte le repo, inseriscilo nel blueprint della org.
Utenti Enterprise: Esiste un terzo livello, il blueprint Enterprise, che si applica a tutte le organizzazioni. Per maggiori dettagli, consulta Panoramica dell’ambiente Enterprise.
Build e sessioni
Lo snapshot
Come funzionano le build
Come funzionano le sessioni
- Viene scaricata la versione più recente del codice per le repo pertinenti.
- I comandi
maintenance(Enterprise, org e repo) vengono resi disponibili all’agente come contesto — non vengono eseguiti automaticamente. L’agente può eseguirli di nuovo se rileva che le dipendenze sono cambiate dall’ultima build. - Le voci di
knowledgedi quella repo vengono caricate nel contesto di Devin.
Knowledge è per repo. Se hai configurato 5 repo, Devin vede solo le voci di Knowledge della repo su cui sta lavorando.
Cosa attiva una build
| Attivazione | Descrizione |
|---|---|
| Salvataggio di un blueprint | Creazione, aggiornamento o eliminazione di un blueprint |
| Aggiunta o rimozione di un repository | Qualsiasi modifica all’elenco dei repository |
| Aggiunta di un segreto del repository | Per rendere disponibili i nuovi segreti è necessaria una rebuild |
| Attivazione manuale | Facendo clic su Build snapshot nella UI |
| Aggiornamento periodico | Automatico, circa ogni 24 ore |
| Suggerimento di Devin | Devin propone una modifica al blueprint durante una session |
Stati delle build
| Status | Meaning |
|---|---|
| Success | Tutti i passaggi sono stati completati. Lo snapshot è pronto. |
| Partial | Alcuni passaggi a livello di repo non sono andati a buon fine, ma lo snapshot è utilizzabile. Le repo completate con successo funzionano normalmente; per quelle non riuscite è necessario correggere i blueprint. |
| Failed | Errore critico (configurazione dell’org o di Enterprise non riuscita). Lo snapshot non è utilizzabile. |
| Cancelled | Sostituita da una build più recente o annullata manualmente. |
Gestione del tuo ambiente
Stati dei repository
| Stato | Significato |
|---|---|
| Configurato | Ha un blueprint con inizializzazione/manutenzione/Knowledge. È completamente configurato nello snapshot. |
| Incluso | Clonato nello snapshot, ma senza blueprint personalizzato. Devin può accedere al codice. |
| Disponibile | Connesso all’org, ma non aggiunto all’ambiente. Non clonato. |
Secrets
$VARIABLE_NAME. Aggiungili nella scheda Secrets dell’editor del blueprint.
initialize, quel valore rimane nello snapshot. Inserisci in maintenance i passaggi che scrivono le credenziali, così vengono aggiornati durante le build periodiche.
Per maggiori dettagli sugli ambiti dei segreti e sul loro comportamento, consulta il riferimento del blueprint.
Repository multipli
~/.bashrc), ha la precedenza quella eseguita per ultima. Per evitare conflitti, inserisci le installazioni degli strumenti condivisi nel blueprint org-wide.
GitHub Actions
setup-python, setup-node e setup-go, che si occupano automaticamente della gestione delle versioni e della configurazione del PATH.
Per dettagli sulla sintassi, esempi e limitazioni, consulta GitHub Actions nei blueprint.
Monorepo
Blocco e aggiornamenti automatici
success o partial e avere meno di 7 giorni) e fai clic su Blocca. Quando il blocco è attivo, gli aggiornamenti periodici vengono ignorati e l’interfaccia mostra Aggiornamenti automatici in pausa.
Per sbloccare: fai clic su Riprendi aggiornamenti automatici. Devin passa alla build riuscita più recente.
Blueprint basati su Git
.devin/blueprint.yaml direttamente nel tuo repository. Dopo aver unito le modifiche, chiama l’API di sincronizzazione (o fai clic su Sync nella UI) per aggiornare il blueprint, quindi avvia una build. In questo modo ottieni lo stesso flusso di lavoro di revisione del codice che usi per il codice dell’applicazione, con la sincronizzazione automatizzata tramite un passaggio di CI.
Consulta Git-backed blueprints per le istruzioni di configurazione e i dettagli.
Risoluzione dei problemi di build
Il passaggio Initialize non è riuscito
initialize nel tuo blueprint e salva. Una nuova build viene attivata automaticamente.
Clonazione del repository non riuscita
Passaggio di manutenzione non riuscito
maintenance o initialize per installare le dipendenze mancanti, oppure correggi il file di lock nel tuo repository.
Timeout della build
Perfezionare le soluzioni
- Verifica i log di build per individuare l’errore
- Aggiorna il blueprint pertinente
- Salva (una nuova build si attiva automaticamente)
- Monitora i log della nuova build
- Ripeti finché la build non va a buon fine
Non è necessario attendere che una build fallita termini. Salvare una nuova configurazione annulla qualsiasi build in coda e ne avvia una nuova da zero.
Prossimi passaggi
Build differenziali
Accelera le build ricompilando solo i workspace i cui blueprint sono cambiati.
GitHub Actions nei blueprint
Usa GitHub Actions per installare linguaggi, strumenti e SDK senza dover scrivere script shell.
Workspace e monorepo
Subshell, ambiti del workspace e voci di Knowledge per repo multi-package.
Riferimento del blueprint
Riferimento completo dei campi: tipi di passaggio, variabili d’ambiente, segreti e file allegati.
Libreria di template
Blueprint da copiare e incollare per Python, Node.js, Go, Java, Ruby, Rust e pattern avanzati.
Blueprint basati su Git
Archivia i blueprint nel tuo repo come
.devin/blueprint.yaml e sincronizzali tramite l’API o la UI.Migrazione dalla configurazione classica
Guida passo passo per passare dalla procedura guidata interattiva ai blueprint dichiarativi.
Gestione degli ambienti Enterprise
Gestione degli ambienti a livello Enterprise: gerarchia a 3 livelli, segreti e configurazione tra org.

