@rmirandasv/pi-ask
Adds an ask mode toggle to flip pi into a read-only conversation mode without restarting.
Package details
Install @rmirandasv/pi-ask from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@rmirandasv/pi-ask- Package
@rmirandasv/pi-ask- Version
0.1.2- Published
- Aug 20, 2026
- Downloads
- 179/mo · 23/wk
- Author
- rmirandasv
- License
- MIT
- Types
- extension
- Size
- 12.2 KB
- Dependencies
- 0 dependencies · 1 peer
Pi manifest JSON
{
"extensions": [
"./extensions"
],
"image": "https://raw.githubusercontent.com/rmirandasv/pi-ask/main/pi-ask.gif"
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
rmirandasv/pi-ask
A /ask and /ask:exit toggle that flips pi into a read-only conversation mode mid-session — without restarting.

What it does
pi-ask adds two slash commands that toggle pi's active toolset between your default and a restricted read-only set plus ask_question. While ask mode is active, the model cannot edit, write, or run shell commands, and a [ask] badge is visible in the status line.
It exists because pi's built-in read-only mode (--tools read,grep,find,ls) is startup-only — there is no way to enter it mid-session once you've already started. This extension fills that gap with an explicit, predictable toggle.
Install
pi install npm:rmirandasv/pi-ask
For local development from a clone of this repo, use the -e flag:
pi -e /path/to/pi-ask
Usage
| Command | Effect |
|---|---|
/ask |
Enter ask mode (read-only + ask_question). |
/ask:exit |
Leave ask mode and restore the previous toolset. |
Both commands are idempotent: invoking one in the wrong state is a no-op with a friendly notification, never an error.
How it works
| Aspect | Behavior in ask mode |
|---|---|
| Toolset | read, grep, find, ls, ask_question only. |
| Model awareness | A system message is injected explaining the constraint. It stays until /ask:exit. |
| UI indicator | A persistent [ask] badge in the status line. |
| Restoration | The exact toolset that was active when you invoked /ask is restored on /ask:exit. |
Lifecycle
Ask state behaves predictably across the session:
/compact— preserved.- Session resume — restored from the session file.
/clear(or/new) — reset to normal.- New session — starts in normal mode.
Development
Conventional Commits is enforced locally by commitlint and husky, with a GitHub Actions check on every PR. Releases are managed via standard-version: run npm run release to bump the version, regenerate the changelog, and tag the commit.
License
MIT — see LICENSE.
