pub struct Copilot { /* private fields */ }Implementations§
Trait Implementations§
Source§impl Agent for Copilot
impl Agent for Copilot
fn name(&self) -> &str
fn default_model() -> &'static str
Source§fn model_for_size(size: ModelSize) -> &'static str
fn model_for_size(size: ModelSize) -> &'static str
Get the model name for a given size category.
Source§fn available_models() -> &'static [&'static str]
fn available_models() -> &'static [&'static str]
Get the list of available models for this agent.
fn system_prompt(&self) -> &str
fn set_system_prompt(&mut self, prompt: String)
fn get_model(&self) -> &str
fn set_model(&mut self, model: String)
fn set_root(&mut self, root: String)
fn set_skip_permissions(&mut self, skip: bool)
fn set_output_format(&mut self, format: Option<String>)
Source§fn set_add_dirs(&mut self, dirs: Vec<String>)
fn set_add_dirs(&mut self, dirs: Vec<String>)
Set additional directories for the agent to include.
Source§fn set_env_vars(&mut self, vars: Vec<(String, String)>)
fn set_env_vars(&mut self, vars: Vec<(String, String)>)
Set environment variables to pass to the agent subprocess.
Source§fn set_capture_output(&mut self, capture: bool)
fn set_capture_output(&mut self, capture: bool)
Enable output capture mode. Read more
Source§fn set_sandbox(&mut self, config: SandboxConfig)
fn set_sandbox(&mut self, config: SandboxConfig)
Set sandbox configuration for running inside a Docker sandbox.
Source§fn set_max_turns(&mut self, turns: u32)
fn set_max_turns(&mut self, turns: u32)
Set the maximum number of agentic turns.
Source§fn as_any_ref(&self) -> &dyn Any
fn as_any_ref(&self) -> &dyn Any
Get a reference to the concrete agent type (for downcasting).
Source§fn as_any_mut(&mut self) -> &mut dyn Any
fn as_any_mut(&mut self) -> &mut dyn Any
Get a mutable reference to the concrete agent type (for downcasting).
Source§fn run<'life0, 'life1, 'async_trait>(
&'life0 self,
prompt: Option<&'life1 str>,
) -> Pin<Box<dyn Future<Output = Result<Option<AgentOutput>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn run<'life0, 'life1, 'async_trait>(
&'life0 self,
prompt: Option<&'life1 str>,
) -> Pin<Box<dyn Future<Output = Result<Option<AgentOutput>>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Run the agent in non-interactive mode. Read more
fn run_interactive<'life0, 'life1, 'async_trait>(
&'life0 self,
prompt: Option<&'life1 str>,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Source§fn run_resume<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: Option<&'life1 str>,
last: bool,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn run_resume<'life0, 'life1, 'async_trait>(
&'life0 self,
session_id: Option<&'life1 str>,
last: bool,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
Resume a previous session. Read more
fn cleanup<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Source§fn resolve_model(model_input: &str) -> Stringwhere
Self: Sized,
fn resolve_model(model_input: &str) -> Stringwhere
Self: Sized,
Resolve a model input (either a size alias or specific model name). Read more
Source§fn validate_model(model: &str, agent_name: &str) -> Result<()>where
Self: Sized,
fn validate_model(model: &str, agent_name: &str) -> Result<()>where
Self: Sized,
Validate that a model name is supported by this agent. Read more
Source§fn run_resume_with_prompt<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_session_id: &'life1 str,
_prompt: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Option<AgentOutput>>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn run_resume_with_prompt<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
_session_id: &'life1 str,
_prompt: &'life2 str,
) -> Pin<Box<dyn Future<Output = Result<Option<AgentOutput>>> + Send + 'async_trait>>where
Self: Sync + 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Resume a previous session with a new prompt (for retry/correction). Read more
Auto Trait Implementations§
impl Freeze for Copilot
impl RefUnwindSafe for Copilot
impl Send for Copilot
impl Sync for Copilot
impl Unpin for Copilot
impl UnsafeUnpin for Copilot
impl UnwindSafe for Copilot
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