pi-thinking-timer

Pi extension that shows a live timer next to collapsed Thinking blocks.

Packages

Package details

extension

Install pi-thinking-timer from npm and Pi will load the resources declared by the package manifest.

$ pi install npm:pi-thinking-timer
Package
pi-thinking-timer
Version
0.1.9
Published
Oct 31, 2026
Downloads
292/mo · 242/wk
Author
xryul
License
MIT
Types
extension
Size
15.3 KB
Dependencies
0 dependencies · 2 peers
Pi manifest JSON
{
  "image": "https://raw.githubusercontent.com/xRyul/pi-thinking-timer/main/assets/demo.gif",
  "extensions": [
    "./index.ts"
  ]
}

Security note

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

README

pi-thinking-timer

Thinking Timer demo

A small pi extension that shows a live timer next to the collapsed Thinking label.

Instead of only:

Thinking...

you’ll see something like:

Thinking... 6.5s

It updates live while the model is thinking and leaves the final duration when thinking ends.

Some providers, such as Claude Code with hidden reasoning, stream signed thinking with no text. Pi normally renders nothing for those blocks; this extension shows the same collapsed Thinking... 6.5s label for them instead.

Note: This extension patches pi’s internal AssistantMessageComponent render/update behavior. If pi changes its internal UI structure, the extension may stop working (it should fail safely and simply show the default Thinking... text).

Install

Option A: Install from npm (recommended)

pi install npm:pi-thinking-timer

Then restart pi (or run /reload) and ensure the extension is enabled (use pi config if you manage resources explicitly).

After updating, run /reload and send a new prompt. Timings from before a reload or restart are not retained.

Option B: Try without installing (temporary)

pi -e npm:pi-thinking-timer

Option C: Install from GitHub

pi install git:github.com/xRyul/pi-thinking-timer

Usage

  1. Use a model/thinking level that produces thinking blocks.
  2. Collapse/expand thinking blocks with Ctrl+T.
  3. When collapsed, the label will show the elapsed time.

There are no settings.

Development

Clone and run pi with the local extension file:

git clone https://github.com/xRyul/pi-thinking-timer
cd pi-thinking-timer
pi -e ./index.ts

Run the renderer regression tests against the installed pi development dependencies:

npm install --ignore-scripts
npm test

License

MIT