Create a Python file
confirmation_required_toolkit.py
from agno.agent import Agent
from agno.db.sqlite import SqliteDb
from agno.models.openai import OpenAIResponses
from agno.tools.yfinance import YFinanceTools
from agno.utils import pprint
from rich.console import Console
from rich.prompt import Prompt
console = Console()
agent = Agent(
model=OpenAIResponses(id="gpt-5.2"),
tools=[YFinanceTools(requires_confirmation_tools=["get_stock_price"])],
markdown=True,
db=SqliteDb(db_file="tmp/example.db"),
)
run_response = agent.run("What is the current stock price of Apple?")
if run_response.is_paused: # Or agent.run_response.is_paused
for requirement in run_response.active_requirements:
if requirement.needs_confirmation:
# Ask for confirmation
console.print(
f"Tool name [bold blue]{requirement.tool_execution.tool_name}({requirement.tool_execution.tool_args})[/] requires confirmation."
)
message = (
Prompt.ask("Do you want to continue?", choices=["y", "n"], default="y")
.strip()
.lower()
)
if message == "n":
requirement.reject()
else:
requirement.confirm()
run_response = agent.continue_run(
run_id=run_response.run_id,
requirements=run_response.requirements,
)
pprint.pprint_run_response(run_response)