.devin/ del tuo progetto (o in una configurazione a livello utente) e Devin CLI li esegue in corrispondenza degli eventi del ciclo di vita corrispondenti. Anche gli hook esistenti nelle directory .claude/ vengono rilevati automaticamente — vedi Dove si trovano gli hook.
Cosa possono fare gli Hook?
Applicare policy
Bloccare comandi pericolosi, richiedere conferma per azioni specifiche o limitare l’accesso ai file.
Aggiungere contesto
Inserire istruzioni o informazioni aggiuntive quando vengono richiamati strumenti specifici.
Eseguire effetti collaterali
Eseguire script, inviare notifiche o registrare eventi quando si verificano determinate condizioni.
Modificare le autorizzazioni
Concedere o limitare dinamicamente le autorizzazioni in base al contesto.
Esempio rapido
.devin/hooks.v1.json nel tuo progetto:
./scripts/check-command.sh prima di ogni esecuzione di un comando shell. Lo script riceve i dati dell’evento su stdin e può bloccare l’azione restituendo un codice di uscita non zero.
Eventi degli hook
Per i dettagli su ciascun evento e sui dati disponibili, consulta Hook del ciclo di vita.
Formato degli hook
command o prompt), un matcher facoltativo (regex sul tool_name dell’evento hook) e una configurazione:
Hook di comando
DEVIN_PROJECT_DIR viene impostata automaticamente sulla directory radice del progetto.
Consulta Using the Matcher per i nomi degli strumenti integrati e il formato dei nomi degli strumenti MCP che puoi abbinare.
Formato di output
decision di primo livello (con un reason facoltativo):
additionalContext all’interno di un oggetto hookSpecificOutput contrassegnato con il nome dell’evento:
updatedInput all’interno di un hookSpecificOutput PreToolUse. I campi in updatedInput vengono integrati negli argomenti dello strumento, quindi puoi aggiornarne un sottoinsieme (ad es. solo command):
Codici di uscita
Dove si trovano gli hook
A livello di progetto
A livello di utente (globale)
In
.devin/hooks.v1.json, l’oggetto hooks coincide con l’intero file (non è necessaria alcuna chiave contenitore). In tutte le altre posizioni, hooks è annidato sotto la chiave "hooks" in un file Settings.Gli hook dei percorsi
.claude/ vengono caricati quando read_config_from.claude è abilitato (per impostazione predefinita). Se necessario, puoi disabilitarlo nella tua configurazione utente.Verifica degli hook
/hooks per visualizzare tutti gli hook attualmente caricati e i relativi file sorgente:
Prossimi passaggi
Hook del ciclo di vita
Approfondisci ogni tipo di evento e i dati disponibili.
Configurazione
Controlla da quali percorsi di configurazione Devin CLI legge gli hook.

