pub struct EndpointConfig {
pub endpoint_type: EndpointType,
pub url: Option<String>,
pub model: Option<String>,
pub api_key: Option<String>,
pub headers: HashMap<String, String>,
pub pricing: Option<PricingConfig>,
pub default_for: Vec<String>,
pub command: Option<String>,
pub args: Vec<String>,
pub vision: bool,
pub max_attempts: Option<u32>,
pub fallbacks: Vec<String>,
}Expand description
A named endpoint definition with pricing.
Fields§
§endpoint_type: EndpointTypeEndpoint type: llm, mcp, or a2a.
url: Option<String>Base URL for the endpoint.
model: Option<String>Model name (LLM endpoints only).
api_key: Option<String>API key / bearer token.
headers: HashMap<String, String>Custom HTTP headers as JSON key-value pairs.
pricing: Option<PricingConfig>Pricing configuration.
default_for: Vec<String>Task types this endpoint serves by default
(e.g. ["targeting", "assertion"]).
command: Option<String>Command to launch an MCP server subprocess (stdio transport).
args: Vec<String>Arguments for the MCP server command.
vision: boolWhether this LLM endpoint accepts image parts (vision) in addition
to text. assert steps with screenshot = true require a vision
endpoint.
max_attempts: Option<u32>How often a single chat completion against this endpoint is retried
on transient failures (HTTP 429/5xx, empty 200 bodies, network
errors) before the fallback chain is tried. Default: 3 (override
globally with HARNESS_LLM_CALL_ATTEMPTS).
fallbacks: Vec<String>Ordered names of other endpoints to try when this endpoint exhausts its attempts. Only LLM endpoints are eligible. Useful for pairing a cheap primary model with a more powerful/expensive fallback.
Trait Implementations§
Source§impl Clone for EndpointConfig
impl Clone for EndpointConfig
Source§fn clone(&self) -> EndpointConfig
fn clone(&self) -> EndpointConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more