Skip to content

v0.4.15

Choose a tag to compare

@hiyouga hiyouga released this 14 Sep 13:17
· 84 commits to main since this release
Immutable release. Only release title and notes can be modified.
77748e4

AgentHub 0.4.15 keeps every function call of a parallel tool-call turn on the Responses clients, so a gateway that opens every call before closing any of them no longer costs the whole turn.

Highlights

  • The Responses clients keep every call of an interleaved parallel tool-call turn. openai_responses, gpt6, deepseek_v4 and minimax_m3 accumulated a response's function calls in a single slot, so a gateway that streams added(A), added(B), done(A), done(B) — Console Go does — lost every call but the last. The loss surfaced one request later: the assistant message replayed only the surviving call while both tool results were replayed, and the provider rejected the orphan with 400 … No function call found for function_call_output, discarding the turn. Every harness turn that ran two tools in parallel hit it. partial_tool_call items now carry an optional item_id that the stateless Responses transforms fill from the output item id, the streaming loop keys its open calls by it, and a server that sends no ids keeps the previous single-call behaviour (#218, by @paskaa).

Both the Python and TypeScript implementations changed the same way; the tool-call-arguments suites cover the interleaved order on every Responses client.

Install

pip install agenthub-python==0.4.15
npm install @prismshadow/agenthub@0.4.15

Full detail: changelog/0.4.15/README.md.