Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La CLI del Codex de OpenAI es el mismo agente de codificación que impulsa el Codex de ChatGPT. Puede ejecutar este agente de codificación completamente en la infraestructura de Azure, al tiempo que mantiene sus datos dentro de sus límites de cumplimiento con las ventajas agregadas de seguridad de nivel empresarial, redes privadas, control de acceso basado en roles y gestión de costes previsibles. El Codex es más que un chat con el agente de código: es un agente de codificación asincrónico que se puede desencadenar desde el terminal, VS Code o desde un ejecutor de Acciones de GitHub. ** El Codex permite abrir automáticamente pull requests, refactorizar archivos y escribir pruebas utilizando las credenciales de tu proyecto Foundry y las implementaciones de OpenAI en Azure.
Requisitos previos
- Una suscripción Azure: Crear una gratuita
- Permisos de colaborador en Microsoft Foundry.
-
homebrew(macOS) o Node.js connpmpara instalar la CLI del Codex. Consulte Descarga e instalación de Node.js y npm. - Para Windows, instale y configure WSL2. Consulte Instalación de WSL.
| Requisitos | Detalles |
|---|---|
| Sistemas operativos | macOS 12+, Ubuntu 20.04+/Debian 10+, o Windows 11 a través de WSL2 |
| Git (opcional, recomendado) | 2.23+ para asistentes integrados de pull requests |
| RAM | 4 GB como mínimo (se recomienda 8 GB) |
Implementación de un modelo en Foundry
- Vaya a Foundry y cree un nuevo proyecto.
- En el catálogo de modelos, seleccione un modelo de razonamiento como
gpt-5.3-codex, ,gpt-5.2-codexgpt-5.1-codex-maxgpt-5.1-codexgpt-5.1-codex-minigpt-5-codexgpt-5, o .gpt-5-minigpt-5-nano - Para implementar el modelo desde el catálogo de modelos, seleccione Use este modelo o si usa Azure openAI Deployments seleccione deploy model.
- Copie la dirección URL del punto de conexión y la clave de API.
Instalación de la CLI de Codex
Desde el terminal, ejecute los siguientes comandos para instalar la CLI de Codex.
Creación y configuración de config.toml
Para usar la CLI de Codex con Azure, debe crear y configurar un archivo
config.toml.El archivo config.toml debe almacenarse en el
~/.codexdirectorio . Cree unconfig.tomlarchivo dentro de este directorio o edite el archivo existente si ya existe:cd ~/.codex nano config.tomlCopie el texto siguiente para usar la API de respuestas v1. Con la API v1 ya no es necesario pasar la versión de api, pero debe incluir /v1 en la
base_urlruta. No se puede pasar la clave de API como una cadena directamente aenv_key.env_keydebe apuntar a una variable de entorno. Actualice subase_urlcon el nombre de su recurso:model = "gpt-5-codex" # Replace with your actual Azure model deployment name model_provider = "azure" model_reasoning_effort = "medium" [model_providers.azure] name = "Azure OpenAI" base_url = "https://YOUR_RESOURCE_NAME.openai.azure.com/openai/v1" env_key = "AZURE_OPENAI_API_KEY" wire_api = "responses"Una vez que haya guardado las actualizaciones en
config.tomlel archivo, vuelva al terminal y cree una instancia de la variable de entorno a la que se hace referencia en el archivo de configuración.# Linux, macOS, or WSL export AZURE_OPENAI_API_KEY="<your-api-key>"Ahora ejecute uno de los siguientes comandos en el terminal para probar si la configuración de la CLI de Codex se realizó correctamente:
Comando Propósito códice Iniciar la interfaz de usuario interactiva del terminal (TUI) códice "Indicación inicial" Iniciar TUI con un mensaje inicial codex exec "Solicitud inicial" Inicio de TUI en "modo de automatización" no interactivo
Uso de Codex en Visual Studio Code
También puede usar el Codex directamente dentro de Visual Studio Code al usar la extensión OpenAI Codex
Si aún no tiene Visual Studio Code, puede instalarlo para macOS y Linux.
Instale la extensión OpenAI Codex. La extensión se basa en su archivo
config.tomlque se configuró para la CLI de Codex.Si está en una nueva sesión de terminal, configure la variable de entorno para
AZURE_OPENAI_API_KEY:export OPENAI_API_KEY="<your-azure-api-key-here>"Nota
Si usa WSL, establezca también la misma variable de entorno en el host de Windows para que la extensión pueda leerla cuando sea necesario.
Inicie VS Code desde la misma sesión de Terminal. (El inicio desde un iniciador de aplicaciones puede dar lugar a que la variable de entorno clave de API no esté disponible para la extensión de Codex).
code .Ahora podrá usar El Codex en Visual Studio Code para chatear, editar y obtener una vista previa de los cambios mientras alterna entre tres modos de aprobación.
Modos de aprobación
Los modos de aprobación determinan la autonomía y la interacción que desea tener con Codex.
| Modo de aprobación | Descripción |
|---|---|
| Chat | Para chatear y planear con el modelo. |
| Agente | El Codex puede leer archivos, realizar modificaciones y ejecutar comandos en el directorio de trabajo automáticamente. El Codex necesitará aprobación para las actividades fuera del directorio de trabajo o para acceder a Internet. |
| Agente (acceso total) | Todas las funcionalidades del modo Agente sin necesidad de aprobación paso a paso. El modo de acceso completo no debe usarse sin comprender completamente los posibles riesgos, así como implementar límites de protección adicionales, como ejecutarse en un entorno de espacio aislado controlado. |
Importante
Se recomienda revisar las instrucciones de OpenAI sobre la seguridad del Codex.
Orientación persistente con AGENTS.md
Puede proporcionar instrucciones adicionales al Codex usando archivos AGENTS.md. El Codex busca AGENTS.md archivos en los siguientes lugares y los combina de arriba abajo, dándole contexto sobre sus preferencias personales, detalles específicos del proyecto y la tarea actual:
-
~/.codex/AGENTS.md– guía global personal. -
AGENTS.mden la raíz del repositorio: notas del proyecto compartido. -
AGENTS.mden el directorio de trabajo actual: subcarpetas o características específicas.
Por ejemplo, para ayudar a Codex a comprender cómo escribir código para Los agentes de Foundry, podría crear una AGENTS.md en la raíz del proyecto con el siguiente contenido, derivado de la documentación del SDK de agentes de IA de Azure:
# Instructions for working with Foundry Agents
You are an expert in the Azure AI Agents client library for Python.
## Key Concepts
- **Client Initialization**: Always start by creating an `AIProjectClient` or `AgentsClient`. The recommended way is via `AIProjectClient`.
- **Authentication**: Use `DefaultAzureCredential` from `azure.identity`.
- **Agent Creation**: Use `agents_client.create_agent()`. Key parameters are `model`, `name`, and `instructions`.
- **Tools**: Agents use tools to perform actions like file search, code interpretation, or function calls.
- To use tools, they must be passed to `create_agent` via the `tools` and `tool_resources` parameters or a `toolset`.
- Example: `file_search_tool = FileSearchTool(vector_store_ids=[...])`
- Example: `code_interpreter = CodeInterpreterTool(file_ids=[...])`
- Example: `functions = FunctionTool(user_functions)`
## Example: Creating a basic agent
\`\`\`python
import os
from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential
# 1. Create Project Client
project_client = AIProjectClient(
endpoint=os.environ["PROJECT_ENDPOINT"],
credential=DefaultAzureCredential(),
)
# 2. Get Agents Client
with project_client:
agents_client = project_client.agents
# 3. Create Agent
agent = agents_client.create_agent(
model=os.environ["MODEL_DEPLOYMENT_NAME"],
name="my-helpful-agent",
instructions="You are a helpful agent that can answer questions.",
)
print(f"Created agent with ID: {agent.id}")
\`\`\`
En el ejemplo anterior, las comillas invertidas en el bloque de código Python se escapan para permitir una representación adecuada. Se pueden quitar \.
Experimento con la CLI de Codex
Inicie el código con el siguiente prompt inicial:
codex "write a python script to create an Azure AI Agent with file search capabilities"
Otras pruebas sugeridas:
# generate a unit test for src/utils/date.ts
# refactor this agent to use the Code Interpreter tool instead
Codex en Acciones de GitHub
Codex puede ejecutarse como parte del pipeline de integración continua (CI). Almacene la clave de API en el almacén de secretos del repositorio como AZURE_OPENAI_KEY y agregue un trabajo similar al siguiente para actualizar automáticamente el registro de cambios antes de una versión:
jobs:
update_changelog:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Update changelog via Codex
run: |
npm install -g @openai/codex
export AZURE_OPENAI_API_KEY="${{ secrets.AZURE_OPENAI_KEY }}"
codex -p azure exec --full-auto "update CHANGELOG for next release"
Solución de problemas
| Síntoma | Solución |
|---|---|
401 Unauthorized o 403 Forbidden |
Exporte correctamente la variable de entorno AZURE_OPENAI_API_KEY. Confirme que su clave tiene acceso a proyectos e implementaciones. Asegúrese de no pasar la clave de API como una cadena directamente a env_key en el config.toml archivo . Debe pasar una variable de entorno válida. |
ENOTFOUND, DNS erroro 404 Not Found |
Compruebe que base_url en config.toml utiliza el nombre de su recurso, el dominio correcto y contiene /v1. Por ejemplo, base_url = "https://<your-resource>.openai.azure.com/openai/v1". |
| La CLI omite la configuración de Azure | Abra ~/.codex/config.toml y asegúrese de que: - model_provider = "azure" está establecido. - La [model_providers.azure] sección existe. - env_key = "AZURE_OPENAI_API_KEY" coincide con el nombre de la variable de entorno. |
| compatibilidad con Entra ID | El soporte de Entra ID no está disponible actualmente para Codex. |
401 Unauthorized solo con la extensión WSL + VS Code Codex |
Cuando se ejecuta VS Code desde dentro de WSL con la extensión Codex, la extensión puede comprobar la variable de entorno de clave de API en el host local de Windows en lugar de hacerlo dentro del shell del terminal que lanzó VS Code. Para mitigar este problema, establezca también la variable de entorno en el host de Windows local y, a continuación, inicie un nuevo terminal desde WSL e inicie VS Code con code .. |