pub struct WorkspaceHookCommand {
pub event: String,
pub matcher: Option<String>,
pub command: String,
pub timeout_seconds: Option<u64>,
}Expand description
A single lifecycle hook command whose effective configuration origin is a
workspace-controlled layer (workspace-root vtcode.toml, the workspace
.vtcode/vtcode.toml fallback, or a project profile inside the workspace).
Workspace-controlled configuration is attacker-influenceable in an untrusted repository, so these commands must never execute until the user explicitly approves the exact command set for this workspace.
Fields§
§event: StringLifecycle event name in canonical snake_case form (e.g. session_start).
Deprecated aliases (task_completion, task_completed) are recorded as
stop because LifecycleHooksConfig::normalized() folds them there.
matcher: Option<String>Optional regex matcher of the containing group.
command: StringThe shell command string executed via sh -c.
timeout_seconds: Option<u64>Optional execution timeout in seconds.
Trait Implementations§
Source§impl Clone for WorkspaceHookCommand
impl Clone for WorkspaceHookCommand
Source§impl Debug for WorkspaceHookCommand
impl Debug for WorkspaceHookCommand
Source§impl<'de> Deserialize<'de> for WorkspaceHookCommand
impl<'de> Deserialize<'de> for WorkspaceHookCommand
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>,
impl Eq for WorkspaceHookCommand
Source§impl JsonSchema for WorkspaceHookCommand
impl JsonSchema for WorkspaceHookCommand
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 moreSource§impl PartialEq for WorkspaceHookCommand
impl PartialEq for WorkspaceHookCommand
Source§impl Serialize for WorkspaceHookCommand
impl Serialize for WorkspaceHookCommand
impl StructuralPartialEq for WorkspaceHookCommand
Auto Trait Implementations§
impl Freeze for WorkspaceHookCommand
impl RefUnwindSafe for WorkspaceHookCommand
impl Send for WorkspaceHookCommand
impl Sync for WorkspaceHookCommand
impl Unpin for WorkspaceHookCommand
impl UnsafeUnpin for WorkspaceHookCommand
impl UnwindSafe for WorkspaceHookCommand
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.