@agimon-ai/po-user-feedback
Structured user questions with interactive and autonomous Voice handoff for Pi agents.
Package details
Install @agimon-ai/po-user-feedback from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@agimon-ai/po-user-feedback- Package
@agimon-ai/po-user-feedback- Version
0.0.0-alpha.40- Published
- Oct 21, 2026
- Downloads
- 3,587/mo · 3,587/wk
- Author
- agiflow-ai
- License
- BUSL-1.1
- Types
- extension
- Size
- 289.8 KB
- Dependencies
- 6 dependencies · 4 peers
Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
@agimon-ai/po-user-feedback
Ask structured questions through native Po clients, including sessions using autonomous Voice.
Part of the Po distribution.
The ask_user_question tool presents concrete options and waits for a choice or custom-text answer.
Alpha: tool contracts may change between releases.
Requirements
- Node.js 24 or newer
- A Po session client capable of answering select and input requests
Install
Define a layer in .po/modes.yaml, then include it in a major mode:
layers:
feedback:
packages: ['@agimon-ai/po-user-feedback']
majorMode:
minimal:
description: Interactive questions without the full default composition.
layers: [feedback]
The native server plugin owns questionnaire coordination and cancellation. Disposing the plugin aborts pending requests and waits for presenters to finish.
Ask a question
{
"questions": [
{
"header": "Storage",
"question": "Where should session results be stored?",
"options": [
{
"label": "Project files",
"description": "Easy to inspect and commit, but visible in the repository."
},
{
"label": "User state",
"description": "Keeps generated state outside the repository."
}
],
"multiSelect": false
}
]
}
A call accepts 1 to 4 questions. Each question requires 2 to 4 options. Headers are at most 16
characters; option labels are at most 60 characters. Use multiSelect: true when several choices
are valid. An option can include a Markdown preview for meaningful visual comparison.
The tool result contains readable answer text plus structured details.answers; cancellation sets
cancelled: true. Pressing Escape declines the questionnaire. Do not add an Other option because
the UI supplies a custom-text row.
Client behavior
The native tool requests choices and custom text through the session client. Questionnaires run one at a time. Cancellation or disposal aborts active requests and settles queued work.
Autonomous Voice
While autonomous Voice mode is active, ask_user_question leaves the active tool set. Voice already
speaks its own question through narrate and then waits for the spoken reply, so keeping a
questionnaire tool alongside it asks the same thing twice. The agent asks by narrating, and the
answer arrives as an ordinary user message.
The native tool restriction composes with other restrictions and restores questionnaire availability when autonomous Voice deactivates.