pi-nano-context

A tiny pi.dev extension. It replaces the default context meter with a compact segmented bar under the editor so you can see what is using the window.

Packages

Package details

extension

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

$ pi install npm:pi-nano-context
Package
pi-nano-context
Version
0.1.1
Published
May 7, 2026
Downloads
291/mo · 34/wk
Author
daynin
License
MIT
Types
extension
Size
983.8 KB
Dependencies
0 dependencies · 1 peer
Pi manifest JSON
{
  "extensions": [
    "./index.ts"
  ],
  "image": "https://github.com/daynin/nano-context/blob/main/imgs/example.png?raw=true"
}

Security note

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

README

NANO CONTEXT

A tiny pi.dev extension that replaces the default context meter with a compact segmented bar under the editor.

What it is

nano-context shows what is filling up the current session. The bar sits right under the input and splits the model window into colored pieces: system prompt, your prompts, assistant replies, thinking, tool results, and free space.

That's the whole thing. No sidebar, no popover, no second context meter in the footer.

In action

When a session gets long, you can see at a glance what ate the context:

Segments

The labels get shorter when the terminal is narrow, but the colors stay the same:

  • sys — the current system prompt
  • pr — your prompts and attached images
  • assistant — visible assistant replies and tool calls
  • think — thinking blocks, if pi has them
  • tools — tool results
  • free — the space still left in the model window

The pieces are proportional. If pi knows the real context count for the turn, nano-context uses that total and scales the pieces to match.

Install

From npm:

pi install npm:pi-nano-context

Or from GitHub:

pi install git:github.com/daynin/nano-context

Both commands write to your global pi settings (~/.pi/agent/settings.json). Pass -l to install only for the current project.

Verify with pi list. Remove with pi remove pi-nano-context.

Testing

Typecheck it:

npm run typecheck

Smoke-load it:

pi --no-extensions -e ./index.ts --no-session --no-tools -p "Reply ok"

To exercise the bar, run pi with tools enabled, ask it to read a file, then ask a second question in the same session. You should see sys, pr, assistant, tools, and free. think only appears when the selected model/provider stores thinking blocks in the session.

Stack

  • TypeScript strict, no build step. The extension loads as .ts source via jiti.
  • Deps: @mariozechner/pi-coding-agent. Nothing else.

License

MIT.