Proactive and reactive agents and tool calls
A technical walkthrough of Reactive / Proactive Agent and the conversational contract it encapsulates: immediate response, asynchronous work, and deferred completion.
Links containing ?t= open the video at a specific second.
The ideas to retain
The problem is not the tool, but time
In a classic chatbot, tools break the normal conversational flow when the tool involves calling an external API. If the agent waits for the API, the chat remains blocked because the tool…
The first turn accepts work; it does not promise results
The central function is still ConversationRuntime.handleuserturn(). Its responsibility is not to resolve the external operation, but to decide what the agent can say in the current turn…
Asynchronous work needs policy, not only background execution
Moving HTTP work to a thread or an event loop does not solve the problem by itself. What matters is what happens with attempts, retries, and completion. BackgroundTaskRunner runs each…


