CliSubprocessCore.Tool.Response (CliSubprocessCore v0.2.0)

Copy Markdown View Source

Serializable tool response data normalized by the core.

Summary

Types

t()

@type t() :: %CliSubprocessCore.Tool.Response{
  content: CliSubprocessCore.Tool.json_value(),
  extra: map(),
  is_error: boolean(),
  provider_metadata: %{
    optional(String.t()) => CliSubprocessCore.Tool.json_value()
  },
  tool_call_id: String.t()
}

Functions

new(attrs \\ [])

@spec new(keyword() | map() | t()) :: t()

parse(response)

@spec parse(keyword() | map() | t()) ::
  {:ok, t()}
  | {:error,
     {:invalid_tool, module(), [CliSubprocessCore.Tool.validation_error()]}}

parse!(attrs)

@spec parse!(keyword() | map() | t()) :: t()

to_map(response)

@spec to_map(t()) :: map()