Sidequest gives Pi a side channel: ask context-aware questions without pulling the main conversation off track.
Think of it as a better /btw
: grounded in the active Pi session, threaded, persistent, and tool-capable.
From npm:
pi install npm:pi-sidequest
From GitHub:
pi install git:github.com/peterp/pi-sidequest
For local development:
pi -e /absolute/path/to/pi-sidequest
Or link src/
as an auto-discovered extension directory:
ln -s /absolute/path/to/pi-sidequest/src ~/.pi/agent/extensions/sidequest
Open Sidequest inside Pi:
/sidequest
Default quake console keys:
§
~
Sidequest has two focus areas:
- selection: choose root or a thread
- prompt: type and ask the next question
Press Tab
to move between them. The inactive area shows [tab]
in its border.
Use an env var:
PI_SIDEQUEST_QUAKE_KEY='`'
or a config file:
// ~/.pi/agent/sidequest.json
{
"quakeKey": "`"
}
Multiple keys are supported:
PI_SIDEQUEST_QUAKE_KEYS='§,~,alt+s'
{
"quakeKeys": ["§", "~", "alt+s"]
}
Sidequest runs its own isolated, tool-capable Pi worker. By default it enables:
read, grep, find, ls, sidequest_web_search, sidequest_web_fetch
Override the allowlist:
PI_SIDEQUEST_TOOLS='read,grep,find,ls,sidequest_web_search,sidequest_web_fetch'
sidequest_web_search
uses Brave Search when BRAVE_SEARCH_API_KEY
is set. Otherwise it falls back to DuckDuckGo HTML search. sidequest_web_fetch
fetches public HTTP(S) pages and extracts readable text.
From this directory:
npm pack --dry-run
npm publish