From 899dafff35ea03fda18d9d7dfe72de3ad27c3d01 Mon Sep 17 00:00:00 2001 From: Mohamed Boudra Date: Wed, 24 Dec 2025 18:58:49 +0700 Subject: [PATCH] Fix codex mcp default model --- .../src/server/agent/providers/codex-mcp-agent.test.ts | 2 +- .../src/server/agent/providers/codex-mcp-agent.ts | 5 +++-- plan.md | 10 +++++++++- 3 files changed, 13 insertions(+), 4 deletions(-) diff --git a/packages/server/src/server/agent/providers/codex-mcp-agent.test.ts b/packages/server/src/server/agent/providers/codex-mcp-agent.test.ts index 35492ea45..f560ce1f3 100644 --- a/packages/server/src/server/agent/providers/codex-mcp-agent.test.ts +++ b/packages/server/src/server/agent/providers/codex-mcp-agent.test.ts @@ -504,7 +504,7 @@ describe("CodexMcpAgentClient (MCP integration)", () => { provider: "codex-mcp", cwd, modeId: "full-access", - model: "gpt-4.1", + model: "gpt-5.1-codex", } as AgentSessionConfig; let session: AgentSession | null = null; diff --git a/packages/server/src/server/agent/providers/codex-mcp-agent.ts b/packages/server/src/server/agent/providers/codex-mcp-agent.ts index 4e75417db..547ed6289 100644 --- a/packages/server/src/server/agent/providers/codex-mcp-agent.ts +++ b/packages/server/src/server/agent/providers/codex-mcp-agent.ts @@ -87,6 +87,7 @@ const CODEX_MODES: AgentMode[] = [ ]; const DEFAULT_CODEX_MODE_ID = "auto"; +const DEFAULT_CODEX_MODEL_ID = "gpt-5.1-codex"; const MODE_PRESETS: Record< string, @@ -221,7 +222,7 @@ function buildCodexMcpConfig( return { prompt, cwd: config.cwd, - model: config.model, + model: config.model ?? DEFAULT_CODEX_MODEL_ID, "approval-policy": approvalPolicy, sandbox, config: extra, @@ -716,7 +717,7 @@ class CodexMcpAgentSession implements AgentSession { this.updateIdentifiersFromResponse(response); if (this.modelRejected && !this.runtimeModel) { - this.runtimeModel = "default"; + this.runtimeModel = DEFAULT_CODEX_MODEL_ID; } if (!turnState.sawAssistant) { diff --git a/plan.md b/plan.md index 91d23bc32..fc06b491f 100644 --- a/plan.md +++ b/plan.md @@ -59,11 +59,19 @@ Build a new Codex MCP provider side‑by‑side with the existing Codex SDK prov - The reference supports permissions - copy the working approach. - **Done (2025-12-24 18:53)**: Matched happy-cli elicitation flow by avoiding duplicate permission requests when exec events pre-seed pending entries and aligned permission tool naming with CodexBash. -- [ ] **Fix**: Use valid model instead of gpt-4.1. +- [ ] **Fix**: Test `approval-policy=untrusted` instead of `on-request`. + + - Happy CLI uses `"untrusted"` for default mode, voice-dev uses `"on-request"`. + - `"on-request"` may not trigger MCP elicitation. + - Change MODE_PRESETS["auto"] to use `"untrusted"` and test if real elicitation works. + - If it works, remove the synthetic permission gating workaround. + +- [x] **Fix**: Use valid model instead of gpt-4.1. - gpt-4.1 does not exist and is rejected by Codex CLI. - Check what models are actually available (run `codex --help` or check docs). - Update tests and provider to use a valid default model. + - **Done (2025-12-24 18:58)**: Updated Codex MCP default model to gpt-5.1-codex and switched runtime info test to use the valid model id. - [ ] **Fix**: Resolve typecheck errors in `codex-mcp-agent.ts`.