> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Terminale

> Usa il terminale avanzato di Devin Desktop con la modalità Command, l'integrazione con l'agente, la modalità Turbo per l'esecuzione automatica e le allowlist/deny list per controllare i comandi.

<div id="command-in-the-terminal">
  # Command nel terminale
</div>

Usa [Command](/it/desktop/command/windsurf-overview) nel terminale (`Cmd/Ctrl+I`) per generare la sintassi CLI corretta da prompt in linguaggio naturale.

<Frame style={{ border: 'none', background: 'none' }}>
  <img src="https://mintcdn.com/cognitionai/hxeMffzXgF_RWx-U/desktop/assets/windsurf-terminal-command.png?fit=max&auto=format&n=hxeMffzXgF_RWx-U&q=85&s=3e67784716df176170b2bccf1e002839" width="980" height="164" data-path="desktop/assets/windsurf-terminal-command.png" />
</Frame>

<div id="send-terminal-selection-to-the-agent">
  # Invia al pannello dell'agente la selezione nel terminale
</div>

Evidenzia una parte dello stack trace e premi `Cmd/Ctrl+L` per inviarla al pannello dell'agente, dove potrai fare riferimento a questa selezione nel prompt successivo.

<Frame style={{ border: 'none', background: 'none' }}>
  <img src="https://mintcdn.com/cognitionai/hxeMffzXgF_RWx-U/desktop/assets/windsurf-terminal-selection-mention.png?fit=max&auto=format&n=hxeMffzXgF_RWx-U&q=85&s=9b04fbc1dd2ea876ff784e2745f4dd8a" width="744" height="144" data-path="desktop/assets/windsurf-terminal-selection-mention.png" />
</Frame>

<div id="mention-your-terminal">
  # Menziona il tuo terminale con @
</div>

Parla con l'agente dei tuoi terminali attivi.

<Frame>
  <video autoPlay muted loop playsInline src="https://mintcdn.com/cognitionai/hxeMffzXgF_RWx-U/desktop/assets/terminal-at-mention.mp4?fit=max&auto=format&n=hxeMffzXgF_RWx-U&q=85&s=2e28c374b0c7c9a413ecc4accb50faa0" data-path="desktop/assets/terminal-at-mention.mp4" />
</Frame>

<div id="auto-executed-agent-commands">
  # Comandi dell'agente eseguiti automaticamente
</div>

L'agente può eseguire autonomamente comandi del terminale con l'autorizzazione dell'utente. Puoi configurare il modo in cui l'agente gestisce l'esecuzione dei comandi tramite quattro diversi livelli di esecuzione automatica, e alcuni comandi del terminale possono essere accettati o rifiutati automaticamente tramite gli elenchi Allow e Deny.

<div id="auto-execution-levels">
  ## Livelli di esecuzione automatica
</div>

