RequestInputTool
Built-in long-running tool that asks the user a question and pauses the invocation until they respond.
The tool defers (returns Unit), so the framework marks the call long-running and pauses until the caller injects a matching FunctionResponse; the tool is not re-run on resume. The call name adk_request_input matches Python ADK's request_input for cross-language interop.
Properties
The custom metadata of the tool.
The description of the tool.
Whether the tool's final result will be delivered out-of-band. When true, the framework marks the call as long-running and uses the tool's return value as the function-response payload. Returning Unit means "no response yet": the FR event is suppressed so the function-call event (which carries the call id in longRunningToolIds and is thus the turn's final response) ends the turn without re-invoking the model. A non-Unit return -- including an explicit empty Map -- is treated as a real response and emitted. (Unit suppression aligns with Python; Java instead always emits {}.) The longRunningToolIds id also drives the resumable-mode pause gate so the invocation can be resumed later via a user-injected function-response.