PtcRunner.Kernel.LLMCapability (PtcRunner v0.14.0)

Copy Markdown View Source

Constructs the provider-neutral llm-request workflow capability.

The supplied requester owns transport and credential handling. Requests and normalized JSON-like responses are independently bounded. Requesters may return a classified PtcRunner.Kernel.ProviderError; unclassified failures become retryable :unavailable errors. Invalid or oversized responses do not cross back into Lisp.

Dispatcher and adapter boundaries use the same closed public kind and reason vocabulary. HTTP and transport failures become ProviderError values (:timeout, :unavailable, :rate_limited, :transport_error, and the permanent request classes). Routed llm-request failures that occur after alias resolution also carry the public :model installation alias.

This adapter provides model access, not agent policy. Message construction, tool protocols, feedback, retries, and completion remain PTC-Lisp workflow concerns.

Summary

Functions

Constructs llm-request from a required one-argument :requester and optional positive :max_request_bytes and :max_response_bytes limits.

Functions

new(opts)

@spec new(keyword()) ::
  {:ok, PtcRunner.Kernel.Capability.t()} | {:error, :invalid_llm_capability}

Constructs llm-request from a required one-argument :requester and optional positive :max_request_bytes and :max_response_bytes limits.