@within-7/minto 0.4.2 → 0.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/cli.cjs +32 -154
- package/cli.js +3255 -0
- package/package.json +21 -38
- package/scripts/postinstall.cjs +19 -136
- package/vendor/ripgrep/arm64-linux/rg +0 -0
- package/vendor/ripgrep/x64-darwin/rg +0 -0
- package/vendor/ripgrep/x64-linux/rg +0 -0
- package/vendor/ripgrep/x64-win32/rg.exe +0 -0
- package/dist/Tool.js +0 -46
- package/dist/Tool.js.map +0 -7
- package/dist/commands/agents/AgentsCommand.js +0 -2170
- package/dist/commands/agents/AgentsCommand.js.map +0 -7
- package/dist/commands/agents/constants.js +0 -58
- package/dist/commands/agents/constants.js.map +0 -7
- package/dist/commands/agents/index.js +0 -37
- package/dist/commands/agents/index.js.map +0 -7
- package/dist/commands/agents/types.js +0 -11
- package/dist/commands/agents/types.js.map +0 -7
- package/dist/commands/agents/utils/fileOperations.js +0 -245
- package/dist/commands/agents/utils/fileOperations.js.map +0 -7
- package/dist/commands/agents/utils/index.js +0 -23
- package/dist/commands/agents/utils/index.js.map +0 -7
- package/dist/commands/approvedTools.js +0 -36
- package/dist/commands/approvedTools.js.map +0 -7
- package/dist/commands/bug.js +0 -88
- package/dist/commands/bug.js.map +0 -7
- package/dist/commands/clear.js +0 -41
- package/dist/commands/clear.js.map +0 -7
- package/dist/commands/compact.js +0 -119
- package/dist/commands/compact.js.map +0 -7
- package/dist/commands/config.js +0 -20
- package/dist/commands/config.js.map +0 -7
- package/dist/commands/context.js +0 -118
- package/dist/commands/context.js.map +0 -7
- package/dist/commands/cost.js +0 -19
- package/dist/commands/cost.js.map +0 -7
- package/dist/commands/ctx_viz.js +0 -193
- package/dist/commands/ctx_viz.js.map +0 -7
- package/dist/commands/doctor.js +0 -171
- package/dist/commands/doctor.js.map +0 -7
- package/dist/commands/effort.js +0 -87
- package/dist/commands/effort.js.map +0 -7
- package/dist/commands/export.js +0 -747
- package/dist/commands/export.js.map +0 -7
- package/dist/commands/help.js +0 -20
- package/dist/commands/help.js.map +0 -7
- package/dist/commands/ide.js +0 -18
- package/dist/commands/ide.js.map +0 -7
- package/dist/commands/init.js +0 -38
- package/dist/commands/init.js.map +0 -7
- package/dist/commands/language.js +0 -110
- package/dist/commands/language.js.map +0 -7
- package/dist/commands/login.js +0 -128
- package/dist/commands/login.js.map +0 -7
- package/dist/commands/mcp-interactive.js +0 -485
- package/dist/commands/mcp-interactive.js.map +0 -7
- package/dist/commands/memory.js +0 -119
- package/dist/commands/memory.js.map +0 -7
- package/dist/commands/model.js +0 -497
- package/dist/commands/model.js.map +0 -7
- package/dist/commands/new.js +0 -56
- package/dist/commands/new.js.map +0 -7
- package/dist/commands/outputStyle.js +0 -64
- package/dist/commands/outputStyle.js.map +0 -7
- package/dist/commands/permissions.js +0 -113
- package/dist/commands/permissions.js.map +0 -7
- package/dist/commands/plugin/AddMarketplaceForm.js +0 -91
- package/dist/commands/plugin/AddMarketplaceForm.js.map +0 -7
- package/dist/commands/plugin/ConfirmDialog.js +0 -84
- package/dist/commands/plugin/ConfirmDialog.js.map +0 -7
- package/dist/commands/plugin/ErrorView.js +0 -34
- package/dist/commands/plugin/ErrorView.js.map +0 -7
- package/dist/commands/plugin/InstalledPluginsByMarketplace.js +0 -152
- package/dist/commands/plugin/InstalledPluginsByMarketplace.js.map +0 -7
- package/dist/commands/plugin/InstalledPluginsManager.js +0 -102
- package/dist/commands/plugin/InstalledPluginsManager.js.map +0 -7
- package/dist/commands/plugin/LoadingView.js +0 -14
- package/dist/commands/plugin/LoadingView.js.map +0 -7
- package/dist/commands/plugin/MainMenu.js +0 -67
- package/dist/commands/plugin/MainMenu.js.map +0 -7
- package/dist/commands/plugin/MarketplaceManager.js +0 -201
- package/dist/commands/plugin/MarketplaceManager.js.map +0 -7
- package/dist/commands/plugin/MarketplaceSelector.js +0 -124
- package/dist/commands/plugin/MarketplaceSelector.js.map +0 -7
- package/dist/commands/plugin/PlaceholderScreen.js +0 -31
- package/dist/commands/plugin/PlaceholderScreen.js.map +0 -7
- package/dist/commands/plugin/PluginBrowser.js +0 -183
- package/dist/commands/plugin/PluginBrowser.js.map +0 -7
- package/dist/commands/plugin/PluginDetailsInstall.js +0 -159
- package/dist/commands/plugin/PluginDetailsInstall.js.map +0 -7
- package/dist/commands/plugin/PluginDetailsManage.js +0 -210
- package/dist/commands/plugin/PluginDetailsManage.js.map +0 -7
- package/dist/commands/plugin/components.js +0 -16
- package/dist/commands/plugin/components.js.map +0 -7
- package/dist/commands/plugin/example-usage.js +0 -63
- package/dist/commands/plugin/example-usage.js.map +0 -7
- package/dist/commands/plugin/types.js +0 -1
- package/dist/commands/plugin/types.js.map +0 -7
- package/dist/commands/plugin/utils.js +0 -109
- package/dist/commands/plugin/utils.js.map +0 -7
- package/dist/commands/plugin.js +0 -1410
- package/dist/commands/plugin.js.map +0 -7
- package/dist/commands/quit.js +0 -20
- package/dist/commands/quit.js.map +0 -7
- package/dist/commands/refreshCommands.js +0 -48
- package/dist/commands/refreshCommands.js.map +0 -7
- package/dist/commands/resume.js +0 -71
- package/dist/commands/resume.js.map +0 -7
- package/dist/commands/review.js +0 -51
- package/dist/commands/review.js.map +0 -7
- package/dist/commands/sandbox.js +0 -203
- package/dist/commands/sandbox.js.map +0 -7
- package/dist/commands/sessions.js +0 -224
- package/dist/commands/sessions.js.map +0 -7
- package/dist/commands/setup.js +0 -653
- package/dist/commands/setup.js.map +0 -7
- package/dist/commands/stats.js +0 -292
- package/dist/commands/stats.js.map +0 -7
- package/dist/commands/status.js +0 -127
- package/dist/commands/status.js.map +0 -7
- package/dist/commands/tasks.js +0 -108
- package/dist/commands/tasks.js.map +0 -7
- package/dist/commands/terminalSetup.js +0 -174
- package/dist/commands/terminalSetup.js.map +0 -7
- package/dist/commands/todos.js +0 -123
- package/dist/commands/todos.js.map +0 -7
- package/dist/commands/undo.js +0 -227
- package/dist/commands/undo.js.map +0 -7
- package/dist/commands/vim.js +0 -22
- package/dist/commands/vim.js.map +0 -7
- package/dist/commands.js +0 -130
- package/dist/commands.js.map +0 -7
- package/dist/components/AgentDetailView.js +0 -126
- package/dist/components/AgentDetailView.js.map +0 -7
- package/dist/components/AgentResponseBlock.js +0 -41
- package/dist/components/AgentResponseBlock.js.map +0 -7
- package/dist/components/AgentThinkingBlock.js +0 -32
- package/dist/components/AgentThinkingBlock.js.map +0 -7
- package/dist/components/AgentViewBanner.js +0 -22
- package/dist/components/AgentViewBanner.js.map +0 -7
- package/dist/components/AsciiLogo.js +0 -18
- package/dist/components/AsciiLogo.js.map +0 -7
- package/dist/components/AskUserQuestionDialog/AskUserQuestionDialog.js +0 -142
- package/dist/components/AskUserQuestionDialog/AskUserQuestionDialog.js.map +0 -7
- package/dist/components/AskUserQuestionDialog/QuestionView.js +0 -55
- package/dist/components/AskUserQuestionDialog/QuestionView.js.map +0 -7
- package/dist/components/AskUserQuestionDialog/index.js +0 -7
- package/dist/components/AskUserQuestionDialog/index.js.map +0 -7
- package/dist/components/BackgroundTasksPanel.js +0 -177
- package/dist/components/BackgroundTasksPanel.js.map +0 -7
- package/dist/components/BashStreamingProgress.js +0 -24
- package/dist/components/BashStreamingProgress.js.map +0 -7
- package/dist/components/CollapsibleHint.js +0 -15
- package/dist/components/CollapsibleHint.js.map +0 -7
- package/dist/components/Config.js +0 -181
- package/dist/components/Config.js.map +0 -7
- package/dist/components/ConsoleOAuthFlow.js +0 -179
- package/dist/components/ConsoleOAuthFlow.js.map +0 -7
- package/dist/components/Cost.js +0 -14
- package/dist/components/Cost.js.map +0 -7
- package/dist/components/CostThresholdDialog.js +0 -38
- package/dist/components/CostThresholdDialog.js.map +0 -7
- package/dist/components/CustomSelect/option-map.js +0 -32
- package/dist/components/CustomSelect/option-map.js.map +0 -7
- package/dist/components/CustomSelect/select-option.js +0 -37
- package/dist/components/CustomSelect/select-option.js.map +0 -7
- package/dist/components/CustomSelect/select.js +0 -64
- package/dist/components/CustomSelect/select.js.map +0 -7
- package/dist/components/CustomSelect/theme.js +0 -1
- package/dist/components/CustomSelect/theme.js.map +0 -7
- package/dist/components/CustomSelect/use-select-state.js +0 -220
- package/dist/components/CustomSelect/use-select-state.js.map +0 -7
- package/dist/components/CustomSelect/use-select.js +0 -21
- package/dist/components/CustomSelect/use-select.js.map +0 -7
- package/dist/components/FallbackToolUseRejectedMessage.js +0 -11
- package/dist/components/FallbackToolUseRejectedMessage.js.map +0 -7
- package/dist/components/FileEditToolUpdatedMessage.js +0 -32
- package/dist/components/FileEditToolUpdatedMessage.js.map +0 -7
- package/dist/components/HeaderBar.js +0 -63
- package/dist/components/HeaderBar.js.map +0 -7
- package/dist/components/Help.js +0 -185
- package/dist/components/Help.js.map +0 -7
- package/dist/components/HighlightedCode.js +0 -31
- package/dist/components/HighlightedCode.js.map +0 -7
- package/dist/components/HistorySearchOverlay.js +0 -49
- package/dist/components/HistorySearchOverlay.js.map +0 -7
- package/dist/components/HotkeyHelpPanel.js +0 -154
- package/dist/components/HotkeyHelpPanel.js.map +0 -7
- package/dist/components/IdleNotificationBar.js +0 -10
- package/dist/components/IdleNotificationBar.js.map +0 -7
- package/dist/components/InfoPanel/InfoPanel.js +0 -123
- package/dist/components/InfoPanel/InfoPanel.js.map +0 -7
- package/dist/components/InfoPanel/index.js +0 -5
- package/dist/components/InfoPanel/index.js.map +0 -7
- package/dist/components/InfoPanel/types.js +0 -1
- package/dist/components/InfoPanel/types.js.map +0 -7
- package/dist/components/InteractionRoundBlock.js +0 -56
- package/dist/components/InteractionRoundBlock.js.map +0 -7
- package/dist/components/InvalidConfigDialog.js +0 -84
- package/dist/components/InvalidConfigDialog.js.map +0 -7
- package/dist/components/Link.js +0 -18
- package/dist/components/Link.js.map +0 -7
- package/dist/components/LogSelector.js +0 -50
- package/dist/components/LogSelector.js.map +0 -7
- package/dist/components/Logo.js +0 -55
- package/dist/components/Logo.js.map +0 -7
- package/dist/components/MCPServerApprovalDialog.js +0 -81
- package/dist/components/MCPServerApprovalDialog.js.map +0 -7
- package/dist/components/MCPServerDialogCopy.js +0 -12
- package/dist/components/MCPServerDialogCopy.js.map +0 -7
- package/dist/components/MCPServerMultiselectDialog.js +0 -82
- package/dist/components/MCPServerMultiselectDialog.js.map +0 -7
- package/dist/components/Message.js +0 -162
- package/dist/components/Message.js.map +0 -7
- package/dist/components/MessageResponse.js +0 -9
- package/dist/components/MessageResponse.js.map +0 -7
- package/dist/components/MessageSelector.js +0 -127
- package/dist/components/MessageSelector.js.map +0 -7
- package/dist/components/ModeIndicator.js +0 -39
- package/dist/components/ModeIndicator.js.map +0 -7
- package/dist/components/ModelConfig.js +0 -223
- package/dist/components/ModelConfig.js.map +0 -7
- package/dist/components/ModelListManager.js +0 -142
- package/dist/components/ModelListManager.js.map +0 -7
- package/dist/components/ModelSelector/BrandTextInput.js +0 -43
- package/dist/components/ModelSelector/BrandTextInput.js.map +0 -7
- package/dist/components/ModelSelector/ModelSelector.js +0 -2103
- package/dist/components/ModelSelector/ModelSelector.js.map +0 -7
- package/dist/components/ModelSelector/ScreenContainer.js +0 -27
- package/dist/components/ModelSelector/ScreenContainer.js.map +0 -7
- package/dist/components/ModelSelector/WizardContainer.js +0 -45
- package/dist/components/ModelSelector/WizardContainer.js.map +0 -7
- package/dist/components/ModelSelector/constants.js +0 -37
- package/dist/components/ModelSelector/constants.js.map +0 -7
- package/dist/components/ModelSelector/hooks/index.js +0 -5
- package/dist/components/ModelSelector/hooks/index.js.map +0 -7
- package/dist/components/ModelSelector/hooks/useEscapeNavigation.js +0 -21
- package/dist/components/ModelSelector/hooks/useEscapeNavigation.js.map +0 -7
- package/dist/components/ModelSelector/index.js +0 -15
- package/dist/components/ModelSelector/index.js.map +0 -7
- package/dist/components/ModelSelector/types.js +0 -1
- package/dist/components/ModelSelector/types.js.map +0 -7
- package/dist/components/Onboarding.js +0 -159
- package/dist/components/Onboarding.js.map +0 -7
- package/dist/components/OperationSummary.js +0 -130
- package/dist/components/OperationSummary.js.map +0 -7
- package/dist/components/PressEnterToContinue.js +0 -10
- package/dist/components/PressEnterToContinue.js.map +0 -7
- package/dist/components/ProgressBar.js +0 -74
- package/dist/components/ProgressBar.js.map +0 -7
- package/dist/components/ProjectOnboarding.js +0 -99
- package/dist/components/ProjectOnboarding.js.map +0 -7
- package/dist/components/PromptInput.js +0 -1067
- package/dist/components/PromptInput.js.map +0 -7
- package/dist/components/PulseLabel.js +0 -44
- package/dist/components/PulseLabel.js.map +0 -7
- package/dist/components/QuitSummary.js +0 -88
- package/dist/components/QuitSummary.js.map +0 -7
- package/dist/components/RequestStatusIndicator.js +0 -194
- package/dist/components/RequestStatusIndicator.js.map +0 -7
- package/dist/components/RewindPanel.js +0 -272
- package/dist/components/RewindPanel.js.map +0 -7
- package/dist/components/SensitiveFileWarning.js +0 -35
- package/dist/components/SensitiveFileWarning.js.map +0 -7
- package/dist/components/SentryErrorBoundary.js +0 -27
- package/dist/components/SentryErrorBoundary.js.map +0 -7
- package/dist/components/SimpleSelector/SimpleSelector.js +0 -154
- package/dist/components/SimpleSelector/SimpleSelector.js.map +0 -7
- package/dist/components/SimpleSelector/index.js +0 -5
- package/dist/components/SimpleSelector/index.js.map +0 -7
- package/dist/components/SimpleSelector/types.js +0 -1
- package/dist/components/SimpleSelector/types.js.map +0 -7
- package/dist/components/Spinner.js +0 -174
- package/dist/components/Spinner.js.map +0 -7
- package/dist/components/SpinnerSymbol.js +0 -72
- package/dist/components/SpinnerSymbol.js.map +0 -7
- package/dist/components/StartupStatus.js +0 -57
- package/dist/components/StartupStatus.js.map +0 -7
- package/dist/components/StatusOverlayContent.js +0 -21
- package/dist/components/StatusOverlayContent.js.map +0 -7
- package/dist/components/StreamingBashOutput.js +0 -71
- package/dist/components/StreamingBashOutput.js.map +0 -7
- package/dist/components/StreamingTextPreview.js +0 -29
- package/dist/components/StreamingTextPreview.js.map +0 -7
- package/dist/components/StructuredDiff.js +0 -146
- package/dist/components/StructuredDiff.js.map +0 -7
- package/dist/components/SubagentBlock.js +0 -197
- package/dist/components/SubagentBlock.js.map +0 -7
- package/dist/components/SubagentManager.js +0 -65
- package/dist/components/SubagentManager.js.map +0 -7
- package/dist/components/SubagentProgress.js +0 -123
- package/dist/components/SubagentProgress.js.map +0 -7
- package/dist/components/SubagentStatusMarker.js +0 -37
- package/dist/components/SubagentStatusMarker.js.map +0 -7
- package/dist/components/TabbedListView/ScrollableList.js +0 -117
- package/dist/components/TabbedListView/ScrollableList.js.map +0 -7
- package/dist/components/TabbedListView/SearchInput.js +0 -23
- package/dist/components/TabbedListView/SearchInput.js.map +0 -7
- package/dist/components/TabbedListView/TabBar.js +0 -25
- package/dist/components/TabbedListView/TabBar.js.map +0 -7
- package/dist/components/TabbedListView/TabbedListView.js +0 -292
- package/dist/components/TabbedListView/TabbedListView.js.map +0 -7
- package/dist/components/TabbedListView/index.js +0 -11
- package/dist/components/TabbedListView/index.js.map +0 -7
- package/dist/components/TabbedListView/types.js +0 -1
- package/dist/components/TabbedListView/types.js.map +0 -7
- package/dist/components/TaskCard.js +0 -176
- package/dist/components/TaskCard.js.map +0 -7
- package/dist/components/TeamMemberPanel.js +0 -107
- package/dist/components/TeamMemberPanel.js.map +0 -7
- package/dist/components/TextInput.js +0 -108
- package/dist/components/TextInput.js.map +0 -7
- package/dist/components/ThinkingSelector.js +0 -84
- package/dist/components/ThinkingSelector.js.map +0 -7
- package/dist/components/TimelineRenderer.js +0 -31
- package/dist/components/TimelineRenderer.js.map +0 -7
- package/dist/components/TitledDivider.js +0 -26
- package/dist/components/TitledDivider.js.map +0 -7
- package/dist/components/TodoChangeBlock.js +0 -30
- package/dist/components/TodoChangeBlock.js.map +0 -7
- package/dist/components/TodoChangeLine.js +0 -22
- package/dist/components/TodoChangeLine.js.map +0 -7
- package/dist/components/TodoItem.js +0 -35
- package/dist/components/TodoItem.js.map +0 -7
- package/dist/components/TodoPanel.js +0 -167
- package/dist/components/TodoPanel.js.map +0 -7
- package/dist/components/TokenCounter.js +0 -74
- package/dist/components/TokenCounter.js.map +0 -7
- package/dist/components/TokenWarning.js +0 -41
- package/dist/components/TokenWarning.js.map +0 -7
- package/dist/components/ToolExecutionBlock.js +0 -18
- package/dist/components/ToolExecutionBlock.js.map +0 -7
- package/dist/components/ToolUseLoader.js +0 -29
- package/dist/components/ToolUseLoader.js.map +0 -7
- package/dist/components/TreeConnector.js +0 -26
- package/dist/components/TreeConnector.js.map +0 -7
- package/dist/components/TrustDialog.js +0 -71
- package/dist/components/TrustDialog.js.map +0 -7
- package/dist/components/TurnCompletionIndicator.js +0 -18
- package/dist/components/TurnCompletionIndicator.js.map +0 -7
- package/dist/components/UserQueryBlock.js +0 -12
- package/dist/components/UserQueryBlock.js.map +0 -7
- package/dist/components/binary-feedback/BinaryFeedback.js +0 -50
- package/dist/components/binary-feedback/BinaryFeedback.js.map +0 -7
- package/dist/components/binary-feedback/BinaryFeedbackOption.js +0 -92
- package/dist/components/binary-feedback/BinaryFeedbackOption.js.map +0 -7
- package/dist/components/binary-feedback/BinaryFeedbackView.js +0 -140
- package/dist/components/binary-feedback/BinaryFeedbackView.js.map +0 -7
- package/dist/components/binary-feedback/utils.js +0 -108
- package/dist/components/binary-feedback/utils.js.map +0 -7
- package/dist/components/messages/AssistantBashOutputMessage.js +0 -23
- package/dist/components/messages/AssistantBashOutputMessage.js.map +0 -7
- package/dist/components/messages/AssistantLocalCommandOutputMessage.js +0 -36
- package/dist/components/messages/AssistantLocalCommandOutputMessage.js.map +0 -7
- package/dist/components/messages/AssistantRedactedThinkingMessage.js +0 -12
- package/dist/components/messages/AssistantRedactedThinkingMessage.js.map +0 -7
- package/dist/components/messages/AssistantTextMessage.js +0 -92
- package/dist/components/messages/AssistantTextMessage.js.map +0 -7
- package/dist/components/messages/AssistantThinkingMessage.js +0 -42
- package/dist/components/messages/AssistantThinkingMessage.js.map +0 -7
- package/dist/components/messages/AssistantToolUseMessage.js +0 -108
- package/dist/components/messages/AssistantToolUseMessage.js.map +0 -7
- package/dist/components/messages/DefaultToolResultFallback.js +0 -11
- package/dist/components/messages/DefaultToolResultFallback.js.map +0 -7
- package/dist/components/messages/GroupRenderer.js +0 -54
- package/dist/components/messages/GroupRenderer.js.map +0 -7
- package/dist/components/messages/NestedTasksPreview.js +0 -24
- package/dist/components/messages/NestedTasksPreview.js.map +0 -7
- package/dist/components/messages/ParallelTasksGroupView.js +0 -101
- package/dist/components/messages/ParallelTasksGroupView.js.map +0 -7
- package/dist/components/messages/TaskInModuleView.js +0 -218
- package/dist/components/messages/TaskInModuleView.js.map +0 -7
- package/dist/components/messages/TaskOutputContent.js +0 -56
- package/dist/components/messages/TaskOutputContent.js.map +0 -7
- package/dist/components/messages/TaskProgressMessage.js +0 -11
- package/dist/components/messages/TaskProgressMessage.js.map +0 -7
- package/dist/components/messages/TaskToolMessage.js +0 -39
- package/dist/components/messages/TaskToolMessage.js.map +0 -7
- package/dist/components/messages/UserBashInputMessage.js +0 -18
- package/dist/components/messages/UserBashInputMessage.js.map +0 -7
- package/dist/components/messages/UserCommandMessage.js +0 -20
- package/dist/components/messages/UserCommandMessage.js.map +0 -7
- package/dist/components/messages/UserGuidanceMessage.js +0 -26
- package/dist/components/messages/UserGuidanceMessage.js.map +0 -7
- package/dist/components/messages/UserKodingInputMessage.js +0 -18
- package/dist/components/messages/UserKodingInputMessage.js.map +0 -7
- package/dist/components/messages/UserPromptMessage.js +0 -26
- package/dist/components/messages/UserPromptMessage.js.map +0 -7
- package/dist/components/messages/UserTeamNotificationMessage.js +0 -91
- package/dist/components/messages/UserTeamNotificationMessage.js.map +0 -7
- package/dist/components/messages/UserTextMessage.js +0 -33
- package/dist/components/messages/UserTextMessage.js.map +0 -7
- package/dist/components/messages/UserToolResultMessage/UserToolCanceledMessage.js +0 -11
- package/dist/components/messages/UserToolResultMessage/UserToolCanceledMessage.js.map +0 -7
- package/dist/components/messages/UserToolResultMessage/UserToolErrorMessage.js +0 -15
- package/dist/components/messages/UserToolResultMessage/UserToolErrorMessage.js.map +0 -7
- package/dist/components/messages/UserToolResultMessage/UserToolRejectMessage.js +0 -27
- package/dist/components/messages/UserToolResultMessage/UserToolRejectMessage.js.map +0 -7
- package/dist/components/messages/UserToolResultMessage/UserToolResultMessage.js +0 -64
- package/dist/components/messages/UserToolResultMessage/UserToolResultMessage.js.map +0 -7
- package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js +0 -33
- package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js.map +0 -7
- package/dist/components/messages/UserToolResultMessage/utils.js +0 -50
- package/dist/components/messages/UserToolResultMessage/utils.js.map +0 -7
- package/dist/components/permissions/BashPermissionRequest/BashPermissionRequest.js +0 -112
- package/dist/components/permissions/BashPermissionRequest/BashPermissionRequest.js.map +0 -7
- package/dist/components/permissions/FallbackPermissionRequest.js +0 -131
- package/dist/components/permissions/FallbackPermissionRequest.js.map +0 -7
- package/dist/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js +0 -159
- package/dist/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js.map +0 -7
- package/dist/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js +0 -58
- package/dist/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js.map +0 -7
- package/dist/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js +0 -153
- package/dist/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js.map +0 -7
- package/dist/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js +0 -70
- package/dist/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js.map +0 -7
- package/dist/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js +0 -212
- package/dist/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js.map +0 -7
- package/dist/components/permissions/PermissionRequest.js +0 -74
- package/dist/components/permissions/PermissionRequest.js.map +0 -7
- package/dist/components/permissions/PermissionRequestTitle.js +0 -52
- package/dist/components/permissions/PermissionRequestTitle.js.map +0 -7
- package/dist/components/permissions/PlanApprovalRequest.js +0 -164
- package/dist/components/permissions/PlanApprovalRequest.js.map +0 -7
- package/dist/components/permissions/hooks.js +0 -23
- package/dist/components/permissions/hooks.js.map +0 -7
- package/dist/components/permissions/toolUseOptions.js +0 -46
- package/dist/components/permissions/toolUseOptions.js.map +0 -7
- package/dist/components/permissions/utils.js +0 -21
- package/dist/components/permissions/utils.js.map +0 -7
- package/dist/constants/agentTeams.js +0 -17
- package/dist/constants/agentTeams.js.map +0 -7
- package/dist/constants/claude-asterisk-ascii-art.js +0 -242
- package/dist/constants/claude-asterisk-ascii-art.js.map +0 -7
- package/dist/constants/colors.js +0 -192
- package/dist/constants/colors.js.map +0 -7
- package/dist/constants/compressionPrompts.js +0 -73
- package/dist/constants/compressionPrompts.js.map +0 -7
- package/dist/constants/figures.js +0 -6
- package/dist/constants/figures.js.map +0 -7
- package/dist/constants/formatRules.js +0 -102
- package/dist/constants/formatRules.js.map +0 -7
- package/dist/constants/macros.js +0 -12
- package/dist/constants/macros.js.map +0 -7
- package/dist/constants/modelCapabilities.js +0 -239
- package/dist/constants/modelCapabilities.js.map +0 -7
- package/dist/constants/models.js +0 -1034
- package/dist/constants/models.js.map +0 -7
- package/dist/constants/oauth.js +0 -18
- package/dist/constants/oauth.js.map +0 -7
- package/dist/constants/product.js +0 -28
- package/dist/constants/product.js.map +0 -7
- package/dist/constants/prompts/agentPrompt.js +0 -31
- package/dist/constants/prompts/agentPrompt.js.map +0 -7
- package/dist/constants/prompts/autoMemory.js +0 -39
- package/dist/constants/prompts/autoMemory.js.map +0 -7
- package/dist/constants/prompts/codeConventions.js +0 -15
- package/dist/constants/prompts/codeConventions.js.map +0 -7
- package/dist/constants/prompts/doingTasks.js +0 -34
- package/dist/constants/prompts/doingTasks.js.map +0 -7
- package/dist/constants/prompts/envInfo.js +0 -16
- package/dist/constants/prompts/envInfo.js.map +0 -7
- package/dist/constants/prompts/executingWithCare.js +0 -17
- package/dist/constants/prompts/executingWithCare.js.map +0 -7
- package/dist/constants/prompts/identity.js +0 -10
- package/dist/constants/prompts/identity.js.map +0 -7
- package/dist/constants/prompts/index.js +0 -100
- package/dist/constants/prompts/index.js.map +0 -7
- package/dist/constants/prompts/taskManagement.js +0 -19
- package/dist/constants/prompts/taskManagement.js.map +0 -7
- package/dist/constants/prompts/teamOverlays.js +0 -50
- package/dist/constants/prompts/teamOverlays.js.map +0 -7
- package/dist/constants/prompts/toneAndStyle.js +0 -37
- package/dist/constants/prompts/toneAndStyle.js.map +0 -7
- package/dist/constants/prompts/toolUsagePolicy.js +0 -23
- package/dist/constants/prompts/toolUsagePolicy.js.map +0 -7
- package/dist/constants/prompts.js +0 -13
- package/dist/constants/prompts.js.map +0 -7
- package/dist/constants/providerRegistry.js +0 -235
- package/dist/constants/providerRegistry.js.map +0 -7
- package/dist/constants/providers.js +0 -35
- package/dist/constants/providers.js.map +0 -7
- package/dist/constants/releaseNotes.js +0 -9
- package/dist/constants/releaseNotes.js.map +0 -7
- package/dist/constants/symbols.js +0 -108
- package/dist/constants/symbols.js.map +0 -7
- package/dist/constants/timing.js +0 -39
- package/dist/constants/timing.js.map +0 -7
- package/dist/constants/toolInputExamples.js +0 -88
- package/dist/constants/toolInputExamples.js.map +0 -7
- package/dist/context/PermissionContext.js +0 -110
- package/dist/context/PermissionContext.js.map +0 -7
- package/dist/context.js +0 -367
- package/dist/context.js.map +0 -7
- package/dist/core/backupHook.js +0 -29
- package/dist/core/backupHook.js.map +0 -7
- package/dist/core/backupManager.js +0 -321
- package/dist/core/backupManager.js.map +0 -7
- package/dist/core/config/defaults.js +0 -93
- package/dist/core/config/defaults.js.map +0 -7
- package/dist/core/config/index.js +0 -111
- package/dist/core/config/index.js.map +0 -7
- package/dist/core/config/loader.js +0 -221
- package/dist/core/config/loader.js.map +0 -7
- package/dist/core/config/migrations.js +0 -128
- package/dist/core/config/migrations.js.map +0 -7
- package/dist/core/config/schema.js +0 -196
- package/dist/core/config/schema.js.map +0 -7
- package/dist/core/costTracker.js +0 -131
- package/dist/core/costTracker.js.map +0 -7
- package/dist/core/gitAutoCommit.js +0 -287
- package/dist/core/gitAutoCommit.js.map +0 -7
- package/dist/core/index.js +0 -7
- package/dist/core/index.js.map +0 -7
- package/dist/core/operationTracker.js +0 -212
- package/dist/core/operationTracker.js.map +0 -7
- package/dist/core/permissions/auditLog.js +0 -204
- package/dist/core/permissions/auditLog.js.map +0 -7
- package/dist/core/permissions/engine/index.js +0 -3
- package/dist/core/permissions/engine/index.js.map +0 -7
- package/dist/core/permissions/engine/permissionEngine.js +0 -106
- package/dist/core/permissions/engine/permissionEngine.js.map +0 -7
- package/dist/core/permissions/engine/types.js +0 -1
- package/dist/core/permissions/engine/types.js.map +0 -7
- package/dist/core/permissions/index.js +0 -84
- package/dist/core/permissions/index.js.map +0 -7
- package/dist/core/permissions/ruleEngine.js +0 -259
- package/dist/core/permissions/ruleEngine.js.map +0 -7
- package/dist/core/permissions/rules/allowedToolsRule.js +0 -62
- package/dist/core/permissions/rules/allowedToolsRule.js.map +0 -7
- package/dist/core/permissions/rules/autoEscalationRule.js +0 -296
- package/dist/core/permissions/rules/autoEscalationRule.js.map +0 -7
- package/dist/core/permissions/rules/index.js +0 -46
- package/dist/core/permissions/rules/index.js.map +0 -7
- package/dist/core/permissions/rules/planModeRule.js +0 -55
- package/dist/core/permissions/rules/planModeRule.js.map +0 -7
- package/dist/core/permissions/rules/projectBoundaryRule.js +0 -173
- package/dist/core/permissions/rules/projectBoundaryRule.js.map +0 -7
- package/dist/core/permissions/rules/safeModeRule.js +0 -65
- package/dist/core/permissions/rules/safeModeRule.js.map +0 -7
- package/dist/core/permissions/rules/sensitivePathsRule.js +0 -345
- package/dist/core/permissions/rules/sensitivePathsRule.js.map +0 -7
- package/dist/core/permissions/types.js +0 -127
- package/dist/core/permissions/types.js.map +0 -7
- package/dist/core/tokenStats.js +0 -9
- package/dist/core/tokenStats.js.map +0 -7
- package/dist/core/tokenStatsManager.js +0 -354
- package/dist/core/tokenStatsManager.js.map +0 -7
- package/dist/core/tools/executor.js +0 -143
- package/dist/core/tools/executor.js.map +0 -7
- package/dist/core/tools/index.js +0 -15
- package/dist/core/tools/index.js.map +0 -7
- package/dist/core/tools/registry.js +0 -183
- package/dist/core/tools/registry.js.map +0 -7
- package/dist/core/tools/types.js +0 -1
- package/dist/core/tools/types.js.map +0 -7
- package/dist/cost-tracker.js +0 -68
- package/dist/cost-tracker.js.map +0 -7
- package/dist/engine/AgentEngine.js +0 -902
- package/dist/engine/AgentEngine.js.map +0 -7
- package/dist/engine/EngineRegistry.js +0 -89
- package/dist/engine/EngineRegistry.js.map +0 -7
- package/dist/engine/foregroundAdapter.js +0 -191
- package/dist/engine/foregroundAdapter.js.map +0 -7
- package/dist/engine/index.js +0 -15
- package/dist/engine/index.js.map +0 -7
- package/dist/engine/types.js +0 -1
- package/dist/engine/types.js.map +0 -7
- package/dist/entrypoints/bootstrap.js +0 -56
- package/dist/entrypoints/bootstrap.js.map +0 -7
- package/dist/entrypoints/cli.js +0 -1721
- package/dist/entrypoints/cli.js.map +0 -7
- package/dist/entrypoints/mcp.js +0 -153
- package/dist/entrypoints/mcp.js.map +0 -7
- package/dist/history.js +0 -96
- package/dist/history.js.map +0 -7
- package/dist/hooks/useAgentEngine.js +0 -129
- package/dist/hooks/useAgentEngine.js.map +0 -7
- package/dist/hooks/useAgentTokenStats.js +0 -56
- package/dist/hooks/useAgentTokenStats.js.map +0 -7
- package/dist/hooks/useAgentTranscripts.js +0 -141
- package/dist/hooks/useAgentTranscripts.js.map +0 -7
- package/dist/hooks/useAnimationSync.js +0 -53
- package/dist/hooks/useAnimationSync.js.map +0 -7
- package/dist/hooks/useApiKeyVerification.js +0 -12
- package/dist/hooks/useApiKeyVerification.js.map +0 -7
- package/dist/hooks/useArrowKeyHistory.js +0 -52
- package/dist/hooks/useArrowKeyHistory.js.map +0 -7
- package/dist/hooks/useAskUser.js +0 -24
- package/dist/hooks/useAskUser.js.map +0 -7
- package/dist/hooks/useBackgroundShells.js +0 -29
- package/dist/hooks/useBackgroundShells.js.map +0 -7
- package/dist/hooks/useCanUseTool.js +0 -134
- package/dist/hooks/useCanUseTool.js.map +0 -7
- package/dist/hooks/useDeferredLoading.js +0 -67
- package/dist/hooks/useDeferredLoading.js.map +0 -7
- package/dist/hooks/useDoublePress.js +0 -31
- package/dist/hooks/useDoublePress.js.map +0 -7
- package/dist/hooks/useExitOnCtrlCD.js +0 -30
- package/dist/hooks/useExitOnCtrlCD.js.map +0 -7
- package/dist/hooks/useHistorySearch.js +0 -62
- package/dist/hooks/useHistorySearch.js.map +0 -7
- package/dist/hooks/useHookStatus.js +0 -40
- package/dist/hooks/useHookStatus.js.map +0 -7
- package/dist/hooks/useIdleNotifications.js +0 -66
- package/dist/hooks/useIdleNotifications.js.map +0 -7
- package/dist/hooks/useInterval.js +0 -18
- package/dist/hooks/useInterval.js.map +0 -7
- package/dist/hooks/useLogMessages.js +0 -41
- package/dist/hooks/useLogMessages.js.map +0 -7
- package/dist/hooks/useLogStartupTime.js +0 -10
- package/dist/hooks/useLogStartupTime.js.map +0 -7
- package/dist/hooks/useMessageGroups.js +0 -43
- package/dist/hooks/useMessageGroups.js.map +0 -7
- package/dist/hooks/useNotifyAfterTimeout.js +0 -42
- package/dist/hooks/useNotifyAfterTimeout.js.map +0 -7
- package/dist/hooks/usePermissionRequestLogging.js +0 -23
- package/dist/hooks/usePermissionRequestLogging.js.map +0 -7
- package/dist/hooks/useSessionTracking.js +0 -57
- package/dist/hooks/useSessionTracking.js.map +0 -7
- package/dist/hooks/useTeamMembers.js +0 -51
- package/dist/hooks/useTeamMembers.js.map +0 -7
- package/dist/hooks/useTerminalSize.js +0 -115
- package/dist/hooks/useTerminalSize.js.map +0 -7
- package/dist/hooks/useTextInput.js +0 -253
- package/dist/hooks/useTextInput.js.map +0 -7
- package/dist/hooks/useUnifiedCompletion.js +0 -1098
- package/dist/hooks/useUnifiedCompletion.js.map +0 -7
- package/dist/i18n/index.js +0 -109
- package/dist/i18n/index.js.map +0 -7
- package/dist/i18n/locales/en.js +0 -993
- package/dist/i18n/locales/en.js.map +0 -7
- package/dist/i18n/locales/index.js +0 -7
- package/dist/i18n/locales/index.js.map +0 -7
- package/dist/i18n/locales/zh-CN.js +0 -993
- package/dist/i18n/locales/zh-CN.js.map +0 -7
- package/dist/i18n/types.js +0 -8
- package/dist/i18n/types.js.map +0 -7
- package/dist/index.js +0 -5
- package/dist/index.js.map +0 -7
- package/dist/messages.js +0 -68
- package/dist/messages.js.map +0 -7
- package/dist/package.json +0 -4
- package/dist/permissions.js +0 -536
- package/dist/permissions.js.map +0 -7
- package/dist/query.js +0 -851
- package/dist/query.js.map +0 -7
- package/dist/screens/LogList.js +0 -55
- package/dist/screens/LogList.js.map +0 -7
- package/dist/screens/REPL.js +0 -1240
- package/dist/screens/REPL.js.map +0 -7
- package/dist/screens/ResumeConversation.js +0 -244
- package/dist/screens/ResumeConversation.js.map +0 -7
- package/dist/services/adapters/base.js +0 -29
- package/dist/services/adapters/base.js.map +0 -7
- package/dist/services/adapters/chatCompletions.js +0 -71
- package/dist/services/adapters/chatCompletions.js.map +0 -7
- package/dist/services/adapters/messageNormalizer.js +0 -354
- package/dist/services/adapters/messageNormalizer.js.map +0 -7
- package/dist/services/adapters/responsesAPI.js +0 -137
- package/dist/services/adapters/responsesAPI.js.map +0 -7
- package/dist/services/agentTeams/backends/headless.js +0 -108
- package/dist/services/agentTeams/backends/headless.js.map +0 -7
- package/dist/services/agentTeams/backends/inProcess.js +0 -102
- package/dist/services/agentTeams/backends/inProcess.js.map +0 -7
- package/dist/services/agentTeams/backends/resolver.js +0 -18
- package/dist/services/agentTeams/backends/resolver.js.map +0 -7
- package/dist/services/agentTeams/backends/tmux.js +0 -168
- package/dist/services/agentTeams/backends/tmux.js.map +0 -7
- package/dist/services/agentTeams/backends/types.js +0 -1
- package/dist/services/agentTeams/backends/types.js.map +0 -7
- package/dist/services/agentTeams/heartbeat.js +0 -88
- package/dist/services/agentTeams/heartbeat.js.map +0 -7
- package/dist/services/agentTeams/index.js +0 -75
- package/dist/services/agentTeams/index.js.map +0 -7
- package/dist/services/agentTeams/injectionChannel.js +0 -105
- package/dist/services/agentTeams/injectionChannel.js.map +0 -7
- package/dist/services/agentTeams/mailbox.js +0 -494
- package/dist/services/agentTeams/mailbox.js.map +0 -7
- package/dist/services/agentTeams/messageFormatter.js +0 -80
- package/dist/services/agentTeams/messageFormatter.js.map +0 -7
- package/dist/services/agentTeams/permissionDelegation.js +0 -71
- package/dist/services/agentTeams/permissionDelegation.js.map +0 -7
- package/dist/services/agentTeams/teamEvents.js +0 -45
- package/dist/services/agentTeams/teamEvents.js.map +0 -7
- package/dist/services/agentTeams/teamManager.js +0 -366
- package/dist/services/agentTeams/teamManager.js.map +0 -7
- package/dist/services/agentTeams/teamTaskStore.js +0 -343
- package/dist/services/agentTeams/teamTaskStore.js.map +0 -7
- package/dist/services/agentTeams/teammateSpawner.js +0 -161
- package/dist/services/agentTeams/teammateSpawner.js.map +0 -7
- package/dist/services/checkpointManager.js +0 -399
- package/dist/services/checkpointManager.js.map +0 -7
- package/dist/services/claude.js +0 -41
- package/dist/services/claude.js.map +0 -7
- package/dist/services/compressionService.js +0 -259
- package/dist/services/compressionService.js.map +0 -7
- package/dist/services/contextMonitor.js +0 -162
- package/dist/services/contextMonitor.js.map +0 -7
- package/dist/services/customCommands.js +0 -489
- package/dist/services/customCommands.js.map +0 -7
- package/dist/services/fileFreshness.js +0 -275
- package/dist/services/fileFreshness.js.map +0 -7
- package/dist/services/gpt5ConnectionTest.js +0 -263
- package/dist/services/gpt5ConnectionTest.js.map +0 -7
- package/dist/services/hookExecutor.js +0 -771
- package/dist/services/hookExecutor.js.map +0 -7
- package/dist/services/intelligentCompactor.js +0 -281
- package/dist/services/intelligentCompactor.js.map +0 -7
- package/dist/services/llm/anthropicProvider.js +0 -804
- package/dist/services/llm/anthropicProvider.js.map +0 -7
- package/dist/services/llm/dispatch.js +0 -237
- package/dist/services/llm/dispatch.js.map +0 -7
- package/dist/services/llm/index.js +0 -44
- package/dist/services/llm/index.js.map +0 -7
- package/dist/services/llm/mintoContext.js +0 -69
- package/dist/services/llm/mintoContext.js.map +0 -7
- package/dist/services/llm/openaiProvider.js +0 -601
- package/dist/services/llm/openaiProvider.js.map +0 -7
- package/dist/services/llm/types.js +0 -231
- package/dist/services/llm/types.js.map +0 -7
- package/dist/services/lspConfig.js +0 -109
- package/dist/services/lspConfig.js.map +0 -7
- package/dist/services/mainAgentCompressor.js +0 -84
- package/dist/services/mainAgentCompressor.js.map +0 -7
- package/dist/services/mcpClient.js +0 -997
- package/dist/services/mcpClient.js.map +0 -7
- package/dist/services/mcpServerApproval.js +0 -55
- package/dist/services/mcpServerApproval.js.map +0 -7
- package/dist/services/mentionProcessor.js +0 -214
- package/dist/services/mentionProcessor.js.map +0 -7
- package/dist/services/mintoAuth.js +0 -299
- package/dist/services/mintoAuth.js.map +0 -7
- package/dist/services/modelAdapterFactory.js +0 -47
- package/dist/services/modelAdapterFactory.js.map +0 -7
- package/dist/services/modelOrchestrator.js +0 -310
- package/dist/services/modelOrchestrator.js.map +0 -7
- package/dist/services/notifier.js +0 -49
- package/dist/services/notifier.js.map +0 -7
- package/dist/services/oauth.js +0 -249
- package/dist/services/oauth.js.map +0 -7
- package/dist/services/openai.js +0 -1120
- package/dist/services/openai.js.map +0 -7
- package/dist/services/outputStyles.js +0 -219
- package/dist/services/outputStyles.js.map +0 -7
- package/dist/services/plugins/index.js +0 -5
- package/dist/services/plugins/index.js.map +0 -7
- package/dist/services/plugins/lspServers.js +0 -188
- package/dist/services/plugins/lspServers.js.map +0 -7
- package/dist/services/plugins/pluginRuntime.js +0 -236
- package/dist/services/plugins/pluginRuntime.js.map +0 -7
- package/dist/services/plugins/pluginValidation.js +0 -228
- package/dist/services/plugins/pluginValidation.js.map +0 -7
- package/dist/services/plugins/skillMarketplace.js +0 -567
- package/dist/services/plugins/skillMarketplace.js.map +0 -7
- package/dist/services/responseStateManager.js +0 -102
- package/dist/services/responseStateManager.js.map +0 -7
- package/dist/services/sandbox/filesystemBoundary.js +0 -341
- package/dist/services/sandbox/filesystemBoundary.js.map +0 -7
- package/dist/services/sandbox/index.js +0 -14
- package/dist/services/sandbox/index.js.map +0 -7
- package/dist/services/sandbox/networkProxy.js +0 -293
- package/dist/services/sandbox/networkProxy.js.map +0 -7
- package/dist/services/sandbox/sandboxController.js +0 -582
- package/dist/services/sandbox/sandboxController.js.map +0 -7
- package/dist/services/sandbox/types.js +0 -50
- package/dist/services/sandbox/types.js.map +0 -7
- package/dist/services/sentry.js +0 -9
- package/dist/services/sentry.js.map +0 -7
- package/dist/services/sessionMemory.js +0 -279
- package/dist/services/sessionMemory.js.map +0 -7
- package/dist/services/sessionMemoryInjector.js +0 -77
- package/dist/services/sessionMemoryInjector.js.map +0 -7
- package/dist/services/subagentAbortManager.js +0 -95
- package/dist/services/subagentAbortManager.js.map +0 -7
- package/dist/services/subagentCompressor.js +0 -146
- package/dist/services/subagentCompressor.js.map +0 -7
- package/dist/services/systemReminder.js +0 -815
- package/dist/services/systemReminder.js.map +0 -7
- package/dist/services/taskRouter.js +0 -324
- package/dist/services/taskRouter.js.map +0 -7
- package/dist/services/taskStore.js +0 -415
- package/dist/services/taskStore.js.map +0 -7
- package/dist/services/topicDetector.js +0 -169
- package/dist/services/topicDetector.js.map +0 -7
- package/dist/services/vcr.js +0 -133
- package/dist/services/vcr.js.map +0 -7
- package/dist/tools/ArchitectTool/ArchitectTool.js +0 -126
- package/dist/tools/ArchitectTool/ArchitectTool.js.map +0 -7
- package/dist/tools/ArchitectTool/prompt.js +0 -18
- package/dist/tools/ArchitectTool/prompt.js.map +0 -7
- package/dist/tools/AskExpertModelTool/AskExpertModelTool.js +0 -420
- package/dist/tools/AskExpertModelTool/AskExpertModelTool.js.map +0 -7
- package/dist/tools/AskUserQuestionTool/AskUserQuestionTool.js +0 -158
- package/dist/tools/AskUserQuestionTool/AskUserQuestionTool.js.map +0 -7
- package/dist/tools/AskUserQuestionTool/index.js +0 -5
- package/dist/tools/AskUserQuestionTool/index.js.map +0 -7
- package/dist/tools/AskUserQuestionTool/prompt.js +0 -167
- package/dist/tools/AskUserQuestionTool/prompt.js.map +0 -7
- package/dist/tools/BaseTool.js +0 -72
- package/dist/tools/BaseTool.js.map +0 -7
- package/dist/tools/BashOutputTool/BashOutputTool.js +0 -120
- package/dist/tools/BashOutputTool/BashOutputTool.js.map +0 -7
- package/dist/tools/BashOutputTool/BashOutputToolResultMessage.js +0 -14
- package/dist/tools/BashOutputTool/BashOutputToolResultMessage.js.map +0 -7
- package/dist/tools/BashOutputTool/prompt.js +0 -13
- package/dist/tools/BashOutputTool/prompt.js.map +0 -7
- package/dist/tools/BashTool/BashTool.js +0 -353
- package/dist/tools/BashTool/BashTool.js.map +0 -7
- package/dist/tools/BashTool/BashToolResultMessage.js +0 -24
- package/dist/tools/BashTool/BashToolResultMessage.js.map +0 -7
- package/dist/tools/BashTool/OutputLine.js +0 -84
- package/dist/tools/BashTool/OutputLine.js.map +0 -7
- package/dist/tools/BashTool/prompt.js +0 -496
- package/dist/tools/BashTool/prompt.js.map +0 -7
- package/dist/tools/BashTool/utils.js +0 -89
- package/dist/tools/BashTool/utils.js.map +0 -7
- package/dist/tools/EnterWorktreeTool/EnterWorktreeTool.js +0 -121
- package/dist/tools/EnterWorktreeTool/EnterWorktreeTool.js.map +0 -7
- package/dist/tools/EnterWorktreeTool/prompt.js +0 -22
- package/dist/tools/EnterWorktreeTool/prompt.js.map +0 -7
- package/dist/tools/FileEditTool/FileEditTool.js +0 -278
- package/dist/tools/FileEditTool/FileEditTool.js.map +0 -7
- package/dist/tools/FileEditTool/prompt.js +0 -56
- package/dist/tools/FileEditTool/prompt.js.map +0 -7
- package/dist/tools/FileEditTool/utils.js +0 -48
- package/dist/tools/FileEditTool/utils.js.map +0 -7
- package/dist/tools/FileReadTool/FileReadTool.js +0 -427
- package/dist/tools/FileReadTool/FileReadTool.js.map +0 -7
- package/dist/tools/FileReadTool/prompt.js +0 -24
- package/dist/tools/FileReadTool/prompt.js.map +0 -7
- package/dist/tools/FileWriteTool/FileWriteTool.js +0 -211
- package/dist/tools/FileWriteTool/FileWriteTool.js.map +0 -7
- package/dist/tools/FileWriteTool/prompt.js +0 -21
- package/dist/tools/FileWriteTool/prompt.js.map +0 -7
- package/dist/tools/GlobTool/GlobTool.js +0 -100
- package/dist/tools/GlobTool/GlobTool.js.map +0 -7
- package/dist/tools/GlobTool/prompt.js +0 -23
- package/dist/tools/GlobTool/prompt.js.map +0 -7
- package/dist/tools/GrepTool/GrepTool.js +0 -417
- package/dist/tools/GrepTool/GrepTool.js.map +0 -7
- package/dist/tools/GrepTool/prompt.js +0 -22
- package/dist/tools/GrepTool/prompt.js.map +0 -7
- package/dist/tools/KillShellTool/KillShellTool.js +0 -92
- package/dist/tools/KillShellTool/KillShellTool.js.map +0 -7
- package/dist/tools/KillShellTool/KillShellToolResultMessage.js +0 -14
- package/dist/tools/KillShellTool/KillShellToolResultMessage.js.map +0 -7
- package/dist/tools/KillShellTool/prompt.js +0 -12
- package/dist/tools/KillShellTool/prompt.js.map +0 -7
- package/dist/tools/ListMcpResourcesTool/ListMcpResourcesTool.js +0 -109
- package/dist/tools/ListMcpResourcesTool/ListMcpResourcesTool.js.map +0 -7
- package/dist/tools/ListMcpResourcesTool/prompt.js +0 -19
- package/dist/tools/ListMcpResourcesTool/prompt.js.map +0 -7
- package/dist/tools/LspTool/LspTool.js +0 -673
- package/dist/tools/LspTool/LspTool.js.map +0 -7
- package/dist/tools/LspTool/prompt.js +0 -27
- package/dist/tools/LspTool/prompt.js.map +0 -7
- package/dist/tools/MCPSearchTool/MCPSearchTool.js +0 -172
- package/dist/tools/MCPSearchTool/MCPSearchTool.js.map +0 -7
- package/dist/tools/MCPSearchTool/prompt.js +0 -77
- package/dist/tools/MCPSearchTool/prompt.js.map +0 -7
- package/dist/tools/MCPTool/MCPTool.js +0 -97
- package/dist/tools/MCPTool/MCPTool.js.map +0 -7
- package/dist/tools/MCPTool/prompt.js +0 -7
- package/dist/tools/MCPTool/prompt.js.map +0 -7
- package/dist/tools/MemoryReadTool/MemoryReadTool.js +0 -117
- package/dist/tools/MemoryReadTool/MemoryReadTool.js.map +0 -7
- package/dist/tools/MemoryReadTool/prompt.js +0 -7
- package/dist/tools/MemoryReadTool/prompt.js.map +0 -7
- package/dist/tools/MemoryWriteTool/MemoryWriteTool.js +0 -78
- package/dist/tools/MemoryWriteTool/MemoryWriteTool.js.map +0 -7
- package/dist/tools/MemoryWriteTool/prompt.js +0 -7
- package/dist/tools/MemoryWriteTool/prompt.js.map +0 -7
- package/dist/tools/MultiEditTool/MultiEditTool.js +0 -328
- package/dist/tools/MultiEditTool/MultiEditTool.js.map +0 -7
- package/dist/tools/MultiEditTool/prompt.js +0 -47
- package/dist/tools/MultiEditTool/prompt.js.map +0 -7
- package/dist/tools/NotebookEditTool/NotebookEditTool.js +0 -257
- package/dist/tools/NotebookEditTool/NotebookEditTool.js.map +0 -7
- package/dist/tools/NotebookEditTool/prompt.js +0 -7
- package/dist/tools/NotebookEditTool/prompt.js.map +0 -7
- package/dist/tools/NotebookReadTool/NotebookReadTool.js +0 -218
- package/dist/tools/NotebookReadTool/NotebookReadTool.js.map +0 -7
- package/dist/tools/NotebookReadTool/prompt.js +0 -7
- package/dist/tools/NotebookReadTool/prompt.js.map +0 -7
- package/dist/tools/PlanModeTool/EnterPlanModeTool.js +0 -85
- package/dist/tools/PlanModeTool/EnterPlanModeTool.js.map +0 -7
- package/dist/tools/PlanModeTool/ExitPlanModeTool.js +0 -164
- package/dist/tools/PlanModeTool/ExitPlanModeTool.js.map +0 -7
- package/dist/tools/PlanModeTool/prompt.js +0 -43
- package/dist/tools/PlanModeTool/prompt.js.map +0 -7
- package/dist/tools/ReadMcpResourceTool/ReadMcpResourceTool.js +0 -130
- package/dist/tools/ReadMcpResourceTool/ReadMcpResourceTool.js.map +0 -7
- package/dist/tools/ReadMcpResourceTool/prompt.js +0 -17
- package/dist/tools/ReadMcpResourceTool/prompt.js.map +0 -7
- package/dist/tools/SendMessageTool/SendMessageTool.js +0 -341
- package/dist/tools/SendMessageTool/SendMessageTool.js.map +0 -7
- package/dist/tools/SendMessageTool/prompt.js +0 -44
- package/dist/tools/SendMessageTool/prompt.js.map +0 -7
- package/dist/tools/SkillTool/SkillTool.js +0 -227
- package/dist/tools/SkillTool/SkillTool.js.map +0 -7
- package/dist/tools/SkillTool/prompt.js +0 -81
- package/dist/tools/SkillTool/prompt.js.map +0 -7
- package/dist/tools/SlashCommandTool/SlashCommandTool.js +0 -416
- package/dist/tools/SlashCommandTool/SlashCommandTool.js.map +0 -7
- package/dist/tools/SlashCommandTool/prompt.js +0 -35
- package/dist/tools/SlashCommandTool/prompt.js.map +0 -7
- package/dist/tools/TaskCreateTool/TaskCreateTool.js +0 -102
- package/dist/tools/TaskCreateTool/TaskCreateTool.js.map +0 -7
- package/dist/tools/TaskCreateTool/prompt.js +0 -58
- package/dist/tools/TaskCreateTool/prompt.js.map +0 -7
- package/dist/tools/TaskGetTool/TaskGetTool.js +0 -115
- package/dist/tools/TaskGetTool/TaskGetTool.js.map +0 -7
- package/dist/tools/TaskGetTool/prompt.js +0 -28
- package/dist/tools/TaskGetTool/prompt.js.map +0 -7
- package/dist/tools/TaskListTool/TaskListTool.js +0 -102
- package/dist/tools/TaskListTool/TaskListTool.js.map +0 -7
- package/dist/tools/TaskListTool/prompt.js +0 -42
- package/dist/tools/TaskListTool/prompt.js.map +0 -7
- package/dist/tools/TaskOutputTool/TaskOutputTool.js +0 -190
- package/dist/tools/TaskOutputTool/TaskOutputTool.js.map +0 -7
- package/dist/tools/TaskOutputTool/prompt.js +0 -16
- package/dist/tools/TaskOutputTool/prompt.js.map +0 -7
- package/dist/tools/TaskStopTool/TaskStopTool.js +0 -150
- package/dist/tools/TaskStopTool/TaskStopTool.js.map +0 -7
- package/dist/tools/TaskStopTool/prompt.js +0 -15
- package/dist/tools/TaskStopTool/prompt.js.map +0 -7
- package/dist/tools/TaskTool/TaskTool.js +0 -1525
- package/dist/tools/TaskTool/TaskTool.js.map +0 -7
- package/dist/tools/TaskTool/constants.js +0 -11
- package/dist/tools/TaskTool/constants.js.map +0 -7
- package/dist/tools/TaskTool/prompt.js +0 -121
- package/dist/tools/TaskTool/prompt.js.map +0 -7
- package/dist/tools/TaskUpdateTool/TaskUpdateTool.js +0 -148
- package/dist/tools/TaskUpdateTool/TaskUpdateTool.js.map +0 -7
- package/dist/tools/TaskUpdateTool/prompt.js +0 -81
- package/dist/tools/TaskUpdateTool/prompt.js.map +0 -7
- package/dist/tools/TeamCreateTool/TeamCreateTool.js +0 -129
- package/dist/tools/TeamCreateTool/TeamCreateTool.js.map +0 -7
- package/dist/tools/TeamCreateTool/prompt.js +0 -58
- package/dist/tools/TeamCreateTool/prompt.js.map +0 -7
- package/dist/tools/TeamDeleteTool/TeamDeleteTool.js +0 -151
- package/dist/tools/TeamDeleteTool/TeamDeleteTool.js.map +0 -7
- package/dist/tools/TeamDeleteTool/prompt.js +0 -16
- package/dist/tools/TeamDeleteTool/prompt.js.map +0 -7
- package/dist/tools/ThinkTool/ThinkTool.js +0 -45
- package/dist/tools/ThinkTool/ThinkTool.js.map +0 -7
- package/dist/tools/ThinkTool/prompt.js +0 -16
- package/dist/tools/ThinkTool/prompt.js.map +0 -7
- package/dist/tools/TodoWriteTool/TodoWriteTool.js +0 -232
- package/dist/tools/TodoWriteTool/TodoWriteTool.js.map +0 -7
- package/dist/tools/TodoWriteTool/prompt.js +0 -87
- package/dist/tools/TodoWriteTool/prompt.js.map +0 -7
- package/dist/tools/URLFetcherTool/URLFetcherTool.js +0 -234
- package/dist/tools/URLFetcherTool/URLFetcherTool.js.map +0 -7
- package/dist/tools/URLFetcherTool/cache.js +0 -95
- package/dist/tools/URLFetcherTool/cache.js.map +0 -7
- package/dist/tools/URLFetcherTool/htmlToMarkdown.js +0 -44
- package/dist/tools/URLFetcherTool/htmlToMarkdown.js.map +0 -7
- package/dist/tools/URLFetcherTool/prompt.js +0 -28
- package/dist/tools/URLFetcherTool/prompt.js.map +0 -7
- package/dist/tools/WebSearchTool/WebSearchTool.js +0 -92
- package/dist/tools/WebSearchTool/WebSearchTool.js.map +0 -7
- package/dist/tools/WebSearchTool/prompt.js +0 -24
- package/dist/tools/WebSearchTool/prompt.js.map +0 -7
- package/dist/tools/WebSearchTool/searchProviders.js +0 -58
- package/dist/tools/WebSearchTool/searchProviders.js.map +0 -7
- package/dist/tools/lsTool/lsTool.js +0 -201
- package/dist/tools/lsTool/lsTool.js.map +0 -7
- package/dist/tools/lsTool/prompt.js +0 -5
- package/dist/tools/lsTool/prompt.js.map +0 -7
- package/dist/tools.js +0 -207
- package/dist/tools.js.map +0 -7
- package/dist/types/PermissionMode.js +0 -160
- package/dist/types/PermissionMode.js.map +0 -7
- package/dist/types/RequestContext.js +0 -47
- package/dist/types/RequestContext.js.map +0 -7
- package/dist/types/agentTeams.js +0 -1
- package/dist/types/agentTeams.js.map +0 -7
- package/dist/types/askUserQuestion.js +0 -1
- package/dist/types/askUserQuestion.js.map +0 -7
- package/dist/types/common.d.js +0 -1
- package/dist/types/common.d.js.map +0 -7
- package/dist/types/conversation.js +0 -1
- package/dist/types/conversation.js.map +0 -7
- package/dist/types/core.js +0 -1
- package/dist/types/core.js.map +0 -7
- package/dist/types/hooks.js +0 -47
- package/dist/types/hooks.js.map +0 -7
- package/dist/types/interactionRound.js +0 -1
- package/dist/types/interactionRound.js.map +0 -7
- package/dist/types/logs.js +0 -1
- package/dist/types/logs.js.map +0 -7
- package/dist/types/marketplace.js +0 -107
- package/dist/types/marketplace.js.map +0 -7
- package/dist/types/messageGroup.js +0 -36
- package/dist/types/messageGroup.js.map +0 -7
- package/dist/types/modelCapabilities.js +0 -1
- package/dist/types/modelCapabilities.js.map +0 -7
- package/dist/types/notebook.js +0 -1
- package/dist/types/notebook.js.map +0 -7
- package/dist/types/plugin.js +0 -86
- package/dist/types/plugin.js.map +0 -7
- package/dist/types/subagent.js +0 -1
- package/dist/types/subagent.js.map +0 -7
- package/dist/types/thinking.js +0 -1
- package/dist/types/thinking.js.map +0 -7
- package/dist/utils/BackgroundShellManager.js +0 -378
- package/dist/utils/BackgroundShellManager.js.map +0 -7
- package/dist/utils/CircuitBreaker.js +0 -248
- package/dist/utils/CircuitBreaker.js.map +0 -7
- package/dist/utils/Cursor.js +0 -315
- package/dist/utils/Cursor.js.map +0 -7
- package/dist/utils/MessageBatchBuffer.js +0 -102
- package/dist/utils/MessageBatchBuffer.js.map +0 -7
- package/dist/utils/PersistentShell.js +0 -526
- package/dist/utils/PersistentShell.js.map +0 -7
- package/dist/utils/advancedFuzzyMatcher.js +0 -209
- package/dist/utils/advancedFuzzyMatcher.js.map +0 -7
- package/dist/utils/agentHookExecutor.js +0 -103
- package/dist/utils/agentHookExecutor.js.map +0 -7
- package/dist/utils/agentLoader.js +0 -655
- package/dist/utils/agentLoader.js.map +0 -7
- package/dist/utils/agentMemory.js +0 -134
- package/dist/utils/agentMemory.js.map +0 -7
- package/dist/utils/agentStorage.js +0 -59
- package/dist/utils/agentStorage.js.map +0 -7
- package/dist/utils/agentTranscripts.js +0 -641
- package/dist/utils/agentTranscripts.js.map +0 -7
- package/dist/utils/animationManager.js +0 -250
- package/dist/utils/animationManager.js.map +0 -7
- package/dist/utils/animationSync.js +0 -110
- package/dist/utils/animationSync.js.map +0 -7
- package/dist/utils/array.js +0 -7
- package/dist/utils/array.js.map +0 -7
- package/dist/utils/ask.js +0 -80
- package/dist/utils/ask.js.map +0 -7
- package/dist/utils/async.js +0 -167
- package/dist/utils/async.js.map +0 -7
- package/dist/utils/asyncFile.js +0 -215
- package/dist/utils/asyncFile.js.map +0 -7
- package/dist/utils/atomicWrite.js +0 -23
- package/dist/utils/atomicWrite.js.map +0 -7
- package/dist/utils/auth.js +0 -11
- package/dist/utils/auth.js.map +0 -7
- package/dist/utils/autoCompactCore.js +0 -203
- package/dist/utils/autoCompactCore.js.map +0 -7
- package/dist/utils/autoMemoryPaths.js +0 -89
- package/dist/utils/autoMemoryPaths.js.map +0 -7
- package/dist/utils/autoUpdater.js +0 -113
- package/dist/utils/autoUpdater.js.map +0 -7
- package/dist/utils/backgroundAgentManager.js +0 -231
- package/dist/utils/backgroundAgentManager.js.map +0 -7
- package/dist/utils/browser.js +0 -15
- package/dist/utils/browser.js.map +0 -7
- package/dist/utils/claudeCodeSync.js +0 -439
- package/dist/utils/claudeCodeSync.js.map +0 -7
- package/dist/utils/cleanup.js +0 -54
- package/dist/utils/cleanup.js.map +0 -7
- package/dist/utils/commands.js +0 -219
- package/dist/utils/commands.js.map +0 -7
- package/dist/utils/commonUnixCommands.js +0 -689
- package/dist/utils/commonUnixCommands.js.map +0 -7
- package/dist/utils/compressionMode.js +0 -47
- package/dist/utils/compressionMode.js.map +0 -7
- package/dist/utils/config.js +0 -716
- package/dist/utils/config.js.map +0 -7
- package/dist/utils/configPaths.js +0 -199
- package/dist/utils/configPaths.js.map +0 -7
- package/dist/utils/configSchema.js +0 -232
- package/dist/utils/configSchema.js.map +0 -7
- package/dist/utils/conversationRecovery.js +0 -54
- package/dist/utils/conversationRecovery.js.map +0 -7
- package/dist/utils/credentials/CredentialStore.js +0 -1
- package/dist/utils/credentials/CredentialStore.js.map +0 -7
- package/dist/utils/credentials/EncryptedFileStore.js +0 -157
- package/dist/utils/credentials/EncryptedFileStore.js.map +0 -7
- package/dist/utils/credentials/index.js +0 -51
- package/dist/utils/credentials/index.js.map +0 -7
- package/dist/utils/credentials/migration.js +0 -82
- package/dist/utils/credentials/migration.js.map +0 -7
- package/dist/utils/debugLogger.js +0 -889
- package/dist/utils/debugLogger.js.map +0 -7
- package/dist/utils/diff.js +0 -32
- package/dist/utils/diff.js.map +0 -7
- package/dist/utils/dualPath.js +0 -24
- package/dist/utils/dualPath.js.map +0 -7
- package/dist/utils/env.js +0 -45
- package/dist/utils/env.js.map +0 -7
- package/dist/utils/envConfig.js +0 -116
- package/dist/utils/envConfig.js.map +0 -7
- package/dist/utils/errorHandling.js +0 -89
- package/dist/utils/errorHandling.js.map +0 -7
- package/dist/utils/errors.js +0 -23
- package/dist/utils/errors.js.map +0 -7
- package/dist/utils/execFileNoThrow.js +0 -45
- package/dist/utils/execFileNoThrow.js.map +0 -7
- package/dist/utils/exit.js +0 -132
- package/dist/utils/exit.js.map +0 -7
- package/dist/utils/expertChatStorage.js +0 -78
- package/dist/utils/expertChatStorage.js.map +0 -7
- package/dist/utils/externalEditor.js +0 -155
- package/dist/utils/externalEditor.js.map +0 -7
- package/dist/utils/file.js +0 -282
- package/dist/utils/file.js.map +0 -7
- package/dist/utils/fileLock.js +0 -67
- package/dist/utils/fileLock.js.map +0 -7
- package/dist/utils/fileRecoveryCore.js +0 -41
- package/dist/utils/fileRecoveryCore.js.map +0 -7
- package/dist/utils/format.js +0 -119
- package/dist/utils/format.js.map +0 -7
- package/dist/utils/fuzzyMatcher.js +0 -258
- package/dist/utils/fuzzyMatcher.js.map +0 -7
- package/dist/utils/generators.js +0 -116
- package/dist/utils/generators.js.map +0 -7
- package/dist/utils/git.js +0 -83
- package/dist/utils/git.js.map +0 -7
- package/dist/utils/globalErrorHandler.js +0 -58
- package/dist/utils/globalErrorHandler.js.map +0 -7
- package/dist/utils/gpt5.js +0 -146
- package/dist/utils/gpt5.js.map +0 -7
- package/dist/utils/groupHandlers/index.js +0 -8
- package/dist/utils/groupHandlers/index.js.map +0 -7
- package/dist/utils/groupHandlers/parallelTasksHandler.js +0 -142
- package/dist/utils/groupHandlers/parallelTasksHandler.js.map +0 -7
- package/dist/utils/groupHandlers/taskHandler.js +0 -104
- package/dist/utils/groupHandlers/taskHandler.js.map +0 -7
- package/dist/utils/groupHandlers/types.js +0 -1
- package/dist/utils/groupHandlers/types.js.map +0 -7
- package/dist/utils/historyManager.js +0 -234
- package/dist/utils/historyManager.js.map +0 -7
- package/dist/utils/hookManager.js +0 -540
- package/dist/utils/hookManager.js.map +0 -7
- package/dist/utils/http.js +0 -7
- package/dist/utils/http.js.map +0 -7
- package/dist/utils/imagePaste.js +0 -29
- package/dist/utils/imagePaste.js.map +0 -7
- package/dist/utils/json.js +0 -16
- package/dist/utils/json.js.map +0 -7
- package/dist/utils/log.js +0 -333
- package/dist/utils/log.js.map +0 -7
- package/dist/utils/logRotation.js +0 -224
- package/dist/utils/logRotation.js.map +0 -7
- package/dist/utils/markdown.js +0 -464
- package/dist/utils/markdown.js.map +0 -7
- package/dist/utils/marketplaceManager.js +0 -545
- package/dist/utils/marketplaceManager.js.map +0 -7
- package/dist/utils/memSafety.js +0 -264
- package/dist/utils/memSafety.js.map +0 -7
- package/dist/utils/memoizeWithTTL.js +0 -25
- package/dist/utils/memoizeWithTTL.js.map +0 -7
- package/dist/utils/messageContextManager.js +0 -208
- package/dist/utils/messageContextManager.js.map +0 -7
- package/dist/utils/messageGroupManager.js +0 -274
- package/dist/utils/messageGroupManager.js.map +0 -7
- package/dist/utils/messages.js +0 -725
- package/dist/utils/messages.js.map +0 -7
- package/dist/utils/migration/index.js +0 -37
- package/dist/utils/migration/index.js.map +0 -7
- package/dist/utils/migration/migrateHistory.js +0 -273
- package/dist/utils/migration/migrateHistory.js.map +0 -7
- package/dist/utils/migration/migrateTodos.js +0 -323
- package/dist/utils/migration/migrateTodos.js.map +0 -7
- package/dist/utils/model.js +0 -846
- package/dist/utils/model.js.map +0 -7
- package/dist/utils/pasteCache.js +0 -313
- package/dist/utils/pasteCache.js.map +0 -7
- package/dist/utils/permissions/filesystem.js +0 -236
- package/dist/utils/permissions/filesystem.js.map +0 -7
- package/dist/utils/plan/planMode.js +0 -143
- package/dist/utils/plan/planMode.js.map +0 -7
- package/dist/utils/pluginInstaller.js +0 -518
- package/dist/utils/pluginInstaller.js.map +0 -7
- package/dist/utils/pluginLoader.js +0 -819
- package/dist/utils/pluginLoader.js.map +0 -7
- package/dist/utils/pluginRegistry.js +0 -111
- package/dist/utils/pluginRegistry.js.map +0 -7
- package/dist/utils/pluginValidator.js +0 -798
- package/dist/utils/pluginValidator.js.map +0 -7
- package/dist/utils/ptyCompat.js +0 -125
- package/dist/utils/ptyCompat.js.map +0 -7
- package/dist/utils/replStateMachine.js +0 -145
- package/dist/utils/replStateMachine.js.map +0 -7
- package/dist/utils/repoFetcher.js +0 -110
- package/dist/utils/repoFetcher.js.map +0 -7
- package/dist/utils/ripgrep.js +0 -236
- package/dist/utils/ripgrep.js.map +0 -7
- package/dist/utils/roundConverter.js +0 -262
- package/dist/utils/roundConverter.js.map +0 -7
- package/dist/utils/safeFetch.js +0 -45
- package/dist/utils/safeFetch.js.map +0 -7
- package/dist/utils/safePath.js +0 -132
- package/dist/utils/safePath.js.map +0 -7
- package/dist/utils/sanitizeInput.js +0 -32
- package/dist/utils/sanitizeInput.js.map +0 -7
- package/dist/utils/secureFile.js +0 -512
- package/dist/utils/secureFile.js.map +0 -7
- package/dist/utils/secureKeyStorage.js +0 -341
- package/dist/utils/secureKeyStorage.js.map +0 -7
- package/dist/utils/sensitiveFiles.js +0 -125
- package/dist/utils/sensitiveFiles.js.map +0 -7
- package/dist/utils/session/sessionPlugins.js +0 -67
- package/dist/utils/session/sessionPlugins.js.map +0 -7
- package/dist/utils/sessionIndex.js +0 -192
- package/dist/utils/sessionIndex.js.map +0 -7
- package/dist/utils/sessionState.js +0 -22
- package/dist/utils/sessionState.js.map +0 -7
- package/dist/utils/sessionTracker.js +0 -170
- package/dist/utils/sessionTracker.js.map +0 -7
- package/dist/utils/simpleMode.js +0 -7
- package/dist/utils/simpleMode.js.map +0 -7
- package/dist/utils/skillLoader.js +0 -230
- package/dist/utils/skillLoader.js.map +0 -7
- package/dist/utils/state.js +0 -24
- package/dist/utils/state.js.map +0 -7
- package/dist/utils/stats.js +0 -417
- package/dist/utils/stats.js.map +0 -7
- package/dist/utils/streamingState.js +0 -62
- package/dist/utils/streamingState.js.map +0 -7
- package/dist/utils/stringSubstitution.js +0 -106
- package/dist/utils/stringSubstitution.js.map +0 -7
- package/dist/utils/style.js +0 -34
- package/dist/utils/style.js.map +0 -7
- package/dist/utils/taskDisplayUtils.js +0 -258
- package/dist/utils/taskDisplayUtils.js.map +0 -7
- package/dist/utils/teamConfig.js +0 -624
- package/dist/utils/teamConfig.js.map +0 -7
- package/dist/utils/terminal.js +0 -59
- package/dist/utils/terminal.js.map +0 -7
- package/dist/utils/theme.js +0 -134
- package/dist/utils/theme.js.map +0 -7
- package/dist/utils/thinking.js +0 -63
- package/dist/utils/thinking.js.map +0 -7
- package/dist/utils/todoChangeCalculator.js +0 -64
- package/dist/utils/todoChangeCalculator.js.map +0 -7
- package/dist/utils/todoStorage.js +0 -413
- package/dist/utils/todoStorage.js.map +0 -7
- package/dist/utils/tokenProgress.js +0 -55
- package/dist/utils/tokenProgress.js.map +0 -7
- package/dist/utils/tokens.js +0 -30
- package/dist/utils/tokens.js.map +0 -7
- package/dist/utils/toolExecutionController.js +0 -109
- package/dist/utils/toolExecutionController.js.map +0 -7
- package/dist/utils/toolRiskClassification.js +0 -210
- package/dist/utils/toolRiskClassification.js.map +0 -7
- package/dist/utils/toolTimeout.js +0 -136
- package/dist/utils/toolTimeout.js.map +0 -7
- package/dist/utils/tooling/safeRender.js +0 -115
- package/dist/utils/tooling/safeRender.js.map +0 -7
- package/dist/utils/tooling/toolError.js +0 -12
- package/dist/utils/tooling/toolError.js.map +0 -7
- package/dist/utils/unaryLogging.js +0 -6
- package/dist/utils/unaryLogging.js.map +0 -7
- package/dist/utils/user.js +0 -40
- package/dist/utils/user.js.map +0 -7
- package/dist/utils/userFriendlyError.js +0 -346
- package/dist/utils/userFriendlyError.js.map +0 -7
- package/dist/utils/validate.js +0 -132
- package/dist/utils/validate.js.map +0 -7
- package/dist/version.js +0 -7
- package/dist/version.js.map +0 -7
- package/dist/yoga.wasm +0 -0
- /package/{dist/utils/vendor → vendor}/ripgrep/arm64-darwin/rg +0 -0
|
@@ -1,272 +0,0 @@
|
|
|
1
|
-
import { Box, Text, useInput } from "ink";
|
|
2
|
-
import * as React from "react";
|
|
3
|
-
import { useMemo, useState } from "react";
|
|
4
|
-
import figures from "figures";
|
|
5
|
-
import { basename } from "path";
|
|
6
|
-
import { BRAND_GRADIENT, SEMANTIC_COLORS } from "../constants/colors.js";
|
|
7
|
-
import { t } from "../i18n/index.js";
|
|
8
|
-
const FILE_TOOLS = /* @__PURE__ */ new Set(["Write", "Edit", "MultiEdit", "NotebookEdit"]);
|
|
9
|
-
function extractFileChangesForTurn(messages, fromIndex, toIndex) {
|
|
10
|
-
const files = /* @__PURE__ */ new Set();
|
|
11
|
-
for (let i = fromIndex; i < toIndex; i++) {
|
|
12
|
-
const msg = messages[i];
|
|
13
|
-
if (!msg || msg.type !== "assistant") continue;
|
|
14
|
-
const content = msg.message.content;
|
|
15
|
-
if (!Array.isArray(content)) continue;
|
|
16
|
-
for (const block of content) {
|
|
17
|
-
if (block.type !== "tool_use") continue;
|
|
18
|
-
if (!FILE_TOOLS.has(block.name)) continue;
|
|
19
|
-
const input = block.input;
|
|
20
|
-
const filePath = input?.file_path ?? input?.notebook_path;
|
|
21
|
-
if (typeof filePath === "string") {
|
|
22
|
-
files.add(basename(filePath));
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
return Array.from(files);
|
|
27
|
-
}
|
|
28
|
-
function stripXmlForDisplay(raw) {
|
|
29
|
-
if (raw.includes("<command-name>") || raw.includes("<command-message>")) {
|
|
30
|
-
const cmdMatch = raw.match(/<command-message>([\s\S]*?)<\/command-message>/);
|
|
31
|
-
const argsMatch = raw.match(/<command-args>([\s\S]*?)<\/command-args>/);
|
|
32
|
-
const cmd = cmdMatch?.[1]?.trim() ?? "";
|
|
33
|
-
const args = argsMatch?.[1]?.trim() ?? "";
|
|
34
|
-
return cmd ? `/${cmd}${args ? " " + args : ""}` : "";
|
|
35
|
-
}
|
|
36
|
-
return raw.replace(/<system-reminder>[\s\S]*?<\/system-reminder>\s*/g, "").replace(/<local-command-caveat>[\s\S]*?<\/local-command-caveat>\s*/g, "").replace(/<local-command-stdout>[\s\S]*?<\/local-command-stdout>\s*/g, "").replace(/<task-notification>[\s\S]*?<\/task-notification>\s*/g, "").replace(/<user-guidance>\n?([\s\S]*?)\n?<\/user-guidance>/g, "$1").replace(/<team-message\s+[^>]*>([\s\S]*?)<\/team-message>/g, "").replace(/<bash-input>[\s\S]*?<\/bash-input>\s*/g, "").replace(/<koding-input>[\s\S]*?<\/koding-input>\s*/g, "").replace(
|
|
37
|
-
/<available-deferred-tools>[\s\S]*?<\/available-deferred-tools>\s*/g,
|
|
38
|
-
""
|
|
39
|
-
).replace(/<command-name>[\s\S]*?<\/command-name>\s*/g, "").replace(/<command-message>[\s\S]*?<\/command-message>\s*/g, "").replace(/<command-args>[\s\S]*?<\/command-args>\s*/g, "").trim();
|
|
40
|
-
}
|
|
41
|
-
function getUserText(msg) {
|
|
42
|
-
const content = msg.message.content;
|
|
43
|
-
if (typeof content === "string") return stripXmlForDisplay(content);
|
|
44
|
-
if (Array.isArray(content)) {
|
|
45
|
-
for (const block of content) {
|
|
46
|
-
if (block.type === "text") return stripXmlForDisplay(block.text);
|
|
47
|
-
}
|
|
48
|
-
}
|
|
49
|
-
return "";
|
|
50
|
-
}
|
|
51
|
-
function getRewindPoints(messages) {
|
|
52
|
-
const points = [];
|
|
53
|
-
const userIndices = [];
|
|
54
|
-
for (let i = 0; i < messages.length; i++) {
|
|
55
|
-
const msg = messages[i];
|
|
56
|
-
if (msg?.type === "user" && !(Array.isArray(msg.message.content) && msg.message.content[0]?.type === "tool_result")) {
|
|
57
|
-
userIndices.push(i);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
60
|
-
for (let i = 0; i < userIndices.length; i++) {
|
|
61
|
-
const idx = userIndices[i];
|
|
62
|
-
const msg = messages[idx];
|
|
63
|
-
const nextIdx = i + 1 < userIndices.length ? userIndices[i + 1] : messages.length;
|
|
64
|
-
points.push({
|
|
65
|
-
userMessage: msg,
|
|
66
|
-
messageIndex: idx,
|
|
67
|
-
userText: getUserText(msg),
|
|
68
|
-
changedFiles: extractFileChangesForTurn(messages, idx, nextIdx)
|
|
69
|
-
});
|
|
70
|
-
}
|
|
71
|
-
return points;
|
|
72
|
-
}
|
|
73
|
-
const MAX_VISIBLE = 8;
|
|
74
|
-
const MAX_TEXT_LENGTH = 120;
|
|
75
|
-
function RewindPanel({
|
|
76
|
-
messages,
|
|
77
|
-
onAction,
|
|
78
|
-
onEscape
|
|
79
|
-
}) {
|
|
80
|
-
const rewindPoints = useMemo(() => getRewindPoints(messages), [messages]);
|
|
81
|
-
const [phase, setPhase] = useState(
|
|
82
|
-
"message_select"
|
|
83
|
-
);
|
|
84
|
-
const totalItems = rewindPoints.length + 1;
|
|
85
|
-
const [selectedIndex, setSelectedIndex] = useState(rewindPoints.length);
|
|
86
|
-
const [actionIndex, setActionIndex] = useState(0);
|
|
87
|
-
const [selectedPoint, setSelectedPoint] = useState(null);
|
|
88
|
-
useInput((input, key) => {
|
|
89
|
-
if (phase === "message_select") {
|
|
90
|
-
if (key.escape) {
|
|
91
|
-
onEscape();
|
|
92
|
-
return;
|
|
93
|
-
}
|
|
94
|
-
if (key.upArrow) {
|
|
95
|
-
setSelectedIndex((prev) => Math.max(0, prev - 1));
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
if (key.downArrow) {
|
|
99
|
-
setSelectedIndex((prev) => Math.min(totalItems - 1, prev + 1));
|
|
100
|
-
return;
|
|
101
|
-
}
|
|
102
|
-
if (key.return) {
|
|
103
|
-
if (selectedIndex >= rewindPoints.length) {
|
|
104
|
-
onEscape();
|
|
105
|
-
return;
|
|
106
|
-
}
|
|
107
|
-
const point = rewindPoints[selectedIndex];
|
|
108
|
-
if (point) {
|
|
109
|
-
setSelectedPoint(point);
|
|
110
|
-
setPhase("action_select");
|
|
111
|
-
setActionIndex(0);
|
|
112
|
-
}
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
} else if (phase === "action_select") {
|
|
116
|
-
if (key.escape) {
|
|
117
|
-
setPhase("message_select");
|
|
118
|
-
return;
|
|
119
|
-
}
|
|
120
|
-
if (key.upArrow) {
|
|
121
|
-
setActionIndex((prev) => Math.max(0, prev - 1));
|
|
122
|
-
return;
|
|
123
|
-
}
|
|
124
|
-
if (key.downArrow) {
|
|
125
|
-
setActionIndex((prev) => Math.min(4, prev + 1));
|
|
126
|
-
return;
|
|
127
|
-
}
|
|
128
|
-
if (key.return && selectedPoint) {
|
|
129
|
-
const actions = [
|
|
130
|
-
"restore_code_and_conversation",
|
|
131
|
-
"restore_conversation",
|
|
132
|
-
"restore_code",
|
|
133
|
-
"summarize_from_here",
|
|
134
|
-
"never_mind"
|
|
135
|
-
];
|
|
136
|
-
onAction(actions[actionIndex], selectedPoint);
|
|
137
|
-
return;
|
|
138
|
-
}
|
|
139
|
-
const num = Number(input);
|
|
140
|
-
if (num >= 1 && num <= 5 && selectedPoint) {
|
|
141
|
-
const actions = [
|
|
142
|
-
"restore_code_and_conversation",
|
|
143
|
-
"restore_conversation",
|
|
144
|
-
"restore_code",
|
|
145
|
-
"summarize_from_here",
|
|
146
|
-
"never_mind"
|
|
147
|
-
];
|
|
148
|
-
onAction(actions[num - 1], selectedPoint);
|
|
149
|
-
return;
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
});
|
|
153
|
-
if (phase === "message_select") {
|
|
154
|
-
const firstVisible = Math.max(
|
|
155
|
-
0,
|
|
156
|
-
Math.min(
|
|
157
|
-
selectedIndex - Math.floor(MAX_VISIBLE / 2),
|
|
158
|
-
totalItems - MAX_VISIBLE
|
|
159
|
-
)
|
|
160
|
-
);
|
|
161
|
-
const lastVisible = Math.min(totalItems, firstVisible + MAX_VISIBLE);
|
|
162
|
-
return /* @__PURE__ */ React.createElement(
|
|
163
|
-
Box,
|
|
164
|
-
{
|
|
165
|
-
flexDirection: "column",
|
|
166
|
-
borderStyle: "round",
|
|
167
|
-
borderColor: BRAND_GRADIENT.START,
|
|
168
|
-
paddingX: 1,
|
|
169
|
-
paddingY: 1
|
|
170
|
-
},
|
|
171
|
-
/* @__PURE__ */ React.createElement(Box, { flexDirection: "column", marginBottom: 1 }, /* @__PURE__ */ React.createElement(Text, { bold: true, color: BRAND_GRADIENT.START }, t("rewind.title")), /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.secondary }, t("rewind.selectMessage"))),
|
|
172
|
-
Array.from({ length: lastVisible - firstVisible }, (_, i) => {
|
|
173
|
-
const itemIndex = firstVisible + i;
|
|
174
|
-
const isSelected = itemIndex === selectedIndex;
|
|
175
|
-
const isCurrent = itemIndex >= rewindPoints.length;
|
|
176
|
-
if (isCurrent) {
|
|
177
|
-
return /* @__PURE__ */ React.createElement(Box, { key: "current", marginBottom: 0 }, /* @__PURE__ */ React.createElement(
|
|
178
|
-
Text,
|
|
179
|
-
{
|
|
180
|
-
color: isSelected ? BRAND_GRADIENT.START : SEMANTIC_COLORS.dim,
|
|
181
|
-
bold: isSelected
|
|
182
|
-
},
|
|
183
|
-
isSelected ? `${figures.pointer} ` : " "
|
|
184
|
-
), /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.dim, italic: true }, t("dialog.current")));
|
|
185
|
-
}
|
|
186
|
-
const point = rewindPoints[itemIndex];
|
|
187
|
-
if (!point) return null;
|
|
188
|
-
const displayText = point.userText.replace(/\n/g, " ").slice(0, MAX_TEXT_LENGTH);
|
|
189
|
-
const truncated = point.userText.length > MAX_TEXT_LENGTH ? displayText + "\u2026" : displayText;
|
|
190
|
-
return /* @__PURE__ */ React.createElement(
|
|
191
|
-
Box,
|
|
192
|
-
{
|
|
193
|
-
key: point.userMessage.uuid,
|
|
194
|
-
flexDirection: "column",
|
|
195
|
-
marginBottom: 0
|
|
196
|
-
},
|
|
197
|
-
/* @__PURE__ */ React.createElement(Box, null, /* @__PURE__ */ React.createElement(
|
|
198
|
-
Text,
|
|
199
|
-
{
|
|
200
|
-
color: isSelected ? BRAND_GRADIENT.START : void 0,
|
|
201
|
-
bold: isSelected
|
|
202
|
-
},
|
|
203
|
-
isSelected ? `${figures.pointer} ` : " "
|
|
204
|
-
), /* @__PURE__ */ React.createElement(
|
|
205
|
-
Text,
|
|
206
|
-
{
|
|
207
|
-
color: isSelected ? BRAND_GRADIENT.START : void 0,
|
|
208
|
-
wrap: "truncate"
|
|
209
|
-
},
|
|
210
|
-
truncated || t("dialog.emptyMessage")
|
|
211
|
-
)),
|
|
212
|
-
/* @__PURE__ */ React.createElement(Box, { marginLeft: 3 }, /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.dim }, point.changedFiles.length === 0 ? t("rewind.noCodeChanges") : point.changedFiles.join(", ")))
|
|
213
|
-
);
|
|
214
|
-
}),
|
|
215
|
-
firstVisible > 0 && /* @__PURE__ */ React.createElement(Box, { marginLeft: 2 }, /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.dim }, figures.arrowUp, " ", t("rewind.moreAbove"))),
|
|
216
|
-
lastVisible < totalItems && /* @__PURE__ */ React.createElement(Box, { marginLeft: 2 }, /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.dim }, figures.arrowDown, " ", t("rewind.moreBelow"))),
|
|
217
|
-
/* @__PURE__ */ React.createElement(Box, { marginTop: 1 }, /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.dim }, t("rewind.enterToContinue"), " \xB7 ", t("rewind.escToExit")))
|
|
218
|
-
);
|
|
219
|
-
}
|
|
220
|
-
if (!selectedPoint) return null;
|
|
221
|
-
const confirmText = selectedPoint.userText.replace(/\n/g, " ").slice(0, 100);
|
|
222
|
-
const confirmDisplay = selectedPoint.userText.length > 100 ? confirmText + "\u2026" : confirmText;
|
|
223
|
-
const actionLabels = [
|
|
224
|
-
t("rewind.action.restoreCodeAndConversation"),
|
|
225
|
-
t("rewind.action.restoreConversation"),
|
|
226
|
-
t("rewind.action.restoreCode"),
|
|
227
|
-
t("rewind.action.summarizeFromHere"),
|
|
228
|
-
t("rewind.action.neverMind")
|
|
229
|
-
];
|
|
230
|
-
return /* @__PURE__ */ React.createElement(
|
|
231
|
-
Box,
|
|
232
|
-
{
|
|
233
|
-
flexDirection: "column",
|
|
234
|
-
borderStyle: "round",
|
|
235
|
-
borderColor: BRAND_GRADIENT.START,
|
|
236
|
-
paddingX: 1,
|
|
237
|
-
paddingY: 1
|
|
238
|
-
},
|
|
239
|
-
/* @__PURE__ */ React.createElement(Box, { flexDirection: "column", marginBottom: 1 }, /* @__PURE__ */ React.createElement(Text, { bold: true, color: BRAND_GRADIENT.START }, t("rewind.title")), /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.secondary }, t("rewind.confirmRestore"))),
|
|
240
|
-
/* @__PURE__ */ React.createElement(Box, { marginBottom: 1, marginLeft: 1 }, /* @__PURE__ */ React.createElement(
|
|
241
|
-
Box,
|
|
242
|
-
{
|
|
243
|
-
borderStyle: "single",
|
|
244
|
-
borderColor: SEMANTIC_COLORS.dim,
|
|
245
|
-
borderLeft: true,
|
|
246
|
-
borderRight: false,
|
|
247
|
-
borderTop: false,
|
|
248
|
-
borderBottom: false,
|
|
249
|
-
paddingLeft: 1
|
|
250
|
-
},
|
|
251
|
-
/* @__PURE__ */ React.createElement(Text, null, confirmDisplay)
|
|
252
|
-
)),
|
|
253
|
-
/* @__PURE__ */ React.createElement(Box, { flexDirection: "column", marginBottom: 1, marginLeft: 1 }, /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.secondary }, t("rewind.conversationWillBeForked")), selectedPoint.changedFiles.length > 0 ? /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.secondary }, t("rewind.codeWillBeRestored"), " ", selectedPoint.changedFiles.join(", "), ".") : /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.dim }, t("rewind.noCodeChanges"))),
|
|
254
|
-
actionLabels.map((label, i) => /* @__PURE__ */ React.createElement(Box, { key: i }, /* @__PURE__ */ React.createElement(
|
|
255
|
-
Text,
|
|
256
|
-
{
|
|
257
|
-
color: i === actionIndex ? BRAND_GRADIENT.START : void 0,
|
|
258
|
-
bold: i === actionIndex
|
|
259
|
-
},
|
|
260
|
-
i === actionIndex ? `${figures.pointer} ` : " ",
|
|
261
|
-
i + 1,
|
|
262
|
-
". ",
|
|
263
|
-
label
|
|
264
|
-
))),
|
|
265
|
-
/* @__PURE__ */ React.createElement(Box, { marginTop: 1 }, /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.error }, t("rewind.bashWarning")))
|
|
266
|
-
);
|
|
267
|
-
}
|
|
268
|
-
export {
|
|
269
|
-
RewindPanel,
|
|
270
|
-
getRewindPoints
|
|
271
|
-
};
|
|
272
|
-
//# sourceMappingURL=RewindPanel.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/RewindPanel.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * RewindPanel \u2014 CC-compatible Rewind/Checkpoint UI\n *\n * Two-phase overlay:\n * 1. Message Select: scrollable list of user prompts with file change summaries\n * 2. Action Select: 5 options (restore code+convo, convo only, code only, summarize, cancel)\n *\n * Activation: Double-Esc or /rewind command\n * Boundaries: Only shows messages since last /clear or /compact (naturally enforced\n * because those operations truncate the messages array).\n */\n\nimport { Box, Text, useInput } from 'ink'\nimport * as React from 'react'\nimport { useMemo, useState } from 'react'\nimport figures from 'figures'\nimport { basename } from 'path'\nimport { BRAND_GRADIENT, SEMANTIC_COLORS } from '@constants/colors'\nimport { t } from '@i18n'\nimport type { Message, UserMessage } from '@query'\n\n// \u2500\u2500 Types \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\nexport interface RewindPoint {\n /** The original user message */\n userMessage: UserMessage\n /** Index in the messages array */\n messageIndex: number\n /** Plain text of the user prompt (for display) */\n userText: string\n /** File paths modified in this turn (basename only) */\n changedFiles: string[]\n}\n\nexport type RewindAction =\n | 'restore_code_and_conversation'\n | 'restore_conversation'\n | 'restore_code'\n | 'summarize_from_here'\n | 'never_mind'\n\ninterface Props {\n messages: Message[]\n onAction: (action: RewindAction, point: RewindPoint) => void\n onEscape: () => void\n}\n\n// \u2500\u2500 Utilities \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n/** Tool names that modify files on disk */\nconst FILE_TOOLS = new Set(['Write', 'Edit', 'MultiEdit', 'NotebookEdit'])\n\n/**\n * Extract file paths changed between two message indices.\n * Scans assistant messages for file-modifying tool_use blocks.\n */\nfunction extractFileChangesForTurn(\n messages: Message[],\n fromIndex: number,\n toIndex: number,\n): string[] {\n const files = new Set<string>()\n\n for (let i = fromIndex; i < toIndex; i++) {\n const msg = messages[i]\n if (!msg || msg.type !== 'assistant') continue\n\n const content = msg.message.content\n if (!Array.isArray(content)) continue\n\n for (const block of content) {\n if (block.type !== 'tool_use') continue\n if (!FILE_TOOLS.has(block.name)) continue\n\n const input = block.input as Record<string, unknown>\n const filePath = (input?.file_path ?? input?.notebook_path) as\n | string\n | undefined\n if (typeof filePath === 'string') {\n files.add(basename(filePath))\n }\n }\n }\n\n return Array.from(files)\n}\n\n/** Strip XML tags to extract display-friendly text, mirroring REPL rendering */\nfunction stripXmlForDisplay(raw: string): string {\n // Command messages \u2192 show as \"/<command> <args>\"\n if (raw.includes('<command-name>') || raw.includes('<command-message>')) {\n const cmdMatch = raw.match(/<command-message>([\\s\\S]*?)<\\/command-message>/)\n const argsMatch = raw.match(/<command-args>([\\s\\S]*?)<\\/command-args>/)\n const cmd = cmdMatch?.[1]?.trim() ?? ''\n const args = argsMatch?.[1]?.trim() ?? ''\n return cmd ? `/${cmd}${args ? ' ' + args : ''}` : ''\n }\n\n // Strip all known system/protocol XML tags, keep remaining plain text\n return raw\n .replace(/<system-reminder>[\\s\\S]*?<\\/system-reminder>\\s*/g, '')\n .replace(/<local-command-caveat>[\\s\\S]*?<\\/local-command-caveat>\\s*/g, '')\n .replace(/<local-command-stdout>[\\s\\S]*?<\\/local-command-stdout>\\s*/g, '')\n .replace(/<task-notification>[\\s\\S]*?<\\/task-notification>\\s*/g, '')\n .replace(/<user-guidance>\\n?([\\s\\S]*?)\\n?<\\/user-guidance>/g, '$1')\n .replace(/<team-message\\s+[^>]*>([\\s\\S]*?)<\\/team-message>/g, '')\n .replace(/<bash-input>[\\s\\S]*?<\\/bash-input>\\s*/g, '')\n .replace(/<koding-input>[\\s\\S]*?<\\/koding-input>\\s*/g, '')\n .replace(\n /<available-deferred-tools>[\\s\\S]*?<\\/available-deferred-tools>\\s*/g,\n '',\n )\n .replace(/<command-name>[\\s\\S]*?<\\/command-name>\\s*/g, '')\n .replace(/<command-message>[\\s\\S]*?<\\/command-message>\\s*/g, '')\n .replace(/<command-args>[\\s\\S]*?<\\/command-args>\\s*/g, '')\n .trim()\n}\n\n/** Extract plain text from a user message */\nfunction getUserText(msg: UserMessage): string {\n const content = msg.message.content\n if (typeof content === 'string') return stripXmlForDisplay(content)\n if (Array.isArray(content)) {\n for (const block of content) {\n if (block.type === 'text') return stripXmlForDisplay(block.text)\n }\n }\n return ''\n}\n\n/**\n * Build rewind points from the messages array.\n * Each point is a user prompt (excluding tool results) with its\n * associated file changes extracted from the following assistant turn.\n */\nexport function getRewindPoints(messages: Message[]): RewindPoint[] {\n const points: RewindPoint[] = []\n\n // Collect indices of user messages (skip tool_result messages)\n const userIndices: number[] = []\n for (let i = 0; i < messages.length; i++) {\n const msg = messages[i]\n if (\n msg?.type === 'user' &&\n !(\n Array.isArray(msg.message.content) &&\n msg.message.content[0]?.type === 'tool_result'\n )\n ) {\n userIndices.push(i)\n }\n }\n\n for (let i = 0; i < userIndices.length; i++) {\n const idx = userIndices[i]!\n const msg = messages[idx] as UserMessage\n const nextIdx =\n i + 1 < userIndices.length ? userIndices[i + 1]! : messages.length\n\n points.push({\n userMessage: msg,\n messageIndex: idx,\n userText: getUserText(msg),\n changedFiles: extractFileChangesForTurn(messages, idx, nextIdx),\n })\n }\n\n return points\n}\n\n// \u2500\u2500 Constants \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\nconst MAX_VISIBLE = 8\nconst MAX_TEXT_LENGTH = 120\n\n// \u2500\u2500 Component \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\nexport function RewindPanel({\n messages,\n onAction,\n onEscape,\n}: Props): React.ReactNode {\n const rewindPoints = useMemo(() => getRewindPoints(messages), [messages])\n\n const [phase, setPhase] = useState<'message_select' | 'action_select'>(\n 'message_select',\n )\n // Total items = rewindPoints + 1 (current). Default selection: (current)\n const totalItems = rewindPoints.length + 1\n const [selectedIndex, setSelectedIndex] = useState(rewindPoints.length)\n const [actionIndex, setActionIndex] = useState(0)\n const [selectedPoint, setSelectedPoint] = useState<RewindPoint | null>(null)\n\n useInput((input, key) => {\n if (phase === 'message_select') {\n if (key.escape) {\n onEscape()\n return\n }\n if (key.upArrow) {\n setSelectedIndex(prev => Math.max(0, prev - 1))\n return\n }\n if (key.downArrow) {\n setSelectedIndex(prev => Math.min(totalItems - 1, prev + 1))\n return\n }\n if (key.return) {\n // (current) = do nothing\n if (selectedIndex >= rewindPoints.length) {\n onEscape()\n return\n }\n const point = rewindPoints[selectedIndex]\n if (point) {\n setSelectedPoint(point)\n setPhase('action_select')\n setActionIndex(0)\n }\n return\n }\n } else if (phase === 'action_select') {\n if (key.escape) {\n setPhase('message_select')\n return\n }\n if (key.upArrow) {\n setActionIndex(prev => Math.max(0, prev - 1))\n return\n }\n if (key.downArrow) {\n setActionIndex(prev => Math.min(4, prev + 1))\n return\n }\n if (key.return && selectedPoint) {\n const actions: RewindAction[] = [\n 'restore_code_and_conversation',\n 'restore_conversation',\n 'restore_code',\n 'summarize_from_here',\n 'never_mind',\n ]\n onAction(actions[actionIndex]!, selectedPoint)\n return\n }\n // Number keys 1-5\n const num = Number(input)\n if (num >= 1 && num <= 5 && selectedPoint) {\n const actions: RewindAction[] = [\n 'restore_code_and_conversation',\n 'restore_conversation',\n 'restore_code',\n 'summarize_from_here',\n 'never_mind',\n ]\n onAction(actions[num - 1]!, selectedPoint)\n return\n }\n }\n })\n\n // \u2500\u2500 Phase 1: Message Select \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n if (phase === 'message_select') {\n const firstVisible = Math.max(\n 0,\n Math.min(\n selectedIndex - Math.floor(MAX_VISIBLE / 2),\n totalItems - MAX_VISIBLE,\n ),\n )\n const lastVisible = Math.min(totalItems, firstVisible + MAX_VISIBLE)\n\n return (\n <Box\n flexDirection=\"column\"\n borderStyle=\"round\"\n borderColor={BRAND_GRADIENT.START}\n paddingX={1}\n paddingY={1}\n >\n {/* Header */}\n <Box flexDirection=\"column\" marginBottom={1}>\n <Text bold color={BRAND_GRADIENT.START}>\n {t('rewind.title')}\n </Text>\n <Text color={SEMANTIC_COLORS.secondary}>\n {t('rewind.selectMessage')}\n </Text>\n </Box>\n\n {/* Message list */}\n {Array.from({ length: lastVisible - firstVisible }, (_, i) => {\n const itemIndex = firstVisible + i\n const isSelected = itemIndex === selectedIndex\n const isCurrent = itemIndex >= rewindPoints.length\n\n if (isCurrent) {\n return (\n <Box key=\"current\" marginBottom={0}>\n <Text\n color={\n isSelected ? BRAND_GRADIENT.START : SEMANTIC_COLORS.dim\n }\n bold={isSelected}\n >\n {isSelected ? `${figures.pointer} ` : ' '}\n </Text>\n <Text color={SEMANTIC_COLORS.dim} italic>\n {t('dialog.current')}\n </Text>\n </Box>\n )\n }\n\n const point = rewindPoints[itemIndex]\n if (!point) return null\n\n const displayText = point.userText\n .replace(/\\n/g, ' ')\n .slice(0, MAX_TEXT_LENGTH)\n const truncated =\n point.userText.length > MAX_TEXT_LENGTH\n ? displayText + '\u2026'\n : displayText\n\n return (\n <Box\n key={point.userMessage.uuid}\n flexDirection=\"column\"\n marginBottom={0}\n >\n <Box>\n <Text\n color={isSelected ? BRAND_GRADIENT.START : undefined}\n bold={isSelected}\n >\n {isSelected ? `${figures.pointer} ` : ' '}\n </Text>\n <Text\n color={isSelected ? BRAND_GRADIENT.START : undefined}\n wrap=\"truncate\"\n >\n {truncated || t('dialog.emptyMessage')}\n </Text>\n </Box>\n <Box marginLeft={3}>\n <Text color={SEMANTIC_COLORS.dim}>\n {point.changedFiles.length === 0\n ? t('rewind.noCodeChanges')\n : point.changedFiles.join(', ')}\n </Text>\n </Box>\n </Box>\n )\n })}\n\n {/* Scroll indicators */}\n {firstVisible > 0 && (\n <Box marginLeft={2}>\n <Text color={SEMANTIC_COLORS.dim}>\n {figures.arrowUp} {t('rewind.moreAbove')}\n </Text>\n </Box>\n )}\n {lastVisible < totalItems && (\n <Box marginLeft={2}>\n <Text color={SEMANTIC_COLORS.dim}>\n {figures.arrowDown} {t('rewind.moreBelow')}\n </Text>\n </Box>\n )}\n\n {/* Footer */}\n <Box marginTop={1}>\n <Text color={SEMANTIC_COLORS.dim}>\n {t('rewind.enterToContinue')} \u00B7 {t('rewind.escToExit')}\n </Text>\n </Box>\n </Box>\n )\n }\n\n // \u2500\u2500 Phase 2: Action Select \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\n\n if (!selectedPoint) return null\n\n const confirmText = selectedPoint.userText.replace(/\\n/g, ' ').slice(0, 100)\n const confirmDisplay =\n selectedPoint.userText.length > 100 ? confirmText + '\u2026' : confirmText\n\n const actionLabels = [\n t('rewind.action.restoreCodeAndConversation'),\n t('rewind.action.restoreConversation'),\n t('rewind.action.restoreCode'),\n t('rewind.action.summarizeFromHere'),\n t('rewind.action.neverMind'),\n ]\n\n return (\n <Box\n flexDirection=\"column\"\n borderStyle=\"round\"\n borderColor={BRAND_GRADIENT.START}\n paddingX={1}\n paddingY={1}\n >\n {/* Header */}\n <Box flexDirection=\"column\" marginBottom={1}>\n <Text bold color={BRAND_GRADIENT.START}>\n {t('rewind.title')}\n </Text>\n <Text color={SEMANTIC_COLORS.secondary}>\n {t('rewind.confirmRestore')}\n </Text>\n </Box>\n\n {/* Selected message preview (quoted) */}\n <Box marginBottom={1} marginLeft={1}>\n <Box\n borderStyle=\"single\"\n borderColor={SEMANTIC_COLORS.dim}\n borderLeft={true}\n borderRight={false}\n borderTop={false}\n borderBottom={false}\n paddingLeft={1}\n >\n <Text>{confirmDisplay}</Text>\n </Box>\n </Box>\n\n {/* Change summary */}\n <Box flexDirection=\"column\" marginBottom={1} marginLeft={1}>\n <Text color={SEMANTIC_COLORS.secondary}>\n {t('rewind.conversationWillBeForked')}\n </Text>\n {selectedPoint.changedFiles.length > 0 ? (\n <Text color={SEMANTIC_COLORS.secondary}>\n {t('rewind.codeWillBeRestored')}{' '}\n {selectedPoint.changedFiles.join(', ')}.\n </Text>\n ) : (\n <Text color={SEMANTIC_COLORS.dim}>{t('rewind.noCodeChanges')}</Text>\n )}\n </Box>\n\n {/* 5 action options */}\n {actionLabels.map((label, i) => (\n <Box key={i}>\n <Text\n color={i === actionIndex ? BRAND_GRADIENT.START : undefined}\n bold={i === actionIndex}\n >\n {i === actionIndex ? `${figures.pointer} ` : ' '}\n {i + 1}. {label}\n </Text>\n </Box>\n ))}\n\n {/* Warning footer */}\n <Box marginTop={1}>\n <Text color={SEMANTIC_COLORS.error}>{t('rewind.bashWarning')}</Text>\n </Box>\n </Box>\n )\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { Box, Text } from "ink";
|
|
2
|
-
import * as React from "react";
|
|
3
|
-
import { basename } from "path";
|
|
4
|
-
import { SEMANTIC_COLORS } from "../constants/colors.js";
|
|
5
|
-
import { getSensitiveFileReason } from "../utils/sensitiveFiles.js";
|
|
6
|
-
import { t } from "../i18n/index.js";
|
|
7
|
-
function getOperationText(operation) {
|
|
8
|
-
const keys = {
|
|
9
|
-
read: "ui.sensitiveFile.operation.read",
|
|
10
|
-
write: "ui.sensitiveFile.operation.write",
|
|
11
|
-
delete: "ui.sensitiveFile.operation.delete"
|
|
12
|
-
};
|
|
13
|
-
return t(keys[operation]);
|
|
14
|
-
}
|
|
15
|
-
function SensitiveFileWarning({ filePath, operation }) {
|
|
16
|
-
const fileName = basename(filePath);
|
|
17
|
-
const reason = getSensitiveFileReason(filePath);
|
|
18
|
-
return /* @__PURE__ */ React.createElement(
|
|
19
|
-
Box,
|
|
20
|
-
{
|
|
21
|
-
flexDirection: "column",
|
|
22
|
-
paddingX: 1,
|
|
23
|
-
paddingY: 1,
|
|
24
|
-
borderStyle: "round",
|
|
25
|
-
borderColor: SEMANTIC_COLORS.accent
|
|
26
|
-
},
|
|
27
|
-
/* @__PURE__ */ React.createElement(Text, { bold: true, color: SEMANTIC_COLORS.accent }, "\u{1F512} ", t("ui.sensitiveFile.title")),
|
|
28
|
-
/* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.secondary }, getOperationText(operation), " sensitive file:", " ", /* @__PURE__ */ React.createElement(Text, { bold: true }, fileName)),
|
|
29
|
-
/* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.muted }, reason || t("ui.sensitiveFile.defaultReason"))
|
|
30
|
-
);
|
|
31
|
-
}
|
|
32
|
-
export {
|
|
33
|
-
SensitiveFileWarning
|
|
34
|
-
};
|
|
35
|
-
//# sourceMappingURL=SensitiveFileWarning.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/SensitiveFileWarning.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * SensitiveFileWarning Component\n *\n * Displays an informational warning when operating on files that may contain\n * sensitive information (API keys, credentials, private keys, etc.).\n *\n * This warning is INFORMATIONAL only - it does not block operations.\n * Designed to give non-technical users awareness without interrupting workflow.\n */\n\nimport { Box, Text } from 'ink'\nimport * as React from 'react'\nimport { basename } from 'path'\nimport { SEMANTIC_COLORS } from '../constants/colors'\nimport { getSensitiveFileReason } from '../utils/sensitiveFiles'\nimport { t } from '@i18n'\n\ninterface Props {\n /** The path to the sensitive file */\n filePath: string\n /** The operation being performed on the file */\n operation: 'read' | 'write' | 'delete'\n}\n\n/**\n * Get operation text from i18n\n */\nfunction getOperationText(operation: Props['operation']): string {\n const keys: Record<Props['operation'], string> = {\n read: 'ui.sensitiveFile.operation.read',\n write: 'ui.sensitiveFile.operation.write',\n delete: 'ui.sensitiveFile.operation.delete',\n }\n return t(keys[operation] as any)\n}\n\n/**\n * SensitiveFileWarning displays an informational warning box when\n * accessing files that may contain sensitive information.\n *\n * @example\n * ```tsx\n * <SensitiveFileWarning filePath=\"/path/to/.env\" operation=\"write\" />\n * ```\n */\nexport function SensitiveFileWarning({ filePath, operation }: Props) {\n const fileName = basename(filePath)\n const reason = getSensitiveFileReason(filePath)\n\n return (\n <Box\n flexDirection=\"column\"\n paddingX={1}\n paddingY={1}\n borderStyle=\"round\"\n borderColor={SEMANTIC_COLORS.accent}\n >\n <Text bold color={SEMANTIC_COLORS.accent}>\n \uD83D\uDD12 {t('ui.sensitiveFile.title')}\n </Text>\n <Text color={SEMANTIC_COLORS.secondary}>\n {getOperationText(operation)} sensitive file:{' '}\n <Text bold>{fileName}</Text>\n </Text>\n <Text color={SEMANTIC_COLORS.muted}>\n {reason || t('ui.sensitiveFile.defaultReason')}\n </Text>\n </Box>\n )\n}\n"],
|
|
5
|
-
"mappings": "AAUA,SAAS,KAAK,YAAY;AAC1B,YAAY,WAAW;AACvB,SAAS,gBAAgB;AACzB,SAAS,uBAAuB;AAChC,SAAS,8BAA8B;AACvC,SAAS,SAAS;AAYlB,SAAS,iBAAiB,WAAuC;AAC/D,QAAM,OAA2C;AAAA,IAC/C,MAAM;AAAA,IACN,OAAO;AAAA,IACP,QAAQ;AAAA,EACV;AACA,SAAO,EAAE,KAAK,SAAS,CAAQ;AACjC;AAWO,SAAS,qBAAqB,EAAE,UAAU,UAAU,GAAU;AACnE,QAAM,WAAW,SAAS,QAAQ;AAClC,QAAM,SAAS,uBAAuB,QAAQ;AAE9C,SACE;AAAA,IAAC;AAAA;AAAA,MACC,eAAc;AAAA,MACd,UAAU;AAAA,MACV,UAAU;AAAA,MACV,aAAY;AAAA,MACZ,aAAa,gBAAgB;AAAA;AAAA,IAE7B,oCAAC,QAAK,MAAI,MAAC,OAAO,gBAAgB,UAAQ,cACpC,EAAE,wBAAwB,CAChC;AAAA,IACA,oCAAC,QAAK,OAAO,gBAAgB,aAC1B,iBAAiB,SAAS,GAAE,oBAAiB,KAC9C,oCAAC,QAAK,MAAI,QAAE,QAAS,CACvB;AAAA,IACA,oCAAC,QAAK,OAAO,gBAAgB,SAC1B,UAAU,EAAE,gCAAgC,CAC/C;AAAA,EACF;AAEJ;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import * as React from "react";
|
|
2
|
-
import { captureException } from "../services/sentry.js";
|
|
3
|
-
class SentryErrorBoundary extends React.Component {
|
|
4
|
-
constructor(props) {
|
|
5
|
-
super(props);
|
|
6
|
-
this.state = { hasError: false };
|
|
7
|
-
}
|
|
8
|
-
static getDerivedStateFromError() {
|
|
9
|
-
return { hasError: true };
|
|
10
|
-
}
|
|
11
|
-
componentDidCatch(error) {
|
|
12
|
-
if (error.name === "AbortError" || error.message?.includes("abort") || error.message?.includes("The operation was aborted")) {
|
|
13
|
-
return;
|
|
14
|
-
}
|
|
15
|
-
captureException(error);
|
|
16
|
-
}
|
|
17
|
-
render() {
|
|
18
|
-
if (this.state.hasError) {
|
|
19
|
-
return null;
|
|
20
|
-
}
|
|
21
|
-
return this.props.children;
|
|
22
|
-
}
|
|
23
|
-
}
|
|
24
|
-
export {
|
|
25
|
-
SentryErrorBoundary
|
|
26
|
-
};
|
|
27
|
-
//# sourceMappingURL=SentryErrorBoundary.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../src/components/SentryErrorBoundary.ts"],
|
|
4
|
-
"sourcesContent": ["import * as React from 'react'\nimport { captureException } from '@services/sentry'\n\ninterface Props {\n children: React.ReactNode\n}\n\ninterface State {\n hasError: boolean\n}\n\nexport class SentryErrorBoundary extends React.Component<Props, State> {\n constructor(props: Props) {\n super(props)\n ;(this as any).state = { hasError: false }\n }\n\n static getDerivedStateFromError(): State {\n return { hasError: true }\n }\n\n componentDidCatch(error: Error): void {\n // Don't report user-initiated cancellations to Sentry\n if (\n error.name === 'AbortError' ||\n error.message?.includes('abort') ||\n error.message?.includes('The operation was aborted')\n ) {\n return\n }\n captureException(error)\n }\n\n render(): React.ReactNode {\n if ((this as any).state.hasError) {\n return null\n }\n\n return (this as any).props.children\n }\n}\n"],
|
|
5
|
-
"mappings": "AAAA,YAAY,WAAW;AACvB,SAAS,wBAAwB;AAU1B,MAAM,4BAA4B,MAAM,UAAwB;AAAA,EACrE,YAAY,OAAc;AACxB,UAAM,KAAK;AACV,IAAC,KAAa,QAAQ,EAAE,UAAU,MAAM;AAAA,EAC3C;AAAA,EAEA,OAAO,2BAAkC;AACvC,WAAO,EAAE,UAAU,KAAK;AAAA,EAC1B;AAAA,EAEA,kBAAkB,OAAoB;AAEpC,QACE,MAAM,SAAS,gBACf,MAAM,SAAS,SAAS,OAAO,KAC/B,MAAM,SAAS,SAAS,2BAA2B,GACnD;AACA;AAAA,IACF;AACA,qBAAiB,KAAK;AAAA,EACxB;AAAA,EAEA,SAA0B;AACxB,QAAK,KAAa,MAAM,UAAU;AAChC,aAAO;AAAA,IACT;AAEA,WAAQ,KAAa,MAAM;AAAA,EAC7B;AACF;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,154 +0,0 @@
|
|
|
1
|
-
import React, { useState, useMemo, useCallback } from "react";
|
|
2
|
-
import { Box, Text, useInput } from "ink";
|
|
3
|
-
import { BRAND_GRADIENT, SEMANTIC_COLORS } from "../../constants/colors.js";
|
|
4
|
-
import { ScrollableList } from "../TabbedListView/index.js";
|
|
5
|
-
import { StatusOverlayContent } from "../StatusOverlayContent.js";
|
|
6
|
-
import { useTerminalSize } from "../../hooks/useTerminalSize.js";
|
|
7
|
-
import { t } from "../../i18n/index.js";
|
|
8
|
-
const PROMPT_HEIGHT = 5;
|
|
9
|
-
const CHROME_HEIGHT = 4;
|
|
10
|
-
function toListItems(items) {
|
|
11
|
-
return items.map((item) => ({
|
|
12
|
-
id: item.id,
|
|
13
|
-
label: item.label,
|
|
14
|
-
description: item.description,
|
|
15
|
-
category: item.category,
|
|
16
|
-
metadata: item.isCurrent ? `(${t("common.selected")})` : void 0,
|
|
17
|
-
status: item.isCurrent ? "enabled" : void 0,
|
|
18
|
-
data: item
|
|
19
|
-
}));
|
|
20
|
-
}
|
|
21
|
-
function SelectorItemRenderer({
|
|
22
|
-
item,
|
|
23
|
-
isFocused,
|
|
24
|
-
selectorItem
|
|
25
|
-
}) {
|
|
26
|
-
const textColor = isFocused ? BRAND_GRADIENT.START : SEMANTIC_COLORS.dim;
|
|
27
|
-
return /* @__PURE__ */ React.createElement(Box, { flexDirection: "row" }, /* @__PURE__ */ React.createElement(Text, { color: isFocused ? BRAND_GRADIENT.START : void 0 }, isFocused ? "\u25C6 " : " "), selectorItem?.statusIcon && /* @__PURE__ */ React.createElement(Text, { color: selectorItem.statusColor || SEMANTIC_COLORS.dim }, selectorItem.statusIcon, " "), /* @__PURE__ */ React.createElement(Text, { color: textColor }, item.label, selectorItem?.isCurrent && /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.success }, " (", t("common.selected"), ")"), item.description && /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.muted }, " ", item.description)));
|
|
28
|
-
}
|
|
29
|
-
function SimpleSelector({
|
|
30
|
-
title,
|
|
31
|
-
subtitle,
|
|
32
|
-
items,
|
|
33
|
-
onSelect,
|
|
34
|
-
onClose,
|
|
35
|
-
groupByCategory = false,
|
|
36
|
-
statusOverlay,
|
|
37
|
-
isActive = true,
|
|
38
|
-
maxVisible
|
|
39
|
-
}) {
|
|
40
|
-
const { rows } = useTerminalSize();
|
|
41
|
-
const dynamicVisible = Math.min(
|
|
42
|
-
8,
|
|
43
|
-
Math.max(3, rows - PROMPT_HEIGHT - CHROME_HEIGHT)
|
|
44
|
-
);
|
|
45
|
-
const effectiveMaxVisible = maxVisible ?? dynamicVisible;
|
|
46
|
-
const [focusedIndex, setFocusedIndex] = useState(0);
|
|
47
|
-
const listItems = useMemo(() => toListItems(items), [items]);
|
|
48
|
-
const selectorItemMap = useMemo(() => {
|
|
49
|
-
const map = /* @__PURE__ */ new Map();
|
|
50
|
-
items.forEach((item) => map.set(item.id, item));
|
|
51
|
-
return map;
|
|
52
|
-
}, [items]);
|
|
53
|
-
const handleSelect = useCallback(
|
|
54
|
-
(listItem) => {
|
|
55
|
-
const selectorItem = selectorItemMap.get(listItem.id);
|
|
56
|
-
if (selectorItem) {
|
|
57
|
-
onSelect(selectorItem);
|
|
58
|
-
}
|
|
59
|
-
},
|
|
60
|
-
[selectorItemMap, onSelect]
|
|
61
|
-
);
|
|
62
|
-
const renderItem = useCallback(
|
|
63
|
-
(item, isFocused) => /* @__PURE__ */ React.createElement(
|
|
64
|
-
SelectorItemRenderer,
|
|
65
|
-
{
|
|
66
|
-
item,
|
|
67
|
-
isFocused,
|
|
68
|
-
selectorItem: selectorItemMap.get(item.id)
|
|
69
|
-
}
|
|
70
|
-
),
|
|
71
|
-
[selectorItemMap]
|
|
72
|
-
);
|
|
73
|
-
useInput(
|
|
74
|
-
(input, key) => {
|
|
75
|
-
if (statusOverlay && statusOverlay.type !== "loading") {
|
|
76
|
-
if (key.escape || key.return) {
|
|
77
|
-
onClose();
|
|
78
|
-
}
|
|
79
|
-
return;
|
|
80
|
-
}
|
|
81
|
-
if (statusOverlay) return;
|
|
82
|
-
if (key.escape) {
|
|
83
|
-
onClose();
|
|
84
|
-
return;
|
|
85
|
-
}
|
|
86
|
-
if (key.downArrow && listItems.length > 0) {
|
|
87
|
-
setFocusedIndex((prev) => prev < listItems.length - 1 ? prev + 1 : prev);
|
|
88
|
-
return;
|
|
89
|
-
}
|
|
90
|
-
if (key.upArrow && listItems.length > 0) {
|
|
91
|
-
setFocusedIndex((prev) => prev > 0 ? prev - 1 : prev);
|
|
92
|
-
return;
|
|
93
|
-
}
|
|
94
|
-
if (key.return && listItems.length > 0) {
|
|
95
|
-
handleSelect(listItems[focusedIndex]);
|
|
96
|
-
return;
|
|
97
|
-
}
|
|
98
|
-
},
|
|
99
|
-
{ isActive }
|
|
100
|
-
);
|
|
101
|
-
const footerHint = statusOverlay ? statusOverlay.type === "loading" ? "" : t("ui.simpleSelector.dismissHint") : t("ui.simpleSelector.navigationHint");
|
|
102
|
-
return /* @__PURE__ */ React.createElement(Box, { flexDirection: "column", width: "100%" }, /* @__PURE__ */ React.createElement(
|
|
103
|
-
Box,
|
|
104
|
-
{
|
|
105
|
-
borderTop: true,
|
|
106
|
-
borderBottom: false,
|
|
107
|
-
borderLeft: false,
|
|
108
|
-
borderRight: false,
|
|
109
|
-
borderColor: BRAND_GRADIENT.START,
|
|
110
|
-
borderStyle: "single",
|
|
111
|
-
width: "100%",
|
|
112
|
-
paddingX: 1,
|
|
113
|
-
flexDirection: "column"
|
|
114
|
-
},
|
|
115
|
-
/* @__PURE__ */ React.createElement(Box, null, /* @__PURE__ */ React.createElement(Text, { color: BRAND_GRADIENT.START }, "\u25C6"), /* @__PURE__ */ React.createElement(Text, { bold: true, color: SEMANTIC_COLORS.secondary }, " ", title), subtitle && /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.dim }, " ", subtitle))
|
|
116
|
-
), /* @__PURE__ */ React.createElement(
|
|
117
|
-
Box,
|
|
118
|
-
{
|
|
119
|
-
flexDirection: "column",
|
|
120
|
-
borderTop: false,
|
|
121
|
-
borderBottom: true,
|
|
122
|
-
borderLeft: false,
|
|
123
|
-
borderRight: false,
|
|
124
|
-
borderColor: BRAND_GRADIENT.START,
|
|
125
|
-
borderStyle: "single",
|
|
126
|
-
width: "100%",
|
|
127
|
-
paddingX: 1,
|
|
128
|
-
paddingY: 1
|
|
129
|
-
},
|
|
130
|
-
statusOverlay ? /* @__PURE__ */ React.createElement(
|
|
131
|
-
StatusOverlayContent,
|
|
132
|
-
{
|
|
133
|
-
type: statusOverlay.type,
|
|
134
|
-
message: statusOverlay.message
|
|
135
|
-
}
|
|
136
|
-
) : listItems.length === 0 ? /* @__PURE__ */ React.createElement(Box, null, /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.dim }, t("ui.tabbedList.noItems"))) : /* @__PURE__ */ React.createElement(
|
|
137
|
-
ScrollableList,
|
|
138
|
-
{
|
|
139
|
-
items: listItems,
|
|
140
|
-
focusedIndex,
|
|
141
|
-
onFocusChange: setFocusedIndex,
|
|
142
|
-
onSelect: handleSelect,
|
|
143
|
-
visibleCount: effectiveMaxVisible,
|
|
144
|
-
groupByCategory,
|
|
145
|
-
renderItem
|
|
146
|
-
}
|
|
147
|
-
),
|
|
148
|
-
footerHint && /* @__PURE__ */ React.createElement(Box, { marginTop: 1 }, /* @__PURE__ */ React.createElement(Text, { color: SEMANTIC_COLORS.muted }, footerHint))
|
|
149
|
-
));
|
|
150
|
-
}
|
|
151
|
-
export {
|
|
152
|
-
SimpleSelector
|
|
153
|
-
};
|
|
154
|
-
//# sourceMappingURL=SimpleSelector.js.map
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/SimpleSelector/SimpleSelector.tsx"],
|
|
4
|
-
"sourcesContent": ["/**\n * SimpleSelector Component\n *\n * A lightweight single-choice selector visually matching TabbedListView\n * but without tabs or search. Reuses ScrollableList internally.\n *\n * Visual pattern:\n * \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 (BRAND_GRADIENT.START border)\n * \u25C6 Title subtitle\n *\n * Category Name\n * \u25C6 Item A (current)\n * Item B description\n * Item C description\n *\n * \u2191\u2193 Navigate \u00B7 Enter Select \u00B7 Esc Close\n * \u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500 (BRAND_GRADIENT.START border)\n */\n\nimport React, { useState, useMemo, useCallback } from 'react'\nimport { Box, Text, useInput } from 'ink'\nimport { BRAND_GRADIENT, SEMANTIC_COLORS } from '@constants/colors'\nimport { ScrollableList } from '@components/TabbedListView'\nimport { StatusOverlayContent } from '@components/StatusOverlayContent'\nimport { useTerminalSize } from '@hooks/useTerminalSize'\nimport { t } from '@i18n'\nimport type { ListItem } from '@components/TabbedListView'\nimport type { SimpleSelectorProps, SelectorItem } from './types'\n\n// Heights for dynamic visible count calculation\nconst PROMPT_HEIGHT = 5 // PromptInput borders + input + hints\nconst CHROME_HEIGHT = 4 // title + footer + borders (no tabs/search)\n\n/**\n * Convert SelectorItems to ListItems for ScrollableList\n */\nfunction toListItems(items: SelectorItem[]): ListItem[] {\n return items.map(item => ({\n id: item.id,\n label: item.label,\n description: item.description,\n category: item.category,\n metadata: item.isCurrent ? `(${t('common.selected')})` : undefined,\n status: item.isCurrent ? ('enabled' as const) : undefined,\n data: item,\n }))\n}\n\n/**\n * Custom item renderer that supports statusIcon and statusColor\n */\nfunction SelectorItemRenderer({\n item,\n isFocused,\n selectorItem,\n}: {\n item: ListItem\n isFocused: boolean\n selectorItem?: SelectorItem\n}) {\n const textColor = isFocused ? BRAND_GRADIENT.START : SEMANTIC_COLORS.dim\n\n return (\n <Box flexDirection=\"row\">\n {/* Selection indicator */}\n <Text color={isFocused ? BRAND_GRADIENT.START : undefined}>\n {isFocused ? '\\u25C6 ' : ' '}\n </Text>\n\n {/* Status icon if present */}\n {selectorItem?.statusIcon && (\n <Text color={selectorItem.statusColor || SEMANTIC_COLORS.dim}>\n {selectorItem.statusIcon}{' '}\n </Text>\n )}\n\n {/* Main content */}\n <Text color={textColor}>\n {item.label}\n {selectorItem?.isCurrent && (\n <Text color={SEMANTIC_COLORS.success}> ({t('common.selected')})</Text>\n )}\n {item.description && (\n <Text color={SEMANTIC_COLORS.muted}> {item.description}</Text>\n )}\n </Text>\n </Box>\n )\n}\n\nexport function SimpleSelector({\n title,\n subtitle,\n items,\n onSelect,\n onClose,\n groupByCategory = false,\n statusOverlay,\n isActive = true,\n maxVisible,\n}: SimpleSelectorProps) {\n // Dynamic visible count based on terminal height\n const { rows } = useTerminalSize()\n const dynamicVisible = Math.min(\n 8,\n Math.max(3, rows - PROMPT_HEIGHT - CHROME_HEIGHT),\n )\n const effectiveMaxVisible = maxVisible ?? dynamicVisible\n\n const [focusedIndex, setFocusedIndex] = useState(0)\n\n const listItems = useMemo(() => toListItems(items), [items])\n\n // Map from ListItem back to SelectorItem for custom rendering\n const selectorItemMap = useMemo(() => {\n const map = new Map<string, SelectorItem>()\n items.forEach(item => map.set(item.id, item))\n return map\n }, [items])\n\n const handleSelect = useCallback(\n (listItem: ListItem) => {\n const selectorItem = selectorItemMap.get(listItem.id)\n if (selectorItem) {\n onSelect(selectorItem)\n }\n },\n [selectorItemMap, onSelect],\n )\n\n const renderItem = useCallback(\n (item: ListItem, isFocused: boolean) => (\n <SelectorItemRenderer\n item={item}\n isFocused={isFocused}\n selectorItem={selectorItemMap.get(item.id)}\n />\n ),\n [selectorItemMap],\n )\n\n // Keyboard input handling\n useInput(\n (input, key) => {\n // Status overlay: success/error -> ESC/Enter closes\n if (statusOverlay && statusOverlay.type !== 'loading') {\n if (key.escape || key.return) {\n onClose()\n }\n return\n }\n\n // Status overlay: loading -> ignore all input\n if (statusOverlay) return\n\n // Escape closes\n if (key.escape) {\n onClose()\n return\n }\n\n // Arrow navigation\n if (key.downArrow && listItems.length > 0) {\n setFocusedIndex(prev => (prev < listItems.length - 1 ? prev + 1 : prev))\n return\n }\n\n if (key.upArrow && listItems.length > 0) {\n setFocusedIndex(prev => (prev > 0 ? prev - 1 : prev))\n return\n }\n\n // Enter to select\n if (key.return && listItems.length > 0) {\n handleSelect(listItems[focusedIndex])\n return\n }\n },\n { isActive },\n )\n\n // Build footer hint\n const footerHint = statusOverlay\n ? statusOverlay.type === 'loading'\n ? ''\n : t('ui.simpleSelector.dismissHint')\n : t('ui.simpleSelector.navigationHint')\n\n return (\n <Box flexDirection=\"column\" width=\"100%\">\n {/* Header bar with top border */}\n <Box\n borderTop={true}\n borderBottom={false}\n borderLeft={false}\n borderRight={false}\n borderColor={BRAND_GRADIENT.START}\n borderStyle=\"single\"\n width=\"100%\"\n paddingX={1}\n flexDirection=\"column\"\n >\n {/* Title with brand color */}\n <Box>\n <Text color={BRAND_GRADIENT.START}>{'\\u25C6'}</Text>\n <Text bold color={SEMANTIC_COLORS.secondary}>\n {' '}\n {title}\n </Text>\n {subtitle && (\n <Text color={SEMANTIC_COLORS.dim}>\n {' '}\n {subtitle}\n </Text>\n )}\n </Box>\n </Box>\n\n {/* Content container with bottom border */}\n <Box\n flexDirection=\"column\"\n borderTop={false}\n borderBottom={true}\n borderLeft={false}\n borderRight={false}\n borderColor={BRAND_GRADIENT.START}\n borderStyle=\"single\"\n width=\"100%\"\n paddingX={1}\n paddingY={1}\n >\n {statusOverlay ? (\n <StatusOverlayContent\n type={statusOverlay.type}\n message={statusOverlay.message}\n />\n ) : listItems.length === 0 ? (\n <Box>\n <Text color={SEMANTIC_COLORS.dim}>\n {t('ui.tabbedList.noItems')}\n </Text>\n </Box>\n ) : (\n <ScrollableList\n items={listItems}\n focusedIndex={focusedIndex}\n onFocusChange={setFocusedIndex}\n onSelect={handleSelect}\n visibleCount={effectiveMaxVisible}\n groupByCategory={groupByCategory}\n renderItem={renderItem}\n />\n )}\n\n {/* Footer Hint */}\n {footerHint && (\n <Box marginTop={1}>\n <Text color={SEMANTIC_COLORS.muted}>{footerHint}</Text>\n </Box>\n )}\n </Box>\n </Box>\n )\n}\n"],
|
|
5
|
-
"mappings": "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",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"version": 3,
|
|
3
|
-
"sources": ["../../../src/components/SimpleSelector/index.ts"],
|
|
4
|
-
"sourcesContent": ["/**\n * SimpleSelector Component Exports\n *\n * A lightweight single-choice selector for quick selection commands.\n */\n\nexport { SimpleSelector } from './SimpleSelector'\nexport type { SimpleSelectorProps, SelectorItem, StatusOverlay } from './types'\n"],
|
|
5
|
-
"mappings": "AAMA,SAAS,sBAAsB;",
|
|
6
|
-
"names": []
|
|
7
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
//# sourceMappingURL=types.js.map
|