@taterdoge/pi-remember-model
extensionmaintainedPersist the last selected model and thinking level to Pi's global settings.json.
by — · v0.1.1 · published 1w ago
$ pi install npm:@taterdoge/pi-remember-modelSignals
Download trend
No downloads in the last 12 weeks.
README
@taterdoge/pi-remember-model
Pi extension that persists the last selected model and thinking level to Pi's global settings.json, so every new session starts where you left off.
Install
pi install npm:@taterdoge/pi-remember-model
Or try without installing:
pi -e npm:@taterdoge/pi-remember-model
How it works
- On model selection, writes
defaultProvideranddefaultModelto the global settings file (~/.pi/agent/settings.json, or$PI_CODING_AGENT_DIR/settings.json) - On thinking level selection, writes a per-model entry in
modelThinkingLevels, keyed"provider/modelId", so a level one model cannot support never leaks into another model - On model selection, re-applies that model's remembered level with
pi.setThinkingLevel()— Pi only readsmodelThinkingLevelswhile booting, so the file write alone would only take effect on the next start - Existing settings keys are preserved (read-merge-write); a missing or invalid file is started fresh
- Session-restore events (
source: "restore") are ignored, so merely opening an old session never rewrites your default
Settings file
The extension patches Pi's own global settings — the same keys Pi reads at startup:
{
"defaultProvider": "anthropic",
"defaultModel": "claude-opus-4-6",
"modelThinkingLevels": {
"anthropic/claude-opus-4-6": "xhigh",
"openai/gpt-5": "low"
}
}
Per-model thinking levels need Pi ≥ 0.84.3, when modelThinkingLevels was added (pi.setThinkingLevel() has existed since 0.76). On older Pi the extension still remembers the model; the thinking-level entries are simply ignored.
Note: Pi ≥ 0.76 already persists model/thinking-level choices natively; this extension is mainly useful on older Pi versions or as an explicit safety net.