<Note>
  I livelli di esecuzione automatica si applicano a Cascade. Il [Local Agent di Devin](/it/desktop/devin-local) li sostituisce con il proprio [modello di autorizzazioni](/it/desktop/devin-local#permissions-model), che controlla invece l'esecuzione dei comandi tramite regole allow, ask e deny.
</Note>

Devin Desktop offre quattro livelli di esecuzione automatica dei comandi, dandoti il controllo su come l'agente esegue i comandi nel terminale:

| Livello | Descrizione |
| - | - |
| **Disabilitato** | L'esecuzione automatica è completamente disabilitata. Tutti i comandi richiedono l'approvazione manuale prima dell'esecuzione. |
| **Solo allowlist** | Solo i comandi che corrispondono alle voci della tua allowlist possono essere eseguiti automaticamente. Tutti gli altri comandi richiedono l'approvazione manuale. |
| **Auto** | L'agente usa il proprio giudizio per stabilire se un comando può essere eseguito automaticamente in sicurezza. I comandi ritenuti potenzialmente rischiosi richiederanno comunque la tua approvazione. Questa funzionalità è disponibile solo per i messaggi inviati con modelli premium. |
| **Turbo** | Tutti i comandi vengono eseguiti automaticamente e immediatamente, tranne quelli presenti nella tua deny list. |

Puoi selezionare il livello di esecuzione automatica che preferisci dal pannello Devin Settings nell'angolo in basso a destra dell'editor.

<Frame>
  <img style={{ maxHeight: "500px" }} src="https://mintcdn.com/cognitionai/hxeMffzXgF_RWx-U/desktop/assets/windsurf/cascade/cascade-turbo-mode.png?fit=max&auto=format&n=hxeMffzXgF_RWx-U&q=85&s=ae2e7e169ff832dbc848f2b486a1bc64" width="680" height="60" data-path="desktop/assets/windsurf/cascade/cascade-turbo-mode.png" />
</Frame>

<div id="admin-controlled-maximum-level-teams-enterprise">
  ### Livello massimo controllato dagli amministratori (Teams & Enterprise)
</div>

Per gli utenti di Teams ed Enterprise, gli amministratori possono impostare un livello massimo consentito di esecuzione automatica per la propria organizzazione. Questa impostazione limita i livelli disponibili ai membri del team, consentendo agli admin di applicare criteri di sicurezza e offrendo comunque agli utenti una certa flessibilità entro questi limiti.

Quando un admin imposta un livello massimo, gli utenti possono selezionare qualsiasi livello fino a quel massimo, incluso. Ad esempio, se un admin imposta il massimo su "Auto", gli utenti possono scegliere tra Disabled, Allowlist Only o Auto, ma non possono abilitare la modalità Turbo.

Gli amministratori possono configurare questa impostazione nell'<a href="https://windsurf.com/team/settings" target="_blank">Admin Portal</a>, alla voce Team Settings.

<div id="team-wide-command-lists-teams-enterprise">
  ### Elenchi di comandi per tutto il team (Teams & Enterprise)
</div>

Gli amministratori possono configurare una **allowlist e una denylist valide per tutto il team** per i comandi del terminale, applicabili a tutti i membri del team. Questi elenchi si aggiungono alle allowlist/denylist individuali degli utenti.

| Tipo di elenco | Comportamento |
| - | - |
| **Allowlist** | I comandi che corrispondono alle voci di questo elenco verranno eseguiti automaticamente senza conferma dell'utente (quando l'esecuzione automatica è abilitata per l'utente). |
| **Denylist** | I comandi che corrispondono alle voci di questo elenco richiederanno sempre l'approvazione dell'utente prima dell'esecuzione, indipendentemente dalle impostazioni dell'utente. |

**Comportamenti chiave:**

* **Le configurazioni del team e dell'utente vengono unite**: gli elenchi a livello di team vengono combinati con la [allowlist](#allow-list) e la [deny list](#deny-list) individuali di ciascun utente. Un comando che corrisponde all'allowlist del team o dell'utente verrà eseguito automaticamente (a meno che non sia bloccato da una denylist).
* La **denylist ha la precedenza** sull'allowlist: se un comando corrisponde a entrambi gli elenchi (a livello di team o di utente), richiederà l'approvazione

Per configurare gli elenchi di comandi per tutto il team, vai al <a href="https://windsurf.com/team/settings" target="_blank">Admin Portal</a> → Team Settings → Comandi del terminale → **Gestisci elenchi**.

<div id="allow-list">
  ### Allowlist
</div>

Un'allowlist definisce un insieme di comandi del terminale che verranno sempre eseguiti automaticamente. Le voci che terminano con ` *` corrispondono a tutti i comandi che iniziano con gli stessi token; le altre voci corrispondono solo a quel comando esatto. Ad esempio, se `git *` è presente nella tua allowlist, l'agente accetterà sempre `git add -A`.

Puoi gestire la tua allowlist dalle card dei comandi del terminale dell'agente:

* Quando l'agente è in attesa di approvazione, apri il menu a tendina accanto a **Run**. In **Allowlist**, scegli **Prefix** per eseguire automaticamente tutti i comandi che iniziano con il comando base (ad esempio, `git *`), oppure **Allow** per eseguire automaticamente solo quel comando esatto.
* Su un comando già eseguito, apri **Auto-run settings** (l'icona delle impostazioni sulla card del comando) e scegli le stesse opzioni.

Seleziona di nuovo la voce evidenziata per rimuoverla dalla tua allowlist.

<div id="deny-list">
  ### Deny list
</div>

Una deny list definisce un insieme di comandi del terminale che non verranno mai eseguiti automaticamente. Ad esempio, se `rm *` è nella tua deny list, l'agente chiederà sempre l'autorizzazione per eseguire `rm index.py`.

Per aggiungere un comando alla tua deny list, apri il menu a tendina accanto a **Run** (oppure **Auto-run settings** su un comando già eseguito) e scegli **Deny**. In questo modo viene negato ogni comando che inizia con il comando base. Seleziona di nuovo **Deny** per rimuoverlo.

<Note>
  Queste allowlist e deny list per singolo utente si applicano a Cascade. Per il [Local Agent di Devin](/it/desktop/devin-local), configura invece i pattern dei comandi in **Devin Local settings** alle voci **Allow**, **Deny** e **Ask**. Consulta le [autorizzazioni](/it/cli/reference/permissions) per la sintassi delle regole. Le liste valide per l'intero team si gestiscono separatamente nell'Admin Portal, come descritto sopra in Team-Wide Command Lists.
</Note>

<div id="dedicated-terminal">
  # Terminale dedicato
</div>

Devin Desktop offre un terminale dedicato che l'agente può usare per eseguire comandi su macOS e Linux.
Questo terminale dedicato è separato dal tuo terminale predefinito e usa una shell fissa per ciascuna piattaforma: `zsh` su macOS e `bash` su Linux.

<Frame>
  <img style={{ maxHeight: "350px" }} src="https://mintcdn.com/cognitionai/WE51TvKjsiyk1ZHl/desktop/assets/windsurf/dedicated-terminal.png?fit=max&auto=format&n=WE51TvKjsiyk1ZHl&q=85&s=5950aff728dc78dcfb4d3f1304232496" width="1248" height="430" data-path="desktop/assets/windsurf/dedicated-terminal.png" />
</Frame>

Il terminale dedicato *utilizzerà* la tua configurazione per quella shell, quindi gli alias e le variabili d'ambiente definiti nei tuoi file di configurazione della shell saranno disponibili (per esempio, `.zshrc` su macOS o `.bashrc` su Linux).

Se il tuo terminale predefinito usa una shell diversa e vuoi che Devin Desktop utilizzi variabili d'ambiente condivise, consigliamo di creare un file di configurazione condiviso che entrambe le shell possano caricare con `source`.

<div id="troubleshooting">
  ### Risoluzione dei problemi
</div>

Se riscontri problemi con il terminale dedicato, puoi ripristinare il terminale legacy abilitando l'opzione Legacy Terminal Profile nelle Settings di Devin Desktop.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.