Skip to content

fix: improve request_user_input elicitation forms - #299

Merged
benbrandt merged 6 commits into
agentclientprotocol:mainfrom
OldKrab:shushakov/fix-request-user-input-elicitation-structure
Sep 14, 2026
Merged

fix: improve request_user_input elicitation forms#299
benbrandt merged 6 commits into
agentclientprotocol:mainfrom
OldKrab:shushakov/fix-request-user-input-elicitation-structure

Conversation

@OldKrab

@OldKrab OldKrab commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

Codex request_user_input forms currently use short headers as their primary labels and replace selected options with custom text. Use the full question as the title and preserve the selection alongside a nonempty user_note: <text> answer, matching the native Codex CLI.

  • Require each primary question, keep its short header as the description, and omit empty option descriptions.
  • For isOther questions with options, expose “None of the above” once and collect an optional note with _meta.codex.role: user_note.
  • Allocate note IDs from <question_id>_note, adding a numeric suffix when needed to preserve real question IDs, their metadata, and separate answers.
  • Use the stable elicitation message “Codex needs your input to continue.”

Selecting “None of the above” and entering a custom answer returns ["None of the above", "user_note: <custom answer>"] for that question.

Validation:

  • npm run typecheck
  • npm test: 621 passed, 26 skipped
  • npm run build
  • npm run bundle:all: all six targets pass
  • New regression cases cover both question orders, occupied note suffixes, metadata preservation, note routing, and an existing “None of the above” option. All three fail against the original handler.
  • Live Codex 0.154.0 Plan-mode smoke: preserved the Other selection plus trimmed note and a separate question whose ID collides with the preferred note field; Codex echoed both independent answers.

@benbrandt benbrandt changed the title Improve request_user_input elicitation forms fix: improve request_user_input elicitation forms Sep 14, 2026
@benbrandt
benbrandt merged commit 472e60e into agentclientprotocol:main Sep 14, 2026
2 of 3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants