pub enum AgentKind {
AcpProcess {
binary: String,
args: Vec<String>,
},
Ollama {
base_url: String,
model: String,
api_key_env: Option<String>,
},
LlamaCpp {
base_url: String,
model: String,
api_key_env: Option<String>,
},
Mlx {
base_url: String,
model: String,
api_key_env: Option<String>,
},
WasmPlugin {
module_path: String,
},
BuiltIn,
}Expand description
How the agent runs.
Variants§
AcpProcess
An ACP-compatible process (Claude Code, Gemini CLI, etc.) Communicates via JSON-RPC over stdio.
Ollama
LLM backend driven by Ollama — same API for local (localhost:11434) and cloud (ollama.com Turbo/Pro). Only differs in base_url + auth.
Fields
LlamaCpp
llama.cpp llama-server with OpenAI-compatible /v1/chat/completions endpoint.
Requires the server to be started with --jinja for reliable tool calling.
Fields
Mlx
Apple MLX mlx_lm.server with OpenAI-compatible /v1/chat/completions endpoint. Requires mlx-lm >= 0.19 for tool calling support.
WasmPlugin
A WASM component plugin (post-MVP).
BuiltIn
Built-in agent (system-level operations).
Trait Implementations§
Source§impl<'de> Deserialize<'de> for AgentKind
impl<'de> Deserialize<'de> for AgentKind
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
impl Eq for AgentKind
impl StructuralPartialEq for AgentKind
Auto Trait Implementations§
impl Freeze for AgentKind
impl RefUnwindSafe for AgentKind
impl Send for AgentKind
impl Sync for AgentKind
impl Unpin for AgentKind
impl UnsafeUnpin for AgentKind
impl UnwindSafe for AgentKind
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