Support blocking structured questions in Codex’s default mode
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 125k
- Forks
- 19.4k
- PR merge metrics
- PR metrics pending
Description
What variant of Codex are you using?
Codex desktop app on macOS, Default mode.
What feature would you like to see?
Codex should provide a structured question tool in Default mode that presents selectable options and waits for the user's answer before continuing dependent work.
In this session, request_user_input is restricted to Plan mode. request_user_input_async provides selectable options and free-text input, but returns immediately, leaving the agent responsible for waiting when an answer is required. Plain-text questions work, but make decisions less explicit when the conversation also includes feedback on proposed wording or actions.
A useful example is a PR review. After presenting a proposed comment, the agent should be able to show “Post this review,” “Revise the wording,” and “Keep it unposted,” then pause until the user selects an option or provides a clear alternative.
Expected behavior: the structured question is available without switching to Plan mode, no option is submitted automatically, and the tool returns the user's explicit answer before the agent proceeds. The user should also be able to cancel or continue discussing the proposal without that being treated as approval.
This would make review and approval workflows clearer. It would complement, rather than replace, the agent's responsibility to obtain explicit authorization before taking external actions.
Additional information
Related requests: #43759, #37472, and #29104. This report adds the Default-mode request_user_input_async case and a concrete PR-review approval workflow. Please consolidate with an existing request if appropriate.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reviewing the existing request_user_input and request_user_input_async behavior, focusing on the difference between Plan mode and Default mode. Compare the related requests (#43759, #37472, and #29104), then define the approval flow so selectable answers, cancellation, discussion, and explicit waiting are handled without automatic submission.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Clearly specified
- Newbie friendliness
- 35/100