pub enum ProviderType {
OpenAiCompatible,
Anthropic,
Cursor,
ClaudeCode,
CodexCli,
CodexAuth,
Google,
GithubCopilot,
}Expand description
Which wire protocol the provider speaks.
Variants§
OpenAiCompatible
OpenAI-compatible REST API (OpenAI, OpenRouter, Ollama, vLLM, etc.)
Anthropic
Anthropic Messages API — different auth headers and request format.
Cursor
Cursor — spawns cursor-agent CLI subprocess instead of HTTP proxying.
ClaudeCode
Claude Code — spawns claude CLI subprocess in print mode.
CodexCli
Codex CLI — spawns codex CLI subprocess in exec mode.
CodexAuth
OpenAI Codex Responses API — direct HTTP with OAuth/bearer token auth.
Google Generative AI (Gemini) — native generateContent API with query-param auth.
GithubCopilot
GitHub Copilot — token exchange flow + OpenAI-compatible wire format.
Trait Implementations§
Source§impl Clone for ProviderType
impl Clone for ProviderType
Source§fn clone(&self) -> ProviderType
fn clone(&self) -> ProviderType
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for ProviderType
impl Debug for ProviderType
Source§impl Default for ProviderType
impl Default for ProviderType
Source§fn default() -> ProviderType
fn default() -> ProviderType
Returns the “default value” for a type. Read more
Source§impl<'de> Deserialize<'de> for ProviderType
impl<'de> Deserialize<'de> for ProviderType
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for ProviderType
impl PartialEq for ProviderType
Source§impl Serialize for ProviderType
impl Serialize for ProviderType
impl Eq for ProviderType
impl StructuralPartialEq for ProviderType
Auto Trait Implementations§
impl Freeze for ProviderType
impl RefUnwindSafe for ProviderType
impl Send for ProviderType
impl Sync for ProviderType
impl Unpin for ProviderType
impl UnsafeUnpin for ProviderType
impl UnwindSafe for ProviderType
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.