Requires_confirmation

Problem: LLM Response Missing First Tool Results When using the requires_confirmation

The Real Issue

User makes ONE request with two tools:

  • Tool 1 (get_users): NO confirmation needed

  • Tool 2 (send_email): NEEDS confirmation

What Happens Now (WRONG)

Timeline:

  1. Tool 1 runs: get_users() → returns 50 users ✓

  2. LLM is called with Tool 1 results

  3. LLM generates response about Tool 1

  4. Response shown to user

  5. User sees confirmation dialog for Tool 2

  6. User clicks “Continue”

  7. Tool 2 runs: send_email() → returns result

  8. PROBLEM: LLM response from step 2-3 already sent

  9. Tool 1 results NOT included in final response shown to user

Example

User says: “Get all users info and send email to aboobacker.ka@naicoits.com

Steps:

  • Tool 1 executes: get_users() ✓ (50 users fetched)

  • LLM called early (before Tool 2 confirmation)

  • Response shown: “I retrieved 50 users”

  • Then: “Do you approve sending email?”

  • User clicks: “Continue”

  • Tool 2 executes: send_email() ✗ (SMTP failed)

  • Result: User sees email failure message, but original “50 users retrieved” response is gone/hidden

The Problem

The LLM response from Tool 1 is shown to the user BEFORE Tool 2 is even confirmed.

When Tool 2 completes, a new response is generated that ONLY talks about Tool 2.

The user no longer sees the Tool 1 information in the final response.

Hi @Aboobacker, thank you for reaching out and supporting Agno. I’ve shared this with the team, we’re working through all queries one by one and will get back to you soon. If it’s urgent, please let us know. We appreciate your patience!

Hi @Aboobacker . Can you please share your agent config so that i can replicate this issue on my end ?

This is issue wasn’t consistent i was a having two tools one get users and the other send email and for the send email there was the require confirmation and as it is a product level stuff i wanna know it all scenario i just ask the agent to call both the function and in 5 out 10 times the after the result of the 1st tool llm call was initiated and after my confirmation the send email was executed but the last result only include the result of ths send email but in the debug mode i could see the get userfucntion succesfully get 50 users data . i cant share the whole system

        agent = Agent(

            id=agent_id,

            name=agent_name,

            model=OpenAIChat(

                id=agent_model,

                api_key=self.api_key,

                session_id=session_id,

                agent_id=agent_id,

                r_id=r_id,

            ),

            tools=tools,

            system_message=final_instructions,

            description=agent_description,

            markdown=not audio,

            memory_manager=self.memory_manager,

            db=self.db,

            enable_user_memories=True,

            enable_agentic_memory=True,

            session_id=session_id,

            add_history_to_context=True,

            cache_session=True,

            \# num_history_runs=3,

            debug_mode=True,

            \# show_tool_calls=False,

            add_datetime_to_context=True,

            knowledge=kb,

            search_knowledge=True,

            user_id=user_id,

            \# Use the pre-loaded knowledge base

        )







                    async for continued_response in agent.acontinue_run(

                        run_id=run_id,

                        updated_tools=converted_tools,

                        stream=True,

                    ):

Hey @Aboobacker, thanks for reporting this. We will investigate and come up with an answer or solution as soon as possible!