Summary
Host↔guest clipboard sharing is completely non-functional when the guest is macOS 14 (Sonoma), while the same host and the same tart-guest-agent version work fine with a macOS 26 (Tahoe) guest. This extends the observation in #1167 (comment) ("clipboard sharing does not work … unlikely an agent issue because macos-sequoia-xcode works and has the same agent version") with byte-level evidence that the failure is at the SPICE vdagent layer and is guest-OS-version dependent.
Environment
- Host: Apple Silicon (arm64), macOS 27.0 (26A428)
- tart: 2.32.1
- Guests:
ghcr.io/cirruslabs/macos-sonoma-base:latest (macOS 14) and ghcr.io/cirruslabs/macos-tahoe-base:latest (macOS 26), both cloned locally
- tart-guest-agent 0.14.1 on both guests, installed identically (launchd LaunchAgent
org.cirruslabs.tart-guest-agent, --run-agent)
Steps to reproduce
tart run macos14-sonoma
- Copy text on the host, paste in the guest → nothing appears.
- Copy text in the guest, paste on the host → nothing appears.
- Repeat with
macos26-tahoe → both directions work.
Diagnostics
The guest side is healthy in every way we could check:
- agent running,
--run-vdagent active, RPC on AF_VSOCK:8080 up
- SPICE port held by the agent:
lsof -p <agent> | grep spice → /dev/tty.com.redhat.spice.0
- the guest's own pasteboard works (
pbpaste/pbcopy fine inside the guest)
The decisive difference is how much data ever crosses the SPICE channel:
| Guest |
lsof offset on /dev/tty.com.redhat.spice.0 |
Clipboard |
| macOS 14 (Sonoma) |
0t0 headless / 0t36 windowed — effectively zero |
dead, both directions |
| macOS 26 (Tahoe) |
0t693 |
works, both directions |
On Sonoma the vdagent protocol never completes — no clipboard data flows in either direction, with identical host, agent binary, launchd setup, and run flags. This matches the finding that macos-sequoia-xcode works while macos-sonoma-xcode does not, with the same agent version.
Restarting the guest agent (launchctl kickstart -k gui/$(id -u)/org.cirruslabs.tart-guest-agent) does not help on Sonoma — the channel stays at zero bytes.
Additional observation (macOS 26, possibly unrelated)
On the Tahoe guest we also intermittently saw the agent log failed to run vdagent: unexpected EOF with backoff retries after repeated VM start/stop cycles; clipboard still worked in a clean boot. Mentioning in case it's related, but the Sonoma failure above is deterministic and the primary issue.
Related
Summary
Host↔guest clipboard sharing is completely non-functional when the guest is macOS 14 (Sonoma), while the same host and the same tart-guest-agent version work fine with a macOS 26 (Tahoe) guest. This extends the observation in #1167 (comment) ("clipboard sharing does not work … unlikely an agent issue because macos-sequoia-xcode works and has the same agent version") with byte-level evidence that the failure is at the SPICE vdagent layer and is guest-OS-version dependent.
Environment
ghcr.io/cirruslabs/macos-sonoma-base:latest(macOS 14) andghcr.io/cirruslabs/macos-tahoe-base:latest(macOS 26), both cloned locallyorg.cirruslabs.tart-guest-agent,--run-agent)Steps to reproduce
tart run macos14-sonomamacos26-tahoe→ both directions work.Diagnostics
The guest side is healthy in every way we could check:
--run-vdagentactive, RPC on AF_VSOCK:8080 uplsof -p <agent> | grep spice→/dev/tty.com.redhat.spice.0pbpaste/pbcopyfine inside the guest)The decisive difference is how much data ever crosses the SPICE channel:
lsofoffset on/dev/tty.com.redhat.spice.00t0headless /0t36windowed — effectively zero0t693On Sonoma the vdagent protocol never completes — no clipboard data flows in either direction, with identical host, agent binary, launchd setup, and run flags. This matches the finding that
macos-sequoia-xcodeworks whilemacos-sonoma-xcodedoes not, with the same agent version.Restarting the guest agent (
launchctl kickstart -k gui/$(id -u)/org.cirruslabs.tart-guest-agent) does not help on Sonoma — the channel stays at zero bytes.Additional observation (macOS 26, possibly unrelated)
On the Tahoe guest we also intermittently saw the agent log
failed to run vdagent: unexpected EOFwith backoff retries after repeated VM start/stop cycles; clipboard still worked in a clean boot. Mentioning in case it's related, but the Sonoma failure above is deterministic and the primary issue.Related