Skip to content

feat: support cross-platform file and image paste in fullscreen input #1

@shuyhere

Description

@shuyhere

Summary

BB-Agent fullscreen input currently does not support reliable cross-platform file and image paste/attach behavior.

Users cannot consistently paste or drop files/images into the input block across macOS, Linux, and Windows.

Current problems

  • Ctrl+V is currently intercepted for image clipboard handling instead of falling back to normal paste behavior.
  • Clipboard image paste is effectively Linux-only today (wl-paste, xclip, grab-screenshot).
  • Pasted image-path detection is too strict and misses common terminal/drop formats:
    • quoted paths
    • escaped paths
    • file:// URLs
    • multiple paths
  • There is no real general file-paste pipeline for non-image files.
  • Fullscreen prompt submission does not mirror CLI @file processing, so pasted file references are not handled consistently.

Expected behavior

  • Normal text paste should keep working everywhere.
  • If an image is available from the clipboard, BB should support attaching it cross-platform.
  • If a pasted/dropped value is a local file path, BB should normalize and recognize it.
  • File/image paste behavior should work consistently in the fullscreen input block across macOS, Linux, and Windows.
  • Fullscreen should support a real file-ingest flow comparable to CLI @file handling, or an equivalent attachment/reference flow.

Proposed implementation

  • Make Ctrl+V fall back to standard paste if no image clipboard payload is available.
  • Add macOS clipboard image support.
  • Add Windows clipboard image support.
  • Normalize pasted file/image paths:
    • quotes
    • escaped spaces
    • file:// URIs
    • multiple dropped paths
  • Add fullscreen file ingestion/reference handling for pasted files.
  • Add tests for path normalization and fullscreen paste submission behavior.

Acceptance criteria

  • Text paste still works normally.
  • Image clipboard paste works on macOS, Linux, and Windows.
  • Drag/paste of image file paths attaches supported images.
  • Drag/paste of normal files inserts/expands a usable file reference flow.
  • Fullscreen input behavior matches user expectations across major terminals/platforms.

Metadata

Metadata

Assignees

No one assigned

    Labels

    featFeature work

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions