pub struct InstallOptions {
pub agents: Vec<AgentSelector>,
pub scope: Option<Scope>,
pub dir: Option<PathBuf>,
pub force: bool,
pub dry_run: bool,
pub names: Vec<String>,
pub cancel: Option<Arc<AtomicBool>>,
}Expand description
The inputs shared by install, uninstall and list.
Every field has a default, so a caller names only what it means to change:
use skill_embed::{Agent, AgentSelector, InstallOptions, Scope};
let options = InstallOptions {
agents: vec![AgentSelector::from(&Agent::CLAUDE_CODE)],
scope: Some(Scope::User),
..InstallOptions::default()
};Fields§
§agents: Vec<AgentSelector>Selects the destinations. Empty means the installer default.
scope: Option<Scope>None means the installer default.
dir: Option<PathBuf>Installs into this directory, overriding agents and scope.
force: boolOverwrites skills that were edited, or that something else installed.
dry_run: boolReports what would happen without touching the file system.
names: Vec<String>Selects skills by name. Empty means every embedded skill.
cancel: Option<Arc<AtomicBool>>Stops the run between skills once it is set.
A single skill is written whole or not at all, so the flag is read between them rather than during one.
Trait Implementations§
Source§impl Clone for InstallOptions
impl Clone for InstallOptions
Source§impl Debug for InstallOptions
impl Debug for InstallOptions
Auto Trait Implementations§
impl Freeze for InstallOptions
impl RefUnwindSafe for InstallOptions
impl Send for InstallOptions
impl Sync for InstallOptions
impl Unpin for InstallOptions
impl UnsafeUnpin for InstallOptions
impl UnwindSafe for InstallOptions
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