codex_plugin_*. Plugin-Aufrufe bleiben im nativen Codex-Transkript, und der Codex app-server besitzt die app-gestützte MCP-Ausführung.
Verwenden Sie diese Seite, nachdem der grundlegende Codex-Harness funktioniert.
Anforderungen
- Die ausgewählte OpenClaw-Agentenruntime muss der native Codex-Harness sein.
plugins.entries.codex.enabledmuss true sein.plugins.entries.codex.config.codexPlugins.enabledmuss true sein.- V1 unterstützt nur
openai-curated-Plugins, die die Migration als quellinstalliert im Codex-Home der Quelle erkannt hat. - Der Ziel-Codex app-server muss den erwarteten Marketplace sowie das erwartete Plugin- und App-Inventar sehen können.
codexPlugins hat keine Auswirkung auf OpenClaw-Läufe, normale OpenAI-Provider-Läufe, ACP-Konversationsbindungen oder andere Harnesses, da diese Pfade keine Codex app-server-Threads mit nativer apps-Konfiguration erstellen.
OpenAI-seitiger Codex-Zugriff, App-Verfügbarkeit und Arbeitsbereichskontrollen für Apps/Plugins stammen aus dem angemeldeten Codex-Konto. Informationen zum OpenAI-Konto und Admin-Modell finden Sie unter Codex mit Ihrem ChatGPT-Plan verwenden.
Schnellstart
Vorschau der Migration aus dem Codex-Home der Quelle:codexPlugins-Einträge für berechtigte Plugins und ruft Codex app-server plugin/install für ausgewählte Plugins auf. Eine typische migrierte Konfiguration sieht so aus:
codexPlugins übernehmen neue Codex-Konversationen automatisch den aktualisierten App-Satz. Verwenden Sie /new oder /reset, um die aktuelle Konversation zu aktualisieren. Ein Gateway-Neustart ist für Änderungen zum Aktivieren oder Deaktivieren von Plugins nicht erforderlich.
Plugins aus dem Chat verwalten
Verwenden Sie/codex plugins, wenn Sie konfigurierte native Codex-Plugins aus demselben Chat prüfen oder ändern möchten, in dem Sie den Codex-Harness betreiben:
/codex plugins ist ein Alias für /codex plugins list. Die Listenausgabe zeigt die konfigurierten Plugin-Schlüssel, den Ein/Aus-Zustand, den Codex-Plugin-Namen und den Marketplace aus plugins.entries.codex.config.codexPlugins.plugins.
enable und disable schreiben nur in die OpenClaw-Konfiguration unter ~/.openclaw/openclaw.json; sie bearbeiten weder ~/.codex/config.toml noch installieren sie neue Codex-Plugins. Nur der Eigentümer oder ein Gateway-Client mit dem Scope operator.admin kann den Plugin-Zustand ändern.
Das Aktivieren eines konfigurierten Plugins schaltet auch den globalen Schalter codexPlugins.enabled ein. Wenn das Plugin deaktiviert geschrieben wurde, weil die Migration auth_required zurückgegeben hat, autorisieren Sie die App in Codex erneut, bevor Sie sie in OpenClaw aktivieren.
Funktionsweise der nativen Plugin-Einrichtung
Die Integration hat drei getrennte Zustände:- Installiert: Codex hat das lokale Plugin-Bundle in der Ziel-app-server-Runtime.
- Aktiviert: Die OpenClaw-Konfiguration ist bereit, das Plugin für Codex-Harness-Turns verfügbar zu machen.
- Zugänglich: Der Codex app-server bestätigt, dass die App-Einträge des Plugins für das aktive Konto verfügbar sind und der migrierten Plugin-Identität zugeordnet werden können.
plugin/read der Quelle und prüft, ob die Antwort des Quell-Codex app-server-Kontos ein ChatGPT-Abonnementkonto ist. Nicht-ChatGPT- oder fehlende Kontoantworten überspringen app-gestützte Plugins mit codex_subscription_required. Standardmäßig ruft die Migration kein Quell-app/list auf; app-gestützte Quell-Plugins, die die Kontoprüfung bestehen, werden ohne Verifizierung der Zugänglichkeit der Quell-App geplant, und Transportfehler bei der Kontoabfrage werden mit codex_account_unavailable übersprungen. Mit --verify-plugin-apps erstellt die Migration einen frischen Quell-app/list-Snapshot und verlangt, dass jede eigene App vorhanden, aktiviert und zugänglich ist, bevor eine native Aktivierung geplant wird. In diesem Modus fallen Transportfehler bei der Kontoabfrage auf die Quell-App-Inventarprüfung zurück. Das Runtime-App-Inventar ist die Prüfung der Zugänglichkeit der Zielsitzung nach der Migration. Die Codex-Harness-Sitzungseinrichtung berechnet dann eine restriktive Thread-App-Konfiguration für die aktivierten und zugänglichen Plugin-Apps.
Die Thread-App-Konfiguration wird berechnet, wenn OpenClaw eine Codex-Harness-Sitzung herstellt oder eine veraltete Codex-Thread-Bindung ersetzt. Sie wird nicht bei jedem Turn neu berechnet, daher wirken sich /codex plugins enable und /codex plugins disable auf neue Codex-Konversationen aus. Verwenden Sie /new oder /reset, wenn die aktuelle Konversation den aktualisierten App-Satz übernehmen soll.
V1-Supportgrenze
V1 ist absichtlich eng gefasst:- Nur
openai-curated-Plugins, die bereits im Quell-Codex app-server-Inventar installiert waren, sind migrationsberechtigt. - App-gestützte Quell-Plugins müssen die abonnementbezogene Prüfung zur Migrationszeit bestehen.
--verify-plugin-appsfügt die Quell-App-Inventarprüfung hinzu. Konten, die durch ein Abonnement gesperrt sind, sowie im Verifizierungsmodus unzugängliche, deaktivierte oder fehlende Quell-Apps oder Fehler beim Aktualisieren des Quell-App-Inventars werden als übersprungene manuelle Elemente statt als aktivierte Konfigurationseinträge gemeldet. Nicht lesbare Plugin-Details werden vor der Quell-App-Inventarprüfung übersprungen. - Die Migration schreibt explizite Plugin-Identitäten mit
marketplaceNameundpluginName; sie schreibt keine lokalenmarketplacePath-Cachepfade. codexPlugins.enabledist der globale Aktivierungsschalter.- Es gibt keinen Platzhalter
plugins["*"]und keinen Konfigurationsschlüssel, der beliebige Installationsberechtigung gewährt. - Nicht unterstützte Marketplaces, zwischengespeicherte Plugin-Bundles, Hooks und Codex-Konfigurationsdateien bleiben im Migrationsbericht zur manuellen Prüfung erhalten.
App-Inventar und Eigentümerschaft
OpenClaw liest das Codex-App-Inventar über app-serverapp/list, speichert es eine Stunde lang zwischen und aktualisiert veraltete oder fehlende Einträge asynchron. Der Cache befindet sich nur im Arbeitsspeicher; ein Neustart der CLI oder des Gateway verwirft ihn, und OpenClaw baut ihn aus dem nächsten app/list-Lesevorgang neu auf.
Migration und Runtime verwenden getrennte Cache-Schlüssel:
- Die Quell-Migrationsverifizierung verwendet das Codex-Home der Quelle und die Startoptionen des Quell-app-server. Dies läuft nur, wenn
--verify-plugin-appsgesetzt ist, und erzwingt für diesen Planungslauf eine frische Quell-app/list-Traversierung. - Die Ziel-Runtime-Einrichtung verwendet die Codex app-server-Identität des Ziel-Agenten, wenn sie die Codex-Thread-App-Konfiguration erstellt. Plugin-Aktivierung invalidiert diesen Ziel-Cache-Schlüssel und erzwingt danach nach
plugin/installeine Aktualisierung.
- exakte App-ID aus den Plugin-Details
- bekannter MCP-Servername
- eindeutige stabile Metadaten
Thread-App-Konfiguration
OpenClaw injiziert einen restriktivenconfig.apps-Patch für den Codex-Thread: _default ist deaktiviert, und nur Apps, die aktivierten migrierten Plugins gehören, werden aktiviert.
OpenClaw setzt destructive_enabled auf App-Ebene aus der effektiven globalen oder pro Plugin gesetzten Richtlinie allow_destructive_actions und lässt Codex destruktive Tool-Metadaten aus den nativen App-Tool-Annotationen erzwingen. true, "auto" und "ask" setzen destructive_enabled: true; false setzt es auf false. Die App-Konfiguration _default wird mit open_world_enabled: false deaktiviert. Aktivierte Plugin-Apps werden mit open_world_enabled: true ausgegeben; OpenClaw stellt keinen separaten Plugin-Regler für die Open-World-Richtlinie bereit und pflegt keine pro Plugin geführten Deny-Listen für destruktive Tool-Namen.
Der Tool-Genehmigungsmodus ist für Plugin-Apps standardmäßig automatisch, sodass nicht destruktive Lese-Tools ohne Genehmigungs-UI im selben Thread ausgeführt werden können. Destruktive Tools bleiben durch die jeweilige destructive_enabled-Richtlinie der App gesteuert.
Richtlinie für destruktive Aktionen
Destruktive Plugin-Elicitations sind für migrierte Codex-Plugins standardmäßig erlaubt, während unsichere Schemas und uneindeutige Eigentümerschaft weiterhin geschlossen fehlschlagen:- Globales
allow_destructive_actionsist standardmäßigtrue. - Pro Plugin gesetztes
allow_destructive_actionsüberschreibt die globale Richtlinie für dieses Plugin. - Wenn die Richtlinie
falseist, gibt OpenClaw eine deterministische Ablehnung zurück. - Wenn die Richtlinie
trueist, akzeptiert OpenClaw automatisch nur sichere Schemas, die es einer Genehmigungsantwort zuordnen kann, etwa einem booleschen Genehmigungsfeld. - Wenn die Richtlinie
"auto"ist, stellt OpenClaw destruktive Plugin-Aktionen Codex zur Verfügung, wandelt aber eigentumsbelegte MCP-Genehmigungs-Elicitations in OpenClaw-Plugin-Genehmigungen um, bevor die Codex-Genehmigungsantwort zurückgegeben wird. - Wenn die Richtlinie
"ask"ist, verwendet OpenClaw dasselbe Codex-Schreib-/Destruktiv-Gating wie"auto", löscht dauerhafte Codex-Genehmigungsüberschreibungen pro Tool für die App, bevor der Thread startet, und bietet nur einmalige Genehmigung oder Ablehnung an, damit dauerhafte Genehmigungen spätere Prompts für Schreibaktionen nicht unterdrücken können. - Für jede zugelassene App, die
"ask"verwendet, wählt OpenClaw den Codex-Reviewer für menschliche Genehmigungen für diese App aus, damit Codex seine Genehmigungs-Elicitations an OpenClaw sendet. Andere Apps und Nicht-App-Thread-Genehmigungen behalten ihren konfigurierten Reviewer und ihre Richtlinie. - Fehlende Plugin-Identität, uneindeutige Eigentümerschaft, eine fehlende Turn-ID, eine falsche Turn-ID oder ein unsicheres Elicitation-Schema führen zu einer Ablehnung statt zu einer Nachfrage.
Fehlerbehebung
auth_required: Die Migration hat das Plugin installiert, aber eine seiner Apps benötigt noch Authentifizierung. Der explizite Plugin-Eintrag wird deaktiviert geschrieben, bis Sie erneut autorisieren und ihn aktivieren.
app_inaccessible, app_disabled oder app_missing:
Die Migration hat das Plugin nicht installiert, weil das Quell-Codex-App-Inventar nicht alle eigenen Apps als vorhanden, aktiviert und zugänglich angezeigt hat, während --verify-plugin-apps gesetzt war. Autorisieren oder aktivieren Sie die App in Codex erneut und führen Sie die Migration dann erneut mit --verify-plugin-apps aus.
app_inventory_unavailable: Die Migration hat das Plugin nicht installiert, weil strikte Quell-App-Verifizierung angefordert wurde und die Aktualisierung des Quell-Codex-App-Inventars fehlgeschlagen ist. Beheben Sie den Zugriff auf den Quell-Codex app-server oder versuchen Sie es ohne --verify-plugin-apps erneut, wenn Sie den schnelleren kontogeprüften Plan akzeptieren.
codex_subscription_required: Die Migration hat das app-gestützte Plugin nicht installiert, weil das Quell-Codex app-server-Konto nicht mit einem ChatGPT-Abonnementkonto angemeldet war. Melden Sie sich in der Codex-App mit Abonnementauthentifizierung an und führen Sie die Migration dann erneut aus.
codex_account_unavailable: Die Migration hat das app-gestützte Plugin nicht installiert, weil das Quell-Codex app-server-Konto nicht gelesen werden konnte. Beheben Sie die Authentifizierung des Quell-Codex app-server oder führen Sie den Vorgang mit --verify-plugin-apps erneut aus, wenn das Quell-App-Inventar bei fehlgeschlagener Kontoabfrage über die Berechtigung entscheiden soll.
marketplace_missing oder plugin_missing: Der Ziel-Codex app-server kann den erwarteten openai-curated-Marketplace oder das erwartete Plugin nicht sehen. Führen Sie die Migration erneut gegen die Ziel-Runtime aus oder prüfen Sie den Plugin-Status des Codex app-server.
app_inventory_missing oder app_inventory_stale: Die App-Bereitschaft stammt aus einem leeren oder veralteten Cache. OpenClaw plant eine asynchrone Aktualisierung und schließt Plugin-Apps aus, bis Eigentümerschaft und Bereitschaft bekannt sind.
app_ownership_ambiguous: Das App-Inventar stimmte nur nach Anzeigename überein, daher wird die App dem Codex-Thread nicht offengelegt.
Konfiguration geändert, aber der Agent kann das Plugin nicht sehen: Verwenden Sie /codex plugins list, um den konfigurierten Zustand zu bestätigen, und verwenden Sie dann /new oder /reset. Bestehende
Codex-Thread-Bindungen behalten die App-Konfiguration, mit der sie gestartet wurden, bis OpenClaw
eine neue Harness-Sitzung herstellt oder eine veraltete Bindung ersetzt.
Destruktive Aktion wird abgelehnt: Prüfen Sie die globalen und Plugin-spezifischen
allow_destructive_actions-Werte. Selbst wenn die Richtlinie true, "auto" oder
"ask" ist, schlagen unsichere Elicitation-Schemas und mehrdeutige Plugin-Identität weiterhin
geschlossen fehl.