Skip to content

feat: Cmd+V should detect clipboard images and pass them to the terminal process #490

Description

@heyramzi

Problem

When pasting with Cmd+V in Orca's terminal, the paste handler in TerminalPane.tsx calls readClipboardText() exclusively — image data is silently discarded. This makes it impossible to paste screenshots into tools like Claude Code that support image input (e.g. via chat:imagePaste).

In Warp, Cmd+V natively detects clipboard image data and passes it through. In Orca, users are forced to use workarounds like Karabiner-Elements or Option+V.

Root Cause

/src/renderer/src/components/terminal-pane/TerminalPane.tsx — the onPaste handler:

window.api.ui
  .readClipboardText()  // text-only — image data never reached
  .then((text) => {
    if (text) pane.terminal.paste(text)
  })

The main process clipboard API (attach-main-window-services.ts) only exposes clipboard:readText for terminal use. There is no clipboard:readImage or clipboard:readItems for the terminal path.

Proposed Fix

  1. Add clipboard:readImage IPC handler in attach-main-window-services.ts (the write-image handler already exists for BrowserPane — read is missing)
  2. Update onPaste in TerminalPane.tsx to check e.clipboardData.types for image MIME types first
  3. If image: save to a temp file and write the file path into the terminal (so tools like Claude Code can read it), or send it directly via an OSC escape sequence if the running process supports it

Related

Activity

  1. added a commit that references this issue on Apr 11, 2026
    fce8a78
  2. added theissue type on Jul 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions