NouveauBranchez n’importe quel agent sur UberLLM : une clé, tous les modèles, au prix catalogue ou moins.
UberLLM

Codex CLI

Codex CLI communique avec UberLLM via l'Responses API à https://api.uberllm.dev/v1. Codex 0.95 et versions ultérieures ne supportent que l'Responses API (wire_api = "chat" a été supprimé), et UberLLM la propose sur chaque modèle de chat. Testé avec Codex 0.166.0 sur 30 octobre 2026 : commandes shell, modifications de fichiers et tâches multi-étapes.

Configuration

  1. Créez une clé dans Dashboard → Keys et ajoutez du crédit.

  2. Exportez-la dans votre profil shell (~/.zshrc ou ~/.bashrc) :

    export UBERLLM_API_KEY="ull_..."
    
  3. Ajoutez à ~/.codex/config.toml :

    model = "deepseek/deepseek-v4.1-flash"
    model_provider = "uberllm"
    web_search = "disabled"
    
    [model_providers.uberllm]
    name = "UberLLM"
    base_url = "https://api.uberllm.dev/v1"
    env_key = "UBERLLM_API_KEY"
    wire_api = "responses"
    
  4. Ouvrez un nouveau terminal et exécutez codex dans votre projet.

base_url doit se terminer par /v1 : Codex ajoute /responses. env_key est le nom de la variable d'environnement qui contient la clé.

Sélections de modèles en direct avec les prix du jour : guide de configuration de Codex.

Options

Paramètre Pourquoi
model N'importe quel ID de modèle de chat du catalogue. À remplacer par exécution avec codex -m <id>.
model_context_window Codex suppose 272,000 tokens pour les modèles en dehors de la liste d'OpenAI. Définissez la taille réelle du contexte du modèle afin que Codex compacte la conversation à temps.
model_reasoning_effort "low", "medium" ou "high", transmis aux modèles qui réfléchissent.
web_search = "disabled" La recherche web de Codex s'exécute sur les serveurs d'OpenAI et n'est pas proposée par d'autres fournisseurs ; UberLLM exclut l'outil de toute façon.

Exécutions non interactives pour les scripts et la CI :

codex exec --skip-git-repo-check "fix the failing test in tests/test_api.py"

Comment ça marche

  • Codex envoie toute la conversation à chaque tour avec store: false. UberLLM ne conserve rien entre les appels et Codex n'a pas besoin de conserver quoi que ce soit.
  • Les outils de Codex (exec_command, apply_patch, update_plan, les serveurs MCP que vous ajoutez) sont des outils de fonction et personnalisés côté API, ils fonctionnent donc avec n'importe quel modèle prenant en charge les 'tool calls'.
  • Chaque appel apparaît dans Tableau de bord → Activité avec le nom de l'application codex et son coût.

Dépannage

Symptôme Solution
wire_api = "chat" n'est plus pris en charge Définissez wire_api = "responses".
Missing environment variable: UBERLLM_API_KEY ou 401 Exportez la clé dans le terminal où Codex s'exécute.
404 à chaque tour base_url doit être https://api.uberllm.dev/v1.
"Model metadata for … not found. Defaulting to fallback metadata" Inoffensif pour les modèles en dehors de la liste d'OpenAI ; définissez model_context_window.
Le modèle répond mais n'exécute jamais de commandes Utilisez un modèle avec des appels d'outils fiables (DeepSeek, GLM, Kimi, Qwen Coder, Claude, GPT).
402 Ajoutez du crédit, ou augmentez la limite de dépenses de la clé.