Skip to content

Newer Codex CLI rejects interactionMode: default, causing chat turns to hang with no response #386

@alexprotonotarios

Description

@alexprotonotarios

T3 Code v0.0.4 appears to be incompatible with newer Codex app-server interaction mode names during normal chat turns.

What happens

The app starts and the session initializes normally, but sending a standard chat message causes the UI to hang with no assistant response. In the UI this looks like the message sending successfully while the assistant never replies.

Repro

  1. Install T3 Code v0.0.4 from the March 7, 2026 release.
  2. Have a local Codex CLI installed at codex-cli 0.94.0.
  3. Open any project and send a normal chat message like hi.
  4. Observe that the turn never produces a response.

Relevant log

From ~/.t3/userdata/logs/server-child.log:

Provider adapter request failed (codex) for turn/start: turn/start failed: Invalid request: unknown variant 'default', expected one of 'plan', 'code', 'pair_programming', 'execute', 'custom'

Suspected root cause

T3 Code still models provider interaction mode as default | plan and appears to send default for normal chat turns. The local Codex app-server schema now expects newer mode values including code instead of default.

Relevant source locations:

  • packages/contracts/src/orchestration.ts
  • apps/server/src/codexAppServerManager.ts

Locally, a simple compatibility patch that remaps default -> code before forwarding the turn request makes the app usable again.

Why this seems distinct from #360

Issue #360 covers older Codex CLIs causing session startup to fail. This looks like the opposite compatibility problem: the session starts, but newer Codex CLIs reject normal chat turns because the interaction mode name has drifted.

Suggested fix

  • Translate default to code when talking to newer Codex app-server versions, or
  • update T3 Code's interaction mode model to match current Codex app-server values and preserve backward compatibility where needed.

Happy to provide more log context if useful.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions