claude-code - 💡(How to fix) Fix Opus 4.7 regression: screenshot content fabricated from prior image in conversation [2 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#56411Fetched 2026-05-06 06:28:47
View on GitHub
Comments
2
Participants
2
Timeline
8
Reactions
0
Timeline (top)
labeled ×5commented ×2subscribed ×1

On Opus 4.7 (Bedrock, us.anthropic.claude-opus-4-7), Claude Code describes a newly-read image using content from a previous image in the conversation rather than the actual pixels of the current file. The description is delivered with full confidence and specific detail, making the fabrication hard to detect without user pushback.

This feels like a regression from Opus 4.6, which in the same workflow did not exhibit this cross-image confusion during a multi-hour pinchart testing session the day before.

Error Message

Task Details panel on the right with a chart preview, and an error toast at

Root Cause

  • Model: Opus 4.7 (us.anthropic.claude-opus-4-7) via Amazon Bedrock
  • Claude Code: current stable (no /feedback because Bedrock, per CLI message)
  • OS: macOS (Darwin 25.4.0)
  • Context: Long session (20+ turns) reviewing multiple screenshots during a live production test

Fix Action

Workaround

User added a hard rule to `~/.claude/CLAUDE.md` to remind Claude to re-read the file and describe only current pixels, and to name the file before describing it. This is not a real fix — the model should not need the user to install guardrails for basic perceptual accuracy.

RAW_BUFFERClick to expand / collapse

Summary

On Opus 4.7 (Bedrock, us.anthropic.claude-opus-4-7), Claude Code describes a newly-read image using content from a previous image in the conversation rather than the actual pixels of the current file. The description is delivered with full confidence and specific detail, making the fabrication hard to detect without user pushback.

This feels like a regression from Opus 4.6, which in the same workflow did not exhibit this cross-image confusion during a multi-hour pinchart testing session the day before.

Environment

  • Model: Opus 4.7 (us.anthropic.claude-opus-4-7) via Amazon Bedrock
  • Claude Code: current stable (no /feedback because Bedrock, per CLI message)
  • OS: macOS (Darwin 25.4.0)
  • Context: Long session (20+ turns) reviewing multiple screenshots during a live production test

Reproduction pattern

  1. Share Screenshot A with Claude (e.g., a tabular list view of resources).
  2. Have Claude describe Screenshot A correctly.
  3. Continue the conversation for several turns.
  4. Share Screenshot B, a structurally different view (e.g., a graph/canvas detail page with a toast overlay) — different DOM structure, different page layout, different colors.
  5. Ask Claude to describe Screenshot B.
  6. Observed: Claude describes the content of Screenshot A as if that were the current image, with confident specific details (row count, column labels, dates). The actual contents of Screenshot B (the graph canvas, the toast, the chart preview) are missing from the description entirely.

The two view types shared zero visual structure — it is not a subtle-detail misread.

Concrete example

During pinchart dashboard testing on a live staging environment:

  • Screenshot showed a task-output-view (workflow graph canvas on the left, Task Details panel on the right with a chart preview, and an error toast at the bottom).
  • Claude described it as a Pinned Charts list view with three tabular rows, naming specific chart titles and timestamps that actually came from a screenshot several turns earlier in the conversation.
  • This happened twice in the same session, despite an explicit self-correction after the first occurrence ("I will describe only what's in the current pixels going forward").

Why this is serious

When a user is troubleshooting production behavior and sharing screenshots as evidence, a fabricated description corrupts their diagnostic process. Every subsequent claim the user builds on that description is poisoned. The user loses trust in all image-based reporting, which is especially damaging because image review is a primary way UI state is conveyed to Claude.

The failure is also hard to detect automatically: single-image vision benchmarks will not catch it, because the issue only emerges when a prior image is in context.

Suggested investigation

  • Test multi-image conversations where each image is structurally different and ask the model to describe each one. Measure drift toward describing earlier images when the current one differs.
  • Compare Opus 4.7 vs Opus 4.6 on the same conversations. User observation in this session is that 4.6 did not exhibit this pattern.
  • Consider whether visual-processing training optimized for single-image benchmarks inadvertently weakened the "re-read the current image each time" behavior.

Workaround

User added a hard rule to `~/.claude/CLAUDE.md` to remind Claude to re-read the file and describe only current pixels, and to name the file before describing it. This is not a real fix — the model should not need the user to install guardrails for basic perceptual accuracy.

Related

Announcement framing Opus 4.7 as having improved visual processing makes this regression more surprising. Would appreciate an acknowledgment of whether this behavior is reproducible on Anthropic's side and whether it's scheduled for investigation.

extent analysis

TL;DR

The most likely fix for the issue is to re-train the Opus 4.7 model with a focus on multi-image conversations and structurally different images to improve its ability to accurately describe the current image.

Guidance

  • Test multi-image conversations with structurally different images to measure the model's drift toward describing earlier images.
  • Compare the performance of Opus 4.7 and Opus 4.6 on the same conversations to identify any regression.
  • Consider adding a rule to remind the model to re-read the current image and describe only its pixels, as a temporary workaround.
  • Investigate whether the visual-processing training optimized for single-image benchmarks inadvertently weakened the model's ability to re-read the current image.

Example

No code snippet is provided as the issue is related to the model's behavior and training data.

Notes

The issue is specific to the Opus 4.7 model and may not be present in other versions. The workaround provided by the user is not a permanent fix and the model should be able to accurately describe the current image without requiring user intervention.

Recommendation

Apply the workaround of adding a rule to remind the model to re-read the current image and describe only its pixels, until a permanent fix is available. This is because the issue is critical and can corrupt the diagnostic process, and the workaround can help mitigate the problem temporarily.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

claude-code - 💡(How to fix) Fix Opus 4.7 regression: screenshot content fabricated from prior image in conversation [2 comments, 2 participants]