Content
# pi-model-selector-x
ModelSelectorX enhances pi's native `/model` selector with a detail pane showing context window, cost, input modalities, API protocol, and reasoning capability.
It patches the built-in `/model` view.
## WARNING
This extension patches the `/model` internals and could break if pi updates in an incompatible way. I chose this approach rather than re-implementing the internal model selector rendering so that it would automatically update the rendering.
## Features
- Bottom detail pane for the selected model showing full metadata
- Context window size (e.g. `200k`, `1M`)
- Max output tokens
- API protocol (`resp` / `comp` / `anth`)
- Input modalities (`txt`, `txt+img`, `txt+img+aud`)
- Reasoning capability indicator
- Cost breakdown (input / output / cache read / cache write)
- Base URL for the selected model/provider
- Free model detection
## Screenshots
<table>
<tr>
<th width="50%">Before</th>
<th width="50%">After</th>
</tr>
<tr>
<td width="50%"><img src="screenshots/before.svg" alt="Built-in /model selector showing only model-id and provider" width="100%" /></td>
<td width="50%"><img src="screenshots/after.svg" alt="Enhanced /model selector with detail pane showing context, cost, protocol, input, and reasoning" width="100%" /></td>
</tr>
<tr>
<td>The built-in selector shows only <code>model-id [provider] ✓</code>. No context window, cost, or capability info.</td>
<td>ModelSelectorX adds a detail pane with context window, max output, API protocol, input modalities, reasoning indicator, and cost breakdown.</td>
</tr>
</table>
## Detail Pane
The detail pane appears below the model list and shows:
| Field | Source | Example |
|-------|--------|---------|
| Context | `model.contextWindow` | `200k` |
| Max Output | `model.maxTokens` | `64k` |
| Protocol | `model.api` | `resp` / `comp` / `anth` |
| Input | `model.input` | `txt+img` / `txt` |
| Reasoning | `model.reasoning` | `⚡ reasoning` |
| Cost | `model.cost` | `$2.50 / $15.00` / `free` |
| Cache | `model.cost.cacheRead/Write` | `$0.25` |
| BaseURL | `model.baseUrl` | `https://api.example.com/v1` |
### Protocol abbreviations
| Short | Full |
|-------|------|
| `resp` | OpenAI Responses API |
| `comp` | OpenAI Completions API |
| `anth` | Anthropic Messages API |
## Installation
### npm
```bash
pi install npm:pi-model-selector-x
```
To try it for one run without adding it to your settings:
```bash
pi -e npm:pi-model-selector-x
```
### git
```bash
pi install git:github.com/Dwsy/pi-model-selector-x
```
## Usage
After installation, open the model selector with the built-in keybinding or:
```text
/model
```
## Notes
- Tested with pi 0.74.0
- ModelSelectorX patches the native `/model` path, so the built-in slash command and model hotkey keep using pi's own navigation and selection flow.
- ModelSelectorX relies on private model-selector internals, so upstream pi changes may require ModelSelectorX updates.
Connection Info
You Might Also Like
markitdown
Python tool for converting files and office documents to Markdown.
OpenAI Whisper
OpenAI Whisper MCP Server - 基于本地 Whisper CLI 的离线语音识别与翻译,无需 API Key,支持...
oh-my-opencode
Background agents · Curated agents like oracle, librarians, frontend...
claude-flow
Claude-Flow v2.7.0 is an enterprise AI orchestration platform.
ai-engineering-from-scratch
Learn it. Build it. Ship it for others. The most comprehensive open-source...
chatbox
User-friendly Desktop Client App for AI Models/LLMs (GPT, Claude, Gemini, Ollama...)