Skip to content

Remote desktop: composer image attachments are sent as local paths, unreadable by the remote backend #40316

@Justlrnal4

Description

@Justlrnal4

Environment

Hermes Desktop connected to a remote gateway/dashboard — desktop app on
machine A, backend runtime on machine B (e.g. a Linux mini-PC backend with the
desktop app on a laptop over a private network).

Repro

  1. Connect the desktop to a remote backend.
  2. Paste or drag an image into the composer and send.

Actual

The image never reaches the model. tui_gateway logs
native image attachment skipped … unreadable path(s); image.attach resolves
the path on the backend host and can't find it.

Root cause

The Electron app writes composer images to its own machine
(app.getPath('userData')/composer-images/…) and represents attachments only by
a local filesystem path (ComposerAttachment has no bytes field). On a remote
session the backend is on a different host and cannot read that path. There is no
attachment byte-upload endpoint on the dashboard — /api/audio/transcribe exists
for audio, but there is no equivalent for image attachments.

Expected

On a remote session the desktop uploads the attachment bytes to the backend, and
the chat references a backend-readable path.

Note

The unreadable attachment is currently dropped silently; surfacing a warning
would make this failure visible.

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3Low — cosmetic, nice to havecomp/gatewayGateway runner, session dispatch, deliverytool/visionVision analysis and image generationtype/bugSomething isn't working

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions