pub struct LifecycleHooksConfig {
pub quiet_success_output: bool,
pub session_start: Vec<HookGroupConfig>,
pub session_end: Vec<HookGroupConfig>,
pub user_prompt_submit: Vec<HookGroupConfig>,
pub pre_tool_use: Vec<HookGroupConfig>,
pub post_tool_use: Vec<HookGroupConfig>,
pub pre_compact: Vec<HookGroupConfig>,
pub task_completion: Vec<HookGroupConfig>,
pub task_completed: Vec<HookGroupConfig>,
pub notification: Vec<HookGroupConfig>,
}Expand description
Configuration for hooks triggered during distinct agent lifecycle events. Each event supports a list of groups with optional matchers.
Fields§
§quiet_success_output: boolSuppress plain stdout from successful hooks unless they emit structured fields
session_start: Vec<HookGroupConfig>Commands to run immediately when an agent session begins
session_end: Vec<HookGroupConfig>Commands to run when an agent session ends
user_prompt_submit: Vec<HookGroupConfig>Commands to run when the user submits a prompt (pre-processing)
pre_tool_use: Vec<HookGroupConfig>Commands to run immediately before a tool is executed
post_tool_use: Vec<HookGroupConfig>Commands to run immediately after a tool returns its output
pre_compact: Vec<HookGroupConfig>Commands to run immediately before VT Code compacts conversation history
task_completion: Vec<HookGroupConfig>Commands to run when the agent indicates task completion (pre-exit)
task_completed: Vec<HookGroupConfig>Commands to run after a task is finalized and session is closed
notification: Vec<HookGroupConfig>Commands to run when VT Code emits a runtime notification event
Implementations§
Trait Implementations§
Source§impl Clone for LifecycleHooksConfig
impl Clone for LifecycleHooksConfig
Source§fn clone(&self) -> LifecycleHooksConfig
fn clone(&self) -> LifecycleHooksConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for LifecycleHooksConfig
impl Debug for LifecycleHooksConfig
Source§impl Default for LifecycleHooksConfig
impl Default for LifecycleHooksConfig
Source§fn default() -> LifecycleHooksConfig
fn default() -> LifecycleHooksConfig
Source§impl<'de> Deserialize<'de> for LifecycleHooksConfig
impl<'de> Deserialize<'de> for LifecycleHooksConfig
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>,
Source§impl JsonSchema for LifecycleHooksConfig
impl JsonSchema for LifecycleHooksConfig
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreAuto Trait Implementations§
impl Freeze for LifecycleHooksConfig
impl RefUnwindSafe for LifecycleHooksConfig
impl Send for LifecycleHooksConfig
impl Sync for LifecycleHooksConfig
impl Unpin for LifecycleHooksConfig
impl UnsafeUnpin for LifecycleHooksConfig
impl UnwindSafe for LifecycleHooksConfig
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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>
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>
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