Skip to main content

Interface: ToolEntry\<S\>

Interface: ToolEntry<S>

Single-tool entry for a plugin's internal tool registry.

Plugins collect these into a Record<string, ToolEntry> keyed by the tool's public name and dispatch via executeFromRegistry.

Type Parameters

Type ParameterDefault type
S extends z.ZodTypez.ZodType

Properties

annotations?

optional annotations: ToolAnnotations;

autoInheritable?

optional autoInheritable: boolean;

Whether this tool is eligible for auto-inheritance into markdown or code-defined agents that enable autoInheritTools. Defaults to false (safe-by-default) — plugin authors must explicitly opt a tool in if they consider it safe enough to appear in every agent's tool record without an explicit tools: declaration. Destructive or privilege-sensitive tools should leave this unset so that they only reach agents that wire them explicitly (via tools: object/function form, markdown plugin:NAME entries in the unified tools: list, or plugins.<name>.toolkit({ only: [...] })).


description

description: string;

execute()

execute: (args: output<S>, signal?: AbortSignal) => unknown;

Callback the agents plugin invokes after Zod validation succeeds.

Named execute to match the public tool({ execute }) form — both the agent-author surface and the plugin-author surface now spell their callback the same way. args is the inferred Zod output (so T extends z.ZodType flows through and args is fully typed). signal is the per-run AbortSignal: forward it to any awaited I/O so cancellation actually unwinds the call (analytics and lakebase both do this).

Parameters

ParameterType
argsoutput<S>
signal?AbortSignal

Returns

unknown


schema

schema: S;

Databricks Developer Hub

Ready to ship your next agentic app in minutes?

Read docs