pi-ask-user-question
Adds an askUserQuestion tool that lets the model pause and ask the user a clarifying question before proceeding.
Package details
Install pi-ask-user-question from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-ask-user-question- Package
pi-ask-user-question- Version
1.0.0- Published
- Mar 15, 2026
- Downloads
- 47/mo · 11/wk
- Author
- skidvis
- License
- unknown
- Types
- extension
- Size
- 5.5 KB
- Dependencies
- 0 dependencies · 2 peers
Pi manifest JSON
{
"extensions": [
"./extensions"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
ask-user-question
A pi extension that adds an askUserQuestion tool, letting the model pause mid-task and ask you a clarifying question before proceeding.
What it does
Registers a single tool, askUserQuestion, into pi's toolset. The tool accepts a required question string and an optional options array:
- With
options: presents a multiple-choice picker so you can select from predefined answers. - Without
options: shows a free-text input prompt for open-ended replies.
The extension also injects prompt guidelines that nudge the model to reach for this tool before taking irreversible actions or when the right approach is ambiguous.
How it works
When the model calls askUserQuestion, one of four things happens:
- Non-interactive environment (RPC or print mode): the tool returns immediately, telling the model to proceed with its best judgment.
- Options provided: pi calls
ctx.ui.select(question, options)and shows a picker. - No options: pi calls
ctx.ui.input(question, ...)and shows a free-text field. - User dismisses (Escape): the tool returns a message asking the model to use its best judgment or ask again.
On a successful answer, the tool returns "User answered: {answer}" so the model can continue with full context.
Installation
Security: pi packages run with full system access. Review the source before installing.
Global (recommended):
pi install git:github.com/skidvis/pi-ask-user-question
Project-local (writes to .pi/settings.json, shareable with your team):
pi install -l git:github.com/skidvis/pi-ask-user-question
Ephemeral (current session only, nothing written to disk):
pi -e git:github.com/skidvis/pi-ask-user-question
Usage
Once installed, askUserQuestion is available to the model automatically. No extra configuration is needed.
The injected prompt guidelines instruct the model to call askUserQuestion when:
- It is about to take an action that cannot be undone.
- Multiple valid approaches exist and the right one depends on your preference.
- A required piece of information is missing or ambiguous.
You can answer with free text or, when the model provides options, pick from the list. Pressing Escape at any prompt tells the model to continue with its best judgment.
Requirements
This package declares the following peer dependencies, which pi bundles and provides automatically:
@mariozechner/pi-coding-agent@sinclair/typebox
No separate install step is needed for these.
License
MIT