pub struct HookStartData {
pub hook_invocation_id: String,
pub hook_type: String,
pub input: Option<Value>,
pub parent_tool_call_id: Option<String>,
}Expand description
Session event “hook.start”. Hook invocation start details including type and input data
Fields§
§hook_invocation_id: StringUnique identifier for this hook invocation
hook_type: StringType of hook being invoked (e.g., “preToolUse”, “postToolUse”, “sessionStart”)
input: Option<Value>Input data passed to the hook. For postToolUse hooks the retained copy served by session.eventLog.read (and by a resumed session) drops the tool result’s inline contents/uiResource/skillInvocation and replaces duplicated text result fields with a [copilot:elided ...] marker; the live subscription stream still delivers the full value. Canonical tool output remains in the adjacent tool.execution_complete event, while an invoked skill’s authoritative body remains in its skill invocation event.
parent_tool_call_id: Option<String>Tool call ID of the parent tool invocation when this event originates from a sub-agent