What
The recently added assistant.tool_call_delta provides access to incremental tool call deltas. For recent OpenAI models (e.g. GPT 5.5), it works as expected to send deltas smoothly as they are generated. However, for Anthropic models (e.g. Claude Opus 4.8), the deltas arrive as a burst because Claude buffers them. Anthropic provided the eager_input_streaming flag for the expected behavior: https://platform.claude.com/docs/en/agents-and-tools/tool-use/fine-grained-tool-streaming#how-to-use-fine-grained-tool-streaming. But the SDK hasn't exposed this option yet.
Proposed Usage Example
defineTool("my_tool", {
description,
parameters,
handler,
eagerInputStreaming: true, // or a different name
});
Why
Responsiveness: for tools capable of handling partial arguments, this improves responsiveness when the whole response might take many seconds - sometimes minutes - to generate.
What
The recently added
assistant.tool_call_deltaprovides access to incremental tool call deltas. For recent OpenAI models (e.g. GPT 5.5), it works as expected to send deltas smoothly as they are generated. However, for Anthropic models (e.g. Claude Opus 4.8), the deltas arrive as a burst because Claude buffers them. Anthropic provided theeager_input_streamingflag for the expected behavior: https://platform.claude.com/docs/en/agents-and-tools/tool-use/fine-grained-tool-streaming#how-to-use-fine-grained-tool-streaming. But the SDK hasn't exposed this option yet.Proposed Usage Example
Why
Responsiveness: for tools capable of handling partial arguments, this improves responsiveness when the whole response might take many seconds - sometimes minutes - to generate.