@0xkahi/pi-model-select
v1.1.0
Published
Pi extension that adds /select-model with favourites and provider-filtered model search
Downloads
491
Maintainers
Readme
pi-model-select
Pi extension that adds /select-model: a popup model picker with favourites plus provider-filtered fuzzy search.
Install
Install globally (writes to ~/.pi/agent/settings.json):
pi install npm:@0xkahi/pi-model-selectOr install into the current project only (writes to .pi/settings.json, shareable with your team):
pi install npm:@0xkahi/pi-model-select -lPin a specific version:
pi install npm:@0xkahi/[email protected]Install directly from GitHub instead of npm:
pi install git:github.com/0xKahi/pi-model-select
pi install git:github.com/0xKahi/[email protected] # pinnedTry without installing
Use -e / --extension to load for a single run without modifying settings:
pi -e . # from inside this repoManage
pi list # show installed packages
pi update npm:@0xkahi/pi-model-select # update this package
pi remove npm:@0xkahi/pi-model-select # uninstallThe package manifest exposes ./src/index.ts as a Pi extension.
Command
/select-modelTabswitches between Favourites and Search.↑/↓navigates,Enterselects,Esccancels.- Selecting a model calls Pi's model setter, matching
/modelbehavior. - Optional direct form:
/select-model provider/modelId.
Config files
| Scope | Path |
| --- | --- |
| Global | ~/.pi/agent/extensions/pi-model-select/config.json (respects PI_CODING_AGENT_DIR) |
| Project | <cwd>/.pi/extensions/pi-model-select/config.json |
The extension accepts JSON with comments and trailing commas.
Project config overrides global provider_filter when the key is present. Favourites are combined from global then project and de-duplicated.
{
"$schema": "https://raw.githubusercontent.com/0xKahi/pi-model-select/main/config.schema.json",
"favourite": [
{
"provider": "openai-codex",
"modelId": "gpt-5.5"
},
{
"provider": "anthropic",
"modelId": "claude-opus-4-7"
},
{
"provider": "opencode-go",
"modelId": "kimi-k2.6"
}
],
// Empty array means no filter: all authorized providers are shown.
"provider_filter": ["openai-codex", "anthropic", "opencode-go", "openrouter"]
}