ACP v2 TypeScript SDK — EXPERIMENTAL DRAFT - v1.3.0
    Preparing search index...

    Type Alias ToolCallUpdateExperimental

    Represents an upsert for a tool call that the language model has requested.

    Tool calls are actions that the agent executes on behalf of the language model, such as reading files, executing code, or fetching data from external sources.

    Only [ToolCallUpdate::tool_call_id] is required. Other fields have patch semantics: omitted fields leave the existing tool call value unchanged, null clears or unsets the value, and concrete values replace the previous value. For collection fields, concrete arrays replace the previous collection, and both null and [] clear the collection. When a client receives a tool call ID it has not seen before, omitted fields use client defaults.

    See protocol docs: Tool Calls

    type ToolCallUpdate = {
        toolCallId: ToolCallId;
        name?: string | null;
        title?: string | null;
        kind?: ToolKind | null;
        status?: ToolCallStatus | null;
        content?: ToolCallContent[] | null;
        locations?: ToolCallLocation[] | null;
        rawInput?: unknown;
        rawOutput?: unknown;
        _meta?: { [key: string]: unknown } | null;
    }
    Index
    toolCallId: ToolCallId

    Unique identifier for this tool call within the session.

    name?: string | null

    UNSTABLE

    This capability is not part of the spec yet, and may be removed or changed at any point.

    Programmatic name of the tool being invoked.

    This field is optional and has patch semantics. Omission means no change, null clears the name, and a string replaces it. For a tool call ID the client has not seen before, omission or null means that no tool name is available.

    title?: string | null

    Human-readable title describing what the tool is doing.

    kind?: ToolKind | null

    The category of tool being invoked. Helps clients choose appropriate icons and UI treatment.

    status?: ToolCallStatus | null

    Current execution status of the tool call.

    content?: ToolCallContent[] | null

    Content produced by the tool call.

    locations?: ToolCallLocation[] | null

    File locations affected by this tool call. Enables "follow-along" features in clients.

    rawInput?: unknown

    Raw input parameters sent to the tool.

    rawOutput?: unknown

    Raw output returned by the tool.

    _meta?: { [key: string]: unknown } | null

    The _meta property is reserved by ACP to allow clients and agents to attach additional metadata to their interactions. Omitted means no metadata update; null is an explicit clear signal. Implementations MUST NOT make assumptions about values at these keys.

    See protocol docs: Extensibility