mirror of
https://github.com/paperclipai/paperclip.git
synced 2026-10-27 02:44:50 +01:00
The sandbox ACP stdin bridge base64-encoded each stdin file and appended it to a remote temp file in 32-KiB chunks over exec, then decoded and renamed. A large prompt cost many exec round trips. Route each stdin file through the managed-runtime native sync seam instead. Stage the body to a host temp file, send one syncIn operation to a temp name that the .json poller never lists, then run one post-upload rename onto the final sequence-named path. A provider with native transfer (e.g. Daytona) uploads raw bytes with zero base64-over-exec round trips; a provider without native transfer falls through the generic sync fallback, which streams the body in large decoded chunks and still costs fewer execs than the prior append loop. Keep the earlier stdin-ordering guarantees: the host per-session write chain still serializes stdin writes, the final .json path only appears through one atomic same-directory rename, and the wrapper poller keeps its sequence-gap hold and loud error event. Co-authored-by: Paperclip <noreply@paperclip.ing>