ACPex.Schema.Types.SessionUpdate.ToolCall (ACPex v0.1.1)

Copy Markdown View Source

Tool call update.

Notification of a new tool call being initiated.

Required Fields

  • type - Always "tool_call" for this variant
  • session_update - Update identifier
  • tool_call_id - Unique identifier for this tool call
  • title - Human-readable title for the tool call

Optional Fields

  • status - Current status of the tool call (string)
  • kind - Kind of tool (string)
  • content - Tool call content blocks (list of maps)
  • raw_input - Raw input parameters (map)
  • raw_output - Raw output data (map)
  • locations - File locations related to this tool call (list of maps)
  • meta - Additional metadata (map)

Example

%ACPex.Schema.Types.SessionUpdate.ToolCall{
  type: "tool_call",
  session_update: "update-123",
  tool_call_id: "tool-456",
  title: "Read File",
  status: "running",
  kind: "fs_read",
  content: [%{"type" => "text", "text" => "Reading file..."}]
}

JSON Representation

{
  "type": "tool_call",
  "sessionUpdate": "update-123",
  "toolCallId": "tool-456",
  "title": "Read File",
  "status": "running",
  "kind": "fs_read",
  "content": [{"type": "text", "text": "Reading file..."}]
}

Summary

Functions

Creates a changeset for validation.

Types

t()

@type t() :: %ACPex.Schema.Types.SessionUpdate.ToolCall{
  content: [map()] | nil,
  kind: String.t() | nil,
  locations: [map()] | nil,
  meta: map() | nil,
  raw_input: map() | nil,
  raw_output: map() | nil,
  session_update: String.t(),
  status: String.t() | nil,
  title: String.t(),
  tool_call_id: String.t(),
  type: String.t()
}

Functions

changeset(struct \\ %__MODULE__{}, params)

@spec changeset(t(), map()) :: Ecto.Changeset.t()

Creates a changeset for validation.

Required Fields

  • session_update - Must be present
  • tool_call_id - Must be present
  • title - Must be present

The type field defaults to "tool_call".