Per accedere a queste modifiche, devi aggiornare Codex CLI alla versione 0.163.0 o successiva. Gli aggiornamenti della CLI sono facoltativi: le installazioni esistenti mantengono il comportamento attuale finché non le aggiorni.
Se la tua automazione installa
@openai/codex@latest, potrebbe recepire questa modifica alla prossima installazione o al prossimo aggiornamento. Se hai installato Codex CLI globalmente con npm, eseguinpm install -g @openai/codex@latest, poi eseguicodex --versionper verificare l'aggiornamento.Per rimandare la modifica, vincola la versione a
@openai/codex@0.162.0. Un'installazione eseguita una sola volta con@latestnon si aggiorna automaticamente. I flussi di lavoro vincolati a versioni precedenti mantengono il comportamento precedente.Per le integrazioni TypeScript, aggiorna
@openai/codex-sdke il runtime incluso. Per le integrazioni Python, aggiornaopenai-codexe il relativo runtime Codex. Aggiornare solo la CLI globale potrebbe non aggiornare il runtime di un SDK. Se configuri un percorso personalizzato per l'eseguibile, aggiorna anche quell'eseguibile.
Gli ID dei modelli configurati manualmente ma assenti da un catalogo altrimenti disponibile continueranno a essere gestiti automaticamente come prima nella CLI e in Codex Desktop, anche quando Daybreak è attivo. La loro assenza dal catalogo, da sola, non impedisce che una richiesta vada a buon fine.
La disponibilità dei modelli cyber nel selettore dei modelli potrebbe essere introdotta separatamente. Una volta abilitata, gli utenti che usano già una versione supportata non devono scaricare altro per vedere i nuovi modelli disponibili. Riapri il selettore dei modelli o riavvia Codex per aggiornare l'elenco.
Attivare Daybreak nella CLI interattiva
Avvia Codex con il metodo di autenticazione abituale.
Per attivare Daybreak, digita
/daybreak.Codex mostrerà
Daybreak attivo. Si applica ai nuovi turni.L'impostazione si applicherà al thread attivo e verrà salvata come predefinita per le nuove sessioni.
Per disattivare Daybreak, esegui di nuovo lo stesso comando (
/daybreak).
Abilitare Daybreak nella CLI in modalità headless
I flussi di lavoro headless vengono eseguiti senza un'interfaccia utente interattiva, in genere tramite codex exec in script, processi pianificati o ambienti CI. In questa modalità non compare il prompt interattivo “Abilita Daybreak” (/daybreak). Puoi invece:
Attivare Daybreak per una specifica esecuzione della CLI aggiungendo
-c daybreak=truea ogni comando per cui vuoi ridurre i rifiuti. Ad esempio, puoi inserire:
codex exec -c daybreak=true "Review the changes in this repository."
Mantieni il prompt esistente e le altre opzioni del comando. Aggiungi questa impostazione a ogni invocazione che deve usare Daybreak, inclusi i comandi negli script, nei processi pianificati e nella configurazione CI.
Impostare Daybreak come predefinito per le nuove sessioni ed esecuzioni della CLI aggiungendo
daybreak=trueal file di configurazione caricato da Codex.Il file di configurazione utente predefinito è
~/.codex/config.toml. Se la tua automazione impostaCODEX_HOME, usa invece$CODEX_HOME/config.toml. Inserisci l'impostazione al livello principale, al di fuori di sezioni come[features].Apporta la modifica nell'ambiente in cui viene effettivamente eseguita l'automazione. Aggiornare la configurazione del tuo portatile non aggiorna quella di un runner CI o di una macchina remota.
L'impostazione si applica anche alle nuove sessioni interattive che usano la stessa configurazione. Le sessioni riprese e quelle create tramite fork mantengono la scelta salvata per Daybreak; una nuova impostazione predefinita non la sostituisce.
Tieni presente che un'impostazione da riga di comando ha la precedenza sulla configurazione salvata per quella specifica invocazione. Puoi quindi mantenere
daybreak = truenella configurazione e usare-c daybreak=falseper una singola esecuzione.
Abilitare Daybreak con un provider di inferenza tramite proxy
Puoi usare Daybreak in Codex CLI continuando a instradare le richieste di inferenza attraverso il tuo proxy esistente. Codex effettua una richiesta separata al catalogo dei modelli per individuare quelli che supportano Daybreak per il tuo progetto.
Prima di iniziare, assicurati di avere un provider proxy funzionante in Codex CLI, una chiave API OpenAI di un progetto con accesso a Daybreak e al modello che vuoi usare, e la versione v0.167.0 di Codex CLI.Documentazione OpenAI sull'accesso dei progetti a Daybreak
Aggiorna il tuo provider proxy aprendo ~/.codex/config.toml e individuando la sezione [model_providers.<id>] relativa al tuo proxy. Aggiungi a quella sezione le ultime due righe dell'esempio seguente. Mantieni l'ID del provider, l'URL del proxy e le impostazioni di autenticazione esistenti.
[model_providers.proxy]name = "Proxied with Cyber"base_url = "https://<your-proxy>/v1"model_catalog_url = "<https://chatgpt.com/backend-api/codex/models>"capabilities.cyber_access_programs = true
Se la configurazione include già una sezione [model_providers.<id>.capabilities], inserisci lì cyber_access_programs = true e mantieni model_catalog_url nella sezione padre del provider.Documentazione di riferimento della configurazione di CodexAutentica la richiesta al catalogo scegliendo l'opzione che corrisponde alle credenziali usate dalla tua CLI.
Se Codex usa una chiave API OpenAI, mantieni l'URL del catalogo OpenAI del passaggio 1. Esegui Codex con la chiave del tuo progetto abilitato a Daybreak, in modo che possa autenticarsi direttamente al catalogo.
Se Codex usa le credenziali del tuo proxy, imposta model_catalog_url sull'URL completo di una route del catalogo sul tuo proxy. Configura la route in modo che:
Autentichi la richiesta della CLI usando le tue consuete credenziali del proxy.
Inoltri la richiesta a https://chatgpt.com/backend-api/codex/models usando la chiave API OpenAI del tuo progetto abilitato a Daybreak.
Restituisca a Codex la risposta del catalogo.
Attiva Daybreak avviando una nuova sessione di Codex CLI con il tuo provider proxy. Seleziona un modello compatibile con Daybreak, quindi inserisci /daybreak per attivarlo.
Se Daybreak non è disponibile, controlla prima la richiesta al catalogo. L'inferenza può riuscire anche se la richiesta al catalogo fallisce. Verifica che la richiesta raggiunga OpenAI con una chiave del progetto corretto e che il progetto abbia accesso sia a Daybreak sia al modello selezionato.
Attivare Daybreak tramite l'SDK TypeScript
Passa l'impostazione di Daybreak tramite la configurazione del client:
import { Codex } from "@openai/codex-sdk";
const codex = new Codex({
config: { daybreak: true },
});
const thread = codex.startThread();
const result = await thread.run("Review the changes in this repository.");
console.log(result.finalResponse);
Usa daybreak: false per disattivare Daybreak e ripristinare il normale comportamento di rifiuto delle richieste. Mantieni la configurazione di autenticazione esistente.
Attivare Daybreak tramite il server applicativo o l'SDK Python
1. Leggi i valori di availableAccessPrograms.cyber del modello selezionato da model/list, poi imposta cyberAccessProgram nei parametri di turn/start.
a. Per un modello della linea principale e un account con accesso a Daybreak Blue:
{ "cyberAccessProgram": "daybreakBlue" }
b. Per un modello cyber e un account con accesso a Daybreak Red:
{ "cyberAccessProgram": "daybreakRed" }
c. Per il normale comportamento di rifiuto delle richieste:
{ "cyberAccessProgram": "standard" }
2. Includi la selezione in ogni turno in cui va applicata; non dare per scontato che omettere il parametro disattivi Daybreak. I client che si collegano direttamente al server applicativo devono abilitare la funzionalità experimentalApi durante l'inizializzazione per usare questo parametro.
3. Il client di basso livello CodexClient dell'SDK Python può passare lo stesso parametro:
from openai_codex.client import CodexClient
with CodexClient() as client:
client.initialize()
thread = client.thread_start()
turn = client.turn_start(
thread.thread.id,
"Review the changes in this repository.",
params={"cyberAccessProgram": "daybreakBlue"},
)
client.wait_for_turn_completed(turn.turn.id)
4. Questo esempio presuppone che Daybreak Blue sia disponibile per il modello selezionato. Il client Python abilita la funzionalità API sperimentale per impostazione predefinita. La sola preferenza salvata nel thread non seleziona un programma per un turno del server applicativo.
Se hai aggiunto un catalogo locale dei modelli prima di queste modifiche
Se in precedenza, accedendo con una chiave API, non vedevi i modelli previsti, potresti aver aggiunto un catalogo locale tramite model_catalog_json in config.toml. Codex usa quel file locale al posto del catalogo automatico, quindi l'elenco dei modelli potrebbe non essere più aggiornato. Quando il supporto del catalogo automatico sarà disponibile per il tuo ambiente, segui questi passaggi per tornare a usarlo:
Apri
config.toml. Per Codex CLI, apri~/.codex/config.toml(o$CODEX_HOME/config.tomlse hai impostatoCODEX_HOME). In Codex Desktop, vai su Impostazioni > Configurazione, poi seleziona Apri config.toml.Disabilita temporaneamente il catalogo locale. Aggiungi # all'inizio della riga
model_catalog_json, salva il file e riavvia Codex con lo stesso account o la stessa chiave API. Mantieni gli eventuali URL di catalogo richiesti dalla tua organizzazione.Verifica il tuo accesso. Nella CLI, avvia
codex, poi digita/daybreakall'interno della sessione. In Desktop, apri il selettore avanzato dei modelli e attiva Daybreak. Se hai accesso a Daybreak Red, verifica che compaia un modello cyber previsto e che tu possa usarlo per inviare una richiesta.Mantieni la configurazione funzionante. Se la verifica ha esito positivo, elimina la riga disabilitata e salva il file. In caso contrario, rimuovi
#, salva e riavvia Codex per ripristinare la configurazione precedente.
Risolvere i problemi di rifiuto delle richieste nella CLI
Esegui un'attività rappresentativa con le stesse credenziali, lo stesso modello e la stessa configurazione usati dalla tua automazione.
Se Daybreak non è disponibile, verifica che:
Il tuo account o progetto API abbia accesso a Daybreak.
Il modello selezionato supporti Daybreak.
Nella CLI interattiva, controlla che Daybreak sia attivo. La CLI interattiva può mostrare un messaggio di rifiuto quando Daybreak è disponibile ma disattivato:
Daybreak è attualmente disattivato. Se stai svolgendo attività di sicurezza autorizzate, attivalo e riprova a inviare la richiesta.Il prompt chiede
Attivare Daybreak per la prossima richiesta?e offre le opzioniAttiva DaybreakeNon ora.Seleziona Attiva Daybreak per attivarlo per la prossima richiesta, poi riprova a inviarla. La richiesta rifiutata non viene ripetuta automaticamente: devi inviarla di nuovo. Alcune richieste potrebbero comunque essere rifiutate anche con Daybreak attivo.
Seleziona Non ora per lasciare Daybreak disattivato.
Per le automazioni, verifica che
daybreak=truevenga effettivamente passato al processo Codex e non venga sovrascritto da un'altra impostazione della riga di comando.
Usare Daybreak con Codex Security CLI
Codex Security CLI usa @openai/codex-security per le scansioni di sicurezza. Le sue opzioni relative ai programmi di accesso sono distinte dagli esempi generali di Codex CLI riportati sopra.
Per l'autenticazione tramite chiave API, usa una chiave di un progetto API abilitato a Daybreak e seleziona esplicitamente il programma per cui il progetto è stato approvato. Per Daybreak Blue:npx @openai/codex-security scan . --auth api-key --cyber-access-program daybreak_blue
Usa daybreak_red solo se il tuo progetto è stato approvato per Daybreak Red, oppure standard per le misure di protezione standard. Selezionare un programma non concede l'accesso a quel programma né a modelli aggiuntivi.
Consulta la documentazione di riferimento di Codex Security CLI per le opzioni di autenticazione e scansione.
Usare Daybreak con Codex Security SDK
L'SDK TypeScript di Codex Security (@openai/codex-security) esegue scansioni di sicurezza da un'applicazione o da uno strumento di sviluppo. È distinto dall'SDK generale di Codex descritto sopra.
Usa le credenziali del tuo account o progetto API approvato. Alcune richieste di sicurezza informatica e alcuni risultati protetti richiedono Trusted Access for Cyber. Installare l'SDK o selezionare un modello non concede l'accesso a Daybreak.
Segui la guida di Codex Security SDK per informazioni sull'autenticazione supportata, sulla configurazione e per esempi di scansione.
