# NousResearch/hermes-agent · Image MIME type detection via magic byte sniffing

## Open now

- Nothing open on GitHub.

A cluster of bugs and fixes centered on incorrect media_type values being sent to Anthropic's vision API, caused by misleading file extensions or Discord's image caching. Fixes involve sniffing actual file magic bytes to determine true MIME type rather than trusting suffixes.

## TL;DR

- 4 member(s): 0 open issue(s), 2 closed issue(s), 0 open PR(s), 0 merged PR(s), 2 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_PARTIAL`): some members are connected by structural evidence (shared changed files, or a closing/superseded reference); the rest are joined by an automated relevance judgement over their text.
- Members outside that structural core may belong to a different underlying problem.
- Pairwise link density `0.39`: 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.

## Closed / duplicate issues

- #19195: \[Bug\]: Discord-cached PNG-as-.webp images cause HTTP 400 from Anthropic (media_type mismatch)
- #21049: \[Bug\]: Regression in #16506: Anthropic 400 invalid_request_error on Discord image attachments — media_type mismatched with actual bytes

## Prior & competing PRs

- **#19196: fix(image-routing): sniff magic bytes for image MIME, ignore misleading suffix**. closed without merge · fix tier `suggested`
  - maintainer direction: category `merged_via`; implication `superseded`; refs `101a77861`, `#21049`
  - _suggested-tier fix detail withheld; re-request with `?tier=all` to include it._
- **#21345: fix(discord): sniff image magic bytes so Anthropic vision accepts media_type**. closed without merge · fix tier `suggested`
  - maintainer direction: category `implemented_elsewhere`; implication `superseded`; refs `5cf703245bbce4b8cb34fbfb42571bfa50c4c00e`
  - _suggested-tier fix detail withheld; re-request with `?tier=all` to include it._

## Fix status

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