Skip to content

feat(tui): add ACP user question forms - #300

Merged
danielkov merged 6 commits into
mainfrom
feat/acp-user-questions
Oct 22, 2026
Merged

danielkov merged 6 commits into
mainfrom
feat/acp-user-questions

Conversation

@danielkov

@danielkov danielkov commented Oct 21, 2026 •

Copy link
Copy Markdown
Contributor

Summary

Add capability-gated ask_user interactions over ACP form elicitation. The TUI supports single selection, multiple selection, inline custom answers, and paged forms with answer review before atomic submission.

Technical details

Foreground-only questions

Expose ask_user only when the connected ACP v2 client advertises form support and the runtime setting permits it. The optional top-level ask_user configuration defaults to true; setting it to false disables the tool after restart. Keep questions outside backgroundable compose, bind each request to its connection and session, and distinguish accepted answers from decline and cancellation.

Form interaction and validation

Keep the conversation visible above a bounded question panel. Use composer editing for text, inline Other fields alongside choices, and reversible Tab navigation that permits unanswered fields while retaining submission-time validation. Preserve stable question/option IDs on the wire and use human-readable labels in the UI. Bound request size and pending forms, reject unsupported constraints, and cancel obsolete requests without accepting stale-session answers.

Supported scope

Support session-scoped form elicitation only; URL and pre-session request-scoped elicitation are not implemented. Document keyboard controls, tool availability, configuration, and request limits.

@kit-code-agent kit-code-agent Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The elicitation layout bypasses the shared durability-warning and status rendering, hiding data-at-risk warnings and toasts while a form is open.

Took 23 min

Comment thread src/tui/ui.rs

@kit-code-agent kit-code-agent Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found. The changes look good to merge.

Took 7 min 45 sec

@danielkov
danielkov enabled auto-merge (squash) October 22, 2026 17:01
@danielkov
danielkov merged commit a5d0140 into main Oct 22, 2026
5 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.

1 participant