Versions in this module Expand all Collapse all v0 v0.2.0 Jul 14, 2026 v0.1.0 Jun 22, 2026 Changes in this version + const DescriptionEnterWorktree + const DescriptionExitWorktree + const EnterWorktreePrompt + const ExitWorktreePrompt + const SearchHintEnterWorktree + const SearchHintExitWorktree + const ToolNameEnterWorktree + const ToolNameExitWorktree + const WorktreeDirPrefix + var DefaultWorktreeConfig = WorktreeConfig + func FindGitRoot(cwd string) (string, error) + func GenerateWorktreeName(slug string) string + func SetSession(id types.SessionID, s *WorktreeSession) + func ValidateWorktreeSlug(slug string) error + type EnterWorktreeConfig struct + Manager *WorktreeManager + WorkingDir string + func DefaultEnterWorktreeConfig() *EnterWorktreeConfig + type EnterWorktreeTool struct + func NewEnterWorktreeTool(config *EnterWorktreeConfig) *EnterWorktreeTool + func (t *EnterWorktreeTool) BackfillInput(ctx context.Context, input map[string]any) map[string]any + func (t *EnterWorktreeTool) Call(ctx context.Context, input tool.CallInput, permissionCheck types.CanUseToolFn) (tool.CallResult, error) + func (t *EnterWorktreeTool) CheckPermissions(ctx context.Context, input map[string]any, toolCtx tool.ToolUseContext) types.PermissionResult + func (t *EnterWorktreeTool) Definition() tool.Definition + func (t *EnterWorktreeTool) Description(ctx context.Context) (string, error) + func (t *EnterWorktreeTool) FormatResult(data any) string + func (t *EnterWorktreeTool) IsConcurrencySafe(input map[string]any) bool + func (t *EnterWorktreeTool) IsEnabled() bool + func (t *EnterWorktreeTool) IsReadOnly(input map[string]any) bool + func (t *EnterWorktreeTool) ValidateInput(ctx context.Context, input map[string]any) (map[string]any, error) + type ExitWorktreeConfig struct + Manager *WorktreeManager + WorkingDir string + func DefaultExitWorktreeConfig() *ExitWorktreeConfig + type ExitWorktreeTool struct + func NewExitWorktreeTool(config *ExitWorktreeConfig) *ExitWorktreeTool + func (t *ExitWorktreeTool) BackfillInput(ctx context.Context, input map[string]any) map[string]any + func (t *ExitWorktreeTool) Call(ctx context.Context, input tool.CallInput, permissionCheck types.CanUseToolFn) (tool.CallResult, error) + func (t *ExitWorktreeTool) CheckPermissions(ctx context.Context, input map[string]any, toolCtx tool.ToolUseContext) types.PermissionResult + func (t *ExitWorktreeTool) Definition() tool.Definition + func (t *ExitWorktreeTool) Description(ctx context.Context) (string, error) + func (t *ExitWorktreeTool) FormatResult(data any) string + func (t *ExitWorktreeTool) IsConcurrencySafe(input map[string]any) bool + func (t *ExitWorktreeTool) IsDestructive(input map[string]any) bool + func (t *ExitWorktreeTool) IsEnabled() bool + func (t *ExitWorktreeTool) IsReadOnly(input map[string]any) bool + func (t *ExitWorktreeTool) ValidateInput(ctx context.Context, input map[string]any) (map[string]any, error) + type WorktreeConfig struct + CreateBranch bool + DeleteWorktree bool + UseGitWorktree bool + WorktreeBaseDir string + type WorktreeManager struct + func NewWorktreeManager(config WorktreeConfig) *WorktreeManager + func (m *WorktreeManager) CountWorktreeChanges(worktreePath, originalCommit string) (int, int, error) + func (m *WorktreeManager) CreateWorktree(ctx context.Context, slug string, branch string, originalCwd string) (*WorktreeSession, error) + func (m *WorktreeManager) RemoveWorktree(session *WorktreeSession, force bool) error + type WorktreeSession struct + OriginalCwd string + OriginalHeadCommit string + TmuxSessionName string + WorktreeBranch string + WorktreePath string + func GetSession(id types.SessionID) *WorktreeSession