# NousResearch/hermes-agent · Detect embedded image MIME type from bytes, not hints

## Open now

- 1 issue, 2 PRs open on GitHub.
- #139253: browser_exec labels JPEG screenshots as image/png → Anthropic 400 kills the turn (hardcoded mime_type)
- PR #139263: fix(vision): sniff the embed MIME from magic bytes instead of trusting the caller's hint
- PR #139419: fix(browser): label embedded screenshots by sniffed bytes, not the mime hint

The members concern screenshots or embedded images being labeled with a MIME type (e.g., image/png) that may not match the actual bytes, such as JPEG data, which is reported to cause an Anthropic 400 error. Two pull requests propose sniffing the type from magic bytes rather than trusting a caller-supplied or hardcoded hint, in browser and vision code paths.

## TL;DR

- 3 member(s): 1 open issue(s), 0 closed issue(s), 2 open PR(s), 0 merged PR(s), 0 PR(s) closed without merging.
- No fix has been merged to main; one or more PRs were attempted (see below).
- **Recommended:** review the prior/competing PR(s) below. A fix was attempted but not merged; your case may extend or revive that work.

## Maintainer resolution verdict

- Internal-tracker verdict over this cluster's issue members: `unresolved`. This is distinct from the fix status above. Weigh it yourself.

## How this cluster was grouped

- Link evidence (`STRUCTURAL_SPANNING`): every member is connected by structural evidence: shared changed files, or a closing/superseded reference.
- Pairwise link density `0.67`: the share of member pairs that carry a link, counting a structural link in full and a relevance-only link at 0.36. `1.00` means every pair is linked.

## Open related issues

- #139253: browser_exec labels JPEG screenshots as image/png → Anthropic 400 kills the turn (hardcoded mime_type)

## Prior & competing PRs

- **#139263: fix(vision): sniff the embed MIME from magic bytes instead of trusting the caller's hint**. open
  - maintainer direction: category `silent_close`; implication `active`
  - files: `tests/tools/test_vision_tools.py`, `tools/vision_tools.py`
- **#139419: fix(browser): label embedded screenshots by sniffed bytes, not the mime hint**. open
  - maintainer direction: category `uncategorized`; implication `needs_llm`; refs `#126230`, `#139263`, `#126669`
  - files: `tests/tools/test_vision_tools.py`, `tools/vision_tools.py`

## Fix status

- No merged fix on record.
- Subsystem: `agent`
