Readonly[Brand identifying this object as a BaseNode (see isBaseNode).
ReadonlydescriptionOptional ReadonlyinputOptional ReadonlyisolationReadonlynameOptional ReadonlyoutputOptional ReadonlypreparedThe retry config with its exception filter normalized once, up front (see prepareRetryConfig). Used by the node runner so the retry hot path never re-normalizes or throws on a malformed config mid-retry.
ReadonlyrerunOptional ReadonlyretryOptional ReadonlystateOptional ReadonlytimeoutReadonlytoolReadonlywaitWhether this node must wait for ALL of its predecessors to trigger before
it runs (fan-in barrier). Overridden by JoinNode.
Runs the node, normalizing every yielded item into an Event. This
is what the engine (and ctx.runNode()) consumes. Validates the input
against inputSchema once, up front (skipping genai Content, which nodes
coerce themselves).
ProtectedrunCore execution contract. Subclasses yield one of:
output is that value),null/undefined (skipped).ProtectedtoNormalizes a single yielded item into an Event (or null to skip).
Subclasses may override for richer coercion (e.g. FunctionNode).
ProtectedvalidateValidates node input against inputSchema (Content passes through). Only
enforced for Zod schemas; a genai Schema is left unvalidated (see
parseWithSchema).
ProtectedvalidateValidates node output against outputSchema (Content passes through). Only
enforced for Zod schemas; a genai Schema is left unvalidated (see
parseWithSchema).
A node that wraps an ADK BaseTool and invokes it with the node input as its arguments.
Ported from
google/adk-pythonworkflow/_tool_node.py. The node input is coerced to a tool-args object: genaiContent→ its text; a JSON string → parsed object;null/empty →{}.The tool runs through the canonical execution path (handleFunctionCallList), so the plugin
before/after/onErrortool callbacks, the confirmation gate, telemetry, and everything the tool writes to its context (stateDelta,artifactDelta, requested credentials / confirmations, …) all apply — exactly as when the same tool is called from an LLM agent. The emitted event carries a canonicalfunctionResponsepart.