-
Notifications
You must be signed in to change notification settings - Fork 10.3k
Open
Labels
discussionUsed for feature requests, proposals, ideas, etc. Open discussionUsed for feature requests, proposals, ideas, etc. Open discussion
Description
Feature hasn't been suggested before.
- I have verified this feature I'm about to request hasn't been suggested before.
Describe the enhancement you want to request
Problem
When using OpenCode with ACP (Agent Client Protocol) compatible editors like Zed, the AI assistant cannot ask questions to the user. Questions get silently dropped, blocking interactive workflows.
Background
The question tool was previously disabled for ACP mode in PR #11379 due to issues with specific clients. However, this blanket disable causes a regression:
- AI cannot ask clarifying questions ("Which test framework should I use?")
- Users cannot make choices from predefined options
- Flows requiring user input cannot complete
Current Behavior
AI: I'll create a test file for you. Which framework would you prefer?
[User sees nothing - question is silently ignored]
AI: [proceeds with random/default choice]
Expected Behavior
AI: I'll create a test file for you. Which framework would you prefer?
[Zed shows native permission dialog with options]
User selects "Vitest"
AI: [proceeds with Vitest test file]
Proposed Solution
Enable question support for ACP clients by mapping question events to the existing request_permission flow. This approach:
- Works immediately with existing ACP clients (no protocol changes)
- Uses native UI - clients display questions through their permission dialog UI
- Is future-proof - can migrate to ACP's upcoming Elicitation spec(RFD: Add Elicitation specification for structured user input agentclientprotocol/agent-client-protocol#376) later without breaking changes
Implementation
- Add "acp" to the QuestionTool client whitelist
- Implement
question.askedevent handler in ACP Agent - Map question options to PermissionOption format
- Add "Cancel" option for dismissal
Scope
In scope:
- Single-select questions (most common use case)
- Mapping to native permission UI
- Cancellation support
Out of scope (future work):
- Text input questions
- Multi-select questions
- Custom form layouts
These limitations will be addressed when ACP's Elicitation specification (PR #376) is finalized.
Verification
Tests included in PR:
- Question triggers permission request
- Option mapping works correctly
- Selection resolves to correct answer
- Cancellation properly rejects
Related
- Previous disable: PR fix: ensure ask question tool isn't included when using acp #11379
- Community request for opt-in: Issue feat(acp): add opt-in flag for QuestionTool in ACP mod #13567, PR feat(acp): add opt-in flag for question tool #13562
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
discussionUsed for feature requests, proposals, ideas, etc. Open discussionUsed for feature requests, proposals, ideas, etc. Open discussion