@herbertgao/pi-preferred-thinking

Set and apply per-model thinking levels from Pi's native settings.

Packages

Package details

extension

Install @herbertgao/pi-preferred-thinking from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:@herbertgao/pi-preferred-thinking
Package
@herbertgao/pi-preferred-thinking
Version
0.4.0
Published
Aug 24, 2026
Downloads
188/mo · 173/wk
Author
herbertgao
License
MIT
Types
extension
Size
12.8 KB
Dependencies
0 dependencies · 1 peer
Pi manifest JSON
{
  "extensions": [
    "./src/index.ts"
  ]
}

Security note

Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.

README

@herbertgao/pi-preferred-thinking

HerbertGao-maintained fork of @tifan/pi-preferred-thinking, distributed under MIT with the original attribution preserved.

Set and apply per-model thinking levels from Pi's native enabledModels setting.

Install

pi install npm:@herbertgao/pi-preferred-thinking

This package requires Pi 0.84.2 or newer.

How it works

Run /preferred-thinking to choose a thinking level for the current model. The extension writes the model pin to Pi's settings.json and reloads Pi so the native model scope uses it.

When Pi selects a scoped model, the extension applies its native thinking pin. It also applies the pin when the model picker is used, which keeps model cycling and model selection consistent.

If a reasoning model has no saved pin, the extension shows a short hint above the editor. It does not change the current thinking level in that case.

Configuration

Add models to Pi's enabledModels setting. The extension preserves other entries and updates only the selected model:

{
  "enabledModels": [
    "openai-codex/gpt-5.6-luna:xhigh",
    "openai-codex/gpt-5.6-terra:high"
  ]
}

The extension requires enabledModels to exist before it can save a pin. If the selected model is not listed, it adds an exact entry without removing other models or patterns.

The old ~/.config/pi/extensions/pi-preferred-thinking.json file is no longer read. Existing users must move preferences to enabledModels or set them with /preferred-thinking.

Release notes

See CHANGELOG.md.

License

MIT