Chatoyant - v0.2.1
    Preparing search index...

    Interface ToolDefinition<TArgs, TResult>

    Tool definition options.

    interface ToolDefinition<TArgs = unknown, TResult = unknown> {
        name: string;
        description: string;
        parameters: SchemaInstance | (new () => SchemaInstance);
        execute: (input: ToolInput<TArgs>) => Promise<TResult>;
        resultSchema?: SchemaInstance | (new () => SchemaInstance);
        timeout?: number;
    }

    Type Parameters

    • TArgs = unknown
    • TResult = unknown
    Index

    Properties

    name: string

    Unique tool name (function name for the LLM)

    description: string

    Description of what the tool does

    parameters: SchemaInstance | (new () => SchemaInstance)

    Parameter schema (Schema class instance or constructor)

    execute: (input: ToolInput<TArgs>) => Promise<TResult>

    Execute function. Receives validated args and context, returns result.

    resultSchema?: SchemaInstance | (new () => SchemaInstance)

    Optional result schema for validation.

    timeout?: number

    Timeout for this tool in milliseconds.

    10000