use crate::stream::AssistantMessageEventStream;
use crate::types::*;
define_openai_delegation_provider! {
name: XAIProvider,
doc: "xAI provider (OpenAI-compatible, Grok models).",
provider_type: Provider::XAI,
env_var: "XAI_API_KEY",
default_compat: || OpenAICompletionsCompat {
capabilities: CompatCapabilities {
supports_store: false,
supports_developer_role: false,
supports_reasoning_effort: false,
..Default::default()
},
thinking: CompatThinking {
format: "openai".to_string(),
..Default::default()
},
..Default::default()
},
}