Skip to content

mobile: paste/attach a screenshot or image into the agent #72

Description

@pallaoro

Summary

Let users paste/attach a screenshot or image into the agent from the phone — drop a mockup, an error screenshot, or a design into Claude Code (and other agents) directly from the mobile composer.

Why

This is the one mobile-UX feature — besides session persistence, now shipped in #70 — that shows up in the high-engagement "coding from the phone" discourse (e.g. @TermiusHQ, ~282 likes: paste mockups/error logs into Claude Code from iPhone/iPad). People want to hand the agent visual context without a laptop.

Current state

Not built. The composer explicitly defers it:

apps/mobile/src/Composer.tsx:5"Attachments are a fast-follow"

Why it's cheap — the plumbing already exists

This is a client-side feature, not new protocol work. The wire primitive is already there:

  • util.writeImageBytes exists on the protocol side (@ateam/protocol) — the desktop already uses it to stage an image onto the box for the agent.
  • The mobile client stubs the native slice (apps/mobile/src/connection.tsstageImagePath/stageClipboardImage return false today) and routes file/image concerns over RPC.

So the work is: image picker (expo-image-picker) → read bytes → util.writeImageBytes to the box → reference the staged path in the prompt/keystrokes. No daemon or protocol changes expected.

Acceptance

  • Composer has an "attach image" affordance (photo library + screenshot).
  • Selected image is staged on the box via the existing RPC and made available to the running agent.
  • Works for the claude agent at minimum.

Priority

Highest-value next build for closing the Termius-workflow gap, given the plumbing already exists. Note: may require expo-image-picker (native dep → prebuild).

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions