Skip to content

HEIC attachments are not visible to the assistant while equivalent PNG works #5010

Description

@ArlindNocaj

Describe the bug

HEIC files passed through the native --attachment option are not visible to the assistant as images, while an equivalent PNG works. The HEIC command exits successfully without an explicit unsupported-format error.

Related Copilot app report: github/app#4304

This may be the same underlying attachment-processing problem. A shared root cause has not been confirmed; please coordinate triage across both reports.

That app report also describes a missing fallback: the uploaded HEIC is not available to the agent through a usable staged file path, so the user has to supply the original source path before the agent can convert it. This app behavior is user-reported. The CLI test below verifies native-image recognition only; it deliberately disallows tools and does not establish whether CLI file-staging or conversion fallback works.

Affected version

GitHub Copilot CLI 1.0.90-5.

Steps to reproduce the behavior

  1. Create a non-personal 256 x 256 PNG with four colored quadrants: red upper-left, green upper-right, blue lower-left, yellow lower-right. Save it as /tmp/heic-repro/test-image.png.
  2. Convert the PNG to HEIC on macOS:
sips -s format heic /tmp/heic-repro/test-image.png \
  --out /tmp/heic-repro/test-image.HEIC
  1. Submit the HEIC as a native attachment:
copilot -p 'Describe only the visible colors and their positions in the attached image. Do not inspect any files or use tools.' \
  --attachment /tmp/heic-repro/test-image.HEIC \
  --no-custom-instructions --disable-builtin-mcps \
  --available-tools view --deny-tool view \
  --no-ask-user --no-color --silent

Observed response:

Unable to describe the colors because the attached HEIC image is not visible in this interface.

  1. Run the same command with --attachment /tmp/heic-repro/test-image.png.

Observed response:

Red fills the upper-left area, green the upper-right, blue the lower-left, and yellow the lower-right. The colors meet near the center with softly blended boundaries.

Both commands exited with code 0. These results were reproduced using synthetic image content; no personal photo is needed.

Expected behavior

HEIC attachments should be decoded or converted into a supported image representation and made available to the assistant.

If native HEIC image processing is unsupported, preserve the original file in the agent's working directory or attachment storage and pass its accessible file path to the agent. With appropriate tool permissions, the agent should be able to convert the file into PNG/JPEG without requiring the user to manually provide the original source path. Clearly explain any native-format limitation or file-staging failure.

This fallback is a requested behavior, not a claim that CLI fallback was tested with tools enabled.

Additional context

  • Platform: macOS.
  • The equivalent PNG control succeeded with the same prompt and tool restrictions.
  • The synthetic HEIC was produced by macOS sips, not an iPhone. Therefore, iPhone-specific metadata is not necessary to reproduce this CLI failure.
  • Similar user-reported behavior in the desktop app: iPhone HEIC attachments are not recognized as images; also reproducible in Copilot CLI app#4304
  • Investigate HEIC detection, decoding/conversion, and attachment serialization. A shared root cause across the app and CLI is a hypothesis, not established by this comparison.
  • No original personal image, account details, or personal file paths are included.

Activity

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

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions