pub struct ProfileDefinition {
pub name: String,
pub description: String,
pub tools: Vec<String>,
pub arguments: Vec<ProfileArgument>,
pub script_path: PathBuf,
pub script_source: String,
pub config: Table,
pub timeout: u64,
}Expand description
Metadata extracted from a loaded Lua profile script.
Created at startup by load_profile_definitions. Contains everything
needed to register the profile and resolve its prompt when called.
Fields§
§name: StringProfile identifier (matches the config key in [profiles.script.<name>]).
description: StringOne-line description for profile discovery.
tools: Vec<String>Tools this profile uses.
arguments: Vec<ProfileArgument>Arguments the profile accepts.
script_path: PathBufPath to the .lua script file.
script_source: StringRaw Lua source code (cached to avoid re-reading on every call).
config: TableProfile-specific config keys from ctx.toml.
timeout: u64Maximum execution time in seconds.
Trait Implementations§
Source§impl Clone for ProfileDefinition
impl Clone for ProfileDefinition
Source§fn clone(&self) -> ProfileDefinition
fn clone(&self) -> ProfileDefinition
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ProfileDefinition
impl RefUnwindSafe for ProfileDefinition
impl Send for ProfileDefinition
impl Sync for ProfileDefinition
impl Unpin for ProfileDefinition
impl UnsafeUnpin for ProfileDefinition
impl UnwindSafe for ProfileDefinition
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
impl<A, B, T> HttpServerConnExec<A, B> for Twhere
B: Body,
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> 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