pi-parallel-sessions
v0.2.8
Published
Run multiple live sessions in parallel in pi agent
Maintainers
Readme
pi-sessions
pi-sessions turns one Pi process into an in-process live-session multiplexer.
Multiple Pi sessions can stay alive concurrently. Exactly one session owns the terminal at a time. Switching away stops only the inactive TUI, with its agent runtime still running in background.

Install
pi install npm:pi-parallel-sessionsOr install directly from GitHub:
pi install git:github.com/liushihao456/pi-sessionsCommand
Only one slash command is exposed:
/sessions— open the session switcher.
Shortcut:
Ctrl-R— open the same session switcher without typing/sessions.
All session operations happen inside that switcher.
Switcher keys
- type normally — filter live sessions.
↑/↓orCtrl-P/Ctrl-N— move selection.Enter— switch to selected live session. Selectingparentswitches back to parent.Ctrl-O— openFileExplorer; selecting a folder creates a new child session in that folder and switches to it.Ctrl-R— open a one-off resume flow; selecting a saved Pi session opens it as a live child and switches to it.Ctrl-K— stop selected live child session.Esc— close switcher.
Runtime model
parent Pi process
└─ pi-sessions live-session multiplexer
├─ parent: existing InteractiveMode
├─ child A: AgentSessionRuntime + InteractiveMode
├─ child B: AgentSessionRuntime + InteractiveMode
└─ child C: AgentSessionRuntime + InteractiveModeChild sessions are real native InteractiveMode instances, not embedded panels. When active, child UI is full-screen and native Pi slash-command UI works as usual.
/quit keeps native behavior and exits the whole Pi process.
Path locks
All live sessions share one in-process lock manager. Before write/edit/mutating shell tools run, pi-sessions checks for conflicting path locks and blocks conflicting writes.
This prevents two live sessions from editing the same path tree at once.
