@within-7/minto 0.1.7 → 0.3.0
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.js +155 -37
- package/dist/Tool.js +38 -0
- package/dist/Tool.js.map +3 -3
- package/dist/commands/agents/AgentsCommand.js +73 -49
- package/dist/commands/agents/AgentsCommand.js.map +2 -2
- package/dist/commands/agents/constants.js +1 -1
- package/dist/commands/agents/constants.js.map +1 -1
- package/dist/commands/agents/index.js +1 -1
- package/dist/commands/bug.js +74 -7
- package/dist/commands/bug.js.map +3 -3
- package/dist/commands/clear.js +3 -0
- package/dist/commands/clear.js.map +2 -2
- package/dist/commands/compact.js +37 -0
- package/dist/commands/compact.js.map +2 -2
- package/dist/commands/context.js +85 -0
- package/dist/commands/context.js.map +7 -0
- package/dist/commands/ctx_viz.js +18 -10
- package/dist/commands/ctx_viz.js.map +2 -2
- package/dist/commands/doctor.js +158 -12
- package/dist/commands/doctor.js.map +2 -2
- package/dist/commands/export.js +157 -0
- package/dist/commands/export.js.map +7 -0
- package/dist/commands/mcp-interactive.js +28 -18
- package/dist/commands/mcp-interactive.js.map +2 -2
- package/dist/commands/model.js +9 -7
- package/dist/commands/model.js.map +2 -2
- package/dist/commands/permissions.js +87 -0
- package/dist/commands/permissions.js.map +7 -0
- package/dist/commands/plugin/AddMarketplaceForm.js +3 -2
- package/dist/commands/plugin/AddMarketplaceForm.js.map +2 -2
- package/dist/commands/plugin/ConfirmDialog.js +2 -1
- package/dist/commands/plugin/ConfirmDialog.js.map +2 -2
- package/dist/commands/plugin/ErrorView.js +2 -1
- package/dist/commands/plugin/ErrorView.js.map +2 -2
- package/dist/commands/plugin/InstalledPluginsByMarketplace.js +5 -4
- package/dist/commands/plugin/InstalledPluginsByMarketplace.js.map +2 -2
- package/dist/commands/plugin/InstalledPluginsManager.js +5 -4
- package/dist/commands/plugin/InstalledPluginsManager.js.map +2 -2
- package/dist/commands/plugin/MainMenu.js +2 -1
- package/dist/commands/plugin/MainMenu.js.map +2 -2
- package/dist/commands/plugin/MarketplaceManager.js +5 -4
- package/dist/commands/plugin/MarketplaceManager.js.map +2 -2
- package/dist/commands/plugin/MarketplaceSelector.js +4 -3
- package/dist/commands/plugin/MarketplaceSelector.js.map +2 -2
- package/dist/commands/plugin/PlaceholderScreen.js +3 -2
- package/dist/commands/plugin/PlaceholderScreen.js.map +2 -2
- package/dist/commands/plugin/PluginBrowser.js +6 -5
- package/dist/commands/plugin/PluginBrowser.js.map +2 -2
- package/dist/commands/plugin/PluginDetailsInstall.js +5 -4
- package/dist/commands/plugin/PluginDetailsInstall.js.map +2 -2
- package/dist/commands/plugin/PluginDetailsManage.js +4 -3
- package/dist/commands/plugin/PluginDetailsManage.js.map +2 -2
- package/dist/commands/plugin.js +16 -15
- package/dist/commands/plugin.js.map +2 -2
- package/dist/commands/quit.js +3 -1
- package/dist/commands/quit.js.map +2 -2
- package/dist/commands/sandbox.js +105 -0
- package/dist/commands/sandbox.js.map +7 -0
- package/dist/commands/setup.js +2 -1
- package/dist/commands/setup.js.map +2 -2
- package/dist/commands/status.js +59 -0
- package/dist/commands/status.js.map +7 -0
- package/dist/commands/tasks.js +108 -0
- package/dist/commands/tasks.js.map +7 -0
- package/dist/commands/todos.js +123 -0
- package/dist/commands/todos.js.map +7 -0
- package/dist/commands/undo.js +245 -0
- package/dist/commands/undo.js.map +7 -0
- package/dist/commands.js +22 -2
- package/dist/commands.js.map +2 -2
- package/dist/components/AgentThinkingBlock.js +10 -18
- package/dist/components/AgentThinkingBlock.js.map +2 -2
- package/dist/components/AsciiLogo.js +7 -8
- package/dist/components/AsciiLogo.js.map +2 -2
- package/dist/components/AskUserQuestionDialog/AskUserQuestionDialog.js +3 -2
- package/dist/components/AskUserQuestionDialog/AskUserQuestionDialog.js.map +2 -2
- package/dist/components/AskUserQuestionDialog/QuestionView.js +2 -1
- package/dist/components/AskUserQuestionDialog/QuestionView.js.map +2 -2
- package/dist/components/BackgroundTasksPanel.js +78 -29
- package/dist/components/BackgroundTasksPanel.js.map +2 -2
- package/dist/components/BashStreamingProgress.js +24 -0
- package/dist/components/BashStreamingProgress.js.map +7 -0
- package/dist/components/CollapsibleHint.js +15 -0
- package/dist/components/CollapsibleHint.js.map +7 -0
- package/dist/components/Config.js +3 -2
- package/dist/components/Config.js.map +2 -2
- package/dist/components/ConsoleOAuthFlow.js +2 -1
- package/dist/components/ConsoleOAuthFlow.js.map +2 -2
- package/dist/components/Cost.js +2 -1
- package/dist/components/Cost.js.map +2 -2
- package/dist/components/FileEditToolUpdatedMessage.js +1 -1
- package/dist/components/FileEditToolUpdatedMessage.js.map +2 -2
- package/dist/components/HeaderBar.js +13 -8
- package/dist/components/HeaderBar.js.map +2 -2
- package/dist/components/HistorySearchOverlay.js +4 -3
- package/dist/components/HistorySearchOverlay.js.map +2 -2
- package/dist/components/HotkeyHelpPanel.js +134 -0
- package/dist/components/HotkeyHelpPanel.js.map +7 -0
- package/dist/components/InvalidConfigDialog.js +2 -1
- package/dist/components/InvalidConfigDialog.js.map +2 -2
- package/dist/components/Logo.js +24 -68
- package/dist/components/Logo.js.map +2 -2
- package/dist/components/MCPServerApprovalDialog.js +2 -1
- package/dist/components/MCPServerApprovalDialog.js.map +2 -2
- package/dist/components/MCPServerDialogCopy.js +2 -1
- package/dist/components/MCPServerDialogCopy.js.map +2 -2
- package/dist/components/MCPServerMultiselectDialog.js +2 -1
- package/dist/components/MCPServerMultiselectDialog.js.map +2 -2
- package/dist/components/Message.js +23 -7
- package/dist/components/Message.js.map +3 -3
- package/dist/components/MessageSelector.js +4 -3
- package/dist/components/MessageSelector.js.map +2 -2
- package/dist/components/ModeIndicator.js +2 -1
- package/dist/components/ModeIndicator.js.map +2 -2
- package/dist/components/ModelConfig.js +20 -6
- package/dist/components/ModelConfig.js.map +2 -2
- package/dist/components/ModelListManager.js +7 -6
- package/dist/components/ModelListManager.js.map +2 -2
- package/dist/components/ModelSelector/ModelSelector.js +27 -14
- package/dist/components/ModelSelector/ModelSelector.js.map +2 -2
- package/dist/components/Onboarding.js +22 -16
- package/dist/components/Onboarding.js.map +2 -2
- package/dist/components/OperationSummary.js +130 -0
- package/dist/components/OperationSummary.js.map +7 -0
- package/dist/components/ProgressBar.js +74 -0
- package/dist/components/ProgressBar.js.map +7 -0
- package/dist/components/PromptInput.js +210 -87
- package/dist/components/PromptInput.js.map +2 -2
- package/dist/components/RequestStatusIndicator.js +194 -0
- package/dist/components/RequestStatusIndicator.js.map +7 -0
- package/dist/components/SensitiveFileWarning.js +31 -0
- package/dist/components/SensitiveFileWarning.js.map +7 -0
- package/dist/components/Spinner.js +141 -27
- package/dist/components/Spinner.js.map +2 -2
- package/dist/components/SpinnerSymbol.js +21 -27
- package/dist/components/SpinnerSymbol.js.map +2 -2
- package/dist/components/StreamingBashOutput.js +9 -8
- package/dist/components/StreamingBashOutput.js.map +2 -2
- package/dist/components/StructuredDiff.js +6 -8
- package/dist/components/StructuredDiff.js.map +2 -2
- package/dist/components/SubagentBlock.js +5 -3
- package/dist/components/SubagentBlock.js.map +2 -2
- package/dist/components/SubagentProgress.js +17 -15
- package/dist/components/SubagentProgress.js.map +2 -2
- package/dist/components/TaskCard.js +30 -24
- package/dist/components/TaskCard.js.map +2 -2
- package/dist/components/TextInput.js +9 -1
- package/dist/components/TextInput.js.map +2 -2
- package/dist/components/TodoChangeBlock.js +1 -1
- package/dist/components/TodoChangeBlock.js.map +2 -2
- package/dist/components/TodoPanel.js +140 -31
- package/dist/components/TodoPanel.js.map +3 -3
- package/dist/components/TokenCounter.js +74 -0
- package/dist/components/TokenCounter.js.map +7 -0
- package/dist/components/TokenWarning.js +2 -1
- package/dist/components/TokenWarning.js.map +2 -2
- package/dist/components/ToolUseLoader.js +2 -2
- package/dist/components/ToolUseLoader.js.map +2 -2
- package/dist/components/TreeConnector.js +26 -0
- package/dist/components/TreeConnector.js.map +7 -0
- package/dist/components/TrustDialog.js +2 -1
- package/dist/components/TrustDialog.js.map +2 -2
- package/dist/components/TurnCompletionIndicator.js +18 -0
- package/dist/components/TurnCompletionIndicator.js.map +7 -0
- package/dist/components/binary-feedback/BinaryFeedbackView.js +2 -1
- package/dist/components/binary-feedback/BinaryFeedbackView.js.map +2 -2
- package/dist/components/messages/AssistantTextMessage.js +20 -9
- package/dist/components/messages/AssistantTextMessage.js.map +2 -2
- package/dist/components/messages/AssistantThinkingMessage.js +18 -3
- package/dist/components/messages/AssistantThinkingMessage.js.map +2 -2
- package/dist/components/messages/AssistantToolUseMessage.js +17 -10
- package/dist/components/messages/AssistantToolUseMessage.js.map +2 -2
- package/dist/components/messages/GroupRenderer.js +54 -0
- package/dist/components/messages/GroupRenderer.js.map +7 -0
- package/dist/components/messages/NestedTasksPreview.js +24 -0
- package/dist/components/messages/NestedTasksPreview.js.map +7 -0
- package/dist/components/messages/ParallelTasksGroupView.js +93 -0
- package/dist/components/messages/ParallelTasksGroupView.js.map +7 -0
- package/dist/components/messages/TaskInModuleView.js +218 -0
- package/dist/components/messages/TaskInModuleView.js.map +7 -0
- package/dist/components/messages/TaskOutputContent.js +56 -0
- package/dist/components/messages/TaskOutputContent.js.map +7 -0
- package/dist/components/messages/UserPromptMessage.js +2 -2
- package/dist/components/messages/UserPromptMessage.js.map +2 -2
- package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js +2 -3
- package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js.map +2 -2
- package/dist/components/permissions/FallbackPermissionRequest.js +4 -4
- package/dist/components/permissions/FallbackPermissionRequest.js.map +2 -2
- package/dist/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js +4 -4
- package/dist/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js.map +2 -2
- package/dist/constants/colors.js +120 -54
- package/dist/constants/colors.js.map +2 -2
- package/dist/constants/formatRules.js +102 -0
- package/dist/constants/formatRules.js.map +7 -0
- package/dist/constants/prompts.js +12 -34
- package/dist/constants/prompts.js.map +2 -2
- package/dist/constants/symbols.js +64 -6
- package/dist/constants/symbols.js.map +2 -2
- package/dist/constants/timing.js +5 -0
- package/dist/constants/timing.js.map +2 -2
- package/dist/constants/toolInputExamples.js +84 -0
- package/dist/constants/toolInputExamples.js.map +7 -0
- package/dist/core/backupManager.js +321 -0
- package/dist/core/backupManager.js.map +7 -0
- package/dist/core/config/defaults.js +84 -0
- package/dist/core/config/defaults.js.map +7 -0
- package/dist/core/config/index.js +111 -0
- package/dist/core/config/index.js.map +7 -0
- package/dist/core/config/loader.js +221 -0
- package/dist/core/config/loader.js.map +7 -0
- package/dist/core/config/migrations.js +128 -0
- package/dist/core/config/migrations.js.map +7 -0
- package/dist/core/config/schema.js +178 -0
- package/dist/core/config/schema.js.map +7 -0
- package/dist/core/costTracker.js +129 -0
- package/dist/core/costTracker.js.map +7 -0
- package/dist/core/gitAutoCommit.js +287 -0
- package/dist/core/gitAutoCommit.js.map +7 -0
- package/dist/core/index.js +8 -0
- package/dist/core/index.js.map +7 -0
- package/dist/core/operationTracker.js +212 -0
- package/dist/core/operationTracker.js.map +7 -0
- package/dist/core/permissions/auditLog.js +204 -0
- package/dist/core/permissions/auditLog.js.map +7 -0
- package/dist/core/permissions/engine/index.js +3 -0
- package/dist/core/permissions/engine/index.js.map +7 -0
- package/dist/core/permissions/engine/permissionEngine.js +106 -0
- package/dist/core/permissions/engine/permissionEngine.js.map +7 -0
- package/dist/core/permissions/engine/types.js +1 -0
- package/dist/core/permissions/engine/types.js.map +7 -0
- package/dist/core/permissions/index.js +84 -0
- package/dist/core/permissions/index.js.map +7 -0
- package/dist/core/permissions/ruleEngine.js +259 -0
- package/dist/core/permissions/ruleEngine.js.map +7 -0
- package/dist/core/permissions/rules/allowedToolsRule.js +62 -0
- package/dist/core/permissions/rules/allowedToolsRule.js.map +7 -0
- package/dist/core/permissions/rules/autoEscalationRule.js +296 -0
- package/dist/core/permissions/rules/autoEscalationRule.js.map +7 -0
- package/dist/core/permissions/rules/index.js +46 -0
- package/dist/core/permissions/rules/index.js.map +7 -0
- package/dist/core/permissions/rules/planModeRule.js +55 -0
- package/dist/core/permissions/rules/planModeRule.js.map +7 -0
- package/dist/core/permissions/rules/projectBoundaryRule.js +173 -0
- package/dist/core/permissions/rules/projectBoundaryRule.js.map +7 -0
- package/dist/core/permissions/rules/safeModeRule.js +65 -0
- package/dist/core/permissions/rules/safeModeRule.js.map +7 -0
- package/dist/core/permissions/rules/sensitivePathsRule.js +345 -0
- package/dist/core/permissions/rules/sensitivePathsRule.js.map +7 -0
- package/dist/core/permissions/types.js +127 -0
- package/dist/core/permissions/types.js.map +7 -0
- package/dist/core/tokenStats.js +9 -0
- package/dist/core/tokenStats.js.map +7 -0
- package/dist/core/tokenStatsManager.js +331 -0
- package/dist/core/tokenStatsManager.js.map +7 -0
- package/dist/core/tools/executor.js +143 -0
- package/dist/core/tools/executor.js.map +7 -0
- package/dist/core/tools/index.js +15 -0
- package/dist/core/tools/index.js.map +7 -0
- package/dist/core/tools/registry.js +183 -0
- package/dist/core/tools/registry.js.map +7 -0
- package/dist/core/tools/types.js +1 -0
- package/dist/core/tools/types.js.map +7 -0
- package/dist/cost-tracker.js +23 -15
- package/dist/cost-tracker.js.map +2 -2
- package/dist/entrypoints/cli.js +158 -130
- package/dist/entrypoints/cli.js.map +2 -2
- package/dist/entrypoints/mcp.js +12 -4
- package/dist/entrypoints/mcp.js.map +2 -2
- package/dist/history.js +14 -3
- package/dist/history.js.map +2 -2
- package/dist/hooks/useAgentTokenStats.js +72 -0
- package/dist/hooks/useAgentTokenStats.js.map +7 -0
- package/dist/hooks/useAgentTranscripts.js +140 -0
- package/dist/hooks/useAgentTranscripts.js.map +7 -0
- package/dist/hooks/useAnimationSync.js +53 -0
- package/dist/hooks/useAnimationSync.js.map +7 -0
- package/dist/hooks/useArrowKeyHistory.js +4 -2
- package/dist/hooks/useArrowKeyHistory.js.map +2 -2
- package/dist/hooks/useCanUseTool.js +3 -1
- package/dist/hooks/useCanUseTool.js.map +2 -2
- package/dist/hooks/useExitOnCtrlCD.js +9 -5
- package/dist/hooks/useExitOnCtrlCD.js.map +2 -2
- package/dist/hooks/useHookStatus.js +40 -0
- package/dist/hooks/useHookStatus.js.map +7 -0
- package/dist/hooks/useLogMessages.js +29 -2
- package/dist/hooks/useLogMessages.js.map +2 -2
- package/dist/hooks/useMessageGroups.js +43 -0
- package/dist/hooks/useMessageGroups.js.map +7 -0
- package/dist/hooks/useTerminalSize.js +62 -6
- package/dist/hooks/useTerminalSize.js.map +2 -2
- package/dist/hooks/useUnifiedCompletion.js +69 -0
- package/dist/hooks/useUnifiedCompletion.js.map +2 -2
- package/dist/i18n/index.js +109 -0
- package/dist/i18n/index.js.map +7 -0
- package/dist/i18n/locales/en.js +348 -0
- package/dist/i18n/locales/en.js.map +7 -0
- package/dist/i18n/locales/index.js +7 -0
- package/dist/i18n/locales/index.js.map +7 -0
- package/dist/i18n/locales/zh-CN.js +348 -0
- package/dist/i18n/locales/zh-CN.js.map +7 -0
- package/dist/i18n/types.js +8 -0
- package/dist/i18n/types.js.map +7 -0
- package/dist/permissions.js +28 -1
- package/dist/permissions.js.map +2 -2
- package/dist/query.js +253 -21
- package/dist/query.js.map +3 -3
- package/dist/screens/REPL.js +523 -194
- package/dist/screens/REPL.js.map +3 -3
- package/dist/services/adapters/chatCompletions.js +3 -1
- package/dist/services/adapters/chatCompletions.js.map +2 -2
- package/dist/services/adapters/messageNormalizer.js +354 -0
- package/dist/services/adapters/messageNormalizer.js.map +7 -0
- package/dist/services/adapters/responsesAPI.js +6 -3
- package/dist/services/adapters/responsesAPI.js.map +2 -2
- package/dist/services/checkpointManager.js +386 -0
- package/dist/services/checkpointManager.js.map +7 -0
- package/dist/services/claude.js +192 -14
- package/dist/services/claude.js.map +3 -3
- package/dist/services/compressionService.js +50 -1
- package/dist/services/compressionService.js.map +2 -2
- package/dist/services/contextMonitor.js +162 -0
- package/dist/services/contextMonitor.js.map +7 -0
- package/dist/services/customCommands.js +60 -41
- package/dist/services/customCommands.js.map +2 -2
- package/dist/services/hookExecutor.js +173 -1
- package/dist/services/hookExecutor.js.map +2 -2
- package/dist/services/intelligentCompactor.js +281 -0
- package/dist/services/intelligentCompactor.js.map +7 -0
- package/dist/services/lspConfig.js +109 -0
- package/dist/services/lspConfig.js.map +7 -0
- package/dist/services/mcpClient.js +338 -43
- package/dist/services/mcpClient.js.map +2 -2
- package/dist/services/modelOrchestrator.js +310 -0
- package/dist/services/modelOrchestrator.js.map +7 -0
- package/dist/services/openai.js +8 -1
- package/dist/services/openai.js.map +2 -2
- package/dist/services/outputStyles.js +138 -0
- package/dist/services/outputStyles.js.map +7 -0
- package/dist/services/plugins/index.js +5 -0
- package/dist/services/plugins/index.js.map +7 -0
- package/dist/services/plugins/lspServers.js +188 -0
- package/dist/services/plugins/lspServers.js.map +7 -0
- package/dist/services/plugins/pluginRuntime.js +229 -0
- package/dist/services/plugins/pluginRuntime.js.map +7 -0
- package/dist/services/plugins/pluginValidation.js +219 -0
- package/dist/services/plugins/pluginValidation.js.map +7 -0
- package/dist/services/plugins/skillMarketplace.js +556 -0
- package/dist/services/plugins/skillMarketplace.js.map +7 -0
- package/dist/services/responseStateManager.js +37 -3
- package/dist/services/responseStateManager.js.map +2 -2
- package/dist/services/sandbox/filesystemBoundary.js +341 -0
- package/dist/services/sandbox/filesystemBoundary.js.map +7 -0
- package/dist/services/sandbox/index.js +14 -0
- package/dist/services/sandbox/index.js.map +7 -0
- package/dist/services/sandbox/networkProxy.js +293 -0
- package/dist/services/sandbox/networkProxy.js.map +7 -0
- package/dist/services/sandbox/sandboxController.js +574 -0
- package/dist/services/sandbox/sandboxController.js.map +7 -0
- package/dist/services/sandbox/types.js +50 -0
- package/dist/services/sandbox/types.js.map +7 -0
- package/dist/services/sessionMemory.js +266 -0
- package/dist/services/sessionMemory.js.map +7 -0
- package/dist/services/taskRouter.js +324 -0
- package/dist/services/taskRouter.js.map +7 -0
- package/dist/tools/ArchitectTool/ArchitectTool.js +7 -1
- package/dist/tools/ArchitectTool/ArchitectTool.js.map +2 -2
- package/dist/tools/AskExpertModelTool/AskExpertModelTool.js +6 -2
- package/dist/tools/AskExpertModelTool/AskExpertModelTool.js.map +2 -2
- package/dist/tools/AskUserQuestionTool/AskUserQuestionTool.js +2 -1
- package/dist/tools/AskUserQuestionTool/AskUserQuestionTool.js.map +2 -2
- package/dist/tools/BaseTool.js +72 -0
- package/dist/tools/BaseTool.js.map +7 -0
- package/dist/tools/BashOutputTool/BashOutputToolResultMessage.js +3 -0
- package/dist/tools/BashOutputTool/BashOutputToolResultMessage.js.map +2 -2
- package/dist/tools/BashTool/BashTool.js +79 -3
- package/dist/tools/BashTool/BashTool.js.map +2 -2
- package/dist/tools/BashTool/BashToolResultMessage.js +3 -0
- package/dist/tools/BashTool/BashToolResultMessage.js.map +2 -2
- package/dist/tools/BashTool/OutputLine.js +54 -0
- package/dist/tools/BashTool/OutputLine.js.map +2 -2
- package/dist/tools/BashTool/prompt.js +336 -3
- package/dist/tools/BashTool/prompt.js.map +2 -2
- package/dist/tools/FileEditTool/FileEditTool.js +29 -4
- package/dist/tools/FileEditTool/FileEditTool.js.map +2 -2
- package/dist/tools/FileEditTool/prompt.js +6 -3
- package/dist/tools/FileEditTool/prompt.js.map +2 -2
- package/dist/tools/FileWriteTool/FileWriteTool.js +5 -5
- package/dist/tools/FileWriteTool/FileWriteTool.js.map +2 -2
- package/dist/tools/FileWriteTool/prompt.js +4 -2
- package/dist/tools/FileWriteTool/prompt.js.map +2 -2
- package/dist/tools/GlobTool/GlobTool.js +4 -2
- package/dist/tools/GlobTool/GlobTool.js.map +2 -2
- package/dist/tools/GrepTool/GrepTool.js +36 -7
- package/dist/tools/GrepTool/GrepTool.js.map +2 -2
- package/dist/tools/KillShellTool/KillShellToolResultMessage.js +3 -0
- package/dist/tools/KillShellTool/KillShellToolResultMessage.js.map +2 -2
- package/dist/tools/ListMcpResourcesTool/ListMcpResourcesTool.js +109 -0
- package/dist/tools/ListMcpResourcesTool/ListMcpResourcesTool.js.map +7 -0
- package/dist/tools/ListMcpResourcesTool/prompt.js +19 -0
- package/dist/tools/ListMcpResourcesTool/prompt.js.map +7 -0
- package/dist/tools/LspTool/LspTool.js +664 -0
- package/dist/tools/LspTool/LspTool.js.map +7 -0
- package/dist/tools/LspTool/prompt.js +27 -0
- package/dist/tools/LspTool/prompt.js.map +7 -0
- package/dist/tools/MCPTool/MCPTool.js +9 -1
- package/dist/tools/MCPTool/MCPTool.js.map +2 -2
- package/dist/tools/MemoryReadTool/MemoryReadTool.js +19 -6
- package/dist/tools/MemoryReadTool/MemoryReadTool.js.map +2 -2
- package/dist/tools/MemoryWriteTool/MemoryWriteTool.js +6 -6
- package/dist/tools/MemoryWriteTool/MemoryWriteTool.js.map +2 -2
- package/dist/tools/MultiEditTool/MultiEditTool.js +19 -2
- package/dist/tools/MultiEditTool/MultiEditTool.js.map +2 -2
- package/dist/tools/MultiEditTool/prompt.js +5 -3
- package/dist/tools/MultiEditTool/prompt.js.map +2 -2
- package/dist/tools/NotebookEditTool/NotebookEditTool.js +7 -2
- package/dist/tools/NotebookEditTool/NotebookEditTool.js.map +2 -2
- package/dist/tools/NotebookReadTool/NotebookReadTool.js.map +2 -2
- package/dist/tools/PlanModeTool/EnterPlanModeTool.js +75 -0
- package/dist/tools/PlanModeTool/EnterPlanModeTool.js.map +7 -0
- package/dist/tools/PlanModeTool/ExitPlanModeTool.js +109 -0
- package/dist/tools/PlanModeTool/ExitPlanModeTool.js.map +7 -0
- package/dist/tools/PlanModeTool/prompt.js +94 -0
- package/dist/tools/PlanModeTool/prompt.js.map +7 -0
- package/dist/tools/ReadMcpResourceTool/ReadMcpResourceTool.js +130 -0
- package/dist/tools/ReadMcpResourceTool/ReadMcpResourceTool.js.map +7 -0
- package/dist/tools/ReadMcpResourceTool/prompt.js +17 -0
- package/dist/tools/ReadMcpResourceTool/prompt.js.map +7 -0
- package/dist/tools/SkillTool/SkillTool.js +10 -4
- package/dist/tools/SkillTool/SkillTool.js.map +2 -2
- package/dist/tools/SkillTool/prompt.js +1 -1
- package/dist/tools/SkillTool/prompt.js.map +1 -1
- package/dist/tools/SlashCommandTool/SlashCommandTool.js +260 -0
- package/dist/tools/SlashCommandTool/SlashCommandTool.js.map +7 -0
- package/dist/tools/SlashCommandTool/prompt.js +35 -0
- package/dist/tools/SlashCommandTool/prompt.js.map +7 -0
- package/dist/tools/TaskOutputTool/TaskOutputTool.js +190 -0
- package/dist/tools/TaskOutputTool/TaskOutputTool.js.map +7 -0
- package/dist/tools/TaskOutputTool/prompt.js +15 -0
- package/dist/tools/TaskOutputTool/prompt.js.map +7 -0
- package/dist/tools/TaskTool/TaskTool.js +310 -104
- package/dist/tools/TaskTool/TaskTool.js.map +2 -2
- package/dist/tools/TaskTool/prompt.js.map +2 -2
- package/dist/tools/TodoWriteTool/TodoWriteTool.js +42 -77
- package/dist/tools/TodoWriteTool/TodoWriteTool.js.map +2 -2
- package/dist/tools/URLFetcherTool/URLFetcherTool.js +4 -1
- package/dist/tools/URLFetcherTool/URLFetcherTool.js.map +2 -2
- package/dist/tools/URLFetcherTool/cache.js +55 -8
- package/dist/tools/URLFetcherTool/cache.js.map +2 -2
- package/dist/tools.js +31 -2
- package/dist/tools.js.map +2 -2
- package/dist/types/hooks.js +4 -0
- package/dist/types/hooks.js.map +2 -2
- package/dist/types/marketplace.js.map +2 -2
- package/dist/types/messageGroup.js +36 -0
- package/dist/types/messageGroup.js.map +7 -0
- package/dist/types/plugin.js.map +2 -2
- package/dist/types/thinking.js +1 -0
- package/dist/types/thinking.js.map +7 -0
- package/dist/utils/BackgroundShellManager.js +136 -39
- package/dist/utils/BackgroundShellManager.js.map +2 -2
- package/dist/utils/CircuitBreaker.js +242 -0
- package/dist/utils/CircuitBreaker.js.map +7 -0
- package/dist/utils/MessageBatchBuffer.js +102 -0
- package/dist/utils/MessageBatchBuffer.js.map +7 -0
- package/dist/utils/PersistentShell.js +151 -1
- package/dist/utils/PersistentShell.js.map +2 -2
- package/dist/utils/agentLoader.js +1 -23
- package/dist/utils/agentLoader.js.map +2 -2
- package/dist/utils/agentTranscripts.js +641 -0
- package/dist/utils/agentTranscripts.js.map +7 -0
- package/dist/utils/animationManager.js +213 -0
- package/dist/utils/animationManager.js.map +7 -0
- package/dist/utils/animationSync.js +110 -0
- package/dist/utils/animationSync.js.map +7 -0
- package/dist/utils/ask.js +2 -0
- package/dist/utils/ask.js.map +2 -2
- package/dist/utils/asyncFile.js +215 -0
- package/dist/utils/asyncFile.js.map +7 -0
- package/dist/utils/backgroundAgentManager.js +231 -0
- package/dist/utils/backgroundAgentManager.js.map +7 -0
- package/dist/utils/config.js +108 -10
- package/dist/utils/config.js.map +2 -2
- package/dist/utils/conversationRecovery.js +19 -0
- package/dist/utils/conversationRecovery.js.map +2 -2
- package/dist/utils/credentials/CredentialStore.js +1 -0
- package/dist/utils/credentials/CredentialStore.js.map +7 -0
- package/dist/utils/credentials/EncryptedFileStore.js +157 -0
- package/dist/utils/credentials/EncryptedFileStore.js.map +7 -0
- package/dist/utils/credentials/index.js +37 -0
- package/dist/utils/credentials/index.js.map +7 -0
- package/dist/utils/credentials/migration.js +82 -0
- package/dist/utils/credentials/migration.js.map +7 -0
- package/dist/utils/exit.js +73 -0
- package/dist/utils/exit.js.map +7 -0
- package/dist/utils/format.js +73 -5
- package/dist/utils/format.js.map +2 -2
- package/dist/utils/generators.js +76 -6
- package/dist/utils/generators.js.map +2 -2
- package/dist/utils/globalErrorHandler.js +149 -0
- package/dist/utils/globalErrorHandler.js.map +7 -0
- package/dist/utils/groupHandlers/index.js +8 -0
- package/dist/utils/groupHandlers/index.js.map +7 -0
- package/dist/utils/groupHandlers/parallelTasksHandler.js +140 -0
- package/dist/utils/groupHandlers/parallelTasksHandler.js.map +7 -0
- package/dist/utils/groupHandlers/taskHandler.js +104 -0
- package/dist/utils/groupHandlers/taskHandler.js.map +7 -0
- package/dist/utils/groupHandlers/types.js +1 -0
- package/dist/utils/groupHandlers/types.js.map +7 -0
- package/dist/utils/logRotation.js +224 -0
- package/dist/utils/logRotation.js.map +7 -0
- package/dist/utils/markdown.js +13 -1
- package/dist/utils/markdown.js.map +2 -2
- package/dist/utils/marketplaceManager.js +3 -5
- package/dist/utils/marketplaceManager.js.map +2 -2
- package/dist/utils/memSafety.js +264 -0
- package/dist/utils/memSafety.js.map +7 -0
- package/dist/utils/messageGroupManager.js +274 -0
- package/dist/utils/messageGroupManager.js.map +7 -0
- package/dist/utils/messages.js +13 -4
- package/dist/utils/messages.js.map +2 -2
- package/dist/utils/model.js +119 -15
- package/dist/utils/model.js.map +3 -3
- package/dist/utils/permissions/filesystem.js +162 -6
- package/dist/utils/permissions/filesystem.js.map +2 -2
- package/dist/utils/plan/planMode.js +143 -0
- package/dist/utils/plan/planMode.js.map +7 -0
- package/dist/utils/pluginLoader.js +17 -21
- package/dist/utils/pluginLoader.js.map +2 -2
- package/dist/utils/ripgrep.js +55 -2
- package/dist/utils/ripgrep.js.map +2 -2
- package/dist/utils/safePath.js +132 -0
- package/dist/utils/safePath.js.map +7 -0
- package/dist/utils/sanitizeInput.js +32 -0
- package/dist/utils/sanitizeInput.js.map +7 -0
- package/dist/utils/secureKeyStorage.js +312 -0
- package/dist/utils/secureKeyStorage.js.map +7 -0
- package/dist/utils/sensitiveFiles.js +125 -0
- package/dist/utils/sensitiveFiles.js.map +7 -0
- package/dist/utils/session/sessionPlugins.js +67 -0
- package/dist/utils/session/sessionPlugins.js.map +7 -0
- package/dist/utils/taskDisplayUtils.js +257 -0
- package/dist/utils/taskDisplayUtils.js.map +7 -0
- package/dist/utils/teamConfig.js +2 -1
- package/dist/utils/teamConfig.js.map +2 -2
- package/dist/utils/theme.js +6 -6
- package/dist/utils/theme.js.map +1 -1
- package/dist/utils/todoStorage.js +92 -2
- package/dist/utils/todoStorage.js.map +2 -2
- package/dist/utils/toolRiskClassification.js +207 -0
- package/dist/utils/toolRiskClassification.js.map +7 -0
- package/dist/utils/toolTimeout.js +136 -0
- package/dist/utils/toolTimeout.js.map +7 -0
- package/dist/utils/tooling/safeRender.js +116 -0
- package/dist/utils/tooling/safeRender.js.map +7 -0
- package/dist/utils/userFriendlyError.js +346 -0
- package/dist/utils/userFriendlyError.js.map +7 -0
- package/dist/utils/vendor/ripgrep/arm64-darwin/rg +0 -0
- package/dist/version.js +2 -2
- package/dist/version.js.map +1 -1
- package/package.json +17 -5
- package/scripts/postinstall.js +128 -38
- package/dist/commands/agents.js +0 -2086
- package/dist/commands/agents.js.map +0 -7
- package/dist/commands/build.js +0 -74
- package/dist/commands/build.js.map +0 -7
- package/dist/commands/compression.js +0 -57
- package/dist/commands/compression.js.map +0 -7
- package/dist/commands/listen.js +0 -37
- package/dist/commands/listen.js.map +0 -7
- package/dist/commands/login.js +0 -37
- package/dist/commands/login.js.map +0 -7
- package/dist/commands/logout.js +0 -33
- package/dist/commands/logout.js.map +0 -7
- package/dist/commands/mcp.js +0 -40
- package/dist/commands/mcp.js.map +0 -7
- package/dist/commands/mcp_refresh.js +0 -40
- package/dist/commands/mcp_refresh.js.map +0 -7
- package/dist/commands/modelstatus.js +0 -21
- package/dist/commands/modelstatus.js.map +0 -7
- package/dist/commands/onboarding.js +0 -36
- package/dist/commands/onboarding.js.map +0 -7
- package/dist/commands/plugin-interactive.js +0 -446
- package/dist/commands/plugin-interactive.js.map +0 -7
- package/dist/commands/pr_comments.js +0 -61
- package/dist/commands/pr_comments.js.map +0 -7
- package/dist/commands/release-notes.js +0 -30
- package/dist/commands/release-notes.js.map +0 -7
- package/dist/commands/review.js +0 -51
- package/dist/commands/review.js.map +0 -7
- package/dist/components/Bug.js +0 -147
- package/dist/components/Bug.js.map +0 -7
- package/dist/components/ModelSelector.js +0 -2062
- package/dist/components/ModelSelector.js.map +0 -7
- package/dist/components/ModelStatusDisplay.js +0 -87
- package/dist/components/ModelStatusDisplay.js.map +0 -7
- package/dist/entrypoints/cli-wrapper.js +0 -61
- package/dist/entrypoints/cli-wrapper.js.map +0 -7
- package/dist/hooks/useCancelRequest.js +0 -28
- package/dist/hooks/useCancelRequest.js.map +0 -7
- package/dist/screens/Doctor.js +0 -22
- package/dist/screens/Doctor.js.map +0 -7
package/dist/entrypoints/cli.js
CHANGED
|
@@ -1,11 +1,15 @@
|
|
|
1
1
|
#!/usr/bin/env -S node --no-warnings=ExperimentalWarning --enable-source-maps
|
|
2
2
|
process.env.DEV = "false";
|
|
3
|
+
import { EventEmitter } from "events";
|
|
4
|
+
EventEmitter.defaultMaxListeners = 20;
|
|
3
5
|
import { fileURLToPath } from "node:url";
|
|
4
6
|
import { dirname, join } from "node:path";
|
|
5
7
|
import { existsSync } from "node:fs";
|
|
6
8
|
import { initSentry } from "../services/sentry.js";
|
|
7
9
|
import { PRODUCT_COMMAND, PRODUCT_NAME } from "../constants/product.js";
|
|
10
|
+
import { initGlobalErrorHandlers } from "../utils/globalErrorHandler.js";
|
|
8
11
|
initSentry();
|
|
12
|
+
initGlobalErrorHandlers();
|
|
9
13
|
try {
|
|
10
14
|
if (!process.env.YOGA_WASM_PATH) {
|
|
11
15
|
const __filename = fileURLToPath(import.meta.url);
|
|
@@ -48,7 +52,9 @@ import { dateToFilename, logError, parseLogFilename } from "../utils/log.js";
|
|
|
48
52
|
import { initDebugLogger } from "../utils/debugLogger.js";
|
|
49
53
|
import { Onboarding } from "../components/Onboarding.js";
|
|
50
54
|
import { TrustDialog } from "../components/TrustDialog.js";
|
|
51
|
-
import {
|
|
55
|
+
import {
|
|
56
|
+
checkHasTrustDialogAccepted
|
|
57
|
+
} from "../utils/config.js";
|
|
52
58
|
import { isDefaultSlowAndCapableModel } from "../utils/model.js";
|
|
53
59
|
import { LogList } from "../screens/LogList.js";
|
|
54
60
|
import { ResumeConversation } from "../screens/ResumeConversation.js";
|
|
@@ -59,6 +65,7 @@ import { getCommands } from "../commands.js";
|
|
|
59
65
|
import { getNextAvailableLogForkNumber, loadLogList } from "../utils/log.js";
|
|
60
66
|
import { loadMessagesFromLog } from "../utils/conversationRecovery.js";
|
|
61
67
|
import { cleanupOldMessageFilesInBackground } from "../utils/cleanup.js";
|
|
68
|
+
import { runLogRotationInBackground, shouldRotate } from "../utils/logRotation.js";
|
|
62
69
|
import {
|
|
63
70
|
handleListApprovedTools,
|
|
64
71
|
handleRemoveApprovedTool
|
|
@@ -70,8 +77,7 @@ import {
|
|
|
70
77
|
parseEnvVars,
|
|
71
78
|
removeMcpServer,
|
|
72
79
|
getClients,
|
|
73
|
-
ensureConfigScope
|
|
74
|
-
shutdownMCPClients
|
|
80
|
+
ensureConfigScope
|
|
75
81
|
} from "../services/mcpClient.js";
|
|
76
82
|
import { handleMcprcServerApprovals } from "../services/mcpServerApproval.js";
|
|
77
83
|
import { cursorShow } from "ansi-escapes";
|
|
@@ -80,14 +86,21 @@ import {
|
|
|
80
86
|
assertMinVersion,
|
|
81
87
|
getUpdateCommandSuggestions
|
|
82
88
|
} from "../utils/autoUpdater.js";
|
|
89
|
+
import {
|
|
90
|
+
initI18n,
|
|
91
|
+
setLanguage,
|
|
92
|
+
isLanguageSupported
|
|
93
|
+
} from "../i18n/index.js";
|
|
83
94
|
import { gt } from "semver";
|
|
84
95
|
import { CACHE_PATHS } from "../utils/log.js";
|
|
85
|
-
import {
|
|
96
|
+
import { onShellCrash } from "../utils/PersistentShell.js";
|
|
86
97
|
import { clearTerminal } from "../utils/terminal.js";
|
|
98
|
+
import { setupExitHandlers } from "../utils/exit.js";
|
|
87
99
|
import { showInvalidConfigDialog } from "../components/InvalidConfigDialog.js";
|
|
88
100
|
import { ConfigParseError } from "../utils/errors.js";
|
|
89
101
|
import { grantReadPermissionForOriginalDir } from "../utils/permissions/filesystem.js";
|
|
90
102
|
import { MACRO } from "../constants/macros.js";
|
|
103
|
+
import { SEMANTIC_COLORS } from "../constants/colors.js";
|
|
91
104
|
function completeOnboarding() {
|
|
92
105
|
const config = getGlobalConfig();
|
|
93
106
|
saveGlobalConfig({
|
|
@@ -204,6 +217,9 @@ async function setup(cwd2, safeMode) {
|
|
|
204
217
|
return;
|
|
205
218
|
}
|
|
206
219
|
cleanupOldMessageFilesInBackground();
|
|
220
|
+
if (shouldRotate()) {
|
|
221
|
+
runLogRotationInBackground();
|
|
222
|
+
}
|
|
207
223
|
getContext();
|
|
208
224
|
const globalConfig = getGlobalConfig();
|
|
209
225
|
if (globalConfig.iterm2KeyBindingInstalled === true && globalConfig.shiftEnterKeyBindingInstalled !== true) {
|
|
@@ -254,7 +270,24 @@ if (process.env.NODE_ENV !== "test") {
|
|
|
254
270
|
});
|
|
255
271
|
}
|
|
256
272
|
async function main() {
|
|
273
|
+
const globalConfig = getGlobalConfig();
|
|
274
|
+
const configLang = globalConfig.language;
|
|
275
|
+
if (configLang && isLanguageSupported(configLang)) {
|
|
276
|
+
initI18n(configLang);
|
|
277
|
+
} else {
|
|
278
|
+
initI18n("en");
|
|
279
|
+
}
|
|
257
280
|
initDebugLogger();
|
|
281
|
+
onShellCrash((code, signal) => {
|
|
282
|
+
console.error("");
|
|
283
|
+
console.error(
|
|
284
|
+
`\u26A0\uFE0F Shell process crashed unexpectedly (code: ${code}, signal: ${signal})`
|
|
285
|
+
);
|
|
286
|
+
console.error(
|
|
287
|
+
" Bash commands may fail. Try running /clear or restart the CLI."
|
|
288
|
+
);
|
|
289
|
+
console.error("");
|
|
290
|
+
});
|
|
258
291
|
try {
|
|
259
292
|
enableConfigs();
|
|
260
293
|
try {
|
|
@@ -336,8 +369,12 @@ ${commandList}`
|
|
|
336
369
|
"Print response and exit (useful for pipes)",
|
|
337
370
|
() => true
|
|
338
371
|
).option(
|
|
339
|
-
"--
|
|
340
|
-
"Enable
|
|
372
|
+
"--smart",
|
|
373
|
+
"Enable Smart safety mode (dangerous operations need confirmation)",
|
|
374
|
+
() => true
|
|
375
|
+
).option(
|
|
376
|
+
"--strict",
|
|
377
|
+
"Enable Strict safety mode (all write operations need confirmation)",
|
|
341
378
|
() => true
|
|
342
379
|
).option(
|
|
343
380
|
"-n, --new",
|
|
@@ -347,6 +384,10 @@ ${commandList}`
|
|
|
347
384
|
"-r, --resume",
|
|
348
385
|
"Select a previous conversation to resume",
|
|
349
386
|
() => true
|
|
387
|
+
).option(
|
|
388
|
+
"-l, --lang <language>",
|
|
389
|
+
"Set interface language (en, zh-CN)",
|
|
390
|
+
String
|
|
350
391
|
).action(
|
|
351
392
|
async (prompt, {
|
|
352
393
|
cwd: cwd2,
|
|
@@ -354,12 +395,20 @@ ${commandList}`
|
|
|
354
395
|
verbose,
|
|
355
396
|
enableArchitect,
|
|
356
397
|
print,
|
|
357
|
-
|
|
398
|
+
smart,
|
|
399
|
+
strict,
|
|
358
400
|
new: startNew,
|
|
359
|
-
resume: selectResume
|
|
401
|
+
resume: selectResume,
|
|
402
|
+
lang
|
|
360
403
|
}) => {
|
|
361
|
-
|
|
362
|
-
|
|
404
|
+
if (lang && isLanguageSupported(lang)) {
|
|
405
|
+
setLanguage(lang);
|
|
406
|
+
}
|
|
407
|
+
const envSafetyMode = process.env.MINTO_SAFETY_MODE;
|
|
408
|
+
const safetyMode = envSafetyMode ? envSafetyMode : strict ? "strict" : smart ? "smart" : "yolo";
|
|
409
|
+
const safeMode = safetyMode !== "yolo";
|
|
410
|
+
await showSetupScreens(safeMode, print, rawModeSupported);
|
|
411
|
+
await setup(cwd2, safeMode);
|
|
363
412
|
assertMinVersion();
|
|
364
413
|
const [tools, mcpClients] = await Promise.all([
|
|
365
414
|
getTools(
|
|
@@ -383,7 +432,8 @@ ${commandList}`
|
|
|
383
432
|
prompt: inputPrompt,
|
|
384
433
|
cwd: cwd2,
|
|
385
434
|
tools,
|
|
386
|
-
safeMode
|
|
435
|
+
safeMode,
|
|
436
|
+
safetyMode
|
|
387
437
|
});
|
|
388
438
|
console.log(response);
|
|
389
439
|
process.exit(0);
|
|
@@ -458,6 +508,11 @@ ${commandList}`
|
|
|
458
508
|
{
|
|
459
509
|
const { render } = await import("ink");
|
|
460
510
|
const { REPL } = await import("../screens/REPL.js");
|
|
511
|
+
if (process.stdout.isTTY) {
|
|
512
|
+
await new Promise((resolve) => {
|
|
513
|
+
process.stdout.write("\x1B[?25h\n", () => resolve());
|
|
514
|
+
});
|
|
515
|
+
}
|
|
461
516
|
render(
|
|
462
517
|
/* @__PURE__ */ React.createElement(
|
|
463
518
|
REPL,
|
|
@@ -471,7 +526,8 @@ ${commandList}`
|
|
|
471
526
|
shouldShowPromptInput: true,
|
|
472
527
|
verbose,
|
|
473
528
|
tools,
|
|
474
|
-
safeMode
|
|
529
|
+
safeMode,
|
|
530
|
+
safetyMode,
|
|
475
531
|
mcpClients,
|
|
476
532
|
isDefaultModel,
|
|
477
533
|
initialUpdateVersion: updateInfo.version,
|
|
@@ -942,7 +998,7 @@ ${commandList}`
|
|
|
942
998
|
onSubmit: handleConfirm
|
|
943
999
|
}
|
|
944
1000
|
))
|
|
945
|
-
), /* @__PURE__ */ React2.createElement(Box, { marginTop: 0, marginLeft: 3 }, /* @__PURE__ */ React2.createElement(Text, {
|
|
1001
|
+
), /* @__PURE__ */ React2.createElement(Box, { marginTop: 0, marginLeft: 3 }, /* @__PURE__ */ React2.createElement(Text, { color: SEMANTIC_COLORS.dim }, "Space to select \xB7 Enter to confirm \xB7 Esc to cancel")), isFinished && /* @__PURE__ */ React2.createElement(Box, { marginTop: 1 }, /* @__PURE__ */ React2.createElement(Text, { color: theme.success }, "Successfully imported", " ", importResults.filter((r) => r.success).length, " MCP server to local config.")));
|
|
946
1002
|
}
|
|
947
1003
|
const { unmount } = render(/* @__PURE__ */ React2.createElement(ClaudeDesktopImport, null));
|
|
948
1004
|
setTimeout(() => {
|
|
@@ -1027,98 +1083,108 @@ ${commandList}`
|
|
|
1027
1083
|
"[identifier]",
|
|
1028
1084
|
"A number (0, 1, 2, etc.) or file path to resume a specific conversation"
|
|
1029
1085
|
).option("-c, --cwd <cwd>", "The current working directory", String, cwd()).option("-e, --enable-architect", "Enable the Architect tool", () => true).option("-v, --verbose", "Do not truncate message output", () => true).option(
|
|
1030
|
-
"--
|
|
1031
|
-
"Enable
|
|
1086
|
+
"--smart",
|
|
1087
|
+
"Enable Smart safety mode (dangerous operations need confirmation)",
|
|
1032
1088
|
() => true
|
|
1033
|
-
).
|
|
1034
|
-
|
|
1035
|
-
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
|
-
|
|
1039
|
-
|
|
1040
|
-
|
|
1041
|
-
|
|
1042
|
-
|
|
1043
|
-
|
|
1044
|
-
|
|
1045
|
-
|
|
1046
|
-
|
|
1047
|
-
|
|
1048
|
-
|
|
1049
|
-
|
|
1050
|
-
|
|
1051
|
-
|
|
1052
|
-
|
|
1053
|
-
|
|
1089
|
+
).option(
|
|
1090
|
+
"--strict",
|
|
1091
|
+
"Enable Strict safety mode (all write operations need confirmation)",
|
|
1092
|
+
() => true
|
|
1093
|
+
).action(
|
|
1094
|
+
async (identifier, { cwd: cwd2, enableArchitect, smart, strict, verbose }) => {
|
|
1095
|
+
const envSafetyMode = process.env.MINTO_SAFETY_MODE;
|
|
1096
|
+
const safetyMode = envSafetyMode ? envSafetyMode : strict ? "strict" : smart ? "smart" : "yolo";
|
|
1097
|
+
const safeMode = safetyMode !== "yolo";
|
|
1098
|
+
await setup(cwd2, safeMode);
|
|
1099
|
+
assertMinVersion();
|
|
1100
|
+
const [tools, commands2, logs, mcpClients] = await Promise.all([
|
|
1101
|
+
getTools(
|
|
1102
|
+
enableArchitect ?? getCurrentProjectConfig().enableArchitectTool
|
|
1103
|
+
),
|
|
1104
|
+
getCommands(),
|
|
1105
|
+
loadLogList(CACHE_PATHS.messages()),
|
|
1106
|
+
getClients()
|
|
1107
|
+
]);
|
|
1108
|
+
if (identifier !== void 0) {
|
|
1109
|
+
const number = Math.abs(parseInt(identifier));
|
|
1110
|
+
const isNumber = !isNaN(number);
|
|
1111
|
+
let messages, date, forkNumber;
|
|
1112
|
+
try {
|
|
1113
|
+
if (isNumber) {
|
|
1114
|
+
const log = logs[number];
|
|
1115
|
+
if (!log) {
|
|
1116
|
+
console.error("No conversation found at index", number);
|
|
1117
|
+
process.exit(1);
|
|
1118
|
+
}
|
|
1119
|
+
messages = await loadMessagesFromLog(log.fullPath, tools);
|
|
1120
|
+
({ date, forkNumber } = log);
|
|
1121
|
+
} else {
|
|
1122
|
+
if (!existsSync(identifier)) {
|
|
1123
|
+
console.error("File does not exist:", identifier);
|
|
1124
|
+
process.exit(1);
|
|
1125
|
+
}
|
|
1126
|
+
messages = await loadMessagesFromLog(identifier, tools);
|
|
1127
|
+
const pathSegments = identifier.split("/");
|
|
1128
|
+
const filename = pathSegments[pathSegments.length - 1] ?? "unknown";
|
|
1129
|
+
({ date, forkNumber } = parseLogFilename(filename));
|
|
1054
1130
|
}
|
|
1055
|
-
|
|
1056
|
-
|
|
1057
|
-
|
|
1058
|
-
if (!
|
|
1059
|
-
|
|
1060
|
-
process.exit(1);
|
|
1131
|
+
const fork = getNextAvailableLogForkNumber(date, forkNumber ?? 1, 0);
|
|
1132
|
+
const isDefaultModel = await isDefaultSlowAndCapableModel();
|
|
1133
|
+
const forkRawModeCheck = validateRawModeSupport(process.stdin);
|
|
1134
|
+
if (!forkRawModeCheck.supported) {
|
|
1135
|
+
requireRawModeOrExit(process.stdin, true);
|
|
1061
1136
|
}
|
|
1062
|
-
|
|
1063
|
-
|
|
1064
|
-
|
|
1065
|
-
|
|
1066
|
-
|
|
1067
|
-
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
1071
|
-
|
|
1137
|
+
{
|
|
1138
|
+
const { render } = await import("ink");
|
|
1139
|
+
const { REPL } = await import("../screens/REPL.js");
|
|
1140
|
+
render(
|
|
1141
|
+
/* @__PURE__ */ React.createElement(
|
|
1142
|
+
REPL,
|
|
1143
|
+
{
|
|
1144
|
+
initialPrompt: "",
|
|
1145
|
+
messageLogName: date,
|
|
1146
|
+
initialForkNumber: fork,
|
|
1147
|
+
shouldShowPromptInput: true,
|
|
1148
|
+
verbose,
|
|
1149
|
+
commands: commands2,
|
|
1150
|
+
tools,
|
|
1151
|
+
safeMode,
|
|
1152
|
+
safetyMode,
|
|
1153
|
+
initialMessages: messages,
|
|
1154
|
+
mcpClients,
|
|
1155
|
+
isDefaultModel,
|
|
1156
|
+
fallbackMode: false
|
|
1157
|
+
}
|
|
1158
|
+
),
|
|
1159
|
+
{ exitOnCtrlC: false }
|
|
1160
|
+
);
|
|
1161
|
+
}
|
|
1162
|
+
} catch (error) {
|
|
1163
|
+
logError(`Failed to load conversation: ${error}`);
|
|
1164
|
+
process.exit(1);
|
|
1072
1165
|
}
|
|
1073
|
-
|
|
1166
|
+
} else {
|
|
1167
|
+
const context2 = {};
|
|
1168
|
+
(async () => {
|
|
1074
1169
|
const { render } = await import("ink");
|
|
1075
|
-
const {
|
|
1076
|
-
render(
|
|
1170
|
+
const { unmount } = render(
|
|
1077
1171
|
/* @__PURE__ */ React.createElement(
|
|
1078
|
-
|
|
1172
|
+
ResumeConversation,
|
|
1079
1173
|
{
|
|
1080
|
-
|
|
1081
|
-
messageLogName: date,
|
|
1082
|
-
initialForkNumber: fork,
|
|
1083
|
-
shouldShowPromptInput: true,
|
|
1084
|
-
verbose,
|
|
1174
|
+
context: context2,
|
|
1085
1175
|
commands: commands2,
|
|
1176
|
+
logs,
|
|
1086
1177
|
tools,
|
|
1087
|
-
|
|
1088
|
-
initialMessages: messages,
|
|
1089
|
-
mcpClients,
|
|
1090
|
-
isDefaultModel,
|
|
1091
|
-
fallbackMode: false
|
|
1178
|
+
verbose
|
|
1092
1179
|
}
|
|
1093
1180
|
),
|
|
1094
|
-
|
|
1181
|
+
renderContextWithExitOnCtrlC
|
|
1095
1182
|
);
|
|
1096
|
-
|
|
1097
|
-
|
|
1098
|
-
logError(`Failed to load conversation: ${error}`);
|
|
1099
|
-
process.exit(1);
|
|
1183
|
+
context2.unmount = unmount;
|
|
1184
|
+
})();
|
|
1100
1185
|
}
|
|
1101
|
-
} else {
|
|
1102
|
-
const context2 = {};
|
|
1103
|
-
(async () => {
|
|
1104
|
-
const { render } = await import("ink");
|
|
1105
|
-
const { unmount } = render(
|
|
1106
|
-
/* @__PURE__ */ React.createElement(
|
|
1107
|
-
ResumeConversation,
|
|
1108
|
-
{
|
|
1109
|
-
context: context2,
|
|
1110
|
-
commands: commands2,
|
|
1111
|
-
logs,
|
|
1112
|
-
tools,
|
|
1113
|
-
verbose
|
|
1114
|
-
}
|
|
1115
|
-
),
|
|
1116
|
-
renderContextWithExitOnCtrlC
|
|
1117
|
-
);
|
|
1118
|
-
context2.unmount = unmount;
|
|
1119
|
-
})();
|
|
1120
1186
|
}
|
|
1121
|
-
|
|
1187
|
+
);
|
|
1122
1188
|
program.command("error").description(
|
|
1123
1189
|
"View error logs. Optionally provide a number (0, -1, -2, etc.) to display a specific log."
|
|
1124
1190
|
).argument(
|
|
@@ -1184,45 +1250,7 @@ async function stdin() {
|
|
|
1184
1250
|
for await (const chunk of process.stdin) data += chunk;
|
|
1185
1251
|
return data;
|
|
1186
1252
|
}
|
|
1187
|
-
|
|
1188
|
-
resetCursor();
|
|
1189
|
-
PersistentShell.getInstance().close();
|
|
1190
|
-
});
|
|
1191
|
-
let isShuttingDown = false;
|
|
1192
|
-
async function gracefulExit(code = 0) {
|
|
1193
|
-
if (isShuttingDown) return;
|
|
1194
|
-
isShuttingDown = true;
|
|
1195
|
-
try {
|
|
1196
|
-
resetCursor();
|
|
1197
|
-
} catch {
|
|
1198
|
-
}
|
|
1199
|
-
try {
|
|
1200
|
-
PersistentShell.getInstance().close();
|
|
1201
|
-
} catch {
|
|
1202
|
-
}
|
|
1203
|
-
try {
|
|
1204
|
-
await shutdownMCPClients();
|
|
1205
|
-
} catch {
|
|
1206
|
-
}
|
|
1207
|
-
process.exit(code);
|
|
1208
|
-
}
|
|
1209
|
-
process.on("SIGINT", () => {
|
|
1210
|
-
gracefulExit(0);
|
|
1211
|
-
});
|
|
1212
|
-
process.on("SIGTERM", () => {
|
|
1213
|
-
gracefulExit(0);
|
|
1214
|
-
});
|
|
1215
|
-
process.on("SIGBREAK", () => {
|
|
1216
|
-
gracefulExit(0);
|
|
1217
|
-
});
|
|
1218
|
-
process.on("unhandledRejection", (err) => {
|
|
1219
|
-
console.error("Unhandled rejection:", err);
|
|
1220
|
-
gracefulExit(1);
|
|
1221
|
-
});
|
|
1222
|
-
process.on("uncaughtException", (err) => {
|
|
1223
|
-
console.error("Uncaught exception:", err);
|
|
1224
|
-
gracefulExit(1);
|
|
1225
|
-
});
|
|
1253
|
+
setupExitHandlers();
|
|
1226
1254
|
function resetCursor() {
|
|
1227
1255
|
const terminal = process.stderr.isTTY ? process.stderr : process.stdout.isTTY ? process.stdout : void 0;
|
|
1228
1256
|
terminal?.write(`\x1B[?25h${cursorShow}`);
|