mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-21 10:16:44 +00:00
fix(codex): remove duplicate provider setup choice (#107979)
* fix(codex): stop advertising harness as model provider Co-authored-by: fuller-stack-dev <263060202+fuller-stack-dev@users.noreply.github.com> * fix(wizard): keep migration plugins out of optional setup --------- Co-authored-by: Peter Steinberger <steipete@gmail.com>
This commit is contained in:
co-authored by
Peter Steinberger
parent
f444dfafc5
commit
73980e7e42
@@ -213,7 +213,7 @@ Each entry lists the package, distribution route, and description.
|
||||
|
||||
- **[cloudflare-ai-gateway](/plugins/reference/cloudflare-ai-gateway)** (`@openclaw/cloudflare-ai-gateway-provider`) - npm; ClawHub: `clawhub:@openclaw/cloudflare-ai-gateway-provider`. Adds Cloudflare AI Gateway model provider support to OpenClaw.
|
||||
|
||||
- **[codex](/plugins/reference/codex)** (`@openclaw/codex`) - npm; ClawHub. Codex app-server harness, model provider, and native session catalog.
|
||||
- **[codex](/plugins/reference/codex)** (`@openclaw/codex`) - npm; ClawHub. Codex app-server harness and native session catalog.
|
||||
|
||||
- **[copilot](/plugins/reference/copilot)** (`@openclaw/copilot`) - npm; ClawHub: `clawhub:@openclaw/copilot`. Registers the GitHub Copilot agent runtime.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
---
|
||||
summary: "Codex app-server harness, model provider, and native session catalog."
|
||||
summary: "Codex app-server harness and native session catalog."
|
||||
read_when:
|
||||
- You are installing, configuring, or auditing the codex plugin
|
||||
title: "Codex plugin"
|
||||
@@ -7,7 +7,7 @@ title: "Codex plugin"
|
||||
|
||||
# Codex plugin
|
||||
|
||||
Codex app-server harness, model provider, and native session catalog.
|
||||
Codex app-server harness and native session catalog.
|
||||
|
||||
## Distribution
|
||||
|
||||
@@ -16,7 +16,7 @@ Codex app-server harness, model provider, and native session catalog.
|
||||
|
||||
## Surface
|
||||
|
||||
providers: `codex`; contracts: `mediaUnderstandingProviders`, `migrationProviders`, `tools`, `webSearchProviders`
|
||||
contracts: `mediaUnderstandingProviders`, `migrationProviders`, `tools`, `webSearchProviders`
|
||||
|
||||
## Related docs
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ OpenClaw Discord channel plugin for channels, DMs, commands, and app events.
|
||||
|
||||
## Surface
|
||||
|
||||
channels: `discord`; contracts: `transcriptSourceProviders`; skills
|
||||
channels: `discord`; contracts: `tools`, `transcriptSourceProviders`; skills
|
||||
|
||||
## Related docs
|
||||
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
{
|
||||
"name": "@openclaw/codex",
|
||||
"version": "2026.7.2",
|
||||
"description": "OpenClaw Codex app-server harness, model provider, and native session supervision plugin.",
|
||||
"description": "OpenClaw Codex app-server harness and native session supervision plugin.",
|
||||
"repository": {
|
||||
"type": "git",
|
||||
"url": "https://github.com/openclaw/openclaw"
|
||||
|
||||
@@ -55,6 +55,26 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "@openclaw/codex",
|
||||
"description": "OpenClaw Codex app-server harness and native session catalog",
|
||||
"source": "official",
|
||||
"kind": "plugin",
|
||||
"openclaw": {
|
||||
"plugin": {
|
||||
"id": "codex",
|
||||
"label": "Codex"
|
||||
},
|
||||
"contracts": {
|
||||
"migrationProviders": ["codex"]
|
||||
},
|
||||
"install": {
|
||||
"npmSpec": "@openclaw/codex",
|
||||
"defaultChoice": "npm",
|
||||
"minHostVersion": ">=2026.5.1-beta.1"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "@openclaw/copilot",
|
||||
"description": "OpenClaw GitHub Copilot agent runtime plugin",
|
||||
|
||||
@@ -365,47 +365,6 @@
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "@openclaw/codex",
|
||||
"description": "OpenClaw Codex harness and model provider plugin",
|
||||
"source": "official",
|
||||
"kind": "provider",
|
||||
"openclaw": {
|
||||
"plugin": {
|
||||
"id": "codex",
|
||||
"label": "Codex"
|
||||
},
|
||||
"contracts": {
|
||||
"migrationProviders": ["codex"]
|
||||
},
|
||||
"providers": [
|
||||
{
|
||||
"id": "codex",
|
||||
"name": "Codex",
|
||||
"docs": "/providers/models",
|
||||
"categories": ["cloud", "llm"],
|
||||
"authChoices": [
|
||||
{
|
||||
"method": "app-server",
|
||||
"choiceId": "codex",
|
||||
"choiceLabel": "Codex app-server",
|
||||
"choiceHint": "Keep using your Codex CLI or ChatGPT app sign-in via the Codex app-server runtime.",
|
||||
"assistantPriority": -40,
|
||||
"groupId": "codex",
|
||||
"groupLabel": "Codex",
|
||||
"groupHint": "Codex app-server model provider",
|
||||
"onboardingScopes": ["text-inference"]
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"install": {
|
||||
"npmSpec": "@openclaw/codex",
|
||||
"defaultChoice": "npm",
|
||||
"minHostVersion": ">=2026.5.1-beta.1"
|
||||
}
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "@openclaw/deepinfra-provider",
|
||||
"description": "OpenClaw DeepInfra provider plugin.",
|
||||
|
||||
@@ -180,6 +180,18 @@ describe("official external plugin catalog", () => {
|
||||
expect(officialExternalPluginCatalog.entries.length).toBeGreaterThan(0);
|
||||
});
|
||||
|
||||
it("keeps Codex installable as a harness without declaring a model provider", () => {
|
||||
const entry = expectCatalogEntry("codex");
|
||||
const manifest = getOfficialExternalPluginCatalogManifest(entry);
|
||||
|
||||
expect(entry.kind).toBe("plugin");
|
||||
expect(manifest?.providers).toBeUndefined();
|
||||
expect(resolveOfficialExternalPluginInstall(entry)).toMatchObject({
|
||||
npmSpec: "@openclaw/codex",
|
||||
defaultChoice: "npm",
|
||||
});
|
||||
});
|
||||
|
||||
it("curates featured external plugins with ClawHub install alternatives", () => {
|
||||
const featured = [
|
||||
["diffs", "@openclaw/diffs", 40],
|
||||
|
||||
@@ -37,7 +37,9 @@ function isGenericOfficialPluginEntry(entry: { source?: string; kind?: string })
|
||||
Boolean(manifest?.plugin?.id) &&
|
||||
!manifest?.channel &&
|
||||
(manifest?.providers?.length ?? 0) === 0 &&
|
||||
(manifest?.webSearchProviders?.length ?? 0) === 0
|
||||
(manifest?.webSearchProviders?.length ?? 0) === 0 &&
|
||||
// Migration owners have their own setup flow; listing them here duplicates install prompts.
|
||||
(manifest?.contracts?.migrationProviders?.length ?? 0) === 0
|
||||
);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user