@within-7/minto 0.0.5-dev.1
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/LICENSE +201 -0
- package/README.md +1097 -0
- package/README.zh-CN.md +1097 -0
- package/cli.js +59 -0
- package/dist/Tool.js +1 -0
- package/dist/Tool.js.map +7 -0
- package/dist/commands/agents.js +2086 -0
- package/dist/commands/agents.js.map +7 -0
- package/dist/commands/approvedTools.js +36 -0
- package/dist/commands/approvedTools.js.map +7 -0
- package/dist/commands/bug.js +21 -0
- package/dist/commands/bug.js.map +7 -0
- package/dist/commands/build.js +74 -0
- package/dist/commands/build.js.map +7 -0
- package/dist/commands/clear.js +37 -0
- package/dist/commands/clear.js.map +7 -0
- package/dist/commands/compact.js +82 -0
- package/dist/commands/compact.js.map +7 -0
- package/dist/commands/compression.js +57 -0
- package/dist/commands/compression.js.map +7 -0
- package/dist/commands/config.js +20 -0
- package/dist/commands/config.js.map +7 -0
- package/dist/commands/cost.js +19 -0
- package/dist/commands/cost.js.map +7 -0
- package/dist/commands/ctx_viz.js +152 -0
- package/dist/commands/ctx_viz.js.map +7 -0
- package/dist/commands/doctor.js +25 -0
- package/dist/commands/doctor.js.map +7 -0
- package/dist/commands/help.js +20 -0
- package/dist/commands/help.js.map +7 -0
- package/dist/commands/init.js +38 -0
- package/dist/commands/init.js.map +7 -0
- package/dist/commands/listen.js +37 -0
- package/dist/commands/listen.js.map +7 -0
- package/dist/commands/login.js +37 -0
- package/dist/commands/login.js.map +7 -0
- package/dist/commands/logout.js +33 -0
- package/dist/commands/logout.js.map +7 -0
- package/dist/commands/mcp-interactive.js +267 -0
- package/dist/commands/mcp-interactive.js.map +7 -0
- package/dist/commands/mcp.js +40 -0
- package/dist/commands/mcp.js.map +7 -0
- package/dist/commands/mcp_refresh.js +40 -0
- package/dist/commands/mcp_refresh.js.map +7 -0
- package/dist/commands/model.js +41 -0
- package/dist/commands/model.js.map +7 -0
- package/dist/commands/modelstatus.js +21 -0
- package/dist/commands/modelstatus.js.map +7 -0
- package/dist/commands/onboarding.js +36 -0
- package/dist/commands/onboarding.js.map +7 -0
- package/dist/commands/plugin/AddMarketplaceForm.js +62 -0
- package/dist/commands/plugin/AddMarketplaceForm.js.map +7 -0
- package/dist/commands/plugin/ConfirmDialog.js +71 -0
- package/dist/commands/plugin/ConfirmDialog.js.map +7 -0
- package/dist/commands/plugin/ErrorView.js +33 -0
- package/dist/commands/plugin/ErrorView.js.map +7 -0
- package/dist/commands/plugin/InstalledPluginsByMarketplace.js +135 -0
- package/dist/commands/plugin/InstalledPluginsByMarketplace.js.map +7 -0
- package/dist/commands/plugin/InstalledPluginsManager.js +99 -0
- package/dist/commands/plugin/InstalledPluginsManager.js.map +7 -0
- package/dist/commands/plugin/LoadingView.js +14 -0
- package/dist/commands/plugin/LoadingView.js.map +7 -0
- package/dist/commands/plugin/MainMenu.js +57 -0
- package/dist/commands/plugin/MainMenu.js.map +7 -0
- package/dist/commands/plugin/MarketplaceManager.js +155 -0
- package/dist/commands/plugin/MarketplaceManager.js.map +7 -0
- package/dist/commands/plugin/MarketplaceSelector.js +119 -0
- package/dist/commands/plugin/MarketplaceSelector.js.map +7 -0
- package/dist/commands/plugin/PlaceholderScreen.js +16 -0
- package/dist/commands/plugin/PlaceholderScreen.js.map +7 -0
- package/dist/commands/plugin/PluginBrowser.js +180 -0
- package/dist/commands/plugin/PluginBrowser.js.map +7 -0
- package/dist/commands/plugin/PluginDetailsInstall.js +152 -0
- package/dist/commands/plugin/PluginDetailsInstall.js.map +7 -0
- package/dist/commands/plugin/PluginDetailsManage.js +200 -0
- package/dist/commands/plugin/PluginDetailsManage.js.map +7 -0
- package/dist/commands/plugin/components.js +16 -0
- package/dist/commands/plugin/components.js.map +7 -0
- package/dist/commands/plugin/example-usage.js +63 -0
- package/dist/commands/plugin/example-usage.js.map +7 -0
- package/dist/commands/plugin/types.js +1 -0
- package/dist/commands/plugin/types.js.map +7 -0
- package/dist/commands/plugin/utils.js +77 -0
- package/dist/commands/plugin/utils.js.map +7 -0
- package/dist/commands/plugin-interactive.js +446 -0
- package/dist/commands/plugin-interactive.js.map +7 -0
- package/dist/commands/plugin.js +523 -0
- package/dist/commands/plugin.js.map +7 -0
- package/dist/commands/pr_comments.js +61 -0
- package/dist/commands/pr_comments.js.map +7 -0
- package/dist/commands/quit.js +16 -0
- package/dist/commands/quit.js.map +7 -0
- package/dist/commands/refreshCommands.js +43 -0
- package/dist/commands/refreshCommands.js.map +7 -0
- package/dist/commands/release-notes.js +30 -0
- package/dist/commands/release-notes.js.map +7 -0
- package/dist/commands/resume.js +35 -0
- package/dist/commands/resume.js.map +7 -0
- package/dist/commands/review.js +51 -0
- package/dist/commands/review.js.map +7 -0
- package/dist/commands/terminalSetup.js +164 -0
- package/dist/commands/terminalSetup.js.map +7 -0
- package/dist/commands.js +104 -0
- package/dist/commands.js.map +7 -0
- package/dist/components/AgentResponseBlock.js +41 -0
- package/dist/components/AgentResponseBlock.js.map +7 -0
- package/dist/components/AgentThinkingBlock.js +40 -0
- package/dist/components/AgentThinkingBlock.js.map +7 -0
- package/dist/components/AsciiLogo.js +19 -0
- package/dist/components/AsciiLogo.js.map +7 -0
- package/dist/components/BackgroundTasksPanel.js +124 -0
- package/dist/components/BackgroundTasksPanel.js.map +7 -0
- package/dist/components/Bug.js +147 -0
- package/dist/components/Bug.js.map +7 -0
- package/dist/components/Config.js +166 -0
- package/dist/components/Config.js.map +7 -0
- package/dist/components/ConsoleOAuthFlow.js +178 -0
- package/dist/components/ConsoleOAuthFlow.js.map +7 -0
- package/dist/components/Cost.js +13 -0
- package/dist/components/Cost.js.map +7 -0
- package/dist/components/CostThresholdDialog.js +38 -0
- package/dist/components/CostThresholdDialog.js.map +7 -0
- package/dist/components/CustomSelect/option-map.js +32 -0
- package/dist/components/CustomSelect/option-map.js.map +7 -0
- package/dist/components/CustomSelect/select-option.js +34 -0
- package/dist/components/CustomSelect/select-option.js.map +7 -0
- package/dist/components/CustomSelect/select.js +64 -0
- package/dist/components/CustomSelect/select.js.map +7 -0
- package/dist/components/CustomSelect/theme.js +1 -0
- package/dist/components/CustomSelect/theme.js.map +7 -0
- package/dist/components/CustomSelect/use-select-state.js +220 -0
- package/dist/components/CustomSelect/use-select-state.js.map +7 -0
- package/dist/components/CustomSelect/use-select.js +21 -0
- package/dist/components/CustomSelect/use-select.js.map +7 -0
- package/dist/components/FallbackToolUseRejectedMessage.js +11 -0
- package/dist/components/FallbackToolUseRejectedMessage.js.map +7 -0
- package/dist/components/FileEditToolUpdatedMessage.js +32 -0
- package/dist/components/FileEditToolUpdatedMessage.js.map +7 -0
- package/dist/components/HeaderBar.js +57 -0
- package/dist/components/HeaderBar.js.map +7 -0
- package/dist/components/Help.js +46 -0
- package/dist/components/Help.js.map +7 -0
- package/dist/components/HighlightedCode.js +30 -0
- package/dist/components/HighlightedCode.js.map +7 -0
- package/dist/components/HistorySearchOverlay.js +48 -0
- package/dist/components/HistorySearchOverlay.js.map +7 -0
- package/dist/components/InteractionRoundBlock.js +56 -0
- package/dist/components/InteractionRoundBlock.js.map +7 -0
- package/dist/components/InvalidConfigDialog.js +83 -0
- package/dist/components/InvalidConfigDialog.js.map +7 -0
- package/dist/components/Link.js +18 -0
- package/dist/components/Link.js.map +7 -0
- package/dist/components/LogSelector.js +50 -0
- package/dist/components/LogSelector.js.map +7 -0
- package/dist/components/Logo.js +96 -0
- package/dist/components/Logo.js.map +7 -0
- package/dist/components/MCPServerApprovalDialog.js +79 -0
- package/dist/components/MCPServerApprovalDialog.js.map +7 -0
- package/dist/components/MCPServerDialogCopy.js +11 -0
- package/dist/components/MCPServerDialogCopy.js.map +7 -0
- package/dist/components/MCPServerMultiselectDialog.js +80 -0
- package/dist/components/MCPServerMultiselectDialog.js.map +7 -0
- package/dist/components/Message.js +146 -0
- package/dist/components/Message.js.map +7 -0
- package/dist/components/MessageResponse.js +9 -0
- package/dist/components/MessageResponse.js.map +7 -0
- package/dist/components/MessageSelector.js +125 -0
- package/dist/components/MessageSelector.js.map +7 -0
- package/dist/components/ModeIndicator.js +38 -0
- package/dist/components/ModeIndicator.js.map +7 -0
- package/dist/components/ModelConfig.js +208 -0
- package/dist/components/ModelConfig.js.map +7 -0
- package/dist/components/ModelListManager.js +140 -0
- package/dist/components/ModelListManager.js.map +7 -0
- package/dist/components/ModelSelector.js +2062 -0
- package/dist/components/ModelSelector.js.map +7 -0
- package/dist/components/ModelStatusDisplay.js +87 -0
- package/dist/components/ModelStatusDisplay.js.map +7 -0
- package/dist/components/Onboarding.js +153 -0
- package/dist/components/Onboarding.js.map +7 -0
- package/dist/components/PressEnterToContinue.js +10 -0
- package/dist/components/PressEnterToContinue.js.map +7 -0
- package/dist/components/ProjectOnboarding.js +99 -0
- package/dist/components/ProjectOnboarding.js.map +7 -0
- package/dist/components/PromptInput.js +755 -0
- package/dist/components/PromptInput.js.map +7 -0
- package/dist/components/QuitSummary.js +81 -0
- package/dist/components/QuitSummary.js.map +7 -0
- package/dist/components/SentryErrorBoundary.js +27 -0
- package/dist/components/SentryErrorBoundary.js.map +7 -0
- package/dist/components/Spinner.js +101 -0
- package/dist/components/Spinner.js.map +7 -0
- package/dist/components/SpinnerSymbol.js +78 -0
- package/dist/components/SpinnerSymbol.js.map +7 -0
- package/dist/components/StreamingBashOutput.js +70 -0
- package/dist/components/StreamingBashOutput.js.map +7 -0
- package/dist/components/StructuredDiff.js +148 -0
- package/dist/components/StructuredDiff.js.map +7 -0
- package/dist/components/SubagentBlock.js +157 -0
- package/dist/components/SubagentBlock.js.map +7 -0
- package/dist/components/SubagentManager.js +65 -0
- package/dist/components/SubagentManager.js.map +7 -0
- package/dist/components/SubagentProgress.js +109 -0
- package/dist/components/SubagentProgress.js.map +7 -0
- package/dist/components/SubagentStatusMarker.js +37 -0
- package/dist/components/SubagentStatusMarker.js.map +7 -0
- package/dist/components/TaskCard.js +170 -0
- package/dist/components/TaskCard.js.map +7 -0
- package/dist/components/TextInput.js +100 -0
- package/dist/components/TextInput.js.map +7 -0
- package/dist/components/TimelineRenderer.js +31 -0
- package/dist/components/TimelineRenderer.js.map +7 -0
- package/dist/components/TodoChangeBlock.js +29 -0
- package/dist/components/TodoChangeBlock.js.map +7 -0
- package/dist/components/TodoChangeLine.js +22 -0
- package/dist/components/TodoChangeLine.js.map +7 -0
- package/dist/components/TodoItem.js +35 -0
- package/dist/components/TodoItem.js.map +7 -0
- package/dist/components/TodoPanel.js +55 -0
- package/dist/components/TodoPanel.js.map +7 -0
- package/dist/components/TokenWarning.js +19 -0
- package/dist/components/TokenWarning.js.map +7 -0
- package/dist/components/ToolExecutionBlock.js +18 -0
- package/dist/components/ToolExecutionBlock.js.map +7 -0
- package/dist/components/ToolUseLoader.js +24 -0
- package/dist/components/ToolUseLoader.js.map +7 -0
- package/dist/components/TrustDialog.js +71 -0
- package/dist/components/TrustDialog.js.map +7 -0
- package/dist/components/UserQueryBlock.js +12 -0
- package/dist/components/UserQueryBlock.js.map +7 -0
- package/dist/components/binary-feedback/BinaryFeedback.js +50 -0
- package/dist/components/binary-feedback/BinaryFeedback.js.map +7 -0
- package/dist/components/binary-feedback/BinaryFeedbackOption.js +94 -0
- package/dist/components/binary-feedback/BinaryFeedbackOption.js.map +7 -0
- package/dist/components/binary-feedback/BinaryFeedbackView.js +139 -0
- package/dist/components/binary-feedback/BinaryFeedbackView.js.map +7 -0
- package/dist/components/binary-feedback/utils.js +108 -0
- package/dist/components/binary-feedback/utils.js.map +7 -0
- package/dist/components/messages/AssistantBashOutputMessage.js +23 -0
- package/dist/components/messages/AssistantBashOutputMessage.js.map +7 -0
- package/dist/components/messages/AssistantLocalCommandOutputMessage.js +36 -0
- package/dist/components/messages/AssistantLocalCommandOutputMessage.js.map +7 -0
- package/dist/components/messages/AssistantRedactedThinkingMessage.js +12 -0
- package/dist/components/messages/AssistantRedactedThinkingMessage.js.map +7 -0
- package/dist/components/messages/AssistantTextMessage.js +78 -0
- package/dist/components/messages/AssistantTextMessage.js.map +7 -0
- package/dist/components/messages/AssistantThinkingMessage.js +27 -0
- package/dist/components/messages/AssistantThinkingMessage.js.map +7 -0
- package/dist/components/messages/AssistantToolUseMessage.js +91 -0
- package/dist/components/messages/AssistantToolUseMessage.js.map +7 -0
- package/dist/components/messages/TaskProgressMessage.js +11 -0
- package/dist/components/messages/TaskProgressMessage.js.map +7 -0
- package/dist/components/messages/TaskToolMessage.js +39 -0
- package/dist/components/messages/TaskToolMessage.js.map +7 -0
- package/dist/components/messages/UserBashInputMessage.js +18 -0
- package/dist/components/messages/UserBashInputMessage.js.map +7 -0
- package/dist/components/messages/UserCommandMessage.js +20 -0
- package/dist/components/messages/UserCommandMessage.js.map +7 -0
- package/dist/components/messages/UserKodingInputMessage.js +18 -0
- package/dist/components/messages/UserKodingInputMessage.js.map +7 -0
- package/dist/components/messages/UserPromptMessage.js +20 -0
- package/dist/components/messages/UserPromptMessage.js.map +7 -0
- package/dist/components/messages/UserTextMessage.js +25 -0
- package/dist/components/messages/UserTextMessage.js.map +7 -0
- package/dist/components/messages/UserToolResultMessage/UserToolCanceledMessage.js +10 -0
- package/dist/components/messages/UserToolResultMessage/UserToolCanceledMessage.js.map +7 -0
- package/dist/components/messages/UserToolResultMessage/UserToolErrorMessage.js +15 -0
- package/dist/components/messages/UserToolResultMessage/UserToolErrorMessage.js.map +7 -0
- package/dist/components/messages/UserToolResultMessage/UserToolRejectMessage.js +25 -0
- package/dist/components/messages/UserToolResultMessage/UserToolRejectMessage.js.map +7 -0
- package/dist/components/messages/UserToolResultMessage/UserToolResultMessage.js +47 -0
- package/dist/components/messages/UserToolResultMessage/UserToolResultMessage.js.map +7 -0
- package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js +23 -0
- package/dist/components/messages/UserToolResultMessage/UserToolSuccessMessage.js.map +7 -0
- package/dist/components/messages/UserToolResultMessage/utils.js +50 -0
- package/dist/components/messages/UserToolResultMessage/utils.js.map +7 -0
- package/dist/components/permissions/BashPermissionRequest/BashPermissionRequest.js +112 -0
- package/dist/components/permissions/BashPermissionRequest/BashPermissionRequest.js.map +7 -0
- package/dist/components/permissions/FallbackPermissionRequest.js +131 -0
- package/dist/components/permissions/FallbackPermissionRequest.js.map +7 -0
- package/dist/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js +159 -0
- package/dist/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js.map +7 -0
- package/dist/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js +58 -0
- package/dist/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js.map +7 -0
- package/dist/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js +153 -0
- package/dist/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js.map +7 -0
- package/dist/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js +70 -0
- package/dist/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js.map +7 -0
- package/dist/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js +212 -0
- package/dist/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js.map +7 -0
- package/dist/components/permissions/PermissionRequest.js +70 -0
- package/dist/components/permissions/PermissionRequest.js.map +7 -0
- package/dist/components/permissions/PermissionRequestTitle.js +52 -0
- package/dist/components/permissions/PermissionRequestTitle.js.map +7 -0
- package/dist/components/permissions/hooks.js +23 -0
- package/dist/components/permissions/hooks.js.map +7 -0
- package/dist/components/permissions/toolUseOptions.js +46 -0
- package/dist/components/permissions/toolUseOptions.js.map +7 -0
- package/dist/components/permissions/utils.js +21 -0
- package/dist/components/permissions/utils.js.map +7 -0
- package/dist/constants/claude-asterisk-ascii-art.js +242 -0
- package/dist/constants/claude-asterisk-ascii-art.js.map +7 -0
- package/dist/constants/colors.js +126 -0
- package/dist/constants/colors.js.map +7 -0
- package/dist/constants/compressionPrompts.js +73 -0
- package/dist/constants/compressionPrompts.js.map +7 -0
- package/dist/constants/figures.js +6 -0
- package/dist/constants/figures.js.map +7 -0
- package/dist/constants/macros.js +11 -0
- package/dist/constants/macros.js.map +7 -0
- package/dist/constants/modelCapabilities.js +154 -0
- package/dist/constants/modelCapabilities.js.map +7 -0
- package/dist/constants/models.js +1034 -0
- package/dist/constants/models.js.map +7 -0
- package/dist/constants/oauth.js +18 -0
- package/dist/constants/oauth.js.map +7 -0
- package/dist/constants/product.js +26 -0
- package/dist/constants/product.js.map +7 -0
- package/dist/constants/prompts.js +168 -0
- package/dist/constants/prompts.js.map +7 -0
- package/dist/constants/releaseNotes.js +9 -0
- package/dist/constants/releaseNotes.js.map +7 -0
- package/dist/constants/symbols.js +50 -0
- package/dist/constants/symbols.js.map +7 -0
- package/dist/context/PermissionContext.js +111 -0
- package/dist/context/PermissionContext.js.map +7 -0
- package/dist/context.js +278 -0
- package/dist/context.js.map +7 -0
- package/dist/cost-tracker.js +76 -0
- package/dist/cost-tracker.js.map +7 -0
- package/dist/entrypoints/cli-wrapper.js +61 -0
- package/dist/entrypoints/cli-wrapper.js.map +7 -0
- package/dist/entrypoints/cli.js +1115 -0
- package/dist/entrypoints/cli.js.map +7 -0
- package/dist/entrypoints/mcp.js +150 -0
- package/dist/entrypoints/mcp.js.map +7 -0
- package/dist/history.js +25 -0
- package/dist/history.js.map +7 -0
- package/dist/hooks/useApiKeyVerification.js +12 -0
- package/dist/hooks/useApiKeyVerification.js.map +7 -0
- package/dist/hooks/useArrowKeyHistory.js +50 -0
- package/dist/hooks/useArrowKeyHistory.js.map +7 -0
- package/dist/hooks/useCanUseTool.js +87 -0
- package/dist/hooks/useCanUseTool.js.map +7 -0
- package/dist/hooks/useCancelRequest.js +28 -0
- package/dist/hooks/useCancelRequest.js.map +7 -0
- package/dist/hooks/useDoublePress.js +31 -0
- package/dist/hooks/useDoublePress.js.map +7 -0
- package/dist/hooks/useExitOnCtrlCD.js +26 -0
- package/dist/hooks/useExitOnCtrlCD.js.map +7 -0
- package/dist/hooks/useHistorySearch.js +62 -0
- package/dist/hooks/useHistorySearch.js.map +7 -0
- package/dist/hooks/useInterval.js +18 -0
- package/dist/hooks/useInterval.js.map +7 -0
- package/dist/hooks/useLogMessages.js +14 -0
- package/dist/hooks/useLogMessages.js.map +7 -0
- package/dist/hooks/useLogStartupTime.js +10 -0
- package/dist/hooks/useLogStartupTime.js.map +7 -0
- package/dist/hooks/useNotifyAfterTimeout.js +42 -0
- package/dist/hooks/useNotifyAfterTimeout.js.map +7 -0
- package/dist/hooks/usePermissionRequestLogging.js +23 -0
- package/dist/hooks/usePermissionRequestLogging.js.map +7 -0
- package/dist/hooks/useTerminalSize.js +38 -0
- package/dist/hooks/useTerminalSize.js.map +7 -0
- package/dist/hooks/useTextInput.js +252 -0
- package/dist/hooks/useTextInput.js.map +7 -0
- package/dist/hooks/useUnifiedCompletion.js +929 -0
- package/dist/hooks/useUnifiedCompletion.js.map +7 -0
- package/dist/index.js +5 -0
- package/dist/index.js.map +7 -0
- package/dist/messages.js +33 -0
- package/dist/messages.js.map +7 -0
- package/dist/package.json +4 -0
- package/dist/permissions.js +194 -0
- package/dist/permissions.js.map +7 -0
- package/dist/query.js +499 -0
- package/dist/query.js.map +7 -0
- package/dist/screens/Doctor.js +22 -0
- package/dist/screens/Doctor.js.map +7 -0
- package/dist/screens/LogList.js +55 -0
- package/dist/screens/LogList.js.map +7 -0
- package/dist/screens/REPL.js +671 -0
- package/dist/screens/REPL.js.map +7 -0
- package/dist/screens/ResumeConversation.js +56 -0
- package/dist/screens/ResumeConversation.js.map +7 -0
- package/dist/services/adapters/base.js +29 -0
- package/dist/services/adapters/base.js.map +7 -0
- package/dist/services/adapters/chatCompletions.js +69 -0
- package/dist/services/adapters/chatCompletions.js.map +7 -0
- package/dist/services/adapters/responsesAPI.js +126 -0
- package/dist/services/adapters/responsesAPI.js.map +7 -0
- package/dist/services/claude.js +1573 -0
- package/dist/services/claude.js.map +7 -0
- package/dist/services/compressionService.js +210 -0
- package/dist/services/compressionService.js.map +7 -0
- package/dist/services/customCommands.js +437 -0
- package/dist/services/customCommands.js.map +7 -0
- package/dist/services/fileFreshness.js +275 -0
- package/dist/services/fileFreshness.js.map +7 -0
- package/dist/services/gpt5ConnectionTest.js +248 -0
- package/dist/services/gpt5ConnectionTest.js.map +7 -0
- package/dist/services/hookExecutor.js +276 -0
- package/dist/services/hookExecutor.js.map +7 -0
- package/dist/services/mainAgentCompressor.js +84 -0
- package/dist/services/mainAgentCompressor.js.map +7 -0
- package/dist/services/mcpClient.js +449 -0
- package/dist/services/mcpClient.js.map +7 -0
- package/dist/services/mcpServerApproval.js +55 -0
- package/dist/services/mcpServerApproval.js.map +7 -0
- package/dist/services/mentionProcessor.js +201 -0
- package/dist/services/mentionProcessor.js.map +7 -0
- package/dist/services/modelAdapterFactory.js +47 -0
- package/dist/services/modelAdapterFactory.js.map +7 -0
- package/dist/services/notifier.js +35 -0
- package/dist/services/notifier.js.map +7 -0
- package/dist/services/oauth.js +247 -0
- package/dist/services/oauth.js.map +7 -0
- package/dist/services/openai.js +995 -0
- package/dist/services/openai.js.map +7 -0
- package/dist/services/responseStateManager.js +68 -0
- package/dist/services/responseStateManager.js.map +7 -0
- package/dist/services/sentry.js +9 -0
- package/dist/services/sentry.js.map +7 -0
- package/dist/services/subagentAbortManager.js +95 -0
- package/dist/services/subagentAbortManager.js.map +7 -0
- package/dist/services/subagentCompressor.js +146 -0
- package/dist/services/subagentCompressor.js.map +7 -0
- package/dist/services/systemReminder.js +335 -0
- package/dist/services/systemReminder.js.map +7 -0
- package/dist/services/vcr.js +133 -0
- package/dist/services/vcr.js.map +7 -0
- package/dist/tools/ArchitectTool/ArchitectTool.js +119 -0
- package/dist/tools/ArchitectTool/ArchitectTool.js.map +7 -0
- package/dist/tools/ArchitectTool/prompt.js +18 -0
- package/dist/tools/ArchitectTool/prompt.js.map +7 -0
- package/dist/tools/AskExpertModelTool/AskExpertModelTool.js +423 -0
- package/dist/tools/AskExpertModelTool/AskExpertModelTool.js.map +7 -0
- package/dist/tools/BashOutputTool/BashOutputTool.js +120 -0
- package/dist/tools/BashOutputTool/BashOutputTool.js.map +7 -0
- package/dist/tools/BashOutputTool/BashOutputToolResultMessage.js +11 -0
- package/dist/tools/BashOutputTool/BashOutputToolResultMessage.js.map +7 -0
- package/dist/tools/BashOutputTool/prompt.js +13 -0
- package/dist/tools/BashOutputTool/prompt.js.map +7 -0
- package/dist/tools/BashTool/BashTool.js +209 -0
- package/dist/tools/BashTool/BashTool.js.map +7 -0
- package/dist/tools/BashTool/BashToolResultMessage.js +21 -0
- package/dist/tools/BashTool/BashToolResultMessage.js.map +7 -0
- package/dist/tools/BashTool/OutputLine.js +30 -0
- package/dist/tools/BashTool/OutputLine.js.map +7 -0
- package/dist/tools/BashTool/prompt.js +180 -0
- package/dist/tools/BashTool/prompt.js.map +7 -0
- package/dist/tools/BashTool/utils.js +51 -0
- package/dist/tools/BashTool/utils.js.map +7 -0
- package/dist/tools/FileEditTool/FileEditTool.js +226 -0
- package/dist/tools/FileEditTool/FileEditTool.js.map +7 -0
- package/dist/tools/FileEditTool/prompt.js +54 -0
- package/dist/tools/FileEditTool/prompt.js.map +7 -0
- package/dist/tools/FileEditTool/utils.js +42 -0
- package/dist/tools/FileEditTool/utils.js.map +7 -0
- package/dist/tools/FileReadTool/FileReadTool.js +272 -0
- package/dist/tools/FileReadTool/FileReadTool.js.map +7 -0
- package/dist/tools/FileReadTool/prompt.js +10 -0
- package/dist/tools/FileReadTool/prompt.js.map +7 -0
- package/dist/tools/FileWriteTool/FileWriteTool.js +202 -0
- package/dist/tools/FileWriteTool/FileWriteTool.js.map +7 -0
- package/dist/tools/FileWriteTool/prompt.js +14 -0
- package/dist/tools/FileWriteTool/prompt.js.map +7 -0
- package/dist/tools/GlobTool/GlobTool.js +88 -0
- package/dist/tools/GlobTool/GlobTool.js.map +7 -0
- package/dist/tools/GlobTool/prompt.js +12 -0
- package/dist/tools/GlobTool/prompt.js.map +7 -0
- package/dist/tools/GrepTool/GrepTool.js +107 -0
- package/dist/tools/GrepTool/GrepTool.js.map +7 -0
- package/dist/tools/GrepTool/prompt.js +15 -0
- package/dist/tools/GrepTool/prompt.js.map +7 -0
- package/dist/tools/KillShellTool/KillShellTool.js +92 -0
- package/dist/tools/KillShellTool/KillShellTool.js.map +7 -0
- package/dist/tools/KillShellTool/KillShellToolResultMessage.js +11 -0
- package/dist/tools/KillShellTool/KillShellToolResultMessage.js.map +7 -0
- package/dist/tools/KillShellTool/prompt.js +12 -0
- package/dist/tools/KillShellTool/prompt.js.map +7 -0
- package/dist/tools/MCPTool/MCPTool.js +90 -0
- package/dist/tools/MCPTool/MCPTool.js.map +7 -0
- package/dist/tools/MCPTool/prompt.js +7 -0
- package/dist/tools/MCPTool/prompt.js.map +7 -0
- package/dist/tools/MemoryReadTool/MemoryReadTool.js +103 -0
- package/dist/tools/MemoryReadTool/MemoryReadTool.js.map +7 -0
- package/dist/tools/MemoryReadTool/prompt.js +7 -0
- package/dist/tools/MemoryReadTool/prompt.js.map +7 -0
- package/dist/tools/MemoryWriteTool/MemoryWriteTool.js +77 -0
- package/dist/tools/MemoryWriteTool/MemoryWriteTool.js.map +7 -0
- package/dist/tools/MemoryWriteTool/prompt.js +7 -0
- package/dist/tools/MemoryWriteTool/prompt.js.map +7 -0
- package/dist/tools/MultiEditTool/MultiEditTool.js +301 -0
- package/dist/tools/MultiEditTool/MultiEditTool.js.map +7 -0
- package/dist/tools/MultiEditTool/prompt.js +48 -0
- package/dist/tools/MultiEditTool/prompt.js.map +7 -0
- package/dist/tools/NotebookEditTool/NotebookEditTool.js +238 -0
- package/dist/tools/NotebookEditTool/NotebookEditTool.js.map +7 -0
- package/dist/tools/NotebookEditTool/prompt.js +7 -0
- package/dist/tools/NotebookEditTool/prompt.js.map +7 -0
- package/dist/tools/NotebookReadTool/NotebookReadTool.js +212 -0
- package/dist/tools/NotebookReadTool/NotebookReadTool.js.map +7 -0
- package/dist/tools/NotebookReadTool/prompt.js +7 -0
- package/dist/tools/NotebookReadTool/prompt.js.map +7 -0
- package/dist/tools/SkillTool/SkillTool.js +209 -0
- package/dist/tools/SkillTool/SkillTool.js.map +7 -0
- package/dist/tools/SkillTool/prompt.js +81 -0
- package/dist/tools/SkillTool/prompt.js.map +7 -0
- package/dist/tools/TaskTool/TaskTool.js +381 -0
- package/dist/tools/TaskTool/TaskTool.js.map +7 -0
- package/dist/tools/TaskTool/constants.js +5 -0
- package/dist/tools/TaskTool/constants.js.map +7 -0
- package/dist/tools/TaskTool/prompt.js +111 -0
- package/dist/tools/TaskTool/prompt.js.map +7 -0
- package/dist/tools/ThinkTool/ThinkTool.js +40 -0
- package/dist/tools/ThinkTool/ThinkTool.js.map +7 -0
- package/dist/tools/ThinkTool/prompt.js +16 -0
- package/dist/tools/ThinkTool/prompt.js.map +7 -0
- package/dist/tools/TodoWriteTool/TodoWriteTool.js +243 -0
- package/dist/tools/TodoWriteTool/TodoWriteTool.js.map +7 -0
- package/dist/tools/TodoWriteTool/prompt.js +66 -0
- package/dist/tools/TodoWriteTool/prompt.js.map +7 -0
- package/dist/tools/URLFetcherTool/URLFetcherTool.js +137 -0
- package/dist/tools/URLFetcherTool/URLFetcherTool.js.map +7 -0
- package/dist/tools/URLFetcherTool/cache.js +45 -0
- package/dist/tools/URLFetcherTool/cache.js.map +7 -0
- package/dist/tools/URLFetcherTool/htmlToMarkdown.js +42 -0
- package/dist/tools/URLFetcherTool/htmlToMarkdown.js.map +7 -0
- package/dist/tools/URLFetcherTool/prompt.js +22 -0
- package/dist/tools/URLFetcherTool/prompt.js.map +7 -0
- package/dist/tools/WebSearchTool/WebSearchTool.js +86 -0
- package/dist/tools/WebSearchTool/WebSearchTool.js.map +7 -0
- package/dist/tools/WebSearchTool/prompt.js +17 -0
- package/dist/tools/WebSearchTool/prompt.js.map +7 -0
- package/dist/tools/WebSearchTool/searchProviders.js +48 -0
- package/dist/tools/WebSearchTool/searchProviders.js.map +7 -0
- package/dist/tools/lsTool/lsTool.js +201 -0
- package/dist/tools/lsTool/lsTool.js.map +7 -0
- package/dist/tools/lsTool/prompt.js +5 -0
- package/dist/tools/lsTool/prompt.js.map +7 -0
- package/dist/tools.js +70 -0
- package/dist/tools.js.map +7 -0
- package/dist/types/PermissionMode.js +82 -0
- package/dist/types/PermissionMode.js.map +7 -0
- package/dist/types/RequestContext.js +47 -0
- package/dist/types/RequestContext.js.map +7 -0
- package/dist/types/common.d.js +1 -0
- package/dist/types/common.d.js.map +7 -0
- package/dist/types/conversation.js +1 -0
- package/dist/types/conversation.js.map +7 -0
- package/dist/types/hooks.js +38 -0
- package/dist/types/hooks.js.map +7 -0
- package/dist/types/interactionRound.js +1 -0
- package/dist/types/interactionRound.js.map +7 -0
- package/dist/types/logs.js +1 -0
- package/dist/types/logs.js.map +7 -0
- package/dist/types/marketplace.js +101 -0
- package/dist/types/marketplace.js.map +7 -0
- package/dist/types/modelCapabilities.js +1 -0
- package/dist/types/modelCapabilities.js.map +7 -0
- package/dist/types/notebook.js +1 -0
- package/dist/types/notebook.js.map +7 -0
- package/dist/types/plugin.js +83 -0
- package/dist/types/plugin.js.map +7 -0
- package/dist/types/subagent.js +1 -0
- package/dist/types/subagent.js.map +7 -0
- package/dist/utils/BackgroundShellManager.js +215 -0
- package/dist/utils/BackgroundShellManager.js.map +7 -0
- package/dist/utils/Cursor.js +315 -0
- package/dist/utils/Cursor.js.map +7 -0
- package/dist/utils/PersistentShell.js +371 -0
- package/dist/utils/PersistentShell.js.map +7 -0
- package/dist/utils/advancedFuzzyMatcher.js +206 -0
- package/dist/utils/advancedFuzzyMatcher.js.map +7 -0
- package/dist/utils/agentLoader.js +244 -0
- package/dist/utils/agentLoader.js.map +7 -0
- package/dist/utils/agentStorage.js +59 -0
- package/dist/utils/agentStorage.js.map +7 -0
- package/dist/utils/array.js +7 -0
- package/dist/utils/array.js.map +7 -0
- package/dist/utils/ask.js +77 -0
- package/dist/utils/ask.js.map +7 -0
- package/dist/utils/auth.js +11 -0
- package/dist/utils/auth.js.map +7 -0
- package/dist/utils/autoCompactCore.js +126 -0
- package/dist/utils/autoCompactCore.js.map +7 -0
- package/dist/utils/autoUpdater.js +107 -0
- package/dist/utils/autoUpdater.js.map +7 -0
- package/dist/utils/browser.js +15 -0
- package/dist/utils/browser.js.map +7 -0
- package/dist/utils/cleanup.js +54 -0
- package/dist/utils/cleanup.js.map +7 -0
- package/dist/utils/commands.js +207 -0
- package/dist/utils/commands.js.map +7 -0
- package/dist/utils/commonUnixCommands.js +687 -0
- package/dist/utils/commonUnixCommands.js.map +7 -0
- package/dist/utils/compressionMode.js +47 -0
- package/dist/utils/compressionMode.js.map +7 -0
- package/dist/utils/config.js +651 -0
- package/dist/utils/config.js.map +7 -0
- package/dist/utils/conversationRecovery.js +35 -0
- package/dist/utils/conversationRecovery.js.map +7 -0
- package/dist/utils/debugLogger.js +889 -0
- package/dist/utils/debugLogger.js.map +7 -0
- package/dist/utils/diff.js +32 -0
- package/dist/utils/diff.js.map +7 -0
- package/dist/utils/env.js +44 -0
- package/dist/utils/env.js.map +7 -0
- package/dist/utils/errors.js +23 -0
- package/dist/utils/errors.js.map +7 -0
- package/dist/utils/execFileNoThrow.js +44 -0
- package/dist/utils/execFileNoThrow.js.map +7 -0
- package/dist/utils/expertChatStorage.js +78 -0
- package/dist/utils/expertChatStorage.js.map +7 -0
- package/dist/utils/file.js +282 -0
- package/dist/utils/file.js.map +7 -0
- package/dist/utils/fileRecoveryCore.js +41 -0
- package/dist/utils/fileRecoveryCore.js.map +7 -0
- package/dist/utils/format.js +41 -0
- package/dist/utils/format.js.map +7 -0
- package/dist/utils/fuzzyMatcher.js +252 -0
- package/dist/utils/fuzzyMatcher.js.map +7 -0
- package/dist/utils/generators.js +46 -0
- package/dist/utils/generators.js.map +7 -0
- package/dist/utils/git.js +83 -0
- package/dist/utils/git.js.map +7 -0
- package/dist/utils/hookManager.js +238 -0
- package/dist/utils/hookManager.js.map +7 -0
- package/dist/utils/http.js +7 -0
- package/dist/utils/http.js.map +7 -0
- package/dist/utils/imagePaste.js +29 -0
- package/dist/utils/imagePaste.js.map +7 -0
- package/dist/utils/json.js +16 -0
- package/dist/utils/json.js.map +7 -0
- package/dist/utils/log.js +329 -0
- package/dist/utils/log.js.map +7 -0
- package/dist/utils/markdown.js +187 -0
- package/dist/utils/markdown.js.map +7 -0
- package/dist/utils/marketplaceManager.js +474 -0
- package/dist/utils/marketplaceManager.js.map +7 -0
- package/dist/utils/messageContextManager.js +195 -0
- package/dist/utils/messageContextManager.js.map +7 -0
- package/dist/utils/messages.js +650 -0
- package/dist/utils/messages.js.map +7 -0
- package/dist/utils/model.js +677 -0
- package/dist/utils/model.js.map +7 -0
- package/dist/utils/permissions/filesystem.js +80 -0
- package/dist/utils/permissions/filesystem.js.map +7 -0
- package/dist/utils/pluginInstaller.js +491 -0
- package/dist/utils/pluginInstaller.js.map +7 -0
- package/dist/utils/pluginLoader.js +582 -0
- package/dist/utils/pluginLoader.js.map +7 -0
- package/dist/utils/pluginRegistry.js +111 -0
- package/dist/utils/pluginRegistry.js.map +7 -0
- package/dist/utils/pluginValidator.js +774 -0
- package/dist/utils/pluginValidator.js.map +7 -0
- package/dist/utils/ptyCompat.js +125 -0
- package/dist/utils/ptyCompat.js.map +7 -0
- package/dist/utils/replStateMachine.js +145 -0
- package/dist/utils/replStateMachine.js.map +7 -0
- package/dist/utils/ripgrep.js +131 -0
- package/dist/utils/ripgrep.js.map +7 -0
- package/dist/utils/roundConverter.js +262 -0
- package/dist/utils/roundConverter.js.map +7 -0
- package/dist/utils/secureFile.js +483 -0
- package/dist/utils/secureFile.js.map +7 -0
- package/dist/utils/sessionState.js +22 -0
- package/dist/utils/sessionState.js.map +7 -0
- package/dist/utils/skillLoader.js +79 -0
- package/dist/utils/skillLoader.js.map +7 -0
- package/dist/utils/state.js +24 -0
- package/dist/utils/state.js.map +7 -0
- package/dist/utils/style.js +31 -0
- package/dist/utils/style.js.map +7 -0
- package/dist/utils/terminal.js +47 -0
- package/dist/utils/terminal.js.map +7 -0
- package/dist/utils/theme.js +102 -0
- package/dist/utils/theme.js.map +7 -0
- package/dist/utils/thinking.js +59 -0
- package/dist/utils/thinking.js.map +7 -0
- package/dist/utils/todoChangeCalculator.js +64 -0
- package/dist/utils/todoChangeCalculator.js.map +7 -0
- package/dist/utils/todoStorage.js +291 -0
- package/dist/utils/todoStorage.js.map +7 -0
- package/dist/utils/tokens.js +30 -0
- package/dist/utils/tokens.js.map +7 -0
- package/dist/utils/toolExecutionController.js +109 -0
- package/dist/utils/toolExecutionController.js.map +7 -0
- package/dist/utils/unaryLogging.js +6 -0
- package/dist/utils/unaryLogging.js.map +7 -0
- package/dist/utils/user.js +40 -0
- package/dist/utils/user.js.map +7 -0
- package/dist/utils/validate.js +132 -0
- package/dist/utils/validate.js.map +7 -0
- package/dist/version.js +7 -0
- package/dist/version.js.map +7 -0
- package/dist/yoga.wasm +0 -0
- package/package.json +113 -0
- package/scripts/postinstall.js +18 -0
- package/yoga.wasm +0 -0
package/README.md
ADDED
|
@@ -0,0 +1,1097 @@
|
|
|
1
|
+
# Minto - AI Strategic Research & Planning Assistant
|
|
2
|
+
|
|
3
|
+
**Private Repository - within-7**
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
<strong>A powerful AI assistant for strategic thinking and research planning</strong>
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
🤖 Multi-Model Support | 🎯 Strategic Planning | 🔌 Extensible Plugin System<br>
|
|
11
|
+
📦 MCP Integration | 🧠 Intelligent Agents | 🎨 Beautiful Terminal UI
|
|
12
|
+
</p>
|
|
13
|
+
|
|
14
|
+
<p align="right">
|
|
15
|
+
<strong>English</strong> | <a href="./README.zh-CN.md">简体中文</a>
|
|
16
|
+
</p>
|
|
17
|
+
|
|
18
|
+
---
|
|
19
|
+
|
|
20
|
+
## Table of Contents
|
|
21
|
+
|
|
22
|
+
- [Overview](#overview)
|
|
23
|
+
- [Features](#features)
|
|
24
|
+
- [Installation](#installation)
|
|
25
|
+
- [Quick Start](#quick-start)
|
|
26
|
+
- [Core Concepts](#core-concepts)
|
|
27
|
+
- [Agents (Subagents)](#agents-subagents)
|
|
28
|
+
- [Plugin System](#plugin-system)
|
|
29
|
+
- [MCP Integration](#mcp-integration)
|
|
30
|
+
- [Configuration](#configuration)
|
|
31
|
+
- [Usage Guide](#usage-guide)
|
|
32
|
+
- [Basic Commands](#basic-commands)
|
|
33
|
+
- [Working with Agents](#working-with-agents)
|
|
34
|
+
- [Using Plugins](#using-plugins)
|
|
35
|
+
- [MCP Servers](#mcp-servers)
|
|
36
|
+
- [Advanced Topics](#advanced-topics)
|
|
37
|
+
- [Documentation](#documentation)
|
|
38
|
+
- [Development](#development)
|
|
39
|
+
- [Attribution & License](#attribution--license)
|
|
40
|
+
|
|
41
|
+
---
|
|
42
|
+
|
|
43
|
+
## Overview
|
|
44
|
+
|
|
45
|
+
Minto is a powerful AI-powered strategic research and planning assistant. It facilitates strategic thinking, coordinates research initiatives, and orchestrates planning workflows through intelligent conversation and specialized agents.
|
|
46
|
+
|
|
47
|
+
> **⚠️ Security Notice**: Minto runs in YOLO mode by default (bypassing permission checks for maximum productivity). For sensitive strategic projects, use `minto --safe` to enable manual approval for all operations.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
51
|
+
## Features
|
|
52
|
+
|
|
53
|
+
### 🤖 **Multi-Model AI Support**
|
|
54
|
+
- **20+ AI Models**: Claude (Sonnet, Opus, Haiku), GPT-4, GPT-3.5, Gemini, DeepSeek, and more
|
|
55
|
+
- **Model Switching**: Change models mid-conversation without losing context
|
|
56
|
+
- **Model Profiles**: Optimized configurations for different tasks (coding, reasoning, quick responses)
|
|
57
|
+
|
|
58
|
+
### 🎯 **Intelligent Agent System**
|
|
59
|
+
- **Dynamic Agents**: Specialized AI agents for different tasks (strategic analysis, research coordination, planning, etc.)
|
|
60
|
+
- **Agent Orchestration**: Agents can call other agents to solve complex strategic challenges
|
|
61
|
+
- **Custom Agents**: Create your own agents with simple Markdown files
|
|
62
|
+
- **5-Tier Priority**: Built-in → User global → Project local → Plugin-bundled
|
|
63
|
+
|
|
64
|
+
### 🔌 **Extensible Plugin System**
|
|
65
|
+
- **Plugin Marketplace**: Install community plugins with one command
|
|
66
|
+
- **Plugin Components**: Agents, Commands, Skills, Hooks, and MCP servers
|
|
67
|
+
- **Claude Code Compatible**: Works with Claude Code plugin ecosystem
|
|
68
|
+
- **Easy Development**: Create plugins with simple configuration files
|
|
69
|
+
|
|
70
|
+
### 📦 **MCP (Model Context Protocol) Integration**
|
|
71
|
+
- **4 Transport Types**: stdio, SSE, WebSocket, HTTP
|
|
72
|
+
- **Built-in Servers**: Filesystem, Git, Database, Search, and more
|
|
73
|
+
- **Custom Servers**: Connect to any MCP-compatible service
|
|
74
|
+
- **Tool Auto-discovery**: Automatically expose MCP tools to AI models
|
|
75
|
+
|
|
76
|
+
### 💼 **Dual-Mode Compression**
|
|
77
|
+
- **Business Mode**: 9-section compression for strategic consulting and analysis
|
|
78
|
+
- **Research Mode**: 8-section compression optimized for research planning
|
|
79
|
+
- **Smart Auto-compact**: Intelligently manages context window
|
|
80
|
+
|
|
81
|
+
### 🎨 **Beautiful Terminal UI**
|
|
82
|
+
- **Interactive Interface**: Built with React Ink
|
|
83
|
+
- **Real-time Streaming**: See AI responses as they're generated
|
|
84
|
+
- **Syntax Highlighting**: Code blocks with language-specific highlighting
|
|
85
|
+
- **Rich Formatting**: Tables, lists, and formatted output
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
89
|
+
## Installation
|
|
90
|
+
|
|
91
|
+
### Prerequisites
|
|
92
|
+
|
|
93
|
+
- **Node.js** >= 20.18.1
|
|
94
|
+
- **Bun** (recommended) or npm/yarn
|
|
95
|
+
- API keys for your chosen AI models
|
|
96
|
+
|
|
97
|
+
### Install from Source
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
# Clone the repository
|
|
101
|
+
git clone <repository-url>
|
|
102
|
+
cd minto
|
|
103
|
+
|
|
104
|
+
# Install dependencies
|
|
105
|
+
bun install
|
|
106
|
+
|
|
107
|
+
# Build the CLI
|
|
108
|
+
bun run build
|
|
109
|
+
|
|
110
|
+
# Link globally
|
|
111
|
+
bun link
|
|
112
|
+
|
|
113
|
+
# Verify installation
|
|
114
|
+
minto --version
|
|
115
|
+
```
|
|
116
|
+
|
|
117
|
+
### Quick Install (for team members)
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
# Extract package
|
|
121
|
+
tar -xzf minto-team-*.tar.gz
|
|
122
|
+
cd minto-team-*
|
|
123
|
+
|
|
124
|
+
# Run installer
|
|
125
|
+
./install.sh
|
|
126
|
+
|
|
127
|
+
# Start using
|
|
128
|
+
minto
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
---
|
|
132
|
+
|
|
133
|
+
## Quick Start
|
|
134
|
+
|
|
135
|
+
### 1. Configure API Keys
|
|
136
|
+
|
|
137
|
+
Create `~/.minto.json`:
|
|
138
|
+
|
|
139
|
+
```json
|
|
140
|
+
{
|
|
141
|
+
"mainModel": "claude-sonnet-4",
|
|
142
|
+
"models": {
|
|
143
|
+
"claude-sonnet-4": {
|
|
144
|
+
"provider": "anthropic",
|
|
145
|
+
"model": "claude-sonnet-4-20250514",
|
|
146
|
+
"apiKey": "your-anthropic-api-key"
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
**Or** set environment variables:
|
|
153
|
+
|
|
154
|
+
```bash
|
|
155
|
+
export ANTHROPIC_API_KEY="your-key-here"
|
|
156
|
+
export OPENAI_API_KEY="your-key-here"
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
### 2. Start Minto
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
# Start in current directory
|
|
163
|
+
minto
|
|
164
|
+
|
|
165
|
+
# Or with safe mode
|
|
166
|
+
minto --safe
|
|
167
|
+
|
|
168
|
+
# With specific model
|
|
169
|
+
minto --model gpt-4-turbo
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
### 3. Try Basic Commands
|
|
173
|
+
|
|
174
|
+
```bash
|
|
175
|
+
# In Minto session:
|
|
176
|
+
> "Analyze the structure of this project"
|
|
177
|
+
> "Create a new React component called UserProfile"
|
|
178
|
+
> "Write unit tests for src/utils/helper.ts"
|
|
179
|
+
> "Explain what this function does" (in a code file)
|
|
180
|
+
```
|
|
181
|
+
|
|
182
|
+
---
|
|
183
|
+
|
|
184
|
+
## Core Concepts
|
|
185
|
+
|
|
186
|
+
### Agents (Subagents)
|
|
187
|
+
|
|
188
|
+
**Agents are specialized AI assistants** that excel at specific tasks. Each agent has:
|
|
189
|
+
- Focused expertise and knowledge
|
|
190
|
+
- Custom system prompts
|
|
191
|
+
- Limited tool access for security
|
|
192
|
+
- Optional preferred AI model
|
|
193
|
+
|
|
194
|
+
#### Agent Directory Structure
|
|
195
|
+
|
|
196
|
+
Minto uses a **priority-based directory system** where `.minto` directories have higher priority:
|
|
197
|
+
|
|
198
|
+
```
|
|
199
|
+
# Directory Priority (low to high):
|
|
200
|
+
~/.claude/agents/ # Claude Code compatibility (compatible)
|
|
201
|
+
~/.minto/agents/ # User-level agents (primary)
|
|
202
|
+
./.claude/agents/ # Project-level (compatible)
|
|
203
|
+
./.minto/agents/ # Project-level agents (highest priority)
|
|
204
|
+
plugins/*/agents/ # Plugin-bundled agents
|
|
205
|
+
```
|
|
206
|
+
|
|
207
|
+
**Key Points**:
|
|
208
|
+
- ✅ New agents are created in `.minto/agents/` by default
|
|
209
|
+
- ✅ Agents in `.minto/` override same-named agents in `.claude/`
|
|
210
|
+
- ✅ Full compatibility with Claude Code `.claude/` directories
|
|
211
|
+
|
|
212
|
+
#### Creating an Agent
|
|
213
|
+
|
|
214
|
+
Create `~/.minto/agents/code-reviewer.md`:
|
|
215
|
+
|
|
216
|
+
```markdown
|
|
217
|
+
---
|
|
218
|
+
name: code-reviewer
|
|
219
|
+
description: Expert code reviewer specializing in best practices, security, and performance
|
|
220
|
+
tools: ["FileRead", "Grep", "Glob"]
|
|
221
|
+
model: claude-sonnet-4
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
You are an expert code reviewer. When analyzing code:
|
|
225
|
+
|
|
226
|
+
1. Check for security vulnerabilities
|
|
227
|
+
2. Identify performance issues
|
|
228
|
+
3. Suggest improvements for readability
|
|
229
|
+
4. Verify best practices
|
|
230
|
+
5. Look for potential bugs
|
|
231
|
+
|
|
232
|
+
Always provide specific, actionable feedback with code examples.
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
#### Using Agents
|
|
236
|
+
|
|
237
|
+
```bash
|
|
238
|
+
# Method 1: Direct invocation
|
|
239
|
+
/task code-reviewer "Review src/auth.ts"
|
|
240
|
+
|
|
241
|
+
# Method 2: Natural language
|
|
242
|
+
"Use the code-reviewer agent to analyze my authentication code"
|
|
243
|
+
|
|
244
|
+
# Method 3: List available agents
|
|
245
|
+
/agents
|
|
246
|
+
```
|
|
247
|
+
|
|
248
|
+
#### Agent Configuration
|
|
249
|
+
|
|
250
|
+
In `.minto.json`:
|
|
251
|
+
|
|
252
|
+
```json
|
|
253
|
+
{
|
|
254
|
+
"// Agent Directories": "Priority: last to first (.minto > .claude)",
|
|
255
|
+
"agentDirectories": [
|
|
256
|
+
"~/.claude/agents", // Compatible: Claude Code user directory
|
|
257
|
+
"~/.minto/agents", // Primary: Minto user directory (higher priority)
|
|
258
|
+
"./.claude/agents", // Compatible: Claude Code project directory
|
|
259
|
+
"./.minto/agents" // Primary: Minto project directory (highest priority)
|
|
260
|
+
],
|
|
261
|
+
"agentOverrides": {
|
|
262
|
+
"code-reviewer": {
|
|
263
|
+
"model": "claude-sonnet-4",
|
|
264
|
+
"temperature": 0.3,
|
|
265
|
+
"tools": ["FileRead", "Grep", "Glob", "WebSearch"]
|
|
266
|
+
}
|
|
267
|
+
}
|
|
268
|
+
}
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
---
|
|
272
|
+
|
|
273
|
+
### Plugin System
|
|
274
|
+
|
|
275
|
+
**Plugins extend Minto's capabilities** with reusable components.
|
|
276
|
+
|
|
277
|
+
#### Plugin Components
|
|
278
|
+
|
|
279
|
+
1. **Agents**: Specialized AI assistants
|
|
280
|
+
2. **Commands**: Slash commands (`/review`, `/test`)
|
|
281
|
+
3. **Skills**: Reusable knowledge modules
|
|
282
|
+
4. **Hooks**: Lifecycle event handlers
|
|
283
|
+
5. **MCP Servers**: Extended tools and capabilities
|
|
284
|
+
|
|
285
|
+
#### Plugin Directory Structure
|
|
286
|
+
|
|
287
|
+
Minto uses a **priority-based directory system** where `.minto` directories have higher priority:
|
|
288
|
+
|
|
289
|
+
```
|
|
290
|
+
# Directory Priority (low to high):
|
|
291
|
+
~/.claude/plugins/ # Claude Code compatibility (compatible)
|
|
292
|
+
~/.minto/plugins/ # User-level plugins (primary)
|
|
293
|
+
./.claude/plugins/ # Project-level (compatible)
|
|
294
|
+
./.minto/plugins/ # Project-level plugins (highest priority)
|
|
295
|
+
```
|
|
296
|
+
|
|
297
|
+
**Key Points**:
|
|
298
|
+
- ✅ New plugins are installed in `.minto/plugins/` by default
|
|
299
|
+
- ✅ Plugins in `.minto/` override same-named plugins in `.claude/`
|
|
300
|
+
- ✅ Full compatibility with Claude Code `.claude/` directories
|
|
301
|
+
|
|
302
|
+
#### Installing Plugins
|
|
303
|
+
|
|
304
|
+
##### From Marketplace
|
|
305
|
+
|
|
306
|
+
```bash
|
|
307
|
+
# Add marketplace
|
|
308
|
+
minto marketplace add wshobson/agents
|
|
309
|
+
|
|
310
|
+
# Search plugins
|
|
311
|
+
minto marketplace search "python"
|
|
312
|
+
|
|
313
|
+
# Install plugin
|
|
314
|
+
minto plugin install python-development@wshobson
|
|
315
|
+
|
|
316
|
+
# List installed plugins
|
|
317
|
+
minto plugin list
|
|
318
|
+
```
|
|
319
|
+
|
|
320
|
+
##### From Git Repository
|
|
321
|
+
|
|
322
|
+
```bash
|
|
323
|
+
minto plugin install https://github.com/user/minto-plugin.git
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
##### From Local Directory
|
|
327
|
+
|
|
328
|
+
```bash
|
|
329
|
+
minto plugin install ./my-plugin --link
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
#### Creating a Plugin
|
|
333
|
+
|
|
334
|
+
##### 1. Create Plugin Structure
|
|
335
|
+
|
|
336
|
+
```bash
|
|
337
|
+
mkdir my-plugin
|
|
338
|
+
cd my-plugin
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
##### 2. Create `plugin.json`
|
|
342
|
+
|
|
343
|
+
```json
|
|
344
|
+
{
|
|
345
|
+
"name": "my-plugin",
|
|
346
|
+
"version": "1.0.0",
|
|
347
|
+
"description": "My custom Minto plugin",
|
|
348
|
+
"author": "Your Name",
|
|
349
|
+
"agents": ["agents/my-agent.md"],
|
|
350
|
+
"commands": ["commands/my-command.md"],
|
|
351
|
+
"skills": ["skills/my-skill.md"]
|
|
352
|
+
}
|
|
353
|
+
```
|
|
354
|
+
|
|
355
|
+
##### 3. Add Components
|
|
356
|
+
|
|
357
|
+
**Agent** (`agents/my-agent.md`):
|
|
358
|
+
|
|
359
|
+
```markdown
|
|
360
|
+
---
|
|
361
|
+
name: my-agent
|
|
362
|
+
description: Custom agent for specific tasks
|
|
363
|
+
tools: ["*"]
|
|
364
|
+
---
|
|
365
|
+
|
|
366
|
+
Agent system prompt here...
|
|
367
|
+
```
|
|
368
|
+
|
|
369
|
+
**Command** (`commands/my-command.md`):
|
|
370
|
+
|
|
371
|
+
```markdown
|
|
372
|
+
---
|
|
373
|
+
name: my-command
|
|
374
|
+
description: Execute custom command
|
|
375
|
+
argNames: ["input"]
|
|
376
|
+
---
|
|
377
|
+
|
|
378
|
+
Process {input} and perform the custom action.
|
|
379
|
+
```
|
|
380
|
+
|
|
381
|
+
**Skill** (`skills/my-skill.md`):
|
|
382
|
+
|
|
383
|
+
```markdown
|
|
384
|
+
---
|
|
385
|
+
name: my-skill
|
|
386
|
+
description: Reusable knowledge about X
|
|
387
|
+
---
|
|
388
|
+
|
|
389
|
+
# My Skill Knowledge
|
|
390
|
+
|
|
391
|
+
Detailed instructions and examples...
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
##### 4. Install Plugin
|
|
395
|
+
|
|
396
|
+
```bash
|
|
397
|
+
# From plugin directory
|
|
398
|
+
minto plugin install . --link
|
|
399
|
+
|
|
400
|
+
# Or from parent directory
|
|
401
|
+
minto plugin install ./my-plugin
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
#### Plugin Configuration
|
|
405
|
+
|
|
406
|
+
In `.minto.json`:
|
|
407
|
+
|
|
408
|
+
```json
|
|
409
|
+
{
|
|
410
|
+
"// Plugin Directories": "Priority: last to first (.minto > .claude)",
|
|
411
|
+
"pluginDirectories": [
|
|
412
|
+
"~/.claude/plugins", // Compatible: Claude Code user directory
|
|
413
|
+
"~/.minto/plugins", // Primary: Minto user directory (higher priority)
|
|
414
|
+
"./.claude/plugins", // Compatible: Claude Code project directory
|
|
415
|
+
"./.minto/plugins" // Primary: Minto project directory (highest priority)
|
|
416
|
+
],
|
|
417
|
+
"enabledPlugins": [
|
|
418
|
+
"python-development",
|
|
419
|
+
"code-reviewer",
|
|
420
|
+
"my-plugin"
|
|
421
|
+
],
|
|
422
|
+
"pluginConfig": {
|
|
423
|
+
"my-plugin": {
|
|
424
|
+
"customSetting": "value"
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
}
|
|
428
|
+
```
|
|
429
|
+
|
|
430
|
+
---
|
|
431
|
+
|
|
432
|
+
### MCP Integration
|
|
433
|
+
|
|
434
|
+
**MCP (Model Context Protocol)** allows AI models to access external tools and data sources.
|
|
435
|
+
|
|
436
|
+
#### MCP Server Types
|
|
437
|
+
|
|
438
|
+
1. **stdio**: Local command-line tools
|
|
439
|
+
2. **SSE**: Server-Sent Events (streaming)
|
|
440
|
+
3. **WebSocket**: Bidirectional real-time communication
|
|
441
|
+
4. **HTTP**: Request-response pattern
|
|
442
|
+
|
|
443
|
+
#### Configuring MCP Servers
|
|
444
|
+
|
|
445
|
+
In `.minto.json`:
|
|
446
|
+
|
|
447
|
+
```json
|
|
448
|
+
{
|
|
449
|
+
"mcpServers": {
|
|
450
|
+
"filesystem": {
|
|
451
|
+
"type": "stdio",
|
|
452
|
+
"command": "npx",
|
|
453
|
+
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/allowed/files"],
|
|
454
|
+
"enabled": true
|
|
455
|
+
},
|
|
456
|
+
|
|
457
|
+
"brave-search": {
|
|
458
|
+
"type": "stdio",
|
|
459
|
+
"command": "npx",
|
|
460
|
+
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
|
|
461
|
+
"enabled": true,
|
|
462
|
+
"env": {
|
|
463
|
+
"BRAVE_API_KEY": "${BRAVE_API_KEY}"
|
|
464
|
+
}
|
|
465
|
+
},
|
|
466
|
+
|
|
467
|
+
"github": {
|
|
468
|
+
"type": "stdio",
|
|
469
|
+
"command": "npx",
|
|
470
|
+
"args": ["-y", "@modelcontextprotocol/server-github"],
|
|
471
|
+
"enabled": true,
|
|
472
|
+
"env": {
|
|
473
|
+
"GITHUB_TOKEN": "${GITHUB_TOKEN}"
|
|
474
|
+
}
|
|
475
|
+
},
|
|
476
|
+
|
|
477
|
+
"postgres": {
|
|
478
|
+
"type": "stdio",
|
|
479
|
+
"command": "npx",
|
|
480
|
+
"args": ["-y", "@modelcontextprotocol/server-postgres"],
|
|
481
|
+
"enabled": false,
|
|
482
|
+
"env": {
|
|
483
|
+
"DATABASE_URL": "${DATABASE_URL}"
|
|
484
|
+
}
|
|
485
|
+
},
|
|
486
|
+
|
|
487
|
+
"custom-websocket": {
|
|
488
|
+
"type": "websocket",
|
|
489
|
+
"url": "wss://mcp.example.com",
|
|
490
|
+
"enabled": false,
|
|
491
|
+
"headers": {
|
|
492
|
+
"Authorization": "Bearer ${TOKEN}"
|
|
493
|
+
}
|
|
494
|
+
}
|
|
495
|
+
}
|
|
496
|
+
}
|
|
497
|
+
```
|
|
498
|
+
|
|
499
|
+
#### Available MCP Servers
|
|
500
|
+
|
|
501
|
+
| Server | Type | Purpose | Package |
|
|
502
|
+
|--------|------|---------|---------|
|
|
503
|
+
| Filesystem | stdio | File operations | `@modelcontextprotocol/server-filesystem` |
|
|
504
|
+
| Git | stdio | Git operations | `@modelcontextprotocol/server-git` |
|
|
505
|
+
| GitHub | stdio | GitHub API | `@modelcontextprotocol/server-github` |
|
|
506
|
+
| GitLab | stdio | GitLab API | `@modelcontextprotocol/server-gitlab` |
|
|
507
|
+
| Google Drive | stdio | Google Drive | `@modelcontextprotocol/server-google-drive` |
|
|
508
|
+
| Slack | stdio | Slack API | `@modelcontextprotocol/server-slack` |
|
|
509
|
+
| PostgreSQL | stdio | Database | `@modelcontextprotocol/server-postgres` |
|
|
510
|
+
| Puppeteer | stdio | Browser automation | `@modelcontextprotocol/server-puppeteer` |
|
|
511
|
+
| Brave Search | stdio | Web search | `@modelcontextprotocol/server-brave-search` |
|
|
512
|
+
|
|
513
|
+
#### Using MCP Tools
|
|
514
|
+
|
|
515
|
+
MCP tools are automatically available to AI models:
|
|
516
|
+
|
|
517
|
+
```bash
|
|
518
|
+
# MCP tools are used automatically
|
|
519
|
+
> "Search for recent news about AI" # Uses brave-search MCP
|
|
520
|
+
> "Read the contents of /home/user/data.json" # Uses filesystem MCP
|
|
521
|
+
> "Get my latest GitHub issues" # Uses github MCP
|
|
522
|
+
```
|
|
523
|
+
|
|
524
|
+
#### Creating Custom MCP Servers
|
|
525
|
+
|
|
526
|
+
See [MCP Implementation Guide](./docs/guides/MCP_IMPLEMENTATION_GUIDE.md) for detailed instructions on creating custom MCP servers.
|
|
527
|
+
|
|
528
|
+
---
|
|
529
|
+
|
|
530
|
+
## Configuration
|
|
531
|
+
|
|
532
|
+
### Configuration File Locations
|
|
533
|
+
|
|
534
|
+
Minto uses hierarchical configuration:
|
|
535
|
+
|
|
536
|
+
1. **Global**: `~/.minto.json` (user-wide settings)
|
|
537
|
+
2. **Project**: `./.minto.json` (project-specific settings)
|
|
538
|
+
3. **Environment**: `.env` files and environment variables
|
|
539
|
+
4. **CLI Args**: Command-line overrides
|
|
540
|
+
|
|
541
|
+
**Priority**: CLI Args > Project > Global > Defaults
|
|
542
|
+
|
|
543
|
+
### Environment Variables
|
|
544
|
+
|
|
545
|
+
Minto supports the following environment variables:
|
|
546
|
+
|
|
547
|
+
#### Primary Configuration
|
|
548
|
+
- `MINTO_CONFIG_DIR` - Custom configuration directory (highest priority)
|
|
549
|
+
- `CLAUDE_CONFIG_DIR` - Claude Code compatible directory (for compatibility)
|
|
550
|
+
|
|
551
|
+
#### API Keys
|
|
552
|
+
- `ANTHROPIC_API_KEY` - Anthropic API key for Claude models
|
|
553
|
+
- `OPENAI_API_KEY` - OpenAI API key
|
|
554
|
+
- Other provider-specific API keys
|
|
555
|
+
|
|
556
|
+
#### Advanced Options
|
|
557
|
+
- `MINTO_SESSION_ID` - Custom session identifier
|
|
558
|
+
- `MINTO_BASH` - Custom bash executable path (Windows)
|
|
559
|
+
- `MINTO_DEBUG_AGENTS` - Enable agent debugging output
|
|
560
|
+
|
|
561
|
+
**Note**: `.minto` directories always have higher priority than `.claude` directories for configuration, agents, and plugins.
|
|
562
|
+
|
|
563
|
+
### Complete Configuration Example
|
|
564
|
+
|
|
565
|
+
See [`.minto.json.example`](./.minto.json.example) for a fully documented configuration file with all available options.
|
|
566
|
+
|
|
567
|
+
### Key Configuration Sections
|
|
568
|
+
|
|
569
|
+
#### Models
|
|
570
|
+
|
|
571
|
+
```json
|
|
572
|
+
{
|
|
573
|
+
"mainModel": "claude-sonnet-4",
|
|
574
|
+
"taskModel": "claude-sonnet-3-7",
|
|
575
|
+
"models": {
|
|
576
|
+
"claude-sonnet-4": {
|
|
577
|
+
"provider": "anthropic",
|
|
578
|
+
"model": "claude-sonnet-4-20250514",
|
|
579
|
+
"apiKey": "${ANTHROPIC_API_KEY}",
|
|
580
|
+
"maxTokens": 8192,
|
|
581
|
+
"temperature": 0.7
|
|
582
|
+
},
|
|
583
|
+
"gpt-4-turbo": {
|
|
584
|
+
"provider": "openai",
|
|
585
|
+
"model": "gpt-4-turbo-preview",
|
|
586
|
+
"apiKey": "${OPENAI_API_KEY}"
|
|
587
|
+
}
|
|
588
|
+
}
|
|
589
|
+
}
|
|
590
|
+
```
|
|
591
|
+
|
|
592
|
+
#### Compression & Context
|
|
593
|
+
|
|
594
|
+
```json
|
|
595
|
+
{
|
|
596
|
+
"compressionMode": "code",
|
|
597
|
+
"autoCompact": {
|
|
598
|
+
"enabled": true,
|
|
599
|
+
"threshold": 0.8
|
|
600
|
+
},
|
|
601
|
+
"contextWindow": {
|
|
602
|
+
"maxTokens": 200000,
|
|
603
|
+
"reserveTokens": 4000
|
|
604
|
+
}
|
|
605
|
+
}
|
|
606
|
+
```
|
|
607
|
+
|
|
608
|
+
#### Permissions
|
|
609
|
+
|
|
610
|
+
```json
|
|
611
|
+
{
|
|
612
|
+
"permissionMode": "safe",
|
|
613
|
+
"permissions": {
|
|
614
|
+
"fileWrite": {
|
|
615
|
+
"enabled": true,
|
|
616
|
+
"requireConfirmation": true,
|
|
617
|
+
"allowedPaths": ["./**", "!node_modules/**"]
|
|
618
|
+
},
|
|
619
|
+
"bashExecution": {
|
|
620
|
+
"enabled": true,
|
|
621
|
+
"requireConfirmation": true,
|
|
622
|
+
"blockedCommands": ["rm -rf", "sudo"]
|
|
623
|
+
}
|
|
624
|
+
}
|
|
625
|
+
}
|
|
626
|
+
```
|
|
627
|
+
|
|
628
|
+
---
|
|
629
|
+
|
|
630
|
+
## Usage Guide
|
|
631
|
+
|
|
632
|
+
### Basic Commands
|
|
633
|
+
|
|
634
|
+
#### Starting Minto
|
|
635
|
+
|
|
636
|
+
```bash
|
|
637
|
+
# Basic start
|
|
638
|
+
minto
|
|
639
|
+
|
|
640
|
+
# Safe mode (permissions required)
|
|
641
|
+
minto --safe
|
|
642
|
+
|
|
643
|
+
# With specific model
|
|
644
|
+
minto --model gpt-4-turbo
|
|
645
|
+
|
|
646
|
+
# Verbose output
|
|
647
|
+
minto --verbose
|
|
648
|
+
|
|
649
|
+
# In specific directory
|
|
650
|
+
minto --cwd /path/to/project
|
|
651
|
+
```
|
|
652
|
+
|
|
653
|
+
#### In-Session Commands
|
|
654
|
+
|
|
655
|
+
```bash
|
|
656
|
+
# Model management
|
|
657
|
+
/model # Show current model
|
|
658
|
+
/model gpt-4-turbo # Switch model
|
|
659
|
+
|
|
660
|
+
# Agent management
|
|
661
|
+
/agents # List available agents
|
|
662
|
+
/task <agent> <prompt> # Use specific agent
|
|
663
|
+
|
|
664
|
+
# Plugin management
|
|
665
|
+
/plugins # List installed plugins
|
|
666
|
+
/plugin install <name> # Install plugin
|
|
667
|
+
|
|
668
|
+
# Context management
|
|
669
|
+
/compact # Manually compact context
|
|
670
|
+
/compression # Switch compression mode
|
|
671
|
+
/clear # Clear conversation
|
|
672
|
+
|
|
673
|
+
# Help and info
|
|
674
|
+
/help # Show help
|
|
675
|
+
/commands # List all commands
|
|
676
|
+
/quit # Exit with summary
|
|
677
|
+
```
|
|
678
|
+
|
|
679
|
+
---
|
|
680
|
+
|
|
681
|
+
### Working with Agents
|
|
682
|
+
|
|
683
|
+
#### Listing Agents
|
|
684
|
+
|
|
685
|
+
```bash
|
|
686
|
+
# In Minto session
|
|
687
|
+
/agents
|
|
688
|
+
|
|
689
|
+
# Output:
|
|
690
|
+
# Available Agents:
|
|
691
|
+
# - code-reviewer: Expert code review
|
|
692
|
+
# - python-pro: Python development expert
|
|
693
|
+
# - researcher: Web research specialist
|
|
694
|
+
```
|
|
695
|
+
|
|
696
|
+
#### Using Agents Explicitly
|
|
697
|
+
|
|
698
|
+
```bash
|
|
699
|
+
# Method 1: /task command
|
|
700
|
+
/task code-reviewer "Review src/auth.ts for security issues"
|
|
701
|
+
|
|
702
|
+
# Method 2: Natural language
|
|
703
|
+
"Use the code-reviewer agent to analyze my code"
|
|
704
|
+
|
|
705
|
+
# Method 3: Multi-agent workflow
|
|
706
|
+
"Have the researcher agent find best practices, then code-reviewer agent apply them"
|
|
707
|
+
```
|
|
708
|
+
|
|
709
|
+
#### Creating Custom Agents
|
|
710
|
+
|
|
711
|
+
1. **Create agent file**: `~/.minto/agents/my-agent.md`
|
|
712
|
+
|
|
713
|
+
```markdown
|
|
714
|
+
---
|
|
715
|
+
name: my-agent
|
|
716
|
+
description: Specialized agent for X task
|
|
717
|
+
tools: ["FileRead", "FileWrite", "Bash"]
|
|
718
|
+
model: claude-sonnet-4
|
|
719
|
+
temperature: 0.5
|
|
720
|
+
---
|
|
721
|
+
|
|
722
|
+
# My Custom Agent
|
|
723
|
+
|
|
724
|
+
You are an expert in X. When asked to perform Y:
|
|
725
|
+
|
|
726
|
+
1. First, analyze the requirements
|
|
727
|
+
2. Then, create a detailed plan
|
|
728
|
+
3. Finally, execute the plan step by step
|
|
729
|
+
|
|
730
|
+
Always provide explanations for your decisions.
|
|
731
|
+
```
|
|
732
|
+
|
|
733
|
+
2. **Test the agent**:
|
|
734
|
+
|
|
735
|
+
```bash
|
|
736
|
+
minto
|
|
737
|
+
> /agents
|
|
738
|
+
> /task my-agent "Perform task X"
|
|
739
|
+
```
|
|
740
|
+
|
|
741
|
+
#### Agent Best Practices
|
|
742
|
+
|
|
743
|
+
✅ **DO**:
|
|
744
|
+
- Provide clear, specific descriptions
|
|
745
|
+
- Limit tool access to what's needed
|
|
746
|
+
- Include examples in the prompt
|
|
747
|
+
- Test agents before sharing
|
|
748
|
+
|
|
749
|
+
❌ **DON'T**:
|
|
750
|
+
- Give agents unlimited tools (`"*"`) unless necessary
|
|
751
|
+
- Use overly broad descriptions
|
|
752
|
+
- Forget to specify the model if it's task-specific
|
|
753
|
+
|
|
754
|
+
---
|
|
755
|
+
|
|
756
|
+
### Using Plugins
|
|
757
|
+
|
|
758
|
+
#### Installing from Marketplace
|
|
759
|
+
|
|
760
|
+
```bash
|
|
761
|
+
# Add marketplace
|
|
762
|
+
minto marketplace add wshobson/agents
|
|
763
|
+
|
|
764
|
+
# List marketplaces
|
|
765
|
+
minto marketplace list
|
|
766
|
+
|
|
767
|
+
# Search for plugins
|
|
768
|
+
minto marketplace search "python"
|
|
769
|
+
|
|
770
|
+
# Install plugin
|
|
771
|
+
minto plugin install python-development@wshobson
|
|
772
|
+
|
|
773
|
+
# Install specific version
|
|
774
|
+
minto plugin install python-development@wshobson --version 2.1.0
|
|
775
|
+
```
|
|
776
|
+
|
|
777
|
+
#### Managing Installed Plugins
|
|
778
|
+
|
|
779
|
+
```bash
|
|
780
|
+
# List installed plugins
|
|
781
|
+
minto plugin list
|
|
782
|
+
|
|
783
|
+
# Show plugin details
|
|
784
|
+
minto plugin info python-development
|
|
785
|
+
|
|
786
|
+
# Enable/disable plugin
|
|
787
|
+
minto plugin enable python-development
|
|
788
|
+
minto plugin disable python-development
|
|
789
|
+
|
|
790
|
+
# Update plugin
|
|
791
|
+
minto plugin update python-development
|
|
792
|
+
|
|
793
|
+
# Uninstall plugin
|
|
794
|
+
minto plugin uninstall python-development
|
|
795
|
+
```
|
|
796
|
+
|
|
797
|
+
#### Developing Plugins
|
|
798
|
+
|
|
799
|
+
See the comprehensive guides:
|
|
800
|
+
- [Plugin Quick Start](./docs/getting-started/PLUGIN_QUICKSTART.md)
|
|
801
|
+
- [Plugin System Guide](./docs/guides/PLUGIN_SYSTEM_GUIDE.md)
|
|
802
|
+
- [Plugin Implementation Guide](./docs/guides/PLUGIN_IMPLEMENTATION_GUIDE.md)
|
|
803
|
+
|
|
804
|
+
**Basic structure**:
|
|
805
|
+
|
|
806
|
+
```
|
|
807
|
+
my-plugin/
|
|
808
|
+
├── plugin.json # Plugin manifest
|
|
809
|
+
├── agents/ # AI agents
|
|
810
|
+
│ └── my-agent.md
|
|
811
|
+
├── commands/ # Slash commands
|
|
812
|
+
│ └── my-cmd.md
|
|
813
|
+
├── skills/ # Reusable knowledge
|
|
814
|
+
│ └── my-skill.md
|
|
815
|
+
└── README.md # Documentation
|
|
816
|
+
```
|
|
817
|
+
|
|
818
|
+
---
|
|
819
|
+
|
|
820
|
+
### MCP Servers
|
|
821
|
+
|
|
822
|
+
#### Starting with MCP Servers
|
|
823
|
+
|
|
824
|
+
1. **Install MCP server packages**:
|
|
825
|
+
|
|
826
|
+
```bash
|
|
827
|
+
npm install -g @modelcontextprotocol/server-filesystem
|
|
828
|
+
npm install -g @modelcontextprotocol/server-brave-search
|
|
829
|
+
```
|
|
830
|
+
|
|
831
|
+
2. **Configure in `.minto.json`**:
|
|
832
|
+
|
|
833
|
+
```json
|
|
834
|
+
{
|
|
835
|
+
"mcpServers": {
|
|
836
|
+
"filesystem": {
|
|
837
|
+
"type": "stdio",
|
|
838
|
+
"command": "npx",
|
|
839
|
+
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/allowed/path"],
|
|
840
|
+
"enabled": true
|
|
841
|
+
},
|
|
842
|
+
"brave-search": {
|
|
843
|
+
"type": "stdio",
|
|
844
|
+
"command": "npx",
|
|
845
|
+
"args": ["-y", "@modelcontextprotocol/server-brave-search"],
|
|
846
|
+
"enabled": true,
|
|
847
|
+
"env": {
|
|
848
|
+
"BRAVE_API_KEY": "your-api-key"
|
|
849
|
+
}
|
|
850
|
+
}
|
|
851
|
+
}
|
|
852
|
+
}
|
|
853
|
+
```
|
|
854
|
+
|
|
855
|
+
3. **Use in Minto**:
|
|
856
|
+
|
|
857
|
+
```bash
|
|
858
|
+
minto
|
|
859
|
+
|
|
860
|
+
# MCP tools are automatically available
|
|
861
|
+
> "Search for latest TypeScript features"
|
|
862
|
+
> "Read the package.json file"
|
|
863
|
+
```
|
|
864
|
+
|
|
865
|
+
#### MCP Server Configuration Options
|
|
866
|
+
|
|
867
|
+
```json
|
|
868
|
+
{
|
|
869
|
+
"server-name": {
|
|
870
|
+
"type": "stdio|sse|websocket|http",
|
|
871
|
+
"command": "executable", // For stdio
|
|
872
|
+
"args": ["arg1", "arg2"], // For stdio
|
|
873
|
+
"url": "ws://...", // For websocket/http
|
|
874
|
+
"baseUrl": "http://...", // For http
|
|
875
|
+
"enabled": true|false,
|
|
876
|
+
"env": { // Environment variables
|
|
877
|
+
"VAR_NAME": "${ENV_VAR}"
|
|
878
|
+
},
|
|
879
|
+
"headers": { // For websocket/http
|
|
880
|
+
"Authorization": "Bearer ${TOKEN}"
|
|
881
|
+
},
|
|
882
|
+
"reconnect": true, // For websocket
|
|
883
|
+
"timeout": 30000 // For http (ms)
|
|
884
|
+
}
|
|
885
|
+
}
|
|
886
|
+
```
|
|
887
|
+
|
|
888
|
+
---
|
|
889
|
+
|
|
890
|
+
## Advanced Topics
|
|
891
|
+
|
|
892
|
+
### Multi-Model Workflows
|
|
893
|
+
|
|
894
|
+
```bash
|
|
895
|
+
# Use different models for different tasks
|
|
896
|
+
minto --model claude-sonnet-4
|
|
897
|
+
|
|
898
|
+
> "Use GPT-4 to generate creative ideas" # Auto-switches
|
|
899
|
+
> /model gpt-4-turbo
|
|
900
|
+
> "Now analyze these ideas"
|
|
901
|
+
> /model claude-sonnet-4
|
|
902
|
+
> "Implement the best idea"
|
|
903
|
+
```
|
|
904
|
+
|
|
905
|
+
### Custom Compression Modes
|
|
906
|
+
|
|
907
|
+
```bash
|
|
908
|
+
# Switch compression mode
|
|
909
|
+
/compression
|
|
910
|
+
|
|
911
|
+
# Choose: business | code
|
|
912
|
+
|
|
913
|
+
# Business mode: 9 sections (background, objectives, findings, etc.)
|
|
914
|
+
# Code mode: 8 sections (project structure, key files, changes, etc.)
|
|
915
|
+
```
|
|
916
|
+
|
|
917
|
+
### Hooks and Automation
|
|
918
|
+
|
|
919
|
+
In `.minto.json`:
|
|
920
|
+
|
|
921
|
+
```json
|
|
922
|
+
{
|
|
923
|
+
"hooks": {
|
|
924
|
+
"beforeCommand": "echo 'Starting command...'",
|
|
925
|
+
"afterCommand": "echo 'Command complete!'",
|
|
926
|
+
"beforeFileWrite": "./scripts/pre-write-check.sh",
|
|
927
|
+
"afterFileWrite": "git add ."
|
|
928
|
+
}
|
|
929
|
+
}
|
|
930
|
+
```
|
|
931
|
+
|
|
932
|
+
### Memory System
|
|
933
|
+
|
|
934
|
+
```bash
|
|
935
|
+
# Save information to memory
|
|
936
|
+
> "Remember that our API endpoint is https://api.company.com"
|
|
937
|
+
|
|
938
|
+
# Recall information
|
|
939
|
+
> "What's our API endpoint?"
|
|
940
|
+
|
|
941
|
+
# Memory persists across sessions
|
|
942
|
+
```
|
|
943
|
+
|
|
944
|
+
### CI/CD Integration
|
|
945
|
+
|
|
946
|
+
```yaml
|
|
947
|
+
# .github/workflows/ai-code-review.yml
|
|
948
|
+
name: AI Code Review
|
|
949
|
+
|
|
950
|
+
on: [pull_request]
|
|
951
|
+
|
|
952
|
+
jobs:
|
|
953
|
+
review:
|
|
954
|
+
runs-on: ubuntu-latest
|
|
955
|
+
steps:
|
|
956
|
+
- uses: actions/checkout@v3
|
|
957
|
+
- name: Install Minto
|
|
958
|
+
run: npm install -g @within-7/minto
|
|
959
|
+
- name: Run AI Review
|
|
960
|
+
env:
|
|
961
|
+
ANTHROPIC_API_KEY: ${{ secrets.ANTHROPIC_API_KEY }}
|
|
962
|
+
run: |
|
|
963
|
+
minto --non-interactive \
|
|
964
|
+
"/task code-reviewer 'Review this PR'" \
|
|
965
|
+
> review.md
|
|
966
|
+
- name: Comment PR
|
|
967
|
+
uses: actions/github-script@v6
|
|
968
|
+
with:
|
|
969
|
+
script: |
|
|
970
|
+
const fs = require('fs');
|
|
971
|
+
const review = fs.readFileSync('review.md', 'utf8');
|
|
972
|
+
github.rest.issues.createComment({
|
|
973
|
+
issue_number: context.issue.number,
|
|
974
|
+
owner: context.repo.owner,
|
|
975
|
+
repo: context.repo.repo,
|
|
976
|
+
body: review
|
|
977
|
+
});
|
|
978
|
+
```
|
|
979
|
+
|
|
980
|
+
---
|
|
981
|
+
|
|
982
|
+
## Documentation
|
|
983
|
+
|
|
984
|
+
📚 **[Complete Documentation Center](./docs/README.md)**
|
|
985
|
+
|
|
986
|
+
### Quick Start Guides
|
|
987
|
+
- [Getting Started](./docs/getting-started/START_HERE.md)
|
|
988
|
+
- [Compression Guide](./docs/getting-started/COMPRESSION_QUICK_GUIDE.md)
|
|
989
|
+
- [Plugin Quick Start](./docs/getting-started/PLUGIN_QUICKSTART.md)
|
|
990
|
+
- [Plugin Agents](./docs/getting-started/PLUGIN_AGENTS_QUICK_START.md)
|
|
991
|
+
|
|
992
|
+
### Complete Guides
|
|
993
|
+
- [Plugin System Guide](./docs/guides/PLUGIN_SYSTEM_GUIDE.md)
|
|
994
|
+
- [Subagents Implementation](./docs/guides/SUBAGENTS_IMPLEMENTATION_GUIDE.md)
|
|
995
|
+
- [MCP Implementation](./docs/guides/MCP_IMPLEMENTATION_GUIDE.md)
|
|
996
|
+
- [Package & Publish](./docs/guides/PACKAGE_AND_PUBLISH_GUIDE.md)
|
|
997
|
+
|
|
998
|
+
### Reference
|
|
999
|
+
- [Quick Reference](./docs/reference/QUICK_REFERENCE.md)
|
|
1000
|
+
- [Plugin CLI Reference](./docs/reference/PLUGIN_CLI_REFERENCE.md)
|
|
1001
|
+
- [Subagents Templates](./docs/reference/SUBAGENTS_TEMPLATES.md)
|
|
1002
|
+
|
|
1003
|
+
### Architecture
|
|
1004
|
+
- [CLI Architecture](./docs/architecture/CLAUDE_CODE_CLI_ARCHITECTURE.md)
|
|
1005
|
+
- [Plugin System Design](./docs/architecture/PLUGIN_SYSTEM_DESIGN.md)
|
|
1006
|
+
- [Skills System Design](./docs/architecture/SKILLS_SYSTEM_DESIGN.md)
|
|
1007
|
+
|
|
1008
|
+
---
|
|
1009
|
+
|
|
1010
|
+
## Development
|
|
1011
|
+
|
|
1012
|
+
### Build from Source
|
|
1013
|
+
|
|
1014
|
+
```bash
|
|
1015
|
+
# Install dependencies
|
|
1016
|
+
bun install
|
|
1017
|
+
|
|
1018
|
+
# Run in development mode
|
|
1019
|
+
bun run dev
|
|
1020
|
+
|
|
1021
|
+
# Build for production
|
|
1022
|
+
bun run build
|
|
1023
|
+
|
|
1024
|
+
# Run tests
|
|
1025
|
+
bun test
|
|
1026
|
+
|
|
1027
|
+
# Type checking
|
|
1028
|
+
bun run typecheck
|
|
1029
|
+
|
|
1030
|
+
# Format code
|
|
1031
|
+
bun run format
|
|
1032
|
+
```
|
|
1033
|
+
|
|
1034
|
+
### Project Structure
|
|
1035
|
+
|
|
1036
|
+
```
|
|
1037
|
+
minto/
|
|
1038
|
+
├── src/
|
|
1039
|
+
│ ├── entrypoints/ # CLI entry points
|
|
1040
|
+
│ ├── screens/ # UI screens (REPL, etc.)
|
|
1041
|
+
│ ├── tools/ # Tool implementations
|
|
1042
|
+
│ ├── services/ # AI service integrations
|
|
1043
|
+
│ ├── utils/ # Utilities (config, agents, etc.)
|
|
1044
|
+
│ ├── commands/ # Built-in commands
|
|
1045
|
+
│ └── types/ # TypeScript definitions
|
|
1046
|
+
├── docs/ # Documentation
|
|
1047
|
+
├── scripts/ # Build and utility scripts
|
|
1048
|
+
└── cli.js # CLI wrapper
|
|
1049
|
+
```
|
|
1050
|
+
|
|
1051
|
+
### Contributing
|
|
1052
|
+
|
|
1053
|
+
See [CONTRIBUTING.md](./CONTRIBUTING.md) for guidelines.
|
|
1054
|
+
|
|
1055
|
+
---
|
|
1056
|
+
|
|
1057
|
+
## Attribution & License
|
|
1058
|
+
|
|
1059
|
+
### Attribution
|
|
1060
|
+
|
|
1061
|
+
Minto is a derivative work based on [Kode-cli](https://github.com/shareAI-lab/Kode-cli), which is licensed under the Apache License, Version 2.0.
|
|
1062
|
+
|
|
1063
|
+
**Original Project**: Kode-cli
|
|
1064
|
+
**Original Copyright**: Copyright 2024 ShareAI Lab
|
|
1065
|
+
**Original License**: Apache License, Version 2.0
|
|
1066
|
+
|
|
1067
|
+
This derivative work includes significant modifications and enhancements made by within-7.
|
|
1068
|
+
|
|
1069
|
+
For detailed attribution information, see [ATTRIBUTION.md](./docs/legal/ATTRIBUTION.md).
|
|
1070
|
+
|
|
1071
|
+
### License
|
|
1072
|
+
|
|
1073
|
+
This software is licensed under the Apache License, Version 2.0 (inherited from Kode-cli).
|
|
1074
|
+
|
|
1075
|
+
**For private use within the within-7 organization only.**
|
|
1076
|
+
|
|
1077
|
+
See [LICENSE](./LICENSE) for the complete license text and [NOTICE](./NOTICE) for attribution and modification details.
|
|
1078
|
+
|
|
1079
|
+
### Disclaimer
|
|
1080
|
+
|
|
1081
|
+
THIS SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
|
1082
|
+
|
|
1083
|
+
---
|
|
1084
|
+
|
|
1085
|
+
## Support
|
|
1086
|
+
|
|
1087
|
+
- **Documentation**: [./docs](./docs)
|
|
1088
|
+
- **Issues**: Internal issue tracker
|
|
1089
|
+
- **Contact**: within-7 team
|
|
1090
|
+
|
|
1091
|
+
---
|
|
1092
|
+
|
|
1093
|
+
**Author**: Lib - within-7
|
|
1094
|
+
**Version**: 1.0.0
|
|
1095
|
+
|
|
1096
|
+
© 2025 within-7. All rights reserved.
|
|
1097
|
+
Based on Kode-cli © 2024 ShareAI Lab.
|