pub struct UniversalAdapter;Expand description
Universal fallback agent using .agents/skills/ convention.
Trait Implementations§
Source§impl AgentAdapter for UniversalAdapter
impl AgentAdapter for UniversalAdapter
Source§fn display_name(&self) -> &str
fn display_name(&self) -> &str
Display name (e.g., “Claude Code”).
Source§fn detect<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = DetectResult> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn detect<'life0, 'async_trait>(
&'life0 self,
) -> Pin<Box<dyn Future<Output = DetectResult> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Detect if this agent is available on the system.
Source§fn lifecycle_mode(&self) -> LifecycleMode
fn lifecycle_mode(&self) -> LifecycleMode
How this agent’s lifecycle is managed.
Source§fn supports_initial_prompt(&self) -> bool
fn supports_initial_prompt(&self) -> bool
Whether this agent supports receiving an initial prompt.
Source§fn supports_yolo(&self) -> bool
fn supports_yolo(&self) -> bool
Whether this agent supports YOLO (auto-approve) mode.
Source§fn inject_path(&self, skill_name: &str, scope: &Scope) -> PathBuf
fn inject_path(&self, skill_name: &str, scope: &Scope) -> PathBuf
Path where skill files should be injected.
Source§fn launch<'life0, 'async_trait>(
&'life0 self,
config: LaunchConfig,
) -> Pin<Box<dyn Future<Output = Result<SessionHandle>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn launch<'life0, 'async_trait>(
&'life0 self,
config: LaunchConfig,
) -> Pin<Box<dyn Future<Output = Result<SessionHandle>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
Launch the agent with the given configuration.
Source§fn prepare_injection(
&self,
_skill_name: &str,
source_dir: &Path,
target_dir: &Path,
) -> Result<Vec<InjectedRecord>>
fn prepare_injection( &self, _skill_name: &str, source_dir: &Path, target_dir: &Path, ) -> Result<Vec<InjectedRecord>>
Prepare skill for injection. Default: raw file copy (works for most agents).
Override for agents that need aggregate file append (e.g., Goose → .goosehints).
Source§fn skill_invocation_prefix(&self, skill_name: &str) -> Option<String>
fn skill_invocation_prefix(&self, skill_name: &str) -> Option<String>
Skill invocation prefix for this agent (e.g., “/name” for Claude Code, “$name” for Codex).
Returns None if the agent embeds skills differently (aggregate files, –read flags).
Default: “/skill-name” (Agent Skills standard).
Source§fn on_cleanup(&self) -> Result<()>
fn on_cleanup(&self) -> Result<()>
Optional cleanup when session ends.
Auto Trait Implementations§
impl Freeze for UniversalAdapter
impl RefUnwindSafe for UniversalAdapter
impl Send for UniversalAdapter
impl Sync for UniversalAdapter
impl Unpin for UniversalAdapter
impl UnsafeUnpin for UniversalAdapter
impl UnwindSafe for UniversalAdapter
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> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more