Skip to content

Keep MCP user interaction on the root thread - #46066

Merged
copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/83e146b6e5c1a2a22a34681ad45615f504b3c96c
Sep 17, 2026
Merged

copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/83e146b6e5c1a2a22a34681ad45615f504b3c96c

Conversation

@copyberry

@copyberry copyberry Bot commented Sep 17, 2026 •

Copy link
Copy Markdown

Keep MCP user interaction on the root thread

Why

MCP requests that need human input, including browser sign-in, must be handled by the root thread. Subagents need guidance to hand these blockers to their parent without prompting the user or automatically accepting requests that require input.

What changed

  • Reject interactive MCP elicitations and tool approval prompts in subagents with guidance to ask the parent and wait before retrying.
  • Recognize browser authentication and codex_requires_user_input metadata even when the form schema is empty, while preserving automatic permission approvals and review decisions.
  • Carry user-interaction eligibility through MCP runtime creation and connection reuse, and guard prompt registration.
  • Preserve connector authentication diagnostics alongside handoff guidance, subject to normal tool-output limits.

Testing

Add unit and integration coverage for blocked subagent prompts, root browser authentication, automatic approval and review, connection reuse, and authentication diagnostic preservation and truncation. Add a request-history snapshot for browser-auth handoff guidance.

## Why

MCP requests that need human input, including browser sign-in, must be handled by the root thread. Subagents need guidance to hand these blockers to their parent without prompting the user or automatically accepting requests that require input.

## What changed

- Reject interactive MCP elicitations and tool approval prompts in subagents with guidance to ask the parent and wait before retrying.
- Recognize browser authentication and `codex_requires_user_input` metadata even when the form schema is empty, while preserving automatic permission approvals and review decisions.
- Carry user-interaction eligibility through MCP runtime creation and connection reuse, and guard prompt registration.
- Preserve connector authentication diagnostics alongside handoff guidance, subject to normal tool-output limits.

## Testing

Add unit and integration coverage for blocked subagent prompts, root browser authentication, automatic approval and review, connection reuse, and authentication diagnostic preservation and truncation. Add a request-history snapshot for browser-auth handoff guidance.

GitOrigin-RevId: 83e146b6e5c1a2a22a34681ad45615f504b3c96c
@copyberry
copyberry Bot force-pushed the copyberry/codex-internal-to-codex-oss/83e146b6e5c1a2a22a34681ad45615f504b3c96c branch from 020ccf5 to 40584fa Compare September 17, 2026 01:18
@copyberry
copyberry Bot merged commit 40584fa into main Sep 17, 2026
1 check passed
@copyberry
copyberry Bot deleted the copyberry/codex-internal-to-codex-oss/83e146b6e5c1a2a22a34681ad45615f504b3c96c branch September 17, 2026 01:18
@github-actions github-actions Bot locked and limited conversation to collaborators Sep 17, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant