pi-thinking-level
A tiny pi package that adds a /thinking command to set and persist pi's default thinking level.
Package details
Install pi-thinking-level from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-thinking-level- Package
pi-thinking-level- Version
0.2.0- Published
- Apr 27, 2026
- Downloads
- 246/mo · 135/wk
- Author
- mdsitton
- License
- MIT
- Types
- extension
- Size
- 6.9 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
pi-thinking-level
A small pi package that adds a /thinking command to set the current thinking level and persist it as your default.
Why this exists
pi already makes it easy to change thinking level interactively with Shift+Tab.
This package exists for a slightly different use case: giving you an explicit command for setting a specific level and saving it as your default in one step.
That makes it useful if you want a workflow that is:
- More deliberate — choose
highormediumdirectly instead of cycling - More persistent — update your current session and your future default together
- More scriptable/documentable — easy to mention in notes, team docs, screenshots, and demos
- More self-explanatory —
/thinking highis clearer than “press Shift+Tab until it looks right”
What it does
- Adds a
/thinkingcommand - Updates the current session's thinking level immediately
- Writes
defaultThinkingLevelto~/.pi/agent/settings.json - Supports the built-in pi thinking levels:
offminimallowmediumhighxhigh
Command
/thinking status
/thinking off
/thinking minimal
/thinking low
/thinking medium
/thinking high
/thinking xhigh
If you run /thinking with no arguments, it shows the current level.
Installation
From npm
pi install npm:pi-thinking-level
From GitHub
pi install git:github.com/mdsitton/pi-thinking-level
From a local path
pi install /absolute/path/to/pi-thinking-level
Or use it for a single run:
pi -e /absolute/path/to/pi-thinking-level
After installation, run:
/reload
Usage examples
/thinking status
/thinking medium
/thinking high
Example flow:
- Run
/thinking high - pi switches the current session to
high - The extension saves
"defaultThinkingLevel": "high"to your pi settings - Future sessions start with that default unless you change it again
Notes
- This package only adds one command and has no third-party runtime dependencies.
- If pi cannot write
settings.json, it still updates the current session and shows a warning. - If
settings.jsoncontains invalid JSON or a non-object top-level value, the extension will warn instead of overwriting it blindly.
Package structure
pi-thinking-level/
├── src/
│ └── index.ts
├── package.json
├── README.md
└── LICENSE
The package uses the pi package manifest in package.json:
{
"pi": {
"extensions": ["./src/index.ts"]
}
}
Development
Test the extension entrypoint directly with:
pi -e ./src/index.ts
Or test the package root with:
pi -e .
Or place the folder in:
~/.pi/agent/extensions/pi-thinking-level
Then hot reload with:
/reload
License
MIT