pi-session-yank
v0.1.0
Published
Pi extension that copies assistant/user message text or fenced code blocks from the current session branch to the clipboard
Downloads
18
Maintainers
Readme
pi-session-yank
A Pi extension that copies assistant or user message content from the current session branch directly to your clipboard.
It avoids terminal selection issues caused by soft wrapping in the Pi TUI.
What it does
Adds one command:
/yank <assistant|user> <raw|code> [N|all]Examples:
/yank assistant raw
/yank assistant raw 3
/yank assistant code all
/yank user raw allSemantics
assistant|userselects which role to copy fromraw|codeselects whether to copy plain text or fenced code blocks[N|all]selects how many messages to scan- omitted =
1 N= lastNmatching messagesall= all matching messages in the current branch
- omitted =
Important detail:
amountis message scopecodecopies all fenced code blocks inside the selected messages
So:
/yank assistant code 3means: copy all fenced code blocks from the last 3 assistant messages.
Install
From npm:
pi install npm:pi-session-yankFrom a local checkout during development:
pi -e ./extensions/yank.tsThen reload Pi inside the app:
/reloadClipboard behavior
The extension tries the system clipboard first, with OSC 52 terminal clipboard support as a fallback when available.
On Linux-family systems it tries these transports as available:
termux-clipboard-setwl-copyxclipxsel
Warnings and limitations
- Only text blocks are copied from messages.
- Attachments and images are ignored.
codemode only extracts fenced code blocks using triple backticks.- The command works on the current session branch only.
Development
Run checks:
npm install
npm run check