ToolAnnotations class
Additional properties describing a Tool to clients.
NOTE: all properties in ToolAnnotations are hints.
They are not guaranteed to provide a faithful description of
tool behavior (including descriptive properties like title
).
Clients should never make tool use decisions based on ToolAnnotations received from untrusted servers.
Constructors
- ToolAnnotations.new({required String title, bool readOnlyHint = false, bool destructiveHint = true, bool idempotentHint = false, bool openWorldHint = true})
-
const
-
ToolAnnotations.fromJson(Map<
String, dynamic> json) -
factory
Properties
- destructiveHint → bool
-
If true, the tool may perform destructive updates to its environment.
If false, the tool performs only additive updates.
(This property is meaningful only when
readOnlyHint == false
) default: truefinal - hashCode → int
-
The hash code for this object.
no setterinherited
- idempotentHint → bool
-
If true, calling the tool repeatedly with the same arguments
will have no additional effect on the its environment.
(This property is meaningful only when
readOnlyHint == false
) default: falsefinal - openWorldHint → bool
-
If true, this tool may interact with an "open world" of external
entities. If false, the tool's domain of interaction is closed.
For example, the world of a web search tool is open, whereas that
of a memory tool is not.
Default: true
final
- readOnlyHint → bool
-
If true, the tool does not modify its environment.
default: false
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- title → String
-
A human-readable title for the tool.
final
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toJson(
) → Map< String, dynamic> -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited