Codex settings: le impostazioni da definire prima di affidare task all’AI

Parliamo del tuo progetto →

Questa guida mostra come preparare Codex prima di affidargli un task reale: quale ambiente usare, quali impostazioni di base definire, quale file di configurazione toccare e come controllare che il risultato resti dentro il perimetro. Il punto non è far fare tutto all’AI, ma costruire un avvio prudente, ripetibile e verificabile. OpenAI distingue infatti tra configurazione locale, sandbox e approvazioni, e separa anche i controlli di Codex Local da quelli di Codex Cloud; nel cloud il task può continuare mentre il computer è in sleep, quindi il classico “prevent sleep” non è il controllo decisivo da solo. Running Codex safely at OpenAI · ChatGPT Work and Codex

Per il passaggio dalla configurazione al workflow, può essere utile anche il contenuto correlato Codex, connettori e playbook: la lezione operativa per i workflow AI aziendali e, per l’uso ricorrente, Codex Automations: cosa cambia quando l’AI lavora su scadenze ricorrenti.

Risultato finale atteso

Alla fine della prova avrai:

  • un file config.toml impostato in modo prudente;
  • una cartella di lavoro con dati fittizi completi;
  • un prompt copiabile per un task innocuo;
  • un output compilato che non modifica il file di input;
  • un registro finale riutilizzabile per i test successivi.

A chi serve

Questa guida è pensata per team software, DevOps, IT e responsabili operativi che devono decidere quali impostazioni definire prima di assegnare task a un agente AI. È utile anche a chi deve introdurre Codex in un gruppo di lavoro senza confondere ambiente locale, cloud, permessi e responsabilità.

Strumenti

Ti bastano:

  • un ambiente Codex attivo nel piano disponibile;
  • un editor di testo;
  • una cartella locale di test;
  • nessun dato reale, nessuna credenziale, nessuna connessione obbligatoria a repository o internet.

Prerequisiti

Prima di iniziare, devono essere chiari tre punti:

  1. se il task vivrà in local o in cloud;
  2. chi può approvare eventuali richieste di accesso o scrittura;
  3. quali file sono ammessi e quali sono esclusi.

OpenAI documenta anche un livello di impostazioni iniziali a livello workspace, per fissare il punto di partenza di modello, reasoning level, speed, Fast Mode e comportamento della nuova chat per Work & Codex; queste impostazioni servono a definire l’assetto di partenza, non a superare i limiti di sicurezza o di perimetro. ChatGPT Work and Codex

Materiale fornito

Nel laboratorio useremo questi elementi:

  • un file di configurazione locale di esempio;
  • un dataset fittizio con tre ordini;
  • un prompt completo da copiare;
  • un output atteso compilato;
  • un registro finale per annotare il risultato.

1. Definire il perimetro prima di aprire Codex

Lavora prima su carta o in un file di appunti, non ancora dentro Codex. Scrivi una riga con il confine del lavoro: dove deve operare l’agente, che cosa può toccare, che cosa non può toccare. Se devi far girare un task più lungo senza sorveglianza continua, scegli consapevolmente il cloud; se ti serve lavorare su file locali, cartelle del progetto o risorse presenti sul tuo computer, usa l’ambiente locale. OpenAI distingue i due casi e chiarisce che il cloud può proseguire anche quando il computer va in sleep, quindi non bisogna affidarsi solo alle impostazioni del sistema operativo per tenere sveglia la sessione. ChatGPT Work and Codex

Se il tuo workspace espone impostazioni iniziali di modello o ragionamento, usale solo per fissare un default coerente con il compito. Non sono una scorciatoia per cambiare i permessi. La regola pratica è questa: prima definisci il perimetro, poi scegli come eseguirlo.

Cosa scrivere adesso

Ambiente scelto: local / cloud
File consentiti: cartella-lab/...
File esclusi: credenziali, repository reali, dati personali, internet
Responsabile approvazioni: nome o ruolo interno
Obiettivo del task: creare un report da dati fittizi senza modificare l’input

Risultato atteso
Hai una decisione chiara sul tipo di esecuzione e sui confini del task. Se questa riga non è ancora scrivibile, il laboratorio deve fermarsi qui.

Rimedio se il risultato diverge
Se non sai scegliere tra local e cloud, fermati e decidi in base a un solo criterio: il task deve usare file locali o può vivere interamente nel cloud? Se la risposta è incerta, il perimetro non è ancora pronto.

2. Preparare i file di lavoro e il prompt copiabile

Lavora in una cartella vuota, per esempio cartella-lab/. L’obiettivo è testare il comportamento di Codex con un input piccolo, completo e innocuo. Crea questa struttura:

cartella-lab/
├── dati/
│   └── ordini_fittizi.csv
└── output/

Inserisci nel file dati/ordini_fittizi.csv questo contenuto completo:

order_id,cliente,sku,qty,prezzo_unitario_eur,stato
A-1001,Alfa Srl,SKU-RED-01,2,19.90,nuovo
A-1002,Beta Spa,SKU-BLU-02,1,49.00,nuovo
A-1003,Gamma Coop,SKU-GRN-03,3,12.50,nuovo

Ora prepara il prompt da incollare in Codex. Il testo deve dire chiaramente tre cose: limite, compito, regole di stop. Non lasciare spazio a interpretazioni creative.

Sei Codex. Lavora solo sui file della cartella cartella-lab/ e non usare dati reali.

Compito:
1. Leggi dati/ordini_fittizi.csv.
2. Crea output/riepilogo_ordini.md con una tabella che riporti order_id, cliente, sku, qty, prezzo_unitario_eur e subtotale.
3. Calcola il subtotale per riga come qty × prezzo_unitario_eur.
4. Aggiungi in fondo il totale complessivo.
5. Non modificare il CSV di input.
6. Se ti manca un dato, fermati e chiedi chiarimento invece di inventarlo.
7. Prima di scrivere il file finale, mostra il piano in 3 punti.

Vincoli:
- Nessun accesso a repository, credenziali o internet.
- Nessuna modifica fuori da output/.
- Se serve una conferma, chiedila esplicitamente.

Formato atteso dell'output:
- titolo
- tabella
- totale complessivo

Risultato atteso
Hai un caso di test completo: input, obiettivo e limiti sono tutti esplicitati. Il prompt dice anche a Codex di fermarsi se manca un dato, così non rischi di ottenere numeri inventati.

Rimedio se il risultato diverge
Se il prompt è più vago di così, riscrivilo prima di procedere. Un task ambiguo produce risposte difficili da controllare, e in questa guida il controllo viene prima della comodità.

3. Scrivere il file di configurazione prudente

Adesso apri il file di configurazione locale nel percorso corretto. OpenAI indica ~/.codex/config.toml su macOS/Linux e %USERPROFILE%\.codex\config.toml su Windows; la configurazione che segue è la base prudente documentata per lavorare senza aprire troppo il perimetro. La vecchia modalità untrusted non è più supportata: per una partenza conservativa, OpenAI documenta sandbox_mode = "read-only" e approval_policy = "on-request". Using Codex with your ChatGPT plan

Inserisci questo contenuto:

sandbox_mode = "read-only"
approval_policy = "on-request"

Questa combinazione fa due cose diverse:

  • sandbox_mode delimita tecnicamente ciò che l’agente può fare;
  • approval_policy decide quando deve chiedere conferma.

OpenAI descrive proprio questa separazione tra confine tecnico e richiesta di approvazione, e chiarisce anche che la rete non è un canale aperto indiscriminatamente: le destinazioni attese sono gestite, i domini indesiderati vengono bloccati e quelli non familiari richiedono approvazione. Running Codex safely at OpenAI

Se il tuo workspace offre anche impostazioni iniziali di modello e comportamento della chat, usale con prudenza e non come sostituto della sandbox.

Risultato atteso
Codex parte con una configurazione restrittiva e prevedibile. Il primo obiettivo non è velocizzare il lavoro, ma impedire che l’agente esca dal perimetro senza consenso.

Rimedio se il risultato diverge
Se il file non viene letto, controlla prima il percorso e poi eventuali override di profilo o workspace. Se nel file è ancora presente untrusted, sostituiscilo con il baseline prudente sopra indicato.

4. Eseguire il primo run e leggere il piano prima dell’azione

Ora apri Codex e incolla il prompt preparato. Non chiedere subito la generazione del file: osserva prima il piano in tre punti, perché la richiesta lo impone. L’obiettivo di questo passaggio è capire se il sistema ha recepito il perimetro prima di iniziare a scrivere.

Un piano coerente, nel nostro caso, dovrebbe somigliare a questo:

1. Leggere il CSV di input e verificare le colonne presenti.
2. Calcolare i subtotali e il totale complessivo.
3. Scrivere il report in output/riepilogo_ordini.md senza modificare l’input.

Se invece il piano parla di internet, repository esterni, file non consentiti o modifiche fuori da output/, non approvare ancora: correggi il prompt e riparti.

Risultato atteso
Codex conferma il perimetro, mostra il piano e procede solo entro i limiti definiti.

Rimedio se il risultato diverge
Se l’agente prova a fare altro, riscrivi il prompt con due elementi espliciti: “solo questa cartella” e “fermati se manca un dato”. La chiarezza del vincolo è più importante della cortesia del testo.

5. Verificare il caso normale: report compilato e input intatto

Quando il task è andato a buon fine, apri output/riepilogo_ordini.md e controlla sia il contenuto sia l’assenza di modifiche al CSV originale. Il report atteso deve essere simile a questo:

# Riepilogo ordini

| order_id | cliente | sku | qty | prezzo_unitario_eur | subtotale |
|---|---|---|---:|---:|---:|
| A-1001 | Alfa Srl | SKU-RED-01 | 2 | 19.90 | 39.80 |
| A-1002 | Beta Spa | SKU-BLU-02 | 1 | 49.00 | 49.00 |
| A-1003 | Gamma Coop | SKU-GRN-03 | 3 | 12.50 | 37.50 |

**Totale complessivo:** 126.30 EUR

I calcoli corretti sono questi:

  • A-1001: 2 × 19.90 = 39.80
  • A-1002: 1 × 49.00 = 49.00
  • A-1003: 3 × 12.50 = 37.50
  • totale complessivo: 126.30

Questo è il caso normale della guida: il dato di partenza è completo, il risultato è riproducibile e il file di input resta identico.

Cosa controllare

  • il file di output esiste davvero;
  • il titolo e la tabella sono leggibili;
  • il CSV di input non è stato toccato;
  • il totale coincide con il calcolo manuale.

Rimedio se il risultato diverge
Se il totale non coincide, ricalcola prima di considerare il task valido. Se il CSV è stato modificato, la configurazione o il prompt sono sbagliati: il test va ripetuto da zero.

6. Gestire errore o dato mancante senza inventare valori

Lo stesso schema va provato anche quando manca un’informazione. È qui che la configurazione prudente mostra il suo valore: Codex non deve riempire i buchi con ipotesi. Prova almeno questi due casi.

Caso con dato mancante: colonna assente

Rimuovi dal CSV la colonna prezzo_unitario_eur e lancia di nuovo il prompt. Il comportamento corretto è fermarsi e chiedere chiarimento, perché senza prezzo unitario non si può calcolare il subtotale.

Un output corretto potrebbe essere questo, in forma breve:

Mi manca la colonna prezzo_unitario_eur. Non posso calcolare i subtotali senza questo dato. Vuoi che proceda quando il file viene corretto?

Caso con dato non valido: valore non numerico

Sostituisci qty con una stringa come due. Anche qui il sistema deve fermarsi invece di convertire o inventare il numero. Se il task continua come se nulla fosse, il prompt non è abbastanza rigoroso.

Caso fuori perimetro: internet o scrittura altrove

Se chiedi di consultare prezzi reali online, oppure di salvare il file fuori da output/, il comportamento corretto è fermarsi o chiedere conferma esplicita. La sandbox e le approvazioni servono proprio a impedire che il task diventi più ampio del previsto. Running Codex safely at OpenAI

Risultato atteso
Nei casi anomali Codex non inventa dati, non completa i buchi e non esce dal perimetro senza autorizzazione.

Rimedio se il risultato diverge
Se l’agente produce comunque un report completo, il prompt deve essere irrigidito. Aggiungi questa frase: “se un dato manca, fermati e chiedi chiarimento; non stimare, non arrotondare, non sostituire con zero”.

7. Prova finale, troubleshooting e registro riutilizzabile

A questo punto ripeti il test una seconda volta con la stessa cartella di lavoro, per dimostrare che il flusso è ripetibile. La prova finale non consiste nel vedere se funziona una volta, ma nel controllare che la stessa configurazione dia lo stesso comportamento atteso.

Controlli finali di accettazione

  • il file config.toml contiene solo le impostazioni prudenti previste;
  • il task usa la cartella giusta;
  • l’input non viene modificato;
  • il report è corretto sui dati completi;
  • il sistema si ferma o chiede chiarimento sui dati mancanti;
  • il comportamento locale e quello cloud non vengono confusi.

Troubleshooting essenziale

Se Codex non vede la configurazione

Controlla il percorso del file e verifica che non esistano altre impostazioni che sovrascrivono il comportamento. Su Windows e macOS/Linux il path è diverso; un file nel posto sbagliato non avrà effetto. Using Codex with your ChatGPT plan

Se il task si blocca in modo inatteso

Chiediti prima se stai usando il locale o il cloud. Nel cloud il computer può andare in sleep senza interrompere il task; in locale, invece, l’esecuzione dipende dal dispositivo e dalla sessione attiva. ChatGPT Work and Codex

Se Codex prova a scrivere fuori da output/

Non approvare e non lasciare passare il comportamento una volta sola. Interrompi, correggi il prompt e riparti con un perimetro più stretto.

Se il modello inventa un valore mancante

Aggiungi al prompt una regola di stop esplicita e, se serve, riduci il compito a una sola trasformazione per volta. Un task piccolo è più controllabile di un task intelligente ma poco verificabile.

Registro riutilizzabile

# Registro test Codex

- Data della prova:
- Ambiente usato: local / cloud
- File di configurazione letto correttamente: sì / no
- Valori impostati:
  - sandbox_mode:
  - approval_policy:
- Cartella di lavoro:
- File di input:
- File di output:
- Il CSV di input è rimasto intatto? sì / no
- Codex ha chiesto approvazioni? sì / no
- Codex ha chiesto chiarimenti su dati mancanti? sì / no
- Codex ha provato a uscire dal perimetro? sì / no
- Totale complessivo verificato a mano:
- Esito finale: approvato / da correggere
- Note di troubleshooting:

Approfondimenti correlati

Se vuoi tradurre questo schema in un processo operativo per il tuo team, puoi partire da AI e automazione responsabile e descrivere il processo che vuoi migliorare attraverso i contatti Dedaloop. Se il tuo caso riguarda task ricorrenti o una catena di lavoro più ampia, il pezzo su Codex, connettori e playbook aiuta a passare dalla configurazione al workflow senza confondere ambiente, permessi e responsabilità.

Fonti