Pi Startup Picker

Choose your provider and model at Pi startup, before the session begins.
What this is
Pi Startup Picker is a Pi extension for power users who switch models often and want that choice up front instead of launching Pi and then detouring to /model.
On normal startup, the extension shows a provider/model picker before the session begins, remembers your last three combinations, and falls back to your existing default provider/model when you cancel or selection fails.
The package intentionally targets normal startup only: it runs on session_start when the reason is startup, no-ops cleanly for other session reasons such as resume, fork, reload, and new, and skips when UI is unavailable. See ROADMAP.md for current non-goals and follow-up ideas.
Features
- Show a provider and model picker on
session_start for normal startup only.
- Surface recent provider/model combinations so repeated launches are faster.
- Fall back to the user's existing default provider/model when the picker is canceled or selection fails.
- Persist recent combinations in a small global JSON file across launches.
- Recover cleanly from malformed recent-store files by treating them as empty and rewriting on the next save.
Install
Install the published npm package with Pi:
pi install npm:pi-startup-picker
Pin a specific version when you want reproducible installs:
pi install npm:pi-startup-picker@0.2.1
Install into the current project instead of your user Pi settings:
pi install npm:pi-startup-picker -l
Or install from GitHub:
pi install git:github.com/eiei114/pi-startup-picker
Try it without permanently installing:
pi -e npm:pi-startup-picker
Quick start
Try this package locally:
pi -e .
Then run:
/startup-picker:about
The main behavior is automatic on normal Pi startup.
Recent combinations are stored at:
~/.pi/agent/pi-startup-picker-recents.json
Package contents
extensions/ | Pi extension entrypoint and smoke command |
lib/ | Startup picker flow and recent-store helpers |
docs/ | Release notes and supporting maintainer docs |
skills/ | Agent Skills placeholders (Pi package manifest) |
prompts/ | Prompt template placeholders (Pi package manifest) |
themes/ | Theme placeholders (Pi package manifest) |
Development
npm install
npm run ci
Release
This package is set up for npm Trusted Publishing, so no NPM_TOKEN is required.
npm version patch
git push --follow-tags
See docs/release.md for setup details.
Security
Pi packages can execute code with your local permissions. Review extensions before installing third-party packages.
For vulnerability reporting, see SECURITY.md.
Links
License
MIT