$ cat ~/map/pi-reverse.md
pi-reverse
Fullscreen TUI extension that pins pi's input at the top and stacks Q&A pairs newest-first, question in view.
extensions✓ Sep 14
Facts
- repository
- github.com/panbergco/pi-reverse ↗
- GitHub Stars
- ★ 1
- Forks
- 0
- license
- MIT
- npm / mo
- —
- last push
- Sep 24, 2026
install
pi install git:github.com/panbergco/pi-reverse (requires fullscreen TUI mode: tuiMode fullscreen in ~/.pi/agent/settings.json, or pi --tui-mode fullscreen)## TL;DR
A fullscreen TUI layout extension that pins pi's input at the top and stacks the conversation as Q&A pairs, newest first, each pair still reading question-then-answer.
## Key points
- $Named after Warp's reverse mode for command blocks; the README pitches it as the first such layout for an agent conversation, noting VS Code closed the equivalent Copilot Chat request as out-of-scope (issue #12321, December 2025).
- $Turn-based model: a turn starts at each user question and the extension reverses the groups, never their contents, so every question still reads into its answer; long answers cap at 70% of the pane by default (answer-lines) with their own inner scroll.
- $Split-wheel navigation: the right half of the pane scrolls the conversation on stock pi, while the left half's wheel-inside-an-answer needs a patched pi (a small ScrollView patch, fix pending upstream); alt+j / alt+k jump between pairs, and /reverse next, /reverse prev, /reverse tail, /reverse question, /reverse flip, and /reverse reset are also available.
- $Display-only: session files are never modified, and old sessions open in the same layout via pi --session; in regular (non-fullscreen) TUI mode the extension declines with a warning instead of half-applying.
- $Performance: off-screen turns keep the lines they produced and re-render near the viewport; measured wheel-to-repaint is 25-28 ms median versus 45-73 ms for stock pi on a 1,165-component session, with per-frame work proportional to the screen, not the session.
- $Known limits: it leans on pi internals (the seven mounted regions and UserMessageComponent as the turn marker) and refuses to apply with a warning if a pi release changes that shape; verified against pi 0.84.2 and 0.85.1.
## FAQ
Q Does pi-reverse change how sessions are stored?
No — it changes rendering only. The session file is never modified; this is display only, and the same layout applies when reopening old transcripts with pi --session.
Q What happens outside fullscreen TUI mode?
Regular mode renders into the terminal's own scrollback, which can only grow at the bottom — no extension can pin a top row there, so pi-reverse declines with a warning instead of half-applying.
## References
## Related entries
$ pi-conversation-outline
Read-only outline rail for fullscreen: one tick per prompt, hover to preview, click to jump.
$ pi-open-tui
Polished terminal interface for pi: model/thinking header, runtime-aware footer, framed editor, turn metrics (TPS / TTFT / stalls / cost), and 50+ runtime detectors — all configurable from /open-tui.
$ pi-statusline
Compact TUI statusline: model and thinking on the border, token flow and context usage in the footer.
## Guides
Last updated: Sep 14, 2026