OpenAI
OpenAI fournit des API pour développeurs pour les modèles GPT. Codex prend en charge la connexion ChatGPT pour un accès par abonnement ou la connexion par clé API pour un accès facturé à l’usage. Codex cloud nécessite une connexion ChatGPT. OpenAI prend explicitement en charge l’utilisation d’un abonnement OAuth dans des outils/workflows externes comme OpenClaw.Style d’interaction par défaut
OpenClaw ajoute par défaut une petite surcouche de prompt spécifique à OpenAI pour les exécutionsopenai/* et openai-codex/*. Cette surcouche garde l’assistant chaleureux,
collaboratif, concis et direct sans remplacer le prompt système de base d’OpenClaw.
Clé de configuration :
plugins.entries.openai.config.personalityOverlay
Valeurs autorisées :
"friendly": par défaut ; active la surcouche spécifique à OpenAI."off": désactive la surcouche et utilise uniquement le prompt de base d’OpenClaw.
- S’applique aux modèles
openai/*. - S’applique aux modèles
openai-codex/*. - N’affecte pas les autres fournisseurs.
Désactiver la surcouche de prompt OpenAI
Si vous préférez le prompt de base d’OpenClaw non modifié, désactivez la surcouche :Option A : clé API OpenAI (OpenAI Platform)
Idéal pour : l’accès direct à l’API et la facturation à l’usage. Obtenez votre clé API depuis le tableau de bord OpenAI.Configuration CLI
Extrait de configuration
gpt-5.4 et gpt-5.4-pro pour un usage direct de
l’API OpenAI. OpenClaw transmet les deux via le chemin openai/* Responses.
OpenClaw supprime volontairement l’entrée obsolète openai/gpt-5.3-codex-spark,
car les appels directs à l’API OpenAI la rejettent en trafic réel.
OpenClaw n’expose pas openai/gpt-5.3-codex-spark sur le chemin direct de l’API OpenAI.
pi-ai fournit toujours une entrée intégrée pour ce modèle, mais les requêtes réelles à l’API OpenAI
la rejettent actuellement. Spark est traité comme Codex-only dans OpenClaw.
Option B : abonnement OpenAI Code (Codex)
Idéal pour : utiliser un accès par abonnement ChatGPT/Codex au lieu d’une clé API. Codex cloud nécessite une connexion ChatGPT, tandis que Codex CLI prend en charge une connexion ChatGPT ou par clé API.Configuration CLI (Codex OAuth)
Extrait de configuration (abonnement Codex)
gpt-5.4 comme modèle Codex actuel. OpenClaw
le mappe sur openai-codex/gpt-5.4 pour l’usage OAuth ChatGPT/Codex.
Si l’onboarding réutilise une connexion Codex CLI existante, ces identifiants restent
gérés par Codex CLI. À l’expiration, OpenClaw relit d’abord la source externe Codex
et, lorsque le fournisseur peut l’actualiser, réécrit l’identifiant actualisé
dans le stockage Codex au lieu d’en prendre possession dans une copie séparée propre à OpenClaw.
Si votre compte Codex a droit à Codex Spark, OpenClaw prend également en charge :
openai-codex/gpt-5.3-codex-spark
openai/gpt-5.3-codex-spark par clé API.
OpenClaw conserve également openai-codex/gpt-5.3-codex-spark lorsque pi-ai
le découvre. Traitez-le comme dépendant des droits et expérimental : Codex Spark est
distinct de GPT-5.4 /fast, et sa disponibilité dépend du compte Codex /
ChatGPT connecté.
Limite de fenêtre de contexte Codex
OpenClaw traite les métadonnées du modèle Codex et la limite de contexte du runtime comme des valeurs distinctes. Pouropenai-codex/gpt-5.4 :
contextWindownatif :1050000- limite
contextTokensdu runtime par défaut :272000
models.providers.<provider>.models[].contextTokens :
contextWindow uniquement lorsque vous déclarez ou remplacez les métadonnées natives du modèle.
Utilisez contextTokens lorsque vous voulez limiter le budget de contexte du runtime.
Transport par défaut
OpenClaw utilisepi-ai pour le streaming des modèles. Pour openai/* comme pour
openai-codex/*, le transport par défaut est "auto" (WebSocket d’abord, puis repli
SSE).
En mode "auto", OpenClaw réessaie aussi un échec WebSocket précoce et réessayable
avant de se replier sur SSE. Le mode "websocket" forcé continue d’exposer directement les erreurs de transport
au lieu de les masquer derrière un repli.
Après un échec WebSocket à la connexion ou au début d’un tour en mode "auto", OpenClaw marque
le chemin WebSocket de cette session comme dégradé pendant environ 60 secondes et envoie
les tours suivants via SSE pendant la période de refroidissement au lieu d’osciller entre
les transports.
Pour les points de terminaison natifs de la famille OpenAI (openai/*, openai-codex/*, et Azure
OpenAI Responses), OpenClaw attache aussi un état stable d’identité de session et de tour
aux requêtes afin que les réessais, reconnexions et replis SSE restent alignés sur la même
identité de conversation. Sur les routes natives de la famille OpenAI, cela inclut des en-têtes d’identité stables de requête session/tour ainsi que des métadonnées de transport correspondantes.
OpenClaw normalise aussi les compteurs d’usage OpenAI entre variantes de transport avant
qu’ils n’atteignent les surfaces session/statut. Le trafic natif OpenAI/Codex Responses peut
rapporter l’usage sous la forme input_tokens / output_tokens ou
prompt_tokens / completion_tokens ; OpenClaw les traite comme les mêmes compteurs d’entrée
et de sortie pour /status, /usage, et les journaux de session. Lorsque le trafic natif
WebSocket omet total_tokens (ou indique 0), OpenClaw se rabat sur le total
normalisé entrée + sortie afin que les affichages de session/statut restent renseignés.
Vous pouvez définir agents.defaults.models.<provider/model>.params.transport :
"sse": forcer SSE"websocket": forcer WebSocket"auto": essayer WebSocket, puis se replier sur SSE
openai/* (API Responses), OpenClaw active aussi par défaut le warm-up WebSocket
(openaiWsWarmup: true) lorsque le transport WebSocket est utilisé.
Documentation OpenAI associée :
Warm-up WebSocket OpenAI
La documentation OpenAI décrit le warm-up comme facultatif. OpenClaw l’active par défaut pouropenai/* afin de réduire la latence du premier tour lors de l’utilisation du transport WebSocket.
Désactiver le warm-up
Activer explicitement le warm-up
Traitement prioritaire OpenAI et Codex
L’API d’OpenAI expose le traitement prioritaire viaservice_tier=priority. Dans
OpenClaw, définissez agents.defaults.models["<provider>/<model>"].params.serviceTier
pour transmettre ce champ aux points de terminaison natifs OpenAI/Codex Responses.
auto, default, flex, et priority.
OpenClaw transmet params.serviceTier à la fois aux requêtes directes openai/* Responses
et aux requêtes openai-codex/* Codex Responses lorsque ces modèles pointent
vers les points de terminaison natifs OpenAI/Codex.
Comportement important :
openai/*direct doit ciblerapi.openai.comopenai-codex/*doit ciblerchatgpt.com/backend-api- si vous routez l’un ou l’autre fournisseur via une autre URL de base ou un proxy, OpenClaw laisse
service_tierintact
Mode fast OpenAI
OpenClaw expose un basculement partagé de mode fast pour les sessionsopenai/* et
openai-codex/* :
- Chat/UI :
/fast status|on|off - Configuration :
agents.defaults.models["<provider>/<model>"].params.fastMode
- les appels directs
openai/*Responses versapi.openai.comenvoientservice_tier = "priority" - les appels
openai-codex/*Responses verschatgpt.com/backend-apienvoient aussiservice_tier = "priority" - les valeurs existantes de
service_tierdans la charge utile sont conservées - le mode fast ne réécrit pas
reasoningnitext.verbosity
Routes OpenAI natives versus compatibles OpenAI
OpenClaw traite différemment les points de terminaison directs OpenAI, Codex et Azure OpenAI par rapport aux proxys génériques compatibles OpenAI/v1 :
- les routes natives
openai/*,openai-codex/*, et Azure OpenAI conserventreasoning: { effort: "none" }intact lorsque vous désactivez explicitement le raisonnement - les routes natives de la famille OpenAI mettent par défaut les schémas d’outils en mode strict
- les en-têtes cachés d’attribution OpenClaw (
originator,version, etUser-Agent) ne sont attachés que sur les hôtes OpenAI natifs vérifiés (api.openai.com) et les hôtes Codex natifs (chatgpt.com/backend-api) - les routes OpenAI/Codex natives conservent le modelage de requête spécifique à OpenAI comme
service_tier,storede Responses, les charges utiles de compatibilité de raisonnement OpenAI, et les indices de cache de prompt - les routes de type proxy compatibles OpenAI conservent le comportement de compatibilité plus souple et ne forcent ni les schémas d’outils stricts, ni le modelage natif des requêtes, ni les en-têtes cachés d’attribution OpenAI/Codex
/v1.
Compaction côté serveur OpenAI Responses
Pour les modèles directs OpenAI Responses (openai/* utilisant api: "openai-responses" avec
baseUrl sur api.openai.com), OpenClaw active maintenant automatiquement les indices de charge utile
de compaction côté serveur OpenAI :
- Force
store: true(sauf si la compatibilité du modèle définitsupportsStore: false) - Injecte
context_management: [{ type: "compaction", compact_threshold: ... }]
compact_threshold vaut 70% du contextWindow du modèle (ou 80000
lorsqu’il est indisponible).
Activer explicitement la compaction côté serveur
Utilisez ceci lorsque vous voulez forcer l’injection decontext_management sur des modèles
Responses compatibles (par exemple Azure OpenAI Responses) :
Activer avec un seuil personnalisé
Désactiver la compaction côté serveur
responsesServerCompaction ne contrôle que l’injection de context_management.
Les modèles directs OpenAI Responses continuent de forcer store: true sauf si la compatibilité définit
supportsStore: false.
Remarques
- Les références de modèle utilisent toujours
provider/model(voir /concepts/models). - Les détails d’authentification + les règles de réutilisation se trouvent dans /concepts/oauth.