pi-ask-user plugin

Package for the Pi agent with an ask_user tool: the agent pauses and asks you when a decision cannot be made without a human.

  • 183 ★ on the repository
  • Last commit
  • MIT
Plugin

Minimal access

Why this level

  • The tool only shows questions and returns the answer; no external services are called.
All reasons and checks

edlsh/pi-ask-user

Install

Manual install

pi install npm:pi-ask-user

The only install command in the README; it works only in the Pi agent.

Access and checks

How we review

Minimal accessThe tool runs nothing and makes no network calls.

  • The tool only shows questions and returns the answer; no external services are called.

This is third-party code. Review the repository files before installing.

What it does

pi-ask-user adds an `ask_user` tool to Pi. When the agent reaches a fork, it opens a terminal prompt: a searchable option list, multi-select, a freeform answer or a batch of 2 to 4 independent questions with a review page before submitting. The prompt can show as a modal or inline, and context collapses on narrow terminals. The package bundles an `ask-user` skill. It tells the agent to ask the user on costly architectural trade-offs, conflicting requirements and assumptions that would change the implementation. The flow: gather evidence, ask one question, wait for the choice, confirm the decision and proceed. When no interactive UI exists, the tool falls back to plain input. A timeout can auto-dismiss the prompt, and structured answer and cancellation details stay in the session.

Who it is for. Pi agent users who want to confirm forks right in the terminal instead of reading long model replies.

Good fit when

  • The agent is picking between two architectures and a human has to choose.
  • Requirements conflict and the task owner must answer before edits begin.
  • The agent needs several answers at once: environment, branch name and deploy method.
  • An overnight autonomous session needs a timeout so a question closes on its own.

Not a fit when

  • You work in Claude Code or Cursor: the package targets Pi only.
  • The agent must run without stopping and questions to the user are unwelcome.
  • You need a chat interface with attachments, not terminal questions.

Example request

Before choosing the database, ask me through ask_user: PostgreSQL or SQLite, with short notes on the upsides.

Limitations

The package works only inside the Pi agent: installation goes through `pi install` and it is useless for other clients. Settings come from call parameters, environment variables or an `ask-user.json` file. In RPC and headless mode a plain-input fallback applies. The skill insists on asking when stakes are high, so on small tasks the agent may ask more often than you want, and you tune that by editing the skill text. A timeout returns `null`, and the agent has to handle an empty answer.

How to disable. Remove the package with `pi remove npm:pi-ask-user` or delete it from the Pi settings by hand; the `ask-user` skill leaves with it.

FAQ

How do I install pi-ask-user?

Run `pi install npm:pi-ask-user`. The tool is registered under the name `ask_user`.

Can I ask several questions at once?

Yes. The `questions` parameter takes 2 to 4 independent questions and shows a review page before submitting.

How do I hide the prompt to read earlier output?

Press the overlay toggle key, `alt+o` by default. Pressing it again brings the prompt back. Change the key with a parameter or `ask-user.json`.

What happens without an interactive terminal?

A fallback mode shows the question as a plain dialog, with a comment field when configured.

How do I limit the waiting time?

Pass the `timeout` parameter in milliseconds. When it expires the prompt closes and `null` is returned.

Discussion

No questions or reviews yet.

Plugins

Repeated pi agent steps accumulate as JavaScript programs with a manifest and tests, and pi calls them instead of redoing work.

PluginExtended access297Repository stars
Editors’ pick

A minimal terminal coding agent extended with skills, prompt templates and TypeScript packages

CLIBroad access121.8KRepository stars

A plugin for the Pi agent: a fast model executes while a stronger one gives a second opinion before big decisions and at the end.

PluginExtended access65Repository stars

pi-intercom links pi sessions on one machine for one-to-one messages between agents or through the Alt+M shortcut.

PluginExtended access627Repository stars

A web app for the Pi coding agent: sessions survive restarts, teammates can join, and you can work from a phone with no cloud VM

CLIBroad access833Repository stars

An extension for the Pi agent: one programmable fabric_exec tool calls tools, MCP, agents and workflows from code

PluginBroad access335Repository stars

README in short

A Pi package with one tool and one skill. The tool draws a terminal question interface and the skill describes a decision handshake and an extension spec. Settings are read from environment variables and an `ask-user.json` file.

README badge

Report a problem