Versions in this module Expand all Collapse all v0 v0.2.0 Jul 14, 2026 Changes in this version + const APIChunkTypeContentBlockDelta + const APIChunkTypeContentBlockStart + const APIChunkTypeContentBlockStop + const APIChunkTypeError + const APIChunkTypeMessageDelta + const APIChunkTypeMessageStop + const CompactionBoundaryVersionV1 + const ContextKeyRequestID + const ContextKeySessionID + const ContextKeyTraceID + const ContextKeyTurnID + const POWERSHELL_TOOL_NAME + const SessionMetadataSchemaVersion + const StopReasonEndTurn + const StopReasonMaxTokens + const StopReasonStopSequence + const StopReasonToolUse + var RuntimeEventEmitterKey = contextKeyRuntimeEventEmitter + func ActiveCompactionPreservedTail(messages []Message) ([]Message, *CompactionMetadata, bool) + func AgentUserIDFromContext(ctx context.Context) string + func CanonicalTranscriptHash(messages []Message) (string, error) + func CanonicalTranscriptMessageCount(messages []Message) int + func CanonicalTranscriptPrefix(messages []Message, prefix []Message) bool + func ContentBlocksContainToolUse(content []ContentBlock) bool + func CountCompactionArtifacts(messages []Message) int + func CountCompactionMessages(messages []Message) int + func CountDistinctTurnIDs(messages []Message) int + func CountPreservedTailMessages(messages []Message) int + func CountPreservedTailToolResultMessages(messages []Message) int + func CountPreservedTailTurns(messages []Message) int + func CountToolResultMessages(messages []Message) int + func FlattenSystemPromptBlocks(blocks []SystemPromptBlock) string + func HasCompactionBoundaryDescriptor(metadata *CompactionMetadata) bool + func HasCompactionMetadata(message Message) bool + func IsCanonicalTranscriptEntry(entry TranscriptEntry) bool + func IsCanonicalTranscriptMessage(message Message) bool + func IsCompactionArtifactMessage(message Message) bool + func IsCompactionMarkerMessage(message Message) bool + func IsCompactionSummaryMessage(message Message) bool + func IsStreamingRetryable(err *EngineError) bool + func IsTranscriptCompactionEntry(entry TranscriptEntry) bool + func IsTranscriptSystemEntry(entry TranscriptEntry) bool + func LegacyCanonicalTranscriptHash(messages []Message) (string, error) + func MessageTranscriptMetadataSignature(message Message) string + func MessagesEquivalentForTranscript(left Message, right Message) bool + func NormalizeStopReason(reason string, content []ContentBlock) string + func SubAgentMaxDepthFromContext(ctx context.Context) int + func ValidateCompactionBoundary(messages []Message) error + func WithAgentUserID(ctx context.Context, userID string) context.Context + func WithSubAgentMaxDepth(ctx context.Context, depth int) context.Context + type APIChunkAccumulator struct + func (a *APIChunkAccumulator) AddChunk(chunk APIResponseChunk) + func (a *APIChunkAccumulator) Build(model ModelIdentifier, responseID string) APIResponse + type APIChunkType string + type APIProvider string + const APIProviderAnthropic + const APIProviderBedrock + const APIProviderCodex + const APIProviderDeepSeek + const APIProviderFoundry + const APIProviderGemini + const APIProviderKimi + const APIProviderMiniMax + const APIProviderMistral + const APIProviderOllama + const APIProviderOpenAI + const APIProviderOpenCode + const APIProviderOpenRouter + const APIProviderVertex + const APIProviderWorkersAI + const APIProviderZAi + type APIRequest struct + MaxTokens int + Messages []Message + Metadata map[string]any + Model ModelIdentifier + OutputSchema *schema.StructuredOutputInfo + StopSequences []string + Stream bool + SystemPrompt string + SystemPromptBlocks []SystemPromptBlock + Temperature *float64 + Tools []APIToolDefinition + TopK *int + TopP *float64 + type APIResponse struct + Content []ContentBlock + ID string + Model ModelIdentifier + Role Role + StopReason string + StopSequence *string + Usage TokenUsage + func (r *APIResponse) UnmarshalJSON(data []byte) error + func (r APIResponse) MarshalJSON() ([]byte, error) + type APIResponseChunk struct + ContentBlock ContentBlock + Delta string + DeltaType string + Error *EngineError + PartialJSON string + StopReason *string + StopSequence *string + Type APIChunkType + Usage *TokenUsage + type APIStream <-chan APIResponseChunk + type APIStreamResult struct + Chunks []APIResponseChunk + Response APIResponse + type APIToolDefinition struct + CacheControl *PromptCacheControl + Description string + InputSchema toolschema.JSONSchema + Name string + type AgentID string + type AgentRuntimeEvent struct + AgentID string + AgentNickname string + AgentRole string + CallID string + CompletedAtMs int64 + Message string + Prompt string + StartedAtMs int64 + Status string + type BrowserRuntimeEvent struct + Action string + ActionCount int + ActivePageID string + Bytes int + ElementCount int + FullPage bool + HeadingCount int + PageCount int + PageID string + PersistedPath string + PersistedSize int + TextLength int + Title string + URL string + type CanUseToolFn func(ctx context.Context, request ToolPermissionRequest) PermissionResult + func CanUseToolFunc(resolver PermissionResolver) CanUseToolFn + func (f CanUseToolFn) ResolvePermission(ctx context.Context, request ToolPermissionRequest) PermissionResult + type CompactionMetadata struct + BoundaryVersion int + FirstPreservedMessageID MessageID + Kind string + LastPreservedMessageID MessageID + PostCompactTokens int + PreCompactTokens int + PreservedMessages int + PreservedTailHash string + PreservedToolPairs int + PreservedTurns int + TargetTokens int + func ActiveCompactionBoundary(messages []Message) (*CompactionMetadata, int, int, bool) + func BuildCompactionMetadata(kind string, preCompactTokens int, postCompactTokens int, targetTokens int, ...) *CompactionMetadata + func CloneCompactionMetadata(metadata *CompactionMetadata) *CompactionMetadata + func CompactionMetadataFromMessages(messages []Message) *CompactionMetadata + type ContentBlock interface + ContentType func() ContentType + type ContentReplacementState struct + FilePath string + OriginalSize int64 + Preview string + ReplacedSize int64 + ReplacementType ContentReplacementType + type ContentReplacementType string + const ContentReplacementTypeDisk + const ContentReplacementTypePreview + const ContentReplacementTypeTruncated + type ContentType string + const ContentTypeImage + const ContentTypeText + const ContentTypeThinking + const ContentTypeToolResult + const ContentTypeToolUse + type ContextChangeData struct + NewValue string + OldValue string + Reason string + type ContextWindow struct + MaxOutputTokens int + MaxTokens int + func GetContextWindow(m ModelIdentifier) ContextWindow + type DangerousPattern struct + CheckType string + Pattern string + Reason string + ToolName string + type DangerousPatternChecker struct + func NewDangerousPatternChecker() *DangerousPatternChecker + func (c *DangerousPatternChecker) AddPattern(toolName string, pattern DangerousPattern) + func (c *DangerousPatternChecker) CheckSafety(toolName string, input map[string]any) SafetyCheckResult + type DenialLimitConfig struct + MaxConsecutiveDenials int + MaxTotalDenials int + ResetAfterSeconds int + func DefaultDenialLimitConfig() DenialLimitConfig + func (c DenialLimitConfig) ShouldFallback(state *DenialTrackingState) bool + type DenialTrackingState struct + ConsecutiveDenials int + LastAllowedAt *time.Time + LastDeniedAt *time.Time + TotalDenials int + func (d *DenialTrackingState) GetConsecutiveDenials() int + func (d *DenialTrackingState) GetTotalDenials() int + func (d *DenialTrackingState) RecordDenial() + func (d *DenialTrackingState) RecordSuccess() + type ElicitationData struct + Options []map[string]any + Prompt string + RequestID string + type EngineError struct + Code ErrorCode + Context map[string]any + Err error + Message string + func NewError(code ErrorCode, message string) *EngineError + func WrapError(code ErrorCode, message string, err error) *EngineError + func WrapErrorWithContext(code ErrorCode, message string, err error, context map[string]any) *EngineError + func (e *EngineError) Error() string + func (e *EngineError) IsAPIError() bool + func (e *EngineError) IsPermanent() bool + func (e *EngineError) IsRetryable() bool + func (e *EngineError) Unwrap() error + type EntryType string + const EntryTypeCompact + const EntryTypeControl + const EntryTypeMessage + const EntryTypeSystem + const EntryTypeTurn + type ErrorCode string + const ErrCodeAPIAuth + const ErrCodeAPIInvalid + const ErrCodeAPIRateLimit + const ErrCodeAPIRequest + const ErrCodeAPIResponse + const ErrCodeAPITimeout + const ErrCodeCompactFailed + const ErrCodeCompactFull + const ErrCodeInternal + const ErrCodeInvalidInput + const ErrCodeNotSupported + const ErrCodePermissionDenied + const ErrCodePermissionError + const ErrCodeSessionClosed + const ErrCodeSessionInterrupted + const ErrCodeSessionNotFound + const ErrCodeToolExecution + const ErrCodeToolInvalidInput + const ErrCodeToolNotFound + const ErrCodeToolPermission + const ErrCodeToolTimeout + type ExecutionOrigin string + const ExecutionOriginAutomation + const ExecutionOriginInteractive + const ExecutionOriginSkillAgent + func NormalizeExecutionOrigin(raw string) ExecutionOrigin + type GoalRuntimeEvent struct + CreatedAt int64 + Objective string + SessionID string + Status string + TimeUsedSeconds int64 + TokenBudget *int64 + TokensUsed int64 + UpdatedAt int64 + type GranularConfig struct + RequestPermissionsApproval bool + RulesApproval bool + SandboxApproval bool + SkillApproval bool + func DefaultGranularConfig() GranularConfig + func (g GranularConfig) AllowsRequestPermissionsApproval() bool + func (g GranularConfig) AllowsRulesApproval() bool + func (g GranularConfig) AllowsSandboxApproval() bool + func (g GranularConfig) AllowsSkillApproval() bool + type Hook interface + Execute func(ctx context.Context, stage HookStage, toolName string, ...) HookResult + Name func() string + Priority func() int + type HookAction string + const HookActionContinue + const HookActionDeny + const HookActionModify + const HookActionRetry + const HookActionStop + type HookEvent string + const HookEventConfigChange + const HookEventCwdChanged + const HookEventElicitation + const HookEventElicitationResult + const HookEventFileChanged + const HookEventInstructionsLoaded + const HookEventIterationComplete + const HookEventIterationContinue + const HookEventIterationStart + const HookEventIterationStop + const HookEventNotification + const HookEventOnError + const HookEventPermissionDenied + const HookEventPermissionRequest + const HookEventPostAPICall + const HookEventPostCompact + const HookEventPostToolUse + const HookEventPostToolUseFail + const HookEventPreAPICall + const HookEventPreCompact + const HookEventPreToolUse + const HookEventQueryComplete + const HookEventQueryStart + const HookEventSessionEnd + const HookEventSessionStart + const HookEventSetup + const HookEventStopFailure + const HookEventSubagentStart + const HookEventSubagentStop + const HookEventTaskCompleted + const HookEventTaskCreated + const HookEventTeammateIdle + const HookEventToolUsesComplete + const HookEventToolUsesStart + const HookEventTurnEnd + const HookEventTurnStart + const HookEventTurnStop + const HookEventUserPromptSubmit + const HookEventWorktreeCreate + const HookEventWorktreeRemove + type HookHandler func(ctx context.Context, progress HookProgress) (*HookResult, error) + type HookProgress struct + Data map[string]any + Event HookEvent + Message string + type HookRegistration struct + Event HookEvent + Handler HookHandler + ID string + Priority int + Stage HookStage + type HookResult struct + Action HookAction + Message string + Metadata map[string]any + Retry bool + UpdatedInput map[string]any + type HookStage string + const HookStageAround + const HookStagePost + const HookStagePostPermission + const HookStagePre + const HookStagePrePermission + type ImageContent struct + Source struct{ ... } + func (ImageContent) ContentType() ContentType + type Message struct + Content []ContentBlock + ID MessageID + Metadata *MessageMetadata + Role Role + Timestamp time.Time + func AssistantMessage(id string, content []ContentBlock) Message + func CanonicalMessagesFromTranscriptEntries(entries []TranscriptEntry) []Message + func CanonicalTranscriptMessages(messages []Message) []Message + func CloneMessages(messages []Message) []Message + func LastCompactionMessage(messages []Message) (Message, bool) + func MessageFromTranscriptEntry(entry TranscriptEntry) (Message, bool) + func MessagesFromTranscriptEntries(entries []TranscriptEntry) []Message + func SystemMessage(id string, content string) Message + func UserMessage(id string, content string) Message + func UserMessageWithImage(id string, text string, images ...ImageContent) Message + func WithCompactionMetadata(message Message, metadata *CompactionMetadata) Message + func WithoutCompactionMetadata(message Message) Message + func (m *Message) UnmarshalJSON(data []byte) error + func (m Message) MarshalJSON() ([]byte, error) + type MessageID string + func NewMessageID(id string) MessageID + func (m MessageID) String() string + type MessageMetadata struct + Compaction *CompactionMetadata + StopReason string + StopSequence *string + TurnID string + Usage *TokenUsage + func CloneMessageMetadata(metadata *MessageMetadata) *MessageMetadata + type ModelIdentifier struct + Model string + Provider APIProvider + Version string + func (m ModelIdentifier) ProviderModelName() string + func (m ModelIdentifier) String() string + type NotificationData struct + Level string + Message string + Source string + type PermissionBehavior string + const PermissionBehaviorAllow + const PermissionBehaviorAsk + const PermissionBehaviorDeny + const PermissionBehaviorPassthrough + type PermissionContext struct + ExecutionMode string + IsAutoModeAvailable bool + IsBypassPermissionsModeAvailable bool + Mode PermissionMode + PrePlanMode PermissionMode + StrippedDangerousRules map[string][]string + func (p *PermissionContext) NormalizeLegacyPlanMode() + type PermissionDecisionReason struct + ClassifierApprovable bool + Reason string + Reasons map[string]PermissionDecisionReason + RuleBehavior PermissionBehavior + Source string + SubcommandResults map[string]PermissionResult + Type PermissionDecisionReasonType + type PermissionDecisionReasonType string + const PermissionDecisionReasonAsyncAgent + const PermissionDecisionReasonMode + const PermissionDecisionReasonOther + const PermissionDecisionReasonPrompt + const PermissionDecisionReasonRule + const PermissionDecisionReasonSafetyCheck + const PermissionDecisionReasonTool + type PermissionDeniedData struct + Input map[string]any + Reason string + RetryAllowed bool + ToolName string + type PermissionMode string + const PermissionModeAcceptEdits + const PermissionModeAuto + const PermissionModeBypass + const PermissionModeGranular + const PermissionModeNever + const PermissionModeOnRequest + func NormalizePermissionMode(raw string) (PermissionMode, bool) + func NormalizePermissionModeOrDefault(mode PermissionMode, fallback PermissionMode) PermissionMode + type PermissionRequestData struct + Context map[string]any + Input map[string]any + PermissionMode string + ToolName string + type PermissionResolver interface + ResolvePermission func(ctx context.Context, request ToolPermissionRequest) PermissionResult + type PermissionResult struct + Behavior PermissionBehavior + Confidence *float64 + DecisionReason *PermissionDecisionReason + DenialTracking *DenialTrackingState + Metadata map[string]any + Reason string + UpdatedInput map[string]any + func AllowWithDecisionReason(reason string, decisionReason *PermissionDecisionReason) PermissionResult + func AllowWithInput(reason string, updatedInput map[string]any) PermissionResult + func AllowWithInputAndDecisionReason(reason string, updatedInput map[string]any, ...) PermissionResult + func AllowWithUpdatedInput(updatedInput map[string]any) PermissionResult + func Ask(reason string) PermissionResult + func AskWithDecisionReason(reason string, decisionReason *PermissionDecisionReason) PermissionResult + func Deny(reason string) PermissionResult + func DenyWithDecisionReason(reason string, decisionReason *PermissionDecisionReason) PermissionResult + func Passthrough(updatedInput map[string]any) PermissionResult + func PassthroughWithDecisionReason(updatedInput map[string]any, decisionReason *PermissionDecisionReason) PermissionResult + func (p PermissionResult) IsAllowed() bool + func (p PermissionResult) IsAsk() bool + func (p PermissionResult) IsBypassImmune() bool + func (p PermissionResult) IsDenied() bool + func (p PermissionResult) IsPassthrough() bool + type PermissionRuleSource string + const PermissionSourceClassifier + const PermissionSourceCliArg + const PermissionSourceDynamic + const PermissionSourceHook + const PermissionSourceLocalSettings + const PermissionSourceProjectSettings + const PermissionSourceSession + const PermissionSourceStatic + const PermissionSourceUserSettings + type PermissionRuleValue struct + RuleContent string + ToolName string + type PermissionUpdate struct + Behavior PermissionBehavior + Destination PermissionRuleSource + Rules []PermissionRuleValue + Type PermissionUpdateType + type PermissionUpdateType string + const PermissionUpdateTypeAddRules + const PermissionUpdateTypeDeleteRules + const PermissionUpdateTypeReplaceRules + type PlanRuntimeEvent struct + Content string + Filename string + PlanID string + Slug string + Status string + Version int + type ProgressStream <-chan ToolProgress + type PromptCacheControl struct + Scope string + TTL string + Type string + func CacheControlEphemeral() *PromptCacheControl + func CacheControlWithTTL() *PromptCacheControl + func NewEphemeralPromptCacheControl() *PromptCacheControl + func NewPromptCacheControl(ttl string) *PromptCacheControl + type PromptFn func(ctx context.Context, request PromptRequest) (PromptResponse, error) + type PromptOption struct + Description string + Label string + Value any + type PromptRequest struct + Default any + Message string + Metadata map[string]any + Options []PromptOption + Type PromptType + type PromptResponse struct + Cancelled bool + Metadata map[string]any + Value any + type PromptType string + const PromptTypeChoice + const PromptTypeConfirm + const PromptTypeText + type RetryConfig struct + BackoffMultiplier float64 + InitialBackoff int64 + MaxAttempts int + MaxBackoff int64 + RetryableErrors map[ErrorCode]bool + func DefaultRetryConfig() RetryConfig + type Role string + const RoleAssistant + const RoleSystem + const RoleUser + type RuntimeEvent struct + AgentEvent *AgentRuntimeEvent + AgentToolUseID string + Browser *BrowserRuntimeEvent + Chunk *APIResponseChunk + Error string + ExecutionMode string + GoalEvent *GoalRuntimeEvent + PermissionRequest *ToolPermissionRequest + PlanEvent *PlanRuntimeEvent + PromptRequest *PromptRequest + SessionID SessionID + StopReason string + TaskEvent *TaskRuntimeEvent + Timestamp time.Time + ToolProgress *ToolProgress + TurnID TurnID + TurnNumber int + Type RuntimeEventType + Usage *TokenUsage + type RuntimeEventType string + const RuntimeEventTypeAgentCloseBegin + const RuntimeEventTypeAgentCloseEnd + const RuntimeEventTypeAgentInteractionBegin + const RuntimeEventTypeAgentInteractionEnd + const RuntimeEventTypeAgentSpawnBegin + const RuntimeEventTypeAgentSpawnEnd + const RuntimeEventTypeAgentWaitBegin + const RuntimeEventTypeAgentWaitEnd + const RuntimeEventTypeBrowserAction + const RuntimeEventTypeBrowserPage + const RuntimeEventTypeBrowserScreenshot + const RuntimeEventTypeBrowserSession + const RuntimeEventTypeBrowserSnapshot + const RuntimeEventTypeExecutionModeChanged + const RuntimeEventTypeGoalUpdated + const RuntimeEventTypePlanStatusChanged + const RuntimeEventTypePlanSubmitted + const RuntimeEventTypePromptRequired + const RuntimeEventTypeResponseChunk + const RuntimeEventTypeTaskChanged + const RuntimeEventTypeToolPermissionRequired + const RuntimeEventTypeToolProgress + const RuntimeEventTypeTurnCompleted + const RuntimeEventTypeTurnFailed + const RuntimeEventTypeTurnStarted + type SafetyCheckResult struct + CheckType string + IsDangerous bool + Reason string + type SafetyChecker interface + CheckSafety func(toolName string, input map[string]any) SafetyCheckResult + type SessionID string + func NewSessionID(id string) SessionID + func (s SessionID) String() string + type SessionMetadata struct + Additional map[string]any + CompactCount int + CreatedAt time.Time + ID SessionID + LastCompactedAt *time.Time + MaxTokens int + Model string + RootPath string + SchemaVersion int + Status SessionStatus + Title string + TotalTokens int + TotalTurns int + UpdatedAt time.Time + type SessionStatus string + const SessionStatusActive + const SessionStatusClosed + const SessionStatusIdle + const SessionStatusInterrupt + type SetupData struct + InitialMessage string + SessionID string + type StopFailureData struct + Error error + Reason string + type StreamToolOutput struct + func NewStreamToolOutput(data []byte) StreamToolOutput + func (s StreamToolOutput) Bytes() []byte + func (s StreamToolOutput) Reader() io.Reader + func (s StreamToolOutput) String() string + type SubagentData struct + AgentID string + AgentName string + IsFork bool + ParentID string + TaskType string + type SystemPromptBlock struct + CacheControl *PromptCacheControl + Text string + Type string + func NewTextSystemPromptBlock(text string, cacheControl *PromptCacheControl) SystemPromptBlock + type TaskData struct + Error error + Result any + Status string + TaskID string + TaskName string + TaskType string + type TaskRuntimeEvent struct + Action string + Status string + Subject string + TaskID string + type TextContent struct + Text string + func (TextContent) ContentType() ContentType + type ThinkingContent struct + Thinking string + func (ThinkingContent) ContentType() ContentType + type TokenUsage struct + CacheCreationInputTokens int + CacheReadInputTokens int + CachedTokens int + InputTokens int + OutputTokens int + type ToolOutput interface + Bytes func() []byte + Reader func() io.Reader + String func() string + type ToolPermissionIntent string + const ToolPermissionIntentAllow + const ToolPermissionIntentAsk + const ToolPermissionIntentCheck + const ToolPermissionIntentDeny + type ToolPermissionRequest struct + Description string + Intent ToolPermissionIntent + IsToolRunningInSandbox bool + Metadata map[string]any + PermissionMode PermissionMode + SessionID SessionID + Stage ToolPermissionStage + ToolInput map[string]any + ToolName string + ToolUseID string + TurnID TurnID + WorkingDirectory string + func GlobalToolPermissionRequest(toolName string, toolInput map[string]any, toolUseID string, ...) ToolPermissionRequest + func WholeToolPermissionRequest(toolName string, toolUseID string, sessionID SessionID, turnID TurnID, ...) ToolPermissionRequest + type ToolPermissionStage string + const ToolPermissionStageGlobal + const ToolPermissionStageWholeTool + type ToolProgress struct + Message string + Metadata map[string]any + PercentComplete float64 + Stage ToolProgressStage + ToolName string + ToolUseID string + type ToolProgressStage string + const ToolProgressStageCompleted + const ToolProgressStageFailed + const ToolProgressStagePending + const ToolProgressStageRunning + type ToolResult struct + Data any + Error error + Metadata *ToolResultMetadata + type ToolResultContent struct + Content string + IsError bool + Metadata *map[string]any + ToolUseID string + func (ToolResultContent) ContentType() ContentType + type ToolResultMetadata struct + Additional map[string]any + ContentReplacement *ContentReplacementState + ExecutionDuration int64 + type ToolUseContent struct + ID string + Input map[string]any + Metadata *map[string]any + Name string + func (ToolUseContent) ContentType() ContentType + type TranscriptEntry struct + Content []ContentBlock + ID MessageID + Metadata map[string]any + Role Role + Timestamp time.Time + TurnID TurnID + Type EntryType + func CanonicalTranscriptEntriesFromMessages(messages []Message, turnID TurnID) []TranscriptEntry + func FilterCanonicalTranscriptEntries(entries []TranscriptEntry) []TranscriptEntry + func TranscriptEntriesFromMessages(messages []Message, turnID TurnID) []TranscriptEntry + func TranscriptEntryFromMessage(message Message, turnID TurnID) TranscriptEntry + func (t *TranscriptEntry) UnmarshalJSON(data []byte) error + func (t TranscriptEntry) MarshalJSON() ([]byte, error) + type TurnID string + func NewTurnID(id string) TurnID + func (t TurnID) String() string + type TurnMetadata struct + Additional map[string]any + CompletedAt *time.Time + InputTokens int + IsCompacted bool + OutputTokens int + SessionID SessionID + StartedAt time.Time + StopReason string + ToolUses int + TurnID TurnID + TurnNumber int + type UserPromptSubmitData struct + IsFirstMessage bool + Prompt string + SessionID string + type WorktreeData struct + BaseBranch string + WorktreePath string