github / github/copilot-cli

One pasted image and claude-opus-5 won't look at any more images

Open
#4,831 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

triage
Dominant language
Shell
Stars
11.2k
Forks
1.9k
Avg merge
14h 16m
Merged PRs (30d)
6

Description

Describe the bug

Pasted a screenshot into a session on claude-opus-5, and after that the agent couldn't view a single image file. Every view call came back with "You've reached the maximum number of images you can view (1)".

The CLI does say what happened:

Removed 2 images from the model request to stay within the model's 1-image limit. User-provided images were prioritized over tool-generated images, with newer messages kept first.

Fair enough as a message, but the result is that one screenshot early on burns the only slot and the agent is blind to images for everything after. Anything needing two images is off the table, like comparing a before/after render or checking a regenerated icon against the reference I just handed it.

Affected version

1.0.84-5

Steps to reproduce the behavior
  1. Start a session on claude-opus-5
  2. Paste an image
  3. Ask it to view two or more image files, same turn or any later turn
  4. Every one gets refused

I had it generate three solid-color PNGs and view them in one turn. All three blocked. Tried two more four turns later with no new image attached. Also blocked, so the original screenshot was still holding the slot.

One thing that makes this harder to notice: each call returns "Viewed image file successfully" and the limit message together, so at a glance it looks like it worked.

Expected behavior

A higher limit where the model can handle it, or some way for an old image to drop out instead of holding the slot indefinitely. If 1 genuinely is intended, surfacing it in /model or /context would help. Right now you only find out after the agent has already tried to look at something.

Additional context

macOS 26.6.2, arm64, Apple Terminal, zsh.

image_limit turns up as a string in prebuilds/darwin-arm64/runtime.node right next to Copilot-Vision-Request, so it looks like a per-model capability rather than anything I can set. Nothing image-related in ~/.copilot/settings.json or config.json.

The 1.0.84-5 changelog has this under fixed: "When image-heavy requests exceed model limits, user-provided images are prioritized over tool-generated images, newer messages are kept first, and the CLI reports any removals" (#19644). That's presumably what made this visible. No idea whether the limit of 1 is new or was just silent before.

What I didn't check: whether other models are also at 1, or whether the value changed recently. I only tested claude-opus-5 on this version. From inside a session I also can't tell whether it's the retained screenshot specifically or just a counter.

Closest existing issues I found are #3295, #4536 and #4600 (routing and MCP image results) and #965, #3767, #4183 (the 5 MB payload cap). Those look like different problems.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Reproduce the behavior on claude-opus-5 with version 1.0.84-5 by pasting one image, then requesting multiple image views across turns. Inspect the image_limit value in prebuilds/darwin-arm64/runtime.node and consider the /model or /context surfaces mentioned in the report. Done should mean image-limit behavior is correct or clearly surfaced, with image view results no longer falsely appearing successful.

Written by the indexing model from the issue text.

Assessment

Tech stack
node.js, shell
Domain
ai, cli
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.