Bundled plugin guides
Harnais Codex
Le Plugin codex inclus permet Ă OpenClaw dâexĂ©cuter des tours dâagent OpenAI intĂ©grĂ©s
via Codex app-server au lieu du harnais OpenClaw intégré.
Utilisez le harnais Codex lorsque vous voulez que Codex possĂšde la session dâagent de bas niveau : reprise native de fil, continuation native dâoutil, compaction native et exĂ©cution app-server. OpenClaw possĂšde toujours les canaux de discussion, les fichiers de session, la sĂ©lection de modĂšle, les outils dynamiques OpenClaw, les approbations, la livraison des mĂ©dias et le miroir visible de la transcription.
La configuration normale utilise des références de modÚles OpenAI canoniques comme openai/gpt-5.5.
Ne configurez pas de rĂ©fĂ©rences GPT Codex hĂ©ritĂ©es. Placez lâordre dâauthentification de lâagent OpenAI
sous auth.order.openai ; les anciens identifiants de profils dâauthentification Codex hĂ©ritĂ©s et
les anciennes entrĂ©es dâordre dâauthentification Codex sont un Ă©tat hĂ©ritĂ© rĂ©parĂ© par
openclaw doctor --fix.
Lorsquâaucun bac Ă sable OpenClaw nâest actif, OpenClaw dĂ©marre les fils Codex app-server
avec le mode code natif Codex activé tout en laissant le mode code uniquement désactivé par défaut.
Cela garde disponibles lâespace de travail natif et les capacitĂ©s de code de Codex, tandis que
les outils dynamiques OpenClaw continuent de passer par le pont app-server item/tool/call.
Le bac Ă sable OpenClaw actif et les politiques dâoutils restreintes dĂ©sactivent entiĂšrement le mode code natif,
sauf si vous activez explicitement le chemin expérimental sandbox exec-server.
Cette fonctionnalité native Codex est distincte du
mode code OpenClaw, qui est un runtime QuickJS-WASI Ă activation explicite
pour les exĂ©cutions OpenClaw gĂ©nĂ©riques avec une forme dâentrĂ©e exec diffĂ©rente.
Pour la séparation plus générale entre modÚle, fournisseur et runtime, commencez par
Runtimes dâagent. La version courte est :
openai/gpt-5.5 est la référence de modÚle, codex est le runtime, et Telegram,
Discord, Slack ou un autre canal reste la surface de communication.
Prérequis
- OpenClaw avec le Plugin
codexinclus disponible. - Si votre configuration utilise
plugins.allow, incluezcodex. - Codex app-server
0.125.0ou plus rĂ©cent. Le Plugin inclus gĂšre par dĂ©faut un binaire Codex app-server compatible, donc les commandescodexlocales surPATHnâaffectent pas le dĂ©marrage normal du harnais. - Authentification Codex disponible via
openclaw models auth login --provider openai, un compte app-server dans le dossier personnel Codex de lâagent, ou un profil dâauthentification Codex explicite par clĂ© API.
Pour la prioritĂ© dâauthentification, lâisolation dâenvironnement, les commandes app-server personnalisĂ©es, la dĂ©couverte des modĂšles et tous les champs de configuration, consultez la rĂ©fĂ©rence du harnais Codex.
Démarrage rapide
La plupart des utilisateurs qui veulent Codex dans OpenClaw veulent ce chemin : se connecter avec un
abonnement ChatGPT/Codex, activer le Plugin codex inclus et utiliser une
référence de modÚle canonique openai/gpt-*.
Connectez-vous avec Codex OAuth :
openclaw models auth login --provider openaiActivez le Plugin codex inclus et sĂ©lectionnez un modĂšle dâagent OpenAI :
{ plugins: { entries: { codex: { enabled: true, }, }, }, agents: { defaults: { model: "openai/gpt-5.5", }, },}Si votre configuration utilise plugins.allow, ajoutez-y aussi codex :
{ plugins: { allow: ["codex"], entries: { codex: { enabled: true, }, }, },}Redémarrez le Gateway aprÚs avoir modifié la configuration des Plugins. Si une discussion existante
a déjà une session, utilisez /new ou /reset avant de tester les changements de runtime afin que le prochain
tour résolve le harnais depuis la configuration actuelle.
Partager des fils avec Codex Desktop et la CLI
La valeur par défaut appServer.homeScope: "agent" garde chaque agent OpenClaw isolé
de lâĂ©tat Codex natif de lâopĂ©rateur. Pour permettre Ă un propriĂ©taire de demander Ă OpenClaw dâinspecter
et de gĂ©rer les mĂȘmes fils natifs affichĂ©s par Codex Desktop et la CLI Codex,
activez explicitement le dossier personnel Codex utilisateur :
{ plugins: { entries: { codex: { enabled: true, config: { appServer: { homeScope: "user", }, }, }, }, },}Le mode dossier personnel utilisateur est disponible uniquement avec le transport stdio local. Il utilise
$CODEX_HOME lorsquâil est dĂ©fini et ~/.codex sinon, y compris lâauthentification,
la configuration, les Plugins et le magasin de fils Codex natifs de ce dossier personnel. OpenClaw nâinjecte pas de
profil dâauthentification OpenClaw dans cet app-server.
Les tours propriĂ©taire obtiennent lâoutil codex_threads. Il peut lister, rechercher, lire, dupliquer,
renommer, archiver et restaurer des fils natifs. Demandez Ă lâagent de dupliquer un fil lorsque
vous voulez le poursuivre dans OpenClaw ; la duplication est attachée à la session OpenClaw actuelle
et reste visible pour les autres clients Codex natifs. Lâarchivage nĂ©cessite une confirmation explicite
que le fil est fermé ailleurs.
Ne reprenez pas et nâĂ©crivez pas le mĂȘme fil simultanĂ©ment depuis OpenClaw et un autre client Codex. Codex coordonne les rĂ©dacteurs actifs au sein dâun mĂȘme processus app-server, pas entre des processus Desktop, CLI et OpenClaw indĂ©pendants. La duplication crĂ©e une continuation sĂ©parĂ©e et constitue le chemin de coexistence sĂ»r.
Configuration
La configuration de dĂ©marrage rapide est la configuration minimale viable du harnais Codex. DĂ©finissez les options du harnais Codex dans la configuration OpenClaw, et utilisez la CLI uniquement pour lâauthentification Codex :
| Besoin | DĂ©finir | OĂč |
|---|---|---|
| Activer le harnais | plugins.entries.codex.enabled: true |
Configuration OpenClaw |
| Conserver une installation de Plugin autorisée | Inclure codex dans plugins.allow |
Configuration OpenClaw |
| Acheminer les tours dâagent OpenAI via Codex | agents.defaults.model ou agents.list[].model comme openai/gpt-* |
Configuration dâagent OpenClaw |
| Se connecter avec ChatGPT/Codex OAuth | openclaw models auth login --provider openai |
Profil dâauthentification CLI |
| Ajouter une clĂ© API de secours pour les exĂ©cutions Codex | Profil de clĂ© API openai:* listĂ© aprĂšs lâauthentification par abonnement dans auth.order.openai |
Profil dâauthentification CLI + configuration OpenClaw |
| Ăchouer de maniĂšre fermĂ©e lorsque Codex est indisponible | Fournisseur ou modĂšle agentRuntime.id: "codex" |
Configuration de modĂšle/fournisseur OpenClaw |
| Utiliser du trafic direct vers lâAPI OpenAI | Fournisseur ou modĂšle agentRuntime.id: "openclaw" avec lâauthentification OpenAI normale |
Configuration de modĂšle/fournisseur OpenClaw |
| Ajuster le comportement app-server | plugins.entries.codex.config.appServer.* |
Configuration du Plugin Codex |
| Activer les applications Plugin Codex natives | plugins.entries.codex.config.codexPlugins.* |
Configuration du Plugin Codex |
| Activer lâutilisation de lâordinateur Codex | plugins.entries.codex.config.computerUse.* |
Configuration du Plugin Codex |
Utilisez les rĂ©fĂ©rences de modĂšles openai/gpt-* pour les tours dâagent OpenAI adossĂ©s Ă Codex. PrĂ©fĂ©rez
auth.order.openai pour un ordre abonnement dâabord, clĂ© API de secours ensuite. Les identifiants de profils
dâauthentification Codex hĂ©ritĂ©s existants et lâordre dâauthentification Codex hĂ©ritĂ© sont un Ă©tat hĂ©ritĂ©
rĂ©servĂ© au doctor ; nâĂ©crivez pas de nouvelles rĂ©fĂ©rences GPT Codex hĂ©ritĂ©es.
Ne définissez pas compaction.model ou compaction.provider sur les agents adossés à Codex.
Codex compacte via son état de fil app-server natif, donc OpenClaw ignore
ces remplacements locaux de rĂ©sumeur Ă lâexĂ©cution et openclaw doctor --fix les supprime
lorsque lâagent utilise Codex.
Lossless reste pris en charge comme moteur de contexte pour lâassemblage, lâingestion et
la maintenance autour des tours Codex. Configurez-le via
plugins.slots.contextEngine: "lossless-claw" et
plugins.entries.lossless-claw.config.summaryModel, et non via
agents.defaults.compaction.provider. openclaw doctor --fix migre lâancienne
forme compaction.provider: "lossless-claw" vers lâemplacement de moteur de contexte Lossless
lorsque Codex est le runtime actif, mais Codex natif reste propriétaire de la compaction.
Le harnais natif Codex app-server prend en charge les moteurs de contexte qui nécessitent
un assemblage avant invite. Les backends CLI génériques, y compris codex-cli, ne fournissent pas
cette capacitĂ© dâhĂŽte.
Pour les agents adossés à Codex, /compact démarre la compaction native Codex app-server sur
le fil liĂ©. OpenClaw nâattend pas la fin, nâimpose pas de dĂ©lai dâexpiration OpenClaw,
ne redĂ©marre pas lâapp-server partagĂ© et ne se replie pas sur un moteur de contexte ou
un résumeur OpenAI public. Si la liaison de fil Codex native est manquante ou
obsolĂšte, la commande Ă©choue de maniĂšre fermĂ©e afin que lâopĂ©rateur voie la vraie limite du runtime
au lieu de changer silencieusement de backend de compaction.
{ auth: { order: { openai: ["openai:user@example.com", "openai:api-key-backup"], }, },}Dans cette forme, les deux profils passent toujours par Codex pour les tours dâagent
openai/gpt-*. La clĂ© API est seulement un secours dâauthentification, pas une demande de basculer vers OpenClaw ou
vers OpenAI Responses brut.
Le reste de cette page couvre les variantes courantes entre lesquelles les utilisateurs doivent choisir : forme de dĂ©ploiement, routage Ă Ă©chec fermĂ©, politique dâapprobation guardian, Plugins Codex natifs et utilisation de lâordinateur. Pour les listes complĂštes dâoptions, valeurs par dĂ©faut, Ă©numĂ©rations, dĂ©couverte, isolation dâenvironnement, dĂ©lais dâexpiration et champs de transport app-server, consultez la rĂ©fĂ©rence du harnais Codex.
Vérifier le runtime Codex
Utilisez /status dans la discussion oĂč vous attendez Codex. Un tour dâagent OpenAI adossĂ© Ă Codex
affiche :
Runtime: OpenAI CodexVĂ©rifiez ensuite lâĂ©tat Codex app-server :
/codex status/codex models/codex status signale la connectivité app-server, le compte, les limites de débit, les serveurs MCP
et les Skills. /codex models liste le catalogue Codex app-server en direct pour
le harnais et le compte. Si /status vous surprend, consultez
Dépannage.
Routage et sélection de modÚle
Gardez séparées les références de fournisseur et la politique de runtime :
- Utilisez
openai/gpt-*pour les tours dâagent OpenAI via Codex. - Nâutilisez pas de rĂ©fĂ©rences GPT Codex hĂ©ritĂ©es dans la configuration. ExĂ©cutez
openclaw doctor --fixpour rĂ©parer les rĂ©fĂ©rences hĂ©ritĂ©es et les anciens verrouillages de route de session. agentRuntime.id: "codex"est facultatif pour le mode automatique OpenAI normal, mais utile lorsquâun dĂ©ploiement doit Ă©chouer de maniĂšre fermĂ©e si Codex est indisponible.agentRuntime.id: "openclaw"inscrit explicitement un fournisseur ou un modĂšle dans le runtime intĂ©grĂ© OpenClaw lorsque câest intentionnel./codex ...contrĂŽle les conversations natives Codex app-server depuis la discussion.- ACP/acpx est un chemin de harnais externe sĂ©parĂ©. Utilisez-le uniquement lorsque lâutilisateur demande ACP/acpx ou un adaptateur de harnais externe.
Routage des commandes courantes :
| Intention utilisateur | Utiliser |
|---|---|
| Joindre la discussion actuelle | /codex bind [--cwd <path>] |
| Reprendre un fil Codex existant | /codex resume <thread-id> |
| Lister ou filtrer les fils Codex | /codex threads [filter] |
| Lister les plugins Codex natifs | /codex plugins list |
| Activer ou désactiver un plugin Codex natif configuré | /codex plugins enable <name>, /codex plugins disable <name> |
| Joindre une session Codex CLI existante sur un nĆud appairĂ© | /codex sessions --host <node> [filter], puis /codex resume <session-id> --host <node> --bind here |
| Envoyer uniquement des commentaires Codex | /codex diagnostics [note] |
| Démarrer une tùche ACP/acpx | Commandes de session ACP/acpx, pas /codex |
| Cas dâusage | Configurer | VĂ©rifier | Notes |
|---|---|---|---|
| Abonnement ChatGPT/Codex avec runtime Codex natif | openai/gpt-* plus plugin codex activé |
/status affiche Runtime: OpenAI Codex |
Chemin recommandé |
| Ăchouer en mode fermĂ© si Codex est indisponible | Fournisseur ou modĂšle agentRuntime.id: "codex" |
Le tour Ă©choue au lieu dâun repli intĂ©grĂ© | Ă utiliser pour les dĂ©ploiements Codex uniquement |
| Acheminer le trafic par clé API OpenAI directe via OpenClaw | Fournisseur ou modÚle agentRuntime.id: "openclaw" et auth OpenAI normale |
/status affiche le runtime OpenClaw |
Ă utiliser uniquement quand OpenClaw est intentionnel |
| Configuration héritée | Anciennes références GPT Codex | openclaw doctor --fix les réécrit |
Ne pas écrire de nouvelle configuration ainsi |
| Adaptateur Codex ACP/acpx | ACP sessions_spawn({ runtime: "acp" }) |
Statut de tùche/session ACP | Séparé du harnais Codex natif |
agents.defaults.imageModel suit la mĂȘme sĂ©paration par prĂ©fixe. Utilisez openai/gpt-*
pour la route OpenAI normale et codex/gpt-* uniquement lorsque la comprĂ©hension dâimage
doit passer par un tour app-server Codex bornĂ©. Nâutilisez pas
les anciennes références GPT Codex ; doctor réécrit ce préfixe hérité en openai/gpt-*.
ModÚles de déploiement
Déploiement Codex de base
Utilisez la configuration de dĂ©marrage rapide quand tous les tours dâagent OpenAI doivent utiliser Codex par dĂ©faut.
{ plugins: { entries: { codex: { enabled: true, }, }, }, agents: { defaults: { model: "openai/gpt-5.5", }, },}Déploiement avec fournisseurs mixtes
Cette forme garde Claude comme agent par défaut et ajoute un agent Codex nommé :
{ plugins: { entries: { codex: { enabled: true, }, }, }, agents: { defaults: { model: "anthropic/claude-opus-4-6", }, list: [ { id: "main", default: true, model: "anthropic/claude-opus-4-6", }, { id: "codex", name: "Codex", model: "openai/gpt-5.5", }, ], },}Avec cette configuration, lâagent main utilise son chemin fournisseur normal et lâagent
codex utilise lâapp-server Codex.
Déploiement Codex en échec fermé
Pour les tours dâagent OpenAI, openai/gpt-* se rĂ©sout dĂ©jĂ vers Codex lorsque le
plugin groupé est disponible. Ajoutez une politique de runtime explicite lorsque vous voulez une rÚgle
Ă©crite dâĂ©chec fermĂ© :
{ models: { providers: { openai: { agentRuntime: { id: "codex", }, }, }, }, agents: { defaults: { model: "openai/gpt-5.5", }, }, plugins: { entries: { codex: { enabled: true, }, }, },}Avec Codex forcĂ©, OpenClaw Ă©choue tĂŽt si le plugin Codex est dĂ©sactivĂ©, si lâapp-server est trop ancien, ou si lâapp-server ne peut pas dĂ©marrer.
Politique dâapp-server
Par défaut, le plugin démarre localement le binaire Codex géré par OpenClaw avec le transport
stdio. Définissez appServer.command uniquement lorsque vous voulez intentionnellement exécuter un
exĂ©cutable diffĂ©rent. Utilisez le transport WebSocket uniquement lorsquâun app-server est dĂ©jĂ
en cours dâexĂ©cution ailleurs :
{ plugins: { entries: { codex: { enabled: true, config: { appServer: { transport: "websocket", url: "ws://gateway-host:39175", authToken: "${CODEX_APP_SERVER_TOKEN}", }, }, }, }, },}Les sessions app-server stdio locales utilisent par dĂ©faut la posture dâopĂ©rateur local de confiance :
approvalPolicy: "never", approvalsReviewer: "user" et
sandbox: "danger-full-access". Si les exigences Codex locales interdisent cette
posture YOLO implicite, OpenClaw sélectionne plutÎt les permissions de gardien autorisées.
Lorsquâun bac Ă sable OpenClaw est actif pour la session, OpenClaw dĂ©sactive le
Code Mode natif de Codex, les serveurs MCP utilisateur et lâexĂ©cution de plugins adossĂ©e Ă lâapplication pour ce
tour au lieu de sâappuyer sur le bac Ă sable cĂŽtĂ© hĂŽte de Codex. LâaccĂšs shell est exposĂ©
via des outils dynamiques adossés au bac à sable OpenClaw, comme sandbox_exec et
sandbox_process, lorsque les outils exec/process normaux sont disponibles.
Utilisez le mode exec OpenClaw normalisĂ© lorsque vous voulez lâauto-review natif de Codex avant les Ă©chappements de bac Ă sable ou les permissions supplĂ©mentaires :
{ tools: { exec: { mode: "auto", }, }, plugins: { entries: { codex: { enabled: true, }, }, },}Pour les sessions app-server Codex, OpenClaw mappe tools.exec.mode: "auto" vers les
approbations revues par Guardian de Codex, généralement
approvalPolicy: "on-request", approvalsReviewer: "auto_review" et
sandbox: "workspace-write" lorsque les exigences locales autorisent ces valeurs.
Dans tools.exec.mode: "auto", OpenClaw ne préserve pas les anciens remplacements Codex non sûrs
approvalPolicy: "never" ou sandbox: "danger-full-access" ; utilisez
tools.exec.mode: "full" pour une posture Codex intentionnelle sans approbation. Lâancien
préréglage plugins.entries.codex.config.appServer.mode: "guardian" fonctionne toujours,
mais tools.exec.mode: "auto" est la surface OpenClaw normalisée.
Pour la comparaison au niveau des modes avec les approbations exec hĂŽte et les permissions ACPX, consultez Modes de permission.
Pour chaque champ app-server, lâordre dâauthentification, lâisolation dâenvironnement, la dĂ©couverte et le comportement de dĂ©lai dâexpiration, consultez RĂ©fĂ©rence du harnais Codex.
Commandes et diagnostics
Le plugin groupé enregistre /codex comme commande slash sur tout canal qui
prend en charge les commandes texte OpenClaw.
LâexĂ©cution et le contrĂŽle natifs nĂ©cessitent un propriĂ©taire ou un client Gateway operator.admin.
Cela inclut la liaison ou la reprise de fils, lâenvoi ou lâarrĂȘt de tours,
le changement dâĂ©tat de modĂšle, de mode rapide ou de permission, la compaction ou la revue, et
la suppression dâune liaison. Les autres expĂ©diteurs autorisĂ©s conservent les commandes en lecture seule pour le statut, lâaide,
le compte, le modĂšle, le fil, le serveur MCP, les compĂ©tences et lâinspection des liaisons.
Formes courantes :
/codex statusvĂ©rifie la connectivitĂ© app-server, les modĂšles, le compte, les limites de dĂ©bit, les serveurs MCP et les skills./codex modelsliste les modĂšles app-server Codex actifs./codex threads [filter]liste les fils app-server Codex rĂ©cents./codex resume <thread-id>attache la session OpenClaw actuelle Ă un fil Codex existant./codex compactdemande Ă lâapp-server Codex de compacter le fil attachĂ©./codex reviewdĂ©marre la revue native Codex pour le fil attachĂ©./codex diagnostics [note]demande avant dâenvoyer les commentaires Codex pour le fil attachĂ©./codex accountaffiche le statut du compte et des limites de dĂ©bit./codex mcpliste lâĂ©tat des serveurs MCP app-server Codex./codex skillsliste les skills app-server Codex.
Pour la plupart des rapports de support, commencez par /diagnostics [note] dans la conversation
oĂč le bug sâest produit. Cela crĂ©e un rapport de diagnostics Gateway et, pour les sessions
du harnais Codex, demande lâapprobation dâenvoyer le paquet de commentaires Codex pertinent.
Consultez Export de diagnostics pour le modÚle de confidentialité et le comportement
des discussions de groupe.
Utilisez /codex diagnostics [note] uniquement lorsque vous voulez spécifiquement le téléversement des
commentaires Codex pour le fil actuellement attaché sans le paquet complet de diagnostics
Gateway.
Inspecter les fils Codex localement
Le moyen le plus rapide dâinspecter une mauvaise exĂ©cution Codex est souvent dâouvrir directement le fil Codex natif :
codex resume <thread-id>RĂ©cupĂ©rez lâid du fil dans la rĂ©ponse /diagnostics terminĂ©e, /codex binding, ou
/codex threads [filter].
Pour les mécanismes de téléversement et les limites de diagnostics au niveau du runtime, consultez Runtime du harnais Codex.
Dans le rĂ©pertoire personnel par agent par dĂ©faut, lâauthentification est sĂ©lectionnĂ©e dans cet ordre :
- Profils dâauthentification OpenAI ordonnĂ©s pour lâagent, de prĂ©fĂ©rence sous
auth.order.openai. ExĂ©cutezopenclaw doctor --fixpour migrer les anciens ids de profil dâauthentification Codex hĂ©ritĂ©s et lâancien ordre dâauthentification Codex. - Le compte existant de lâapp-server dans le rĂ©pertoire personnel Codex de cet agent.
- Pour les lancements dâapp-server stdio locaux uniquement,
CODEX_API_KEY, puisOPENAI_API_KEY, lorsquâaucun compte app-server nâest prĂ©sent et que lâauthentification OpenAI est toujours requise.
Quand OpenClaw voit un profil dâauthentification Codex de type abonnement ChatGPT, il supprime
CODEX_API_KEY et OPENAI_API_KEY du processus enfant Codex lancé. Cela
garde les clés API au niveau Gateway disponibles pour les embeddings ou les modÚles OpenAI directs
sans faire facturer accidentellement les tours app-server Codex natifs via lâAPI.
Les profils explicites par clĂ© API Codex et le repli local de clĂ© dâenvironnement stdio utilisent la connexion
app-server au lieu de lâenvironnement hĂ©ritĂ© du processus enfant. Les connexions app-server WebSocket
ne reçoivent pas le repli de clĂ© API dâenvironnement Gateway ; utilisez un profil dâauthentification explicite ou le
propre compte de lâapp-server distant.
Lorsque des plugins Codex natifs sont configurés, OpenClaw installe ou actualise ces
plugins via lâapp-server connectĂ© avant dâexposer les applications appartenant aux plugins au
fil Codex. app/list reste la source de vĂ©ritĂ© pour les ids dâapplication,
lâaccessibilitĂ© et les mĂ©tadonnĂ©es, mais OpenClaw possĂšde la dĂ©cision dâactivation par fil :
si la politique autorise une application accessible listée, OpenClaw envoie
thread/start.config.apps[appId].enabled = true mĂȘme lorsque app/list signale actuellement
cette application comme dĂ©sactivĂ©e. Ce chemin nâinvente pas lâinstallation dâapplication pour
des ids inconnus ; OpenClaw active uniquement les plugins de marketplace avec plugin/install
puis actualise lâinventaire.
Si un profil dâabonnement atteint une limite dâutilisation Codex, OpenClaw enregistre lâheure de rĂ©initialisation
quand Codex en signale une et essaie le profil dâauthentification ordonnĂ© suivant pour la mĂȘme
exĂ©cution Codex. Lorsque lâheure de rĂ©initialisation est passĂ©e, le profil dâabonnement redevient Ă©ligible
sans changer le modÚle openai/gpt-* sélectionné ni le runtime Codex.
Pour les lancements locaux du serveur dâapplication stdio, OpenClaw dĂ©finit CODEX_HOME sur un rĂ©pertoire par agent afin que la configuration Codex, les fichiers dâauthentification/de compte, le cache/les donnĂ©es des plugins et lâĂ©tat natif des fils ne lisent ni nâĂ©crivent par dĂ©faut dans le ~/.codex personnel de lâopĂ©rateur. OpenClaw conserve le HOME normal du processus ; les sous-processus exĂ©cutĂ©s par Codex peuvent toujours trouver la configuration et les jetons du rĂ©pertoire utilisateur, et Codex peut dĂ©couvrir les entrĂ©es partagĂ©es $HOME/.agents/skills et $HOME/.agents/plugins/marketplace.json. Avec appServer.homeScope: "user", OpenClaw utilise Ă la place le rĂ©pertoire dâaccueil Codex natif de lâutilisateur et son compte existant, sans injecter de profil dâauthentification OpenClaw.
Si un dĂ©ploiement nĂ©cessite une isolation supplĂ©mentaire de lâenvironnement, ajoutez ces variables Ă appServer.clearEnv :
{ plugins: { entries: { codex: { enabled: true, config: { appServer: { clearEnv: ["CODEX_API_KEY", "OPENAI_API_KEY"], }, }, }, }, },}appServer.clearEnv nâaffecte que le processus enfant du serveur dâapplication Codex lancĂ©. OpenClaw retire CODEX_HOME et HOME de cette liste pendant la normalisation du lancement local : CODEX_HOME reste pointĂ© vers la portĂ©e dâagent ou dâutilisateur sĂ©lectionnĂ©e, et HOME reste hĂ©ritĂ© afin que les sous-processus puissent utiliser lâĂ©tat normal du rĂ©pertoire utilisateur.
Les outils dynamiques Codex utilisent par dĂ©faut le chargement searchable. OpenClaw nâexpose pas les outils dynamiques qui dupliquent les opĂ©rations dâespace de travail natives de Codex : read, write, edit, apply_patch, exec, process et update_plan. La plupart des autres outils dâintĂ©gration OpenClaw, tels que la messagerie, les mĂ©dias, Cron, le navigateur, les nĆuds, Gateway et heartbeat_respond, sont disponibles via la recherche dâoutils Codex dans lâespace de noms openclaw, ce qui rĂ©duit le contexte initial du modĂšle. La recherche Web utilise par dĂ©faut lâoutil hĂ©bergĂ© web_search de Codex lorsque la recherche est activĂ©e et quâaucun fournisseur gĂ©rĂ© nâest sĂ©lectionnĂ©. La recherche hĂ©bergĂ©e native et lâoutil dynamique web_search gĂ©rĂ© par OpenClaw sâexcluent mutuellement afin que la recherche gĂ©rĂ©e ne puisse pas contourner les restrictions de domaine natives. OpenClaw utilise lâoutil gĂ©rĂ© lorsque la recherche hĂ©bergĂ©e est indisponible, explicitement dĂ©sactivĂ©e ou remplacĂ©e par un fournisseur gĂ©rĂ© sĂ©lectionnĂ©. OpenClaw garde lâextension autonome web.run de Codex dĂ©sactivĂ©e, car le trafic de serveur dâapplication de production rejette son espace de noms web dĂ©fini par lâutilisateur. tools.web.search.enabled: false dĂ©sactive les deux chemins, tout comme les exĂ©cutions LLM uniquement avec outils dĂ©sactivĂ©s. Codex traite "cached" comme une prĂ©fĂ©rence et la rĂ©sout en accĂšs externe en direct pour les tours de serveur dâapplication sans restriction. Le basculement automatique gĂ©rĂ© Ă©choue en mode fermĂ© lorsque des allowedDomains natifs sont dĂ©finis, afin que la liste dâautorisation ne puisse pas ĂȘtre contournĂ©e. Les changements persistants de politique de recherche effective font pivoter le fil Codex liĂ© avant le tour suivant. Les restrictions transitoires par tour utilisent un fil restreint temporaire et prĂ©servent la liaison existante pour une reprise ultĂ©rieure. Les rĂ©ponses sources sessions_yield et limitĂ©es aux outils de message restent directes, car il sâagit de contrats de contrĂŽle de tour. sessions_spawn reste recherchable afin que le spawn_agent natif de Codex demeure la surface principale de sous-agent Codex, tandis que la dĂ©lĂ©gation explicite OpenClaw ou ACP reste disponible via lâespace de noms dâoutils dynamiques openclaw. Les instructions de collaboration Heartbeat indiquent Ă Codex de rechercher heartbeat_respond avant de terminer un tour Heartbeat lorsque lâoutil nâest pas dĂ©jĂ chargĂ©.
DĂ©finissez codexDynamicToolsLoading: "direct" uniquement lors de la connexion Ă un serveur dâapplication Codex personnalisĂ© qui ne peut pas rechercher les outils dynamiques diffĂ©rĂ©s, ou lors du dĂ©bogage de la charge utile complĂšte des outils.
Champs de Plugin Codex de premier niveau pris en charge :
| Champ | Valeur par défaut | Signification |
|---|---|---|
codexDynamicToolsLoading |
"searchable" |
Utilisez "direct" pour placer les outils dynamiques OpenClaw directement dans le contexte initial des outils Codex. |
codexDynamicToolsExclude |
[] |
Noms supplĂ©mentaires dâoutils dynamiques OpenClaw Ă omettre des tours du serveur dâapplication Codex. |
codexPlugins |
désactivé | Prise en charge native des plugins/applications Codex pour les plugins organisés migrés installés depuis la source. |
Champs appServer pris en charge :
| Champ | Par défaut | Signification |
|---|---|---|
transport |
"stdio" |
"stdio" lance Codex ; "websocket" se connecte Ă url. |
homeScope |
"agent" |
"agent" isole lâĂ©tat de Codex par agent OpenClaw. "user" partage le $CODEX_HOME natif ou ~/.codex, utilise lâauthentification native et active la gestion des fils rĂ©servĂ©e au propriĂ©taire. La portĂ©e utilisateur nĂ©cessite stdio. |
command |
binaire Codex géré | Exécutable pour le transport stdio. Laissez-le non défini pour utiliser le binaire géré ; définissez-le uniquement pour un remplacement explicite. |
args |
["app-server", "--listen", "stdio://"] |
Arguments pour le transport stdio. |
url |
non dĂ©fini | URL WebSocket du serveur dâapplication. |
authToken |
non défini | Jeton Bearer pour le transport WebSocket. Accepte une chaßne littérale ou une SecretInput comme ${CODEX_APP_SERVER_TOKEN}. |
headers |
{} |
En-tĂȘtes WebSocket supplĂ©mentaires. Les valeurs dâen-tĂȘte acceptent des chaĂźnes littĂ©rales ou des valeurs SecretInput, par exemple x-codex-client-session-token: "${CODEX_CLIENT_SESSION_TOKEN}". |
clearEnv |
[] |
Noms de variables dâenvironnement supplĂ©mentaires supprimĂ©s du processus serveur dâapplication stdio lancĂ© aprĂšs quâOpenClaw a construit son environnement hĂ©ritĂ©. OpenClaw conserve le CODEX_HOME sĂ©lectionnĂ© et le HOME hĂ©ritĂ© pour les lancements locaux. |
codeModeOnly |
false |
Active la surface dâoutils Codex limitĂ©e au mode code. Les outils dynamiques OpenClaw restent enregistrĂ©s auprĂšs de Codex afin que les appels tools.* imbriquĂ©s reviennent via le pont item/tool/call du serveur dâapplication. |
remoteWorkspaceRoot |
non dĂ©fini | Racine de lâespace de travail distant du serveur dâapplication Codex. Lorsquâelle est dĂ©finie, OpenClaw dĂ©duit la racine locale de lâespace de travail Ă partir de lâespace de travail OpenClaw rĂ©solu, conserve le suffixe du cwd actuel sous cette racine distante et envoie uniquement le cwd final du serveur dâapplication Ă Codex. Si le cwd est en dehors de la racine rĂ©solue de lâespace de travail OpenClaw, OpenClaw Ă©choue de maniĂšre fermĂ©e au lieu dâenvoyer un chemin local au Gateway vers le serveur dâapplication distant. |
requestTimeoutMs |
60000 |
DĂ©lai dâexpiration pour les appels du plan de contrĂŽle du serveur dâapplication. |
turnCompletionIdleTimeoutMs |
60000 |
FenĂȘtre silencieuse aprĂšs que Codex accepte un tour ou aprĂšs une requĂȘte de serveur dâapplication limitĂ©e au tour pendant quâOpenClaw attend turn/completed. |
postToolRawAssistantCompletionIdleTimeoutMs |
300000 |
Garde dâinactivitĂ© de complĂ©tion et de progression utilisĂ©e aprĂšs un transfert dâoutil, une complĂ©tion dâoutil native, une progression brute de lâassistant aprĂšs outil, une complĂ©tion de raisonnement brut ou une progression de raisonnement pendant quâOpenClaw attend turn/completed. Utilisez-la pour les charges de travail fiables ou lourdes oĂč la synthĂšse aprĂšs outil peut lĂ©gitimement rester silencieuse plus longtemps que le budget final de publication de lâassistant. |
mode |
"yolo" sauf si les exigences Codex locales interdisent YOLO |
PrĂ©rĂ©glage pour une exĂ©cution YOLO ou relue par un gardien. Les exigences stdio locales qui omettent danger-full-access, lâapprobation never ou le relecteur user rendent le gardien implicite par dĂ©faut. |
approvalPolicy |
"never" ou une politique dâapprobation de gardien autorisĂ©e |
Politique dâapprobation native de Codex envoyĂ©e au dĂ©marrage, Ă la reprise ou au tour du fil. Les valeurs par dĂ©faut du gardien privilĂ©gient "on-request" lorsquâelle est autorisĂ©e. |
sandbox |
"danger-full-access" ou un bac à sable de gardien autorisé |
Mode de bac Ă sable natif de Codex envoyĂ© au dĂ©marrage ou Ă la reprise du fil. Les valeurs par dĂ©faut du gardien privilĂ©gient "workspace-write" lorsquâil est autorisĂ©, sinon "read-only". Lorsquâun bac Ă sable OpenClaw est actif, les tours danger-full-access utilisent Codex workspace-write avec un accĂšs rĂ©seau dĂ©rivĂ© du paramĂštre de sortie du bac Ă sable OpenClaw. |
approvalsReviewer |
"user" ou un relecteur de gardien autorisé |
Utilisez "auto_review" pour laisser Codex examiner les invites dâapprobation natives lorsque câest autorisĂ©, sinon guardian_subagent ou user. guardian_subagent reste un alias hĂ©ritĂ©. |
serviceTier |
non dĂ©fini | Niveau de service facultatif du serveur dâapplication Codex. "priority" active le routage en mode rapide, "flex" demande un traitement flexible, null efface le remplacement, et lâancien "fast" est acceptĂ© comme "priority". |
networkProxy |
dĂ©sactivĂ© | Active la mise en rĂ©seau du profil dâautorisations Codex pour les commandes du serveur dâapplication. OpenClaw dĂ©finit la configuration permissions.<profile>.network sĂ©lectionnĂ©e et la sĂ©lectionne avec default_permissions au lieu dâenvoyer sandbox. |
experimental.sandboxExecServer |
false |
Option dâaperçu qui enregistre un environnement Codex adossĂ© au bac Ă sable OpenClaw auprĂšs du serveur dâapplication Codex 0.132.0 ou plus rĂ©cent, afin que lâexĂ©cution native Codex puisse sâexĂ©cuter dans le bac Ă sable OpenClaw actif. |
appServer.networkProxy est explicite, car il modifie le contrat du bac Ă sable
Codex. Lorsquâil est activĂ©, OpenClaw dĂ©finit aussi features.network_proxy.enabled et
default_permissions dans la configuration du fil Codex afin que le profil
dâautorisation gĂ©nĂ©rĂ© puisse dĂ©marrer la mise en rĂ©seau gĂ©rĂ©e par Codex. Par
défaut, OpenClaw génÚre un nom de profil résistant aux collisions
openclaw-network-<fingerprint> Ă partir du corps du profil ; utilisez
profileName uniquement lorsquâun nom local stable est requis.
export default { plugins: { entries: { codex: { config: { appServer: { sandbox: "workspace-write", networkProxy: { enabled: true, domains: { "api.openai.com": "allow", "blocked.example.com": "deny", }, unixSockets: { "/tmp/proxy.sock": "allow", "/tmp/blocked.sock": "none", }, allowUpstreamProxy: true, proxyUrl: "http://127.0.0.1:3128", }, }, }, }, }, },};Si lâexĂ©cution normale de lâapp-server utilisait danger-full-access, lâactivation de
networkProxy utilise un accĂšs au systĂšme de fichiers de type espace de travail pour le
profil dâautorisation gĂ©nĂ©rĂ©. Lâapplication rĂ©seau gĂ©rĂ©e par Codex correspond Ă un rĂ©seau
sandboxé ; un profil en accÚs complet ne protégerait donc pas le trafic sortant.
Les entrées de domaine utilisent allow ou deny ; les entrées de socket Unix utilisent les
valeurs Codex allow ou none.
Les appels dâoutils dynamiques appartenant Ă OpenClaw sont bornĂ©s indĂ©pendamment de
appServer.requestTimeoutMs : les requĂȘtes Codex item/tool/call utilisent par dĂ©faut un
watchdog OpenClaw de 90 secondes. Un argument timeoutMs positif propre Ă lâappel Ă©tend
ou raccourcit ce budget dâoutil spĂ©cifique. Lâoutil image_generate utilise
agents.defaults.imageGenerationModel.timeoutMs lorsque lâappel dâoutil ne fournit pas son
propre dĂ©lai dâexpiration, ou sinon une valeur par dĂ©faut de gĂ©nĂ©ration dâimage de
120 secondes. Lâoutil image de comprĂ©hension multimĂ©dia utilise
tools.media.image.timeoutSeconds ou sa valeur multimédia par défaut de 60 secondes. Pour
la comprĂ©hension dâimage, ce dĂ©lai sâapplique Ă la requĂȘte elle-mĂȘme et nâest pas rĂ©duit par
le travail de prĂ©paration effectuĂ© auparavant. Les budgets dâoutils dynamiques sont plafonnĂ©s
Ă 600000 ms. En cas de dĂ©lai dâexpiration, OpenClaw interrompt le signal de lâoutil lorsque
câest pris en charge et renvoie Ă Codex une rĂ©ponse dâoutil dynamique en Ă©chec afin que le
tour puisse continuer au lieu de laisser la session en processing.
Ce watchdog constitue le budget dynamique externe item/tool/call ; les dĂ©lais dâexpiration
de requĂȘte propres au fournisseur sâexĂ©cutent Ă lâintĂ©rieur de cet appel et conservent leur
propre sĂ©mantique de dĂ©lai dâexpiration.
AprĂšs que Codex a acceptĂ© un tour, puis aprĂšs quâOpenClaw a rĂ©pondu Ă une requĂȘte
app-server limitĂ©e au tour, le harnais attend de Codex quâil progresse dans le tour courant et
termine finalement le tour natif avec turn/completed. Si lâapp-server reste silencieux pendant
appServer.turnCompletionIdleTimeoutMs, OpenClaw tente au mieux dâinterrompre le tour
Codex, enregistre un diagnostic de dĂ©lai dâexpiration et libĂšre la voie de session OpenClaw
afin que les messages de chat suivants ne soient pas mis en file derriĂšre un ancien tour natif
bloquĂ©. La plupart des notifications non terminales du mĂȘme tour dĂ©sarment ce watchdog
court, car Codex a prouvé que le tour est toujours actif. Les transferts vers des outils utilisent
un budget dâinactivitĂ© post-outil plus long : aprĂšs quâOpenClaw renvoie une rĂ©ponse
item/tool/call, aprĂšs la fin dâĂ©lĂ©ments dâoutils natifs tels que commandExecution, aprĂšs des
achĂšvements bruts custom_tool_call_output, et aprĂšs une progression brute post-outil de
lâassistant, des achĂšvements de raisonnement bruts ou une progression de raisonnement. La
garde utilise appServer.postToolRawAssistantCompletionIdleTimeoutMs lorsquâil est configurĂ©
et utilise sinon cinq minutes par dĂ©faut. Ce mĂȘme budget post-outil Ă©tend aussi le watchdog de
progression pour la fenĂȘtre de synthĂšse silencieuse avant que Codex nâĂ©mette le prochain
Ă©vĂ©nement du tour courant. Les notifications globales de lâapp-server, comme les mises Ă
jour de limites de dĂ©bit, ne rĂ©initialisent pas la progression dâinactivitĂ© du tour. Les
achĂšvements de raisonnement, les achĂšvements agentMessage de commentaire et la
progression brute de raisonnement ou dâassistant avant outil peuvent ĂȘtre suivis dâune rĂ©ponse
finale automatique ; ils utilisent donc la garde de réponse post-progression au lieu de libérer
immédiatement la voie de session. Seuls les éléments agentMessage finalisés finaux/non
commentaires et les achĂšvements bruts dâassistant avant outil arment la libĂ©ration de sortie
assistant : si Codex devient ensuite silencieux sans turn/completed, OpenClaw tente au
mieux dâinterrompre le tour natif et libĂšre la voie de session. Si un autre observateur de tour
remporte cette course de libĂ©ration, OpenClaw accepte quand mĂȘme lâĂ©lĂ©ment final assistant
terminĂ© une fois quâaucune requĂȘte native, aucun Ă©lĂ©ment ni aucun achĂšvement dâoutil
dynamique ne reste actif, et que la libération de sortie assistant appartient toujours au dernier
Ă©lĂ©ment terminĂ©, sans achĂšvement dâĂ©lĂ©ment ultĂ©rieur. Cela peut prĂ©server la rĂ©ponse finale
aprĂšs un travail dâoutil terminĂ© sans rejouer le tour. Les deltas partiels de lâassistant, les
réponses antérieures obsolÚtes et les achÚvements ultérieurs vides ne sont pas admissibles.
Les Ă©checs app-server stdio rejouables sans risque, y compris les dĂ©lais dâexpiration
dâinactivitĂ© dâachĂšvement de tour sans preuve dâassistant, dâoutil, dâĂ©lĂ©ment actif ou dâeffet de
bord, sont rĂ©essayĂ©s une fois sur une nouvelle tentative dâapp-server. Les dĂ©lais dâexpiration
non sĂ»rs retirent quand mĂȘme le client app-server bloquĂ© et libĂšrent la voie de session
OpenClaw. Ils effacent aussi lâancienne liaison de thread natif au lieu dâĂȘtre rejouĂ©s
automatiquement. Les dĂ©lais dâexpiration de surveillance dâachĂšvement affichent un texte
spĂ©cifique Ă Codex : les cas rejouables sans risque indiquent que la rĂ©ponse peut ĂȘtre
incomplĂšte, tandis que les cas non sĂ»rs demandent Ă lâutilisateur de vĂ©rifier lâĂ©tat actuel avant
de rĂ©essayer. Les diagnostics publics de dĂ©lai dâexpiration incluent des champs structurels
comme la derniĂšre mĂ©thode de notification app-server, lâid/le type/le rĂŽle de lâĂ©lĂ©ment de
rĂ©ponse assistant brut, les nombres de requĂȘtes/dâĂ©lĂ©ments actifs et lâĂ©tat de surveillance
armée. Lorsque la derniÚre notification est un élément de réponse assistant brut, ils incluent
aussi un aperçu bornĂ© du texte de lâassistant. Ils nâincluent pas le prompt brut ni le contenu
des outils.
Les substitutions dâenvironnement restent disponibles pour les tests locaux :
OPENCLAW_CODEX_APP_SERVER_BINOPENCLAW_CODEX_APP_SERVER_ARGSOPENCLAW_CODEX_APP_SERVER_MODE=yolo|guardianOPENCLAW_CODEX_APP_SERVER_APPROVAL_POLICYOPENCLAW_CODEX_APP_SERVER_SANDBOX
OPENCLAW_CODEX_APP_SERVER_BIN contourne le binaire géré lorsque
appServer.command nâest pas dĂ©fini.
OPENCLAW_CODEX_APP_SERVER_GUARDIAN=1 a été supprimé. Utilisez plutÎt
plugins.entries.codex.config.appServer.mode: "guardian", ou
OPENCLAW_CODEX_APP_SERVER_MODE=guardian pour des tests locaux ponctuels. La
configuration est préférable pour les déploiements reproductibles, car elle conserve le
comportement du Plugin dans le mĂȘme fichier rĂ©visĂ© que le reste de la configuration du
harnais Codex.
Plugins Codex natifs
La prise en charge des Plugins Codex natifs utilise les capacitĂ©s dâapplication et de Plugin
propres Ă lâapp-server Codex dans le mĂȘme thread Codex que le tour du harnais OpenClaw.
OpenClaw ne traduit pas les Plugins Codex en outils dynamiques OpenClaw synthétiques
codex_plugin_*.
codexPlugins affecte uniquement les sessions qui sĂ©lectionnent le harnais Codex natif. Il nâa
aucun effet sur les exécutions du harnais intégré, les exécutions normales du fournisseur
OpenAI, les liaisons de conversation ACP ni les autres harnais.
Configuration migrée minimale :
{ plugins: { entries: { codex: { enabled: true, config: { codexPlugins: { enabled: true, allow_destructive_actions: true, plugins: { "google-calendar": { enabled: true, marketplaceName: "openai-curated", pluginName: "google-calendar", }, }, }, }, }, }, },}La configuration de lâapplication du thread est calculĂ©e lorsquâOpenClaw Ă©tablit une session
de harnais Codex ou remplace une ancienne liaison de thread Codex. Elle nâest pas
recalculée à chaque tour. AprÚs avoir modifié codexPlugins, utilisez /new, /reset ou
redémarrez le gateway afin que les futures sessions de harnais Codex démarrent avec le jeu
dâapplications mis Ă jour.
Pour lâĂ©ligibilitĂ© Ă la migration, lâinventaire des applications, la stratĂ©gie dâactions destructrices, les sollicitations et les diagnostics de Plugin natif, consultez Plugins Codex natifs.
LâaccĂšs aux applications et Plugins cĂŽtĂ© OpenAI est contrĂŽlĂ© par le compte Codex connectĂ© et, pour les espaces de travail Business et Enterprise/Edu, par les contrĂŽles dâapplications de lâespace de travail. Consultez Utiliser Codex avec votre forfait ChatGPT pour la prĂ©sentation OpenAI des comptes et des contrĂŽles dâespace de travail.
Computer Use
Computer Use est couvert dans son propre guide de configuration : Codex Computer Use.
Version courte : OpenClaw nâintĂšgre pas lâapplication de contrĂŽle du bureau et nâexĂ©cute pas
lui-mĂȘme les actions de bureau. Il prĂ©pare lâapp-server Codex, vĂ©rifie que le serveur MCP
computer-use est disponible, puis laisse Codex possĂ©der les appels dâoutils MCP natifs
pendant les tours en mode Codex.
FrontiĂšres dâexĂ©cution
Le harnais Codex modifie uniquement lâexĂ©cuteur dâagent intĂ©grĂ© de bas niveau.
- Les outils dynamiques OpenClaw sont pris en charge. Codex demande Ă OpenClaw dâexĂ©cuter ces outils, OpenClaw reste donc dans le chemin dâexĂ©cution.
- Les outils shell, patch, MCP et applications natives propres à Codex appartiennent à Codex. OpenClaw peut observer ou bloquer certains événements natifs via le relais pris en charge, mais il ne réécrit pas les arguments des outils natifs.
- Codex possĂšde la compaction native. OpenClaw conserve un miroir de transcript pour
lâhistorique du canal, la recherche,
/new,/resetet les futurs changements de modĂšle ou de harnais, mais il ne remplace pas la compaction Codex par un rĂ©sumĂ© OpenClaw ou de moteur de contexte. - La gĂ©nĂ©ration multimĂ©dia, la comprĂ©hension multimĂ©dia, le TTS, les approbations et la sortie dâoutils de messagerie continuent de passer par les paramĂštres fournisseur/modĂšle OpenClaw correspondants.
tool_result_persistsâapplique aux rĂ©sultats dâoutils de transcript appartenant Ă OpenClaw, pas aux enregistrements de rĂ©sultats dâoutils natifs Codex.
Pour les couches de hooks, les surfaces V1 prises en charge, la gestion native des autorisations, le pilotage de file dâattente, les mĂ©canismes dâenvoi de retours Codex et les dĂ©tails de compaction, consultez ExĂ©cution du harnais Codex.
Dépannage
Codex nâapparaĂźt pas comme fournisseur /model normal : câest attendu pour les
nouvelles configurations. Sélectionnez un modÚle openai/gpt-*, activez
plugins.entries.codex.enabled, puis vérifiez si plugins.allow exclut codex.
OpenClaw utilise le harnais intégré au lieu de Codex : assurez-vous que la référence de
modĂšle est openai/gpt-* sur le fournisseur OpenAI officiel et que le Plugin Codex est
installĂ© et activĂ©. Si vous avez besoin dâune preuve stricte pendant les tests, dĂ©finissez
agentRuntime.id: "codex" au niveau du fournisseur ou du modÚle. Une exécution Codex
forcée échoue au lieu de se rabattre sur OpenClaw.
LâexĂ©cution OpenAI Codex se rabat sur le chemin par clĂ© dâAPI : collectez un extrait Gateway expurgĂ© qui montre le modĂšle, lâexĂ©cution, le fournisseur sĂ©lectionnĂ© et lâĂ©chec. Demandez aux collaborateurs concernĂ©s dâexĂ©cuter cette commande en lecture seule sur leur hĂŽte OpenClaw :
( pattern='openai/gpt-5\.[45]|openai[-]codex|agentRuntime(\.id)?|harnessRuntime|Runtime: OpenAI Codex|legacy OpenAI Codex prefix|resolveSelectedOpenAIRuntimeProvider|candidateProvider[": ]+openai|status[": ]+401|Incorrect API key|No API key|api-key path|API-key path|OAuth' if ls /tmp/openclaw/openclaw-*.log >/dev/null 2>&1; then grep -E -i -n "$pattern" /tmp/openclaw/openclaw-*.log 2>/dev/null || true else journalctl --user -u openclaw-gateway --since today --no-pager 2>/dev/null \ | grep -E -i "$pattern" || true fi) | sed -E \ -e 's/(Authorization: Bearer )[A-Za-z0-9._~+\/-]+/\1[REDACTED]/Ig' \ -e 's/(Bearer )[A-Za-z0-9._~+\/-]+/\1[REDACTED]/Ig' \ -e 's/(api[_ -]?key[=: ]+)[^ ,}"]+/\1[REDACTED]/Ig' \ -e 's/(OPENAI_API_KEY[=: ]+)[^ ,}"]+/\1[REDACTED]/Ig' \ -e 's/sk-[A-Za-z0-9_-]{12,}/sk-[REDACTED]/g' \ -e 's/[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}/[EMAIL-REDACTED]/g' \ | tail -200Les extraits utiles incluent généralement openai/gpt-5.5 ou openai/gpt-5.4,
Runtime: OpenAI Codex, agentRuntime.id ou harnessRuntime,
candidateProvider: "openai", et un résultat 401, Incorrect API key ou
No API key. Une exĂ©cution corrigĂ©e doit montrer le chemin OAuth OpenAI au lieu dâun Ă©chec
OpenAI ordinaire par clĂ© dâAPI.
Il reste des références de modÚles Codex héritées dans la configuration : exécutez
openclaw doctor --fix. Doctor réécrit les références de modÚles héritées en openai/*,
supprime les anciennes Ă©pingles de session et dâexĂ©cution au niveau de lâagent entier, et
prĂ©serve les substitutions de profils dâauthentification existantes.
Lâapp-server est rejetĂ© : utilisez lâapp-server Codex 0.125.0 ou une version plus rĂ©cente.
Les prĂ©versions de mĂȘme version ou les versions suffixĂ©es par build comme
0.125.0-alpha.2 ou 0.125.0+custom sont rejetées, car OpenClaw teste le plancher stable
du protocole 0.125.0.
/codex status ne peut pas se connecter : vérifiez que le Plugin codex groupé est activé,
que plugins.allow lâinclut lorsquâune liste dâautorisation est configurĂ©e, et que tout
appServer.command, url, authToken ou en-tĂȘte personnalisĂ© est valide.
La découverte de modÚles est lente : réduisez
plugins.entries.codex.config.discovery.timeoutMs ou désactivez la découverte. Consultez
Référence du harnais Codex.
Le transport WebSocket échoue immédiatement : vérifiez appServer.url, authToken, les
en-tĂȘtes, et que lâapp-server distant parle la mĂȘme version du protocole app-server Codex.
Le shell natif ou les outils de patch sont bloqués avec Native hook relay unavailable :
le fil Codex essaie encore dâutiliser un identifiant de relais de hook natif
quâOpenClaw nâa plus enregistrĂ©. Il sâagit dâun problĂšme de transport de hook
Codex natif, et non dâun Ă©chec du backend ACP, du fournisseur, de GitHub ou
dâune commande shell. DĂ©marrez une nouvelle session dans la discussion concernĂ©e
avec /new ou /reset, puis réessayez une commande sans risque. Si cela
fonctionne une fois mais que lâappel suivant Ă lâoutil natif Ă©choue Ă nouveau,
traitez /new uniquement comme une solution de contournement temporaire :
copiez le prompt dans une nouvelle session aprÚs avoir redémarré le serveur
dâapplication Codex ou le Gateway OpenClaw, afin que les anciens fils soient
abandonnés et que les enregistrements de hooks natifs soient recréés.
Un modĂšle non-Codex utilise le harnais intĂ©grĂ© : câest attendu sauf si la
politique dâexĂ©cution du fournisseur ou du modĂšle le route vers un autre
harnais. Les références de fournisseur non-OpenAI simples restent sur leur
chemin de fournisseur normal en mode auto.
Computer Use est installĂ© mais les outils ne sâexĂ©cutent pas : vĂ©rifiez
/codex computer-use status depuis une nouvelle session. Si un outil signale
Native hook relay unavailable, utilisez la récupération du relais de hook
natif ci-dessus. Consultez Codex Computer Use.