Fix parsing of JSON-stringified tool_call batch envelopes

NousResearch/hermes-agent · cluster 114484

Data as of

Nothing open on GitHub. Fix merged in #114775. Check it covers your case.

The short answer

0open issues
0open PRs
5items grouped
Known?
Yes. 5 related items grouped here, 1 issue already closed.
Fix event
A fix was merged to main in PR #114775. Check it covers your case. No release data is tracked.
Tracker
The maintainers' tracker marks this resolved, deciding PR #114775. That is separate from the fix event.
Still open
Nothing open on GitHub.

These issues and pull requests all address the same bug: when a model emits a tool_call batch envelope as a JSON string rather than a parsed array, it is incorrectly rejected with a misleading error, leading to tool-call loops. The members focus on parsing that stringified envelope correctly.

Open issues0

No open issues.

Open PRs0

No open pull requests.

Fixes on record

Merged to main. A stamp counts the issues a fix is linked to.

  • #114775 fix(tools): tool_call parses a JSON-string calls envelope and its rejections restate the valid single-entry shape (#114484, #114646, salvage #114486)

    merged to main

    files: contributors/emails/[redacted:email], tests/tools/test_connector_bridge_wiring.py, tests/tools/test_connector_local_batches.py, tests/tools/test_tool_search.py, tests/tools/test_tool_search_multiquery.py, tools/connectors/dispatch.py, tools/tool_search.py, tools/tool_search_validation.py, website/docs/user-guide/features/tool-search.md

3 PRs closed without merging

From the close comments: duplicate 1 · merged via another change 1 · superseded by another PR 1

  • #114486 fix(tools): parse JSON-string tool_call batch envelopes · merged via another change → 91279b0, #114775, #114484, #114646, #114486
  • #114487 fix(tools): parse a JSON-stringified tool_call batch envelope · duplicate → #114486
  • #114488 fix(tools): parse the tool_call batch envelope emitted as a JSON string · superseded by another PR → 91279b0, #114775, #114484, #114646, #114486
Closed issues · 1
  • Closed#114484tool_call bridge: batch envelope emitted as JSON string by model is rejected with misleading "non-empty array" error, causing tool-call loops
How this cluster was grouped
  • Link evidence (structural links throughout): every member is connected by structural evidence: shared changed files, or a closing/superseded reference.
  • Pairwise link density 0.40: the share of item 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.

Pick up a Lab task

Check whether a fix covers the open issues here, with your own agent. Bring back evidence for maintainers.

Open the Lab

At a glance

Merged PRs
#114775
Closed issues
1
Attempts
3 PRs closed without merging
Fix link checked
18 Sep 2026

For your agent

The same facts, typed.