Summary
paste-buffer (with or without -p, with named or default buffer) does not deliver buffer content into the target pane on psmux 3.3.4 (the latest scoop binary release). set-buffer / load-buffer correctly store content (verified via show-buffer), but paste-buffer then appears to be a no-op against the pane.
This blocks downstream consumers that rely on the load-buffer → paste-buffer → send-keys Enter pattern (CAO does this in clients/tmux.py:send_keys).
Environment
- psmux: 3.3.4 (
psmux -V → psmux 3.3.4), installed via scoop
- Host: Windows 11 Pro 26200, ARM
- Shell launched in panes: PowerShell 7 (
pwsh) on ConPTY
- Calling shell: Git Bash
Minimal repro
# Run from a shell where PSMUX_SESSION is unset (i.e. NOT inside a psmux session)
tmux new-session -d -s repro -n w -c "$HOME"
sleep 1.5
# Test 1 — set-buffer + paste-buffer (no -p)
tmux set-buffer -b b1 'echo TEST_1_NO_DASH_P'
tmux paste-buffer -b b1 -t repro
sleep 0.3
tmux send-keys -t repro Enter
sleep 1
tmux capture-pane -t repro -p
# Test 2 — load-buffer + paste-buffer -p (CAO's exact pattern)
printf 'echo TEST_2_LOAD_BUFFER_DASH_P' | tmux load-buffer -b b2 -
tmux paste-buffer -p -b b2 -t repro
sleep 0.3
tmux send-keys -t repro Enter
sleep 1
tmux capture-pane -t repro -p
# Test 3 — set-buffer + paste-buffer to default buffer (no -b)
tmux set-buffer 'echo TEST_3_DEFAULT_BUFFER'
tmux paste-buffer -t repro
sleep 0.3
tmux send-keys -t repro Enter
sleep 1
tmux capture-pane -t repro -p
# Sanity check — show-buffer confirms buffers exist
tmux show-buffer -b b1
tmux show-buffer -b b2
# Sanity check — send-keys -l works fine
tmux send-keys -t repro -l 'echo SEND_KEYS_LITERAL_WORKS'
tmux send-keys -t repro Enter
sleep 1
tmux capture-pane -t repro -p
tmux kill-session -t repro
Observed
Tests 1, 2, 3 — pane shows just empty PS C:\Users\marc> prompts, one extra newline per test. Buffer content never appears in the pane. No execution.
show-buffer -b b1 / show-buffer -b b2 correctly return the stored content.
send-keys -l 'literal' immediately delivers and executes (works as expected).
Expected
paste-buffer should write the buffer's contents into the pane, optionally wrapped with bracketed-paste markers when -p is given. Real tmux does this; per your PR207 status report you tested and verified it on 10ebb81 / v3.3.0.4.
Note on the v3.3.0.4 vs 3.3.4 delta
Your status report on awslabs/cli-agent-orchestrator#207 confirmed the load-buffer → paste-buffer-p flow works end-to-end at commit 10ebb81 (tag v3.3.0.4). The scoop binary I'm testing is 3.3.4, which post-dates that tag. It's possible something regressed between v3.3.0.4 and the 3.3.4 release. I don't have a Rust toolchain to bisect — would you mind sanity-checking 3.3.4's paste-buffer code path against the same repro?
Context
Filed downstream of awslabs/cli-agent-orchestrator#207 (CAO's psmux-compatibility PR). CAO has a workaround in flight that routes through send-keys -l on Windows as a fallback, but ideally we'd remove it once paste-buffer is reliable. Happy to test any patched build.
Summary
paste-buffer(with or without-p, with named or default buffer) does not deliver buffer content into the target pane on psmux 3.3.4 (the latest scoop binary release).set-buffer/load-buffercorrectly store content (verified viashow-buffer), butpaste-bufferthen appears to be a no-op against the pane.This blocks downstream consumers that rely on the load-buffer → paste-buffer → send-keys Enter pattern (CAO does this in
clients/tmux.py:send_keys).Environment
psmux -V→psmux 3.3.4), installed via scooppwsh) on ConPTYMinimal repro
Observed
Tests 1, 2, 3 — pane shows just empty
PS C:\Users\marc>prompts, one extra newline per test. Buffer content never appears in the pane. No execution.show-buffer -b b1/show-buffer -b b2correctly return the stored content.send-keys -l 'literal'immediately delivers and executes (works as expected).Expected
paste-buffershould write the buffer's contents into the pane, optionally wrapped with bracketed-paste markers when-pis given. Real tmux does this; per your PR207 status report you tested and verified it on10ebb81/v3.3.0.4.Note on the v3.3.0.4 vs 3.3.4 delta
Your status report on awslabs/cli-agent-orchestrator#207 confirmed the load-buffer → paste-buffer-p flow works end-to-end at commit
10ebb81(tagv3.3.0.4). The scoop binary I'm testing is3.3.4, which post-dates that tag. It's possible something regressed between v3.3.0.4 and the 3.3.4 release. I don't have a Rust toolchain to bisect — would you mind sanity-checking 3.3.4'spaste-buffercode path against the same repro?Context
Filed downstream of awslabs/cli-agent-orchestrator#207 (CAO's psmux-compatibility PR). CAO has a workaround in flight that routes through
send-keys -lon Windows as a fallback, but ideally we'd remove it once paste-buffer is reliable. Happy to test any patched build.