An LlmProvider that can surface user-in-the-loop tool approvals.
When a run stops because the agent needs permission to execute a tool, pendingToolApproval becomes non-null. The chat UI presents the request and resumes the run by streaming sendToolApprovalStream with the user's decision.
- Implemented types
- Implementers
Properties
- hashCode → int
-
The hash code for this object.
no setterinherited
-
history
↔ Iterable<
ChatMessage> -
Returns an iterable of ChatMessage objects representing the chat
history.
getter/setter pairinherited
- pendingToolApproval → ToolApprovalRequest?
-
The unresolved approval request, if the last run stopped on one.
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
addListener(
VoidCallback listener) → void -
Register a closure to be called when the object notifies its listeners.
inherited
-
generateStream(
String prompt, {Iterable< Attachment> attachments}) → Stream<String> -
Generates a stream of text based on the given prompt and attachments.
This method does not interact with a chat or build on any chat history.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
removeListener(
VoidCallback listener) → void -
Remove a previously registered closure from the list of closures that the
object notifies.
inherited
-
sendMessageStream(
String prompt, {Iterable< Attachment> attachments}) → Stream<String> -
Generates a stream of text based on the given prompt and attachments.
Interacts with a chat and builds on the history of the chat associated
with the provider.
inherited
-
sendToolApprovalStream(
ToolApprovalDecision decision) → Stream< String> -
Answers pendingToolApproval with
decisionand resumes the run, streaming the continuation of the response text. -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited