= callback_manager.on_chain_start(        129     {"name": self.__class__.__name__},        130     inputs,        131 )        132 try:        133     outputs = (    --> 134         self._call(inputs, run_manager=run_manager)        135         if new_arg_supported        136         else self._call(inputs)        137     )        138 except (KeyboardInterrupt, Exception) as e:        139     run_manager.on_chain_error(e)    File ~/langchain/langchain/agents/agent.py:953, in AgentExecutor._call(self, inputs, run_manager)        951 # We now enter the agent loop (until it returns something).        952 while self._should_continue(iterations, time_elapsed):    --> 953     next_step_output = self._take_next_step(        954         name_to_tool_map,        955         color_mapping,        956         inputs,        957         intermediate_steps,        958         run_manager=run_manager,        959     )        960     if isinstance(next_step_output, AgentFinish):        961         return self._return(        962             next_step_output, intermediate_steps, run_manager=run_manager        963         )    File ~/langchain/langchain/agents/agent.py:820, in AgentExecutor._take_next_step(self, name_to_tool_map, color_mapping, inputs, intermediate_steps, run_manager)        818         tool_run_kwargs["llm_prefix"] = ""        819     # We then call the tool on the tool input to get an observation    --> 820     observation = tool.run(        821         agent_action.tool_input,        822         verbose=self.verbose,        823         color=color,        824         callbacks=run_manager.get_child() if run_manager else None,        825         **tool_run_kwargs,        826     )        827 else:        828     tool_run_kwargs = self.agent.tool_run_logging_kwargs()    File ~/langchain/langchain/tools/base.py:257, in BaseTool.run(self, tool_input, verbose, start_color, color, callbacks, **kwargs)        255 # TODO: maybe also pass through run_manager is _run
This walkthrough demonstrates how to add human validation to any Tool. We'll do this using the HumanApprovalCallbackhandler.
This walkthrough demonstrates how to add human validation to any Tool. We'll do this using the HumanApprovalCallbackhandler. ->: = callback_manager.on_chain_start(        129     {"name": self.__class__.__name__},        130     inputs,        131 )        132 try:        133     outputs = (    --> 134         self._call(inputs, run_manager=run_manager)        135         if new_arg_supported        136         else self._call(inputs)        137     )        138 except (KeyboardInterrupt, Exception) as e:        139     run_manager.on_chain_error(e)    File ~/langchain/langchain/agents/agent.py:953, in AgentExecutor._call(self, inputs, run_manager)        951 # We now enter the agent loop (until it returns something).        952 while self._should_continue(iterations, time_elapsed):    --> 953     next_step_output = self._take_next_step(        954         name_to_tool_map,        955         color_mapping,        956         inputs,        957         intermediate_steps,        958         run_manager=run_manager,        959     )        960     if isinstance(next_step_output, AgentFinish):        961         return self._return(        962             next_step_output, intermediate_steps, run_manager=run_manager        963         )    File ~/langchain/langchain/agents/agent.py:820, in AgentExecutor._take_next_step(self, name_to_tool_map, color_mapping, inputs, intermediate_steps, run_manager)        818         tool_run_kwargs["llm_prefix"] = ""        819     # We then call the tool on the tool input to get an observation    --> 820     observation = tool.run(        821         agent_action.tool_input,        822         verbose=self.verbose,        823         color=color,        824         callbacks=run_manager.get_child() if run_manager else None,        825         **tool_run_kwargs,        826     )        827 else:        828     tool_run_kwargs = self.agent.tool_run_logging_kwargs()    File ~/langchain/langchain/tools/base.py:257, in BaseTool.run(self, tool_input, verbose, start_color, color, callbacks, **kwargs)        255 # TODO: maybe also pass through run_manager is _run