Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Интерфейс командной строки OpenAI Codex CLI является тем же агентом программирования, который используется в Codex от ChatGPT. Этот агент программирования можно запускать полностью на инфраструктуре Azure, сохраняя данные в пределах границы соответствия с дополнительными преимуществами безопасности корпоративного уровня, частных сетей, управления доступом на основе ролей и планируемого управления расходами. Codex больше, чем чат с агентом кода— это асинхронный агент программирования, который можно активировать из терминала, VS Code или из GitHub Actions runner. Codex позволяет автоматически открывать pull запросы, рефакторить файлы и писать тесты, используя учетные данные проекта Foundry и развертываний Azure OpenAI.
Предпосылки
- Подписка Azure — Создать бесплатно
- Разрешения участника в Microsoft Foundry.
-
homebrew(macOS) или Node.js сnpmдля установки Codex CLI (интерфейса командной строки Codex). См. статью "Скачивание и установка Node.js и npm". - Для Windows установите и настройте WSL2. См. раздел "Установка WSL".
| Требования | Сведения |
|---|---|
| Операционные системы | macOS 12+, Ubuntu 20.04+/Debian 10+, или Windows 11 через WSL2 |
| Git (необязательно, рекомендуется) | 2.23+ для встроенных вспомогательных запросов на вытягивание |
| ОЗУ | Минимум 4 ГБ (рекомендуется 8 ГБ) |
Разверните модель в Foundry
- Перейдите к Foundry и создайте новый project.
- В каталоге моделей выберите модель рассуждения, например
gpt-5.3-codex,gpt-5.2-codex,gpt-5.1-codex-max,gpt-5.1-codex,gpt-5.1-codex-mini,gpt-5-codex,gpt-5,gpt-5-miniилиgpt-5-nano. - Чтобы развернуть модель из каталога моделей, выберите Использовать эту модель, или, если используется панель Deployments в Azure OpenAI, выберите deploy model.
- Скопируйте URL-адрес конечной точки и ключ API.
Установка интерфейса командной строки Codex
В терминале выполните следующие команды, чтобы установить Codex CLI
Создание и настройка config.toml
Чтобы использовать Cli Codex с Azure, необходимо создать и настроить файл
config.toml.Файл config.toml должен храниться в каталоге
~/.codex. Создайте файл в этом каталоге или измените существующийconfig.tomlфайл, если он уже существует:cd ~/.codex nano config.tomlСкопируйте приведенный ниже текст, чтобы использовать API ответов версии 1. В API версии 1 больше не нужно передавать версию API, но необходимо включить /v1 в
base_urlпуть. Невозможно передать ключ API в виде строки непосредственно вenv_key.env_keyдолжен указывать на переменную среды. Обновитеbase_urlназванием вашего ресурса: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"После сохранения обновлений
config.tomlфайла вернитесь в терминал и создайте экземпляр переменной среды, на которую ссылается файл конфигурации.# Linux, macOS, or WSL export AZURE_OPENAI_API_KEY="<your-api-key>"Теперь выполните одну из следующих команд в терминале, чтобы проверить, успешно ли выполнена конфигурация cli Codex:
Command Цель кодекс Запуск интерактивного пользовательского интерфейса терминала (TUI) codex "Начальный запрос" Запуск TUI с начальным запросом codex exec "Начальная подсказка" Запуск TUI в неинтерактивном режиме автоматизации
Использование codex в редакторе Visual Studio Code
Вы также можете использовать Codex непосредственно в коде Visual Studio при использовании расширения OpenAI Codex
Если у вас еще нет кода Visual Studio, его можно установить для macOS и Linux.
Установите расширение OpenAI Codex. Расширение зависит от файла
config.toml, который был настроен для Codex CLI.Если вы находитесь в новом сеансе терминала, настройте переменную среды для
AZURE_OPENAI_API_KEY:export OPENAI_API_KEY="<your-azure-api-key-here>"Замечание
При использовании WSL также установите ту же переменную среды на хосте Windows, чтобы расширение могло его прочитать при необходимости.
Запустите VS Code из одного сеанса терминала. (Запуск из средства запуска приложений может привести к тому, что переменная ключевой среды API недоступна для расширения Codex.)
code .Теперь вы сможете использовать Codex в Visual Studio Code для чата, редактирования и предварительного просмотра изменений при переключение между тремя режимами утверждения.
Режимы утверждения
Режимы утверждения определяют, сколько автономии и взаимодействия вы хотите иметь с Codex.
| Режим утверждения | Description |
|---|---|
| Чат | Для чата и планирования с моделью. |
| Агент | Codex может считывать файлы, вносить изменения и выполнять команды в рабочем каталоге автоматически. Codex потребует утверждения действий за пределами рабочего каталога или доступа к Интернету. |
| Агент (полный доступ) | Все возможности режима агента без необходимости пошагового утверждения. Режим полного доступа не следует использовать без полного понимания потенциальных рисков, а также реализации дополнительных мер защиты, таких как запуск в контролируемой среде песочницы. |
Это важно
Мы рекомендуем ознакомиться с рекомендациями OpenAI по безопасности Codex.
Постоянное руководство с AGENTS.md
Дополнительные инструкции и рекомендации по Codex можно предоставить с помощью AGENTS.md файлов. Codex ищет файлы AGENTS.md в следующих местах и объединяет их сверху вниз, предоставляя контекст о ваших личных предпочтениях, информации о проекте и текущей задаче.
-
~/.codex/AGENTS.md— личное глобальное руководство. -
AGENTS.mdв корневом каталоге репозитория — общие заметки проекта. -
AGENTS.mdв текущем рабочем каталоге — особенности подкаталогов/функциональности.
Например, чтобы помочь Codex понять, как писать код для агентов Foundry, можно создать AGENTS.md в корневом каталоге проекта со следующим содержимым, производным от документации по пакету SDK для агентов ИИ 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}")
\`\`\`
В предыдущем примере обратные шаблоны в блоке кода Python экранируются, чтобы обеспечить правильную отрисовку. Можно удалить \.
Эксперимент с интерфейсом командной строки Codex
Запустите кодекс со следующим начальным запросом:
codex "write a python script to create an Azure AI Agent with file search capabilities"
Другие предлагаемые тесты:
# generate a unit test for src/utils/date.ts
# refactor this agent to use the Code Interpreter tool instead
Кодекс в GitHub Actions
Codex может выполняться как часть конвейера непрерывной интеграции (CI). Сохраните ключ API в хранилище секретов репозитория как AZURE_OPENAI_KEY и добавьте задание, подобное этому, чтобы автоматически обновлять журнал изменений перед выпуском:
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"
Устранение неполадок
| Симптом | Решение |
|---|---|
401 Unauthorized или 403 Forbidden |
Экспортируйте переменную среды AZURE_OPENAI_API_KEY правильно. Убедитесь, что ваш ключ имеет доступ к проекту/развертыванию. Убедитесь, что ключ API не передается env_key в виде строки непосредственно в config.toml файл. Необходимо передать допустимую переменную среды. |
ENOTFOUND, DNS error или 404 Not Found |
Убедитесь, что в base_urlconfig.toml использует имя ресурса, правильный домен и содержит /v1. Например, base_url = "https://<your-resource>.openai.azure.com/openai/v1". |
| CLI игнорирует параметры Azure | Откройте ~/.codex/config.toml и убедитесь, что: - model_provider = "azure" задано. — существует раздел [model_providers.azure]. - env_key = "AZURE_OPENAI_API_KEY" соответствует имени переменной среды. |
| Поддержка Entra ID | Поддержка Entra ID в настоящее время недоступна для Codex. |
401 Unauthorized только с расширением WSL + VS Code Codex |
При запуске VS Code из WSL с расширением Codex расширение может проверить переменную среды ключа API на локальном узле windows, а не в оболочке терминала, которая запустила VS Code. Чтобы устранить эту проблему, задайте переменную среды на локальном узле Windows, а затем запустите новый терминал из WSL и запустите VS Code.code . |