Skip to content

RegistrableServerTool

Defined in: packages/engine/src/lib/agent-session/tool-registry.ts:16

A Server Tool with its input and output types erased so tools of different types share one list.

readonly approval: "never"

Defined in: packages/engine/src/lib/agent-session/tool-registry.ts:30

Whether a call needs user approval before it runs.


readonly description: string

Defined in: packages/engine/src/lib/agent-session/tool-registry.ts:20

Description shown to the model.


readonly input: ZodType<unknown>

Defined in: packages/engine/src/lib/agent-session/tool-registry.ts:22

Schema the model’s arguments are validated against.


readonly locus: "server"

Defined in: packages/engine/src/lib/agent-session/tool-registry.ts:26

Where the tool runs.


readonly name: string

Defined in: packages/engine/src/lib/agent-session/tool-registry.ts:18

Name the model calls the tool by. Must match ^[A-Za-z0-9_-]{1,64}$.


readonly output: ZodType<unknown>

Defined in: packages/engine/src/lib/agent-session/tool-registry.ts:24

Schema the tool’s result is validated against.


readonly sideEffect: "idempotent" | "read_only" | "non_idempotent"

Defined in: packages/engine/src/lib/agent-session/tool-registry.ts:28

How the tool affects the world.

execute(input, ctx): Promise<unknown>

Defined in: packages/engine/src/lib/agent-session/tool-registry.ts:32

Runs the tool with validated input.

never

ServerToolContext

Promise<unknown>


summarize(output): string

Defined in: packages/engine/src/lib/agent-session/tool-registry.ts:34

Pure, synchronous, user-safe one-line description of a result.

never

string