@nanocollective/nanocoder 1.20.4 → 1.22.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/LICENSE.md +1 -1
- package/README.md +157 -72
- package/assets/nanocoder-vscode.vsix +0 -0
- package/dist/ai-sdk-client/ai-sdk-client.d.ts.map +1 -1
- package/dist/ai-sdk-client/ai-sdk-client.js.map +1 -1
- package/dist/ai-sdk-client/chat/chat-handler.d.ts +1 -0
- package/dist/ai-sdk-client/chat/chat-handler.d.ts.map +1 -1
- package/dist/ai-sdk-client/chat/chat-handler.js +66 -7
- package/dist/ai-sdk-client/chat/chat-handler.js.map +1 -1
- package/dist/ai-sdk-client/error-handling/tool-error-detector.d.ts +8 -0
- package/dist/ai-sdk-client/error-handling/tool-error-detector.d.ts.map +1 -0
- package/dist/ai-sdk-client/error-handling/tool-error-detector.js +52 -0
- package/dist/ai-sdk-client/error-handling/tool-error-detector.js.map +1 -0
- package/dist/ai-sdk-client/providers/provider-factory.d.ts +6 -3
- package/dist/ai-sdk-client/providers/provider-factory.d.ts.map +1 -1
- package/dist/ai-sdk-client/providers/provider-factory.js +18 -4
- package/dist/ai-sdk-client/providers/provider-factory.js.map +1 -1
- package/dist/ai-sdk-client/tools/tool-prompt-formatter.d.ts +8 -0
- package/dist/ai-sdk-client/tools/tool-prompt-formatter.d.ts.map +1 -0
- package/dist/ai-sdk-client/tools/tool-prompt-formatter.js +97 -0
- package/dist/ai-sdk-client/tools/tool-prompt-formatter.js.map +1 -0
- package/dist/app/App.d.ts.map +1 -1
- package/dist/app/App.js +22 -12
- package/dist/app/App.js.map +1 -1
- package/dist/app/components/modal-selectors.d.ts +6 -7
- package/dist/app/components/modal-selectors.d.ts.map +1 -1
- package/dist/app/components/modal-selectors.js +10 -10
- package/dist/app/components/modal-selectors.js.map +1 -1
- package/dist/app/components/settings-selector.d.ts +6 -0
- package/dist/app/components/settings-selector.d.ts.map +1 -0
- package/dist/app/components/settings-selector.js +289 -0
- package/dist/app/components/settings-selector.js.map +1 -0
- package/dist/app/utils/app-util.d.ts.map +1 -1
- package/dist/app/utils/app-util.js +178 -13
- package/dist/app/utils/app-util.js.map +1 -1
- package/dist/cli.js +22 -0
- package/dist/cli.js.map +1 -1
- package/dist/client-factory.d.ts.map +1 -1
- package/dist/client-factory.js +23 -20
- package/dist/client-factory.js.map +1 -1
- package/dist/commands/clear.d.ts.map +1 -1
- package/dist/commands/clear.js +8 -5
- package/dist/commands/clear.js.map +1 -1
- package/dist/commands/compact.d.ts +24 -0
- package/dist/commands/compact.d.ts.map +1 -0
- package/dist/commands/compact.js +31 -0
- package/dist/commands/compact.js.map +1 -0
- package/dist/commands/custom-commands.d.ts.map +1 -1
- package/dist/commands/custom-commands.js +1 -1
- package/dist/commands/custom-commands.js.map +1 -1
- package/dist/commands/exit.d.ts +1 -0
- package/dist/commands/exit.d.ts.map +1 -1
- package/dist/commands/exit.js +14 -0
- package/dist/commands/exit.js.map +1 -1
- package/dist/commands/explorer.d.ts +3 -0
- package/dist/commands/explorer.d.ts.map +1 -0
- package/dist/commands/explorer.js +10 -0
- package/dist/commands/explorer.js.map +1 -0
- package/dist/commands/help.d.ts.map +1 -1
- package/dist/commands/help.js +1 -1
- package/dist/commands/help.js.map +1 -1
- package/dist/commands/index.d.ts +6 -3
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +6 -3
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +1 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/lsp.d.ts.map +1 -1
- package/dist/commands/lsp.js +1 -1
- package/dist/commands/lsp.js.map +1 -1
- package/dist/commands/mcp.d.ts.map +1 -1
- package/dist/commands/mcp.js +15 -21
- package/dist/commands/mcp.js.map +1 -1
- package/dist/commands/model-database.d.ts.map +1 -1
- package/dist/commands/model-database.js +3 -3
- package/dist/commands/model-database.js.map +1 -1
- package/dist/commands/settings.d.ts +3 -0
- package/dist/commands/settings.d.ts.map +1 -0
- package/dist/commands/{theme.js → settings.js} +4 -4
- package/dist/commands/settings.js.map +1 -0
- package/dist/commands/setup-mcp.d.ts +3 -0
- package/dist/commands/setup-mcp.d.ts.map +1 -0
- package/dist/commands/setup-mcp.js +15 -0
- package/dist/commands/setup-mcp.js.map +1 -0
- package/dist/commands/setup-providers.d.ts +3 -0
- package/dist/commands/setup-providers.d.ts.map +1 -0
- package/dist/commands/{setup-config.js → setup-providers.js} +4 -4
- package/dist/commands/setup-providers.js.map +1 -0
- package/dist/commands/tasks.d.ts +3 -0
- package/dist/commands/tasks.d.ts.map +1 -0
- package/dist/commands/tasks.js +117 -0
- package/dist/commands/tasks.js.map +1 -0
- package/dist/commands/usage.d.ts.map +1 -1
- package/dist/commands/usage.js +31 -9
- package/dist/commands/usage.js.map +1 -1
- package/dist/components/assistant-message.d.ts.map +1 -1
- package/dist/components/assistant-message.js +39 -6
- package/dist/components/assistant-message.js.map +1 -1
- package/dist/components/checkpoint-selector.d.ts.map +1 -1
- package/dist/components/checkpoint-selector.js +3 -3
- package/dist/components/checkpoint-selector.js.map +1 -1
- package/dist/components/file-explorer/index.d.ts +3 -0
- package/dist/components/file-explorer/index.d.ts.map +1 -0
- package/dist/components/file-explorer/index.js +318 -0
- package/dist/components/file-explorer/index.js.map +1 -0
- package/dist/components/file-explorer/tree-item.d.ts +3 -0
- package/dist/components/file-explorer/tree-item.d.ts.map +1 -0
- package/dist/components/file-explorer/tree-item.js +42 -0
- package/dist/components/file-explorer/tree-item.js.map +1 -0
- package/dist/components/file-explorer/utils.d.ts +18 -0
- package/dist/components/file-explorer/utils.d.ts.map +1 -0
- package/dist/components/file-explorer/utils.js +51 -0
- package/dist/components/file-explorer/utils.js.map +1 -0
- package/dist/components/file-explorer.d.ts +2 -0
- package/dist/components/file-explorer.d.ts.map +1 -0
- package/dist/components/file-explorer.js +3 -0
- package/dist/components/file-explorer.js.map +1 -0
- package/dist/components/message-box.d.ts +1 -0
- package/dist/components/message-box.d.ts.map +1 -1
- package/dist/components/message-box.js +2 -2
- package/dist/components/message-box.js.map +1 -1
- package/dist/components/model-selector.d.ts.map +1 -1
- package/dist/components/model-selector.js +3 -3
- package/dist/components/model-selector.js.map +1 -1
- package/dist/components/provider-selector.d.ts.map +1 -1
- package/dist/components/provider-selector.js +1 -1
- package/dist/components/provider-selector.js.map +1 -1
- package/dist/components/security-disclaimer.d.ts.map +1 -1
- package/dist/components/security-disclaimer.js +1 -1
- package/dist/components/security-disclaimer.js.map +1 -1
- package/dist/components/status.d.ts +11 -0
- package/dist/components/status.d.ts.map +1 -1
- package/dist/components/status.js +4 -4
- package/dist/components/status.js.map +1 -1
- package/dist/components/task-list-display.d.ts +8 -0
- package/dist/components/task-list-display.d.ts.map +1 -0
- package/dist/components/task-list-display.js +26 -0
- package/dist/components/task-list-display.js.map +1 -0
- package/dist/components/tool-message.d.ts.map +1 -1
- package/dist/components/tool-message.js +1 -1
- package/dist/components/tool-message.js.map +1 -1
- package/dist/components/ui/styled-title.js +38 -38
- package/dist/components/usage/progress-bar.d.ts.map +1 -1
- package/dist/components/usage/progress-bar.js +6 -3
- package/dist/components/usage/progress-bar.js.map +1 -1
- package/dist/components/usage/usage-display.d.ts.map +1 -1
- package/dist/components/usage/usage-display.js +1 -1
- package/dist/components/usage/usage-display.js.map +1 -1
- package/dist/components/user-input.d.ts.map +1 -1
- package/dist/components/user-input.js +36 -16
- package/dist/components/user-input.js.map +1 -1
- package/dist/components/user-message.d.ts.map +1 -1
- package/dist/components/user-message.js +43 -12
- package/dist/components/user-message.js.map +1 -1
- package/dist/components/welcome-message.d.ts.map +1 -1
- package/dist/components/welcome-message.js +6 -2
- package/dist/components/welcome-message.js.map +1 -1
- package/dist/config/index.d.ts +7 -1
- package/dist/config/index.d.ts.map +1 -1
- package/dist/config/index.js +100 -16
- package/dist/config/index.js.map +1 -1
- package/dist/config/mcp-config-loader.d.ts +31 -0
- package/dist/config/mcp-config-loader.d.ts.map +1 -0
- package/dist/config/mcp-config-loader.js +341 -0
- package/dist/config/mcp-config-loader.js.map +1 -0
- package/dist/config/nanocoder-tools-config.d.ts +7 -0
- package/dist/config/nanocoder-tools-config.d.ts.map +1 -0
- package/dist/config/nanocoder-tools-config.js +14 -0
- package/dist/config/nanocoder-tools-config.js.map +1 -0
- package/dist/config/preferences.d.ts +4 -0
- package/dist/config/preferences.d.ts.map +1 -1
- package/dist/config/preferences.js +14 -0
- package/dist/config/preferences.js.map +1 -1
- package/dist/config/themes.d.ts.map +1 -1
- package/dist/config/themes.js +340 -0
- package/dist/config/themes.js.map +1 -1
- package/dist/config/validation.d.ts +11 -0
- package/dist/config/validation.d.ts.map +1 -0
- package/dist/config/validation.js +71 -0
- package/dist/config/validation.js.map +1 -0
- package/dist/constants.d.ts +3 -0
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +63 -0
- package/dist/constants.js.map +1 -1
- package/dist/hooks/chat-handler/conversation/conversation-loop.d.ts +3 -1
- package/dist/hooks/chat-handler/conversation/conversation-loop.d.ts.map +1 -1
- package/dist/hooks/chat-handler/conversation/conversation-loop.js +52 -18
- package/dist/hooks/chat-handler/conversation/conversation-loop.js.map +1 -1
- package/dist/hooks/chat-handler/useChatHandler.d.ts.map +1 -1
- package/dist/hooks/chat-handler/useChatHandler.js +7 -0
- package/dist/hooks/chat-handler/useChatHandler.js.map +1 -1
- package/dist/hooks/useAppHandlers.d.ts +3 -2
- package/dist/hooks/useAppHandlers.d.ts.map +1 -1
- package/dist/hooks/useAppHandlers.js +67 -4
- package/dist/hooks/useAppHandlers.js.map +1 -1
- package/dist/hooks/useAppInitialization.d.ts.map +1 -1
- package/dist/hooks/useAppInitialization.js +14 -4
- package/dist/hooks/useAppInitialization.js.map +1 -1
- package/dist/hooks/useAppState.d.ts +6 -4
- package/dist/hooks/useAppState.d.ts.map +1 -1
- package/dist/hooks/useAppState.js +9 -6
- package/dist/hooks/useAppState.js.map +1 -1
- package/dist/hooks/useModeHandlers.d.ts +12 -10
- package/dist/hooks/useModeHandlers.d.ts.map +1 -1
- package/dist/hooks/useModeHandlers.js +52 -42
- package/dist/hooks/useModeHandlers.js.map +1 -1
- package/dist/hooks/useTerminalWidth.d.ts +1 -1
- package/dist/hooks/useTerminalWidth.d.ts.map +1 -1
- package/dist/hooks/useTerminalWidth.js +2 -2
- package/dist/hooks/useTerminalWidth.js.map +1 -1
- package/dist/hooks/useUIState.d.ts +2 -0
- package/dist/hooks/useUIState.d.ts.map +1 -1
- package/dist/hooks/useUIState.js +11 -1
- package/dist/hooks/useUIState.js.map +1 -1
- package/dist/mcp/mcp-client.d.ts +2 -0
- package/dist/mcp/mcp-client.d.ts.map +1 -1
- package/dist/mcp/mcp-client.js +13 -1
- package/dist/mcp/mcp-client.js.map +1 -1
- package/dist/models/models-dev-client.d.ts.map +1 -1
- package/dist/models/models-dev-client.js +61 -37
- package/dist/models/models-dev-client.js.map +1 -1
- package/dist/services/bash-executor.d.ts.map +1 -1
- package/dist/services/bash-executor.js +7 -0
- package/dist/services/bash-executor.js.map +1 -1
- package/dist/test-utils/cli-test-harness.d.ts +181 -0
- package/dist/test-utils/cli-test-harness.d.ts.map +1 -0
- package/dist/test-utils/cli-test-harness.js +413 -0
- package/dist/test-utils/cli-test-harness.js.map +1 -0
- package/dist/tools/execute-bash.d.ts.map +1 -1
- package/dist/tools/execute-bash.js +10 -2
- package/dist/tools/execute-bash.js.map +1 -1
- package/dist/tools/git/git-add.d.ts +8 -0
- package/dist/tools/git/git-add.d.ts.map +1 -0
- package/dist/tools/git/git-add.js +141 -0
- package/dist/tools/git/git-add.js.map +1 -0
- package/dist/tools/git/git-branch.d.ts +8 -0
- package/dist/tools/git/git-branch.d.ts.map +1 -0
- package/dist/tools/git/git-branch.js +251 -0
- package/dist/tools/git/git-branch.js.map +1 -0
- package/dist/tools/git/git-commit.d.ts +8 -0
- package/dist/tools/git/git-commit.d.ts.map +1 -0
- package/dist/tools/git/git-commit.js +176 -0
- package/dist/tools/git/git-commit.js.map +1 -0
- package/dist/tools/git/git-diff.d.ts +8 -0
- package/dist/tools/git/git-diff.d.ts.map +1 -0
- package/dist/tools/git/git-diff.js +136 -0
- package/dist/tools/git/git-diff.js.map +1 -0
- package/dist/tools/git/git-log.d.ts +8 -0
- package/dist/tools/git/git-log.d.ts.map +1 -0
- package/dist/tools/git/git-log.js +146 -0
- package/dist/tools/git/git-log.js.map +1 -0
- package/dist/tools/git/git-pr.d.ts +8 -0
- package/dist/tools/git/git-pr.d.ts.map +1 -0
- package/dist/tools/git/git-pr.js +252 -0
- package/dist/tools/git/git-pr.js.map +1 -0
- package/dist/tools/git/git-pull.d.ts +8 -0
- package/dist/tools/git/git-pull.d.ts.map +1 -0
- package/dist/tools/git/git-pull.js +151 -0
- package/dist/tools/git/git-pull.js.map +1 -0
- package/dist/tools/git/git-push.d.ts +8 -0
- package/dist/tools/git/git-push.d.ts.map +1 -0
- package/dist/tools/git/git-push.js +157 -0
- package/dist/tools/git/git-push.js.map +1 -0
- package/dist/tools/git/git-reset.d.ts +8 -0
- package/dist/tools/git/git-reset.d.ts.map +1 -0
- package/dist/tools/git/git-reset.js +183 -0
- package/dist/tools/git/git-reset.js.map +1 -0
- package/dist/tools/git/git-stash.d.ts +8 -0
- package/dist/tools/git/git-stash.d.ts.map +1 -0
- package/dist/tools/git/git-stash.js +260 -0
- package/dist/tools/git/git-stash.js.map +1 -0
- package/dist/tools/git/git-status.d.ts +8 -0
- package/dist/tools/git/git-status.d.ts.map +1 -0
- package/dist/tools/git/git-status.js +233 -0
- package/dist/tools/git/git-status.js.map +1 -0
- package/dist/tools/git/index.d.ts +9 -12
- package/dist/tools/git/index.d.ts.map +1 -1
- package/dist/tools/git/index.js +43 -11
- package/dist/tools/git/index.js.map +1 -1
- package/dist/tools/git/utils.d.ts +136 -23
- package/dist/tools/git/utils.d.ts.map +1 -1
- package/dist/tools/git/utils.js +405 -360
- package/dist/tools/git/utils.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +15 -9
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/string-replace.d.ts.map +1 -1
- package/dist/tools/string-replace.js +74 -17
- package/dist/tools/string-replace.js.map +1 -1
- package/dist/tools/tasks/create-task.d.ts +3 -0
- package/dist/tools/tasks/create-task.d.ts.map +1 -0
- package/dist/tools/tasks/create-task.js +101 -0
- package/dist/tools/tasks/create-task.js.map +1 -0
- package/dist/tools/tasks/delete-task.d.ts +3 -0
- package/dist/tools/tasks/delete-task.d.ts.map +1 -0
- package/dist/tools/tasks/delete-task.js +101 -0
- package/dist/tools/tasks/delete-task.js.map +1 -0
- package/dist/tools/tasks/index.d.ts +7 -0
- package/dist/tools/tasks/index.d.ts.map +1 -0
- package/dist/tools/tasks/index.js +6 -0
- package/dist/tools/tasks/index.js.map +1 -0
- package/dist/tools/tasks/list-tasks.d.ts +3 -0
- package/dist/tools/tasks/list-tasks.d.ts.map +1 -0
- package/dist/tools/tasks/list-tasks.js +67 -0
- package/dist/tools/tasks/list-tasks.js.map +1 -0
- package/dist/tools/tasks/storage.d.ts +7 -0
- package/dist/tools/tasks/storage.d.ts.map +1 -0
- package/dist/tools/tasks/storage.js +31 -0
- package/dist/tools/tasks/storage.js.map +1 -0
- package/dist/tools/tasks/types.d.ts +11 -0
- package/dist/tools/tasks/types.d.ts.map +1 -0
- package/dist/tools/tasks/types.js +2 -0
- package/dist/tools/tasks/types.js.map +1 -0
- package/dist/tools/tasks/update-task.d.ts +3 -0
- package/dist/tools/tasks/update-task.d.ts.map +1 -0
- package/dist/tools/tasks/update-task.js +142 -0
- package/dist/tools/tasks/update-task.js.map +1 -0
- package/dist/tools/tool-manager.d.ts +1 -0
- package/dist/tools/tool-manager.d.ts.map +1 -1
- package/dist/tools/write-file.d.ts.map +1 -1
- package/dist/tools/write-file.js +52 -3
- package/dist/tools/write-file.js.map +1 -1
- package/dist/types/app.d.ts +3 -2
- package/dist/types/app.d.ts.map +1 -1
- package/dist/types/config.d.ts +54 -27
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/file-explorer.d.ts +14 -0
- package/dist/types/file-explorer.d.ts.map +1 -0
- package/dist/types/file-explorer.js +2 -0
- package/dist/types/file-explorer.js.map +1 -0
- package/dist/types/mcp.d.ts +1 -0
- package/dist/types/mcp.d.ts.map +1 -1
- package/dist/types/ui.d.ts +2 -2
- package/dist/types/ui.d.ts.map +1 -1
- package/dist/utils/auto-compact.d.ts +23 -0
- package/dist/utils/auto-compact.d.ts.map +1 -0
- package/dist/utils/auto-compact.js +149 -0
- package/dist/utils/auto-compact.js.map +1 -0
- package/dist/utils/completion-note.d.ts +3 -0
- package/dist/utils/completion-note.d.ts.map +1 -0
- package/dist/utils/completion-note.js +39 -0
- package/dist/utils/completion-note.js.map +1 -0
- package/dist/utils/compression-backup.d.ts +14 -0
- package/dist/utils/compression-backup.d.ts.map +1 -0
- package/dist/utils/compression-backup.js +31 -0
- package/dist/utils/compression-backup.js.map +1 -0
- package/dist/utils/file-tree.d.ts +37 -0
- package/dist/utils/file-tree.d.ts.map +1 -0
- package/dist/utils/file-tree.js +122 -0
- package/dist/utils/file-tree.js.map +1 -0
- package/dist/utils/indentation-normalizer.d.ts +10 -0
- package/dist/utils/indentation-normalizer.d.ts.map +1 -1
- package/dist/utils/indentation-normalizer.js +48 -0
- package/dist/utils/indentation-normalizer.js.map +1 -1
- package/dist/utils/logging/config.d.ts +11 -0
- package/dist/utils/logging/config.d.ts.map +1 -1
- package/dist/utils/logging/config.js +19 -4
- package/dist/utils/logging/config.js.map +1 -1
- package/dist/utils/logging/logger-provider.d.ts +15 -0
- package/dist/utils/logging/logger-provider.d.ts.map +1 -1
- package/dist/utils/logging/logger-provider.js +48 -24
- package/dist/utils/logging/logger-provider.js.map +1 -1
- package/dist/utils/message-compression.d.ts +55 -0
- package/dist/utils/message-compression.d.ts.map +1 -0
- package/dist/utils/message-compression.js +401 -0
- package/dist/utils/message-compression.js.map +1 -0
- package/dist/vscode/protocol.d.ts +5 -1
- package/dist/vscode/protocol.d.ts.map +1 -1
- package/dist/vscode/vscode-server.d.ts +4 -0
- package/dist/vscode/vscode-server.d.ts.map +1 -1
- package/dist/vscode/vscode-server.js +10 -0
- package/dist/vscode/vscode-server.js.map +1 -1
- package/dist/wizards/mcp-wizard.d.ts +8 -0
- package/dist/wizards/mcp-wizard.d.ts.map +1 -0
- package/dist/wizards/mcp-wizard.js +256 -0
- package/dist/wizards/mcp-wizard.js.map +1 -0
- package/dist/wizards/provider-wizard.d.ts +8 -0
- package/dist/wizards/provider-wizard.d.ts.map +1 -0
- package/dist/wizards/provider-wizard.js +254 -0
- package/dist/wizards/provider-wizard.js.map +1 -0
- package/dist/wizards/steps/location-step.d.ts +10 -0
- package/dist/wizards/steps/location-step.d.ts.map +1 -0
- package/dist/{wizard → wizards}/steps/location-step.js +7 -10
- package/dist/wizards/steps/location-step.js.map +1 -0
- package/dist/{wizard → wizards}/steps/mcp-step.d.ts +3 -1
- package/dist/wizards/steps/mcp-step.d.ts.map +1 -0
- package/dist/{wizard → wizards}/steps/mcp-step.js +14 -11
- package/dist/wizards/steps/mcp-step.js.map +1 -0
- package/dist/wizards/steps/provider-step.d.ts +11 -0
- package/dist/wizards/steps/provider-step.d.ts.map +1 -0
- package/dist/{wizard → wizards}/steps/provider-step.js +12 -10
- package/dist/wizards/steps/provider-step.js.map +1 -0
- package/dist/{wizard → wizards}/steps/summary-step.d.ts +3 -2
- package/dist/wizards/steps/summary-step.d.ts.map +1 -0
- package/dist/{wizard → wizards}/steps/summary-step.js +2 -2
- package/dist/wizards/steps/summary-step.js.map +1 -0
- package/dist/{wizard → wizards}/templates/mcp-templates.d.ts +1 -0
- package/dist/wizards/templates/mcp-templates.d.ts.map +1 -0
- package/dist/wizards/templates/mcp-templates.js.map +1 -0
- package/dist/wizards/templates/provider-templates.d.ts.map +1 -0
- package/dist/{wizard → wizards}/templates/provider-templates.js +73 -8
- package/dist/wizards/templates/provider-templates.js.map +1 -0
- package/dist/wizards/utils/fetch-cloud-models.d.ts.map +1 -0
- package/dist/wizards/utils/fetch-cloud-models.js.map +1 -0
- package/dist/wizards/utils/fetch-local-models.d.ts.map +1 -0
- package/dist/wizards/utils/fetch-local-models.js.map +1 -0
- package/dist/wizards/validation.d.ts +72 -0
- package/dist/wizards/validation.d.ts.map +1 -0
- package/dist/{wizard → wizards}/validation.js +64 -1
- package/dist/wizards/validation.js.map +1 -0
- package/package.json +21 -6
- package/source/app/prompts/main-prompt.md +75 -68
- package/dist/commands/setup-config.d.ts +0 -3
- package/dist/commands/setup-config.d.ts.map +0 -1
- package/dist/commands/setup-config.js.map +0 -1
- package/dist/commands/theme.d.ts +0 -3
- package/dist/commands/theme.d.ts.map +0 -1
- package/dist/commands/theme.js.map +0 -1
- package/dist/commands/title-shape.d.ts +0 -3
- package/dist/commands/title-shape.d.ts.map +0 -1
- package/dist/commands/title-shape.js +0 -54
- package/dist/commands/title-shape.js.map +0 -1
- package/dist/components/theme-selector.d.ts +0 -8
- package/dist/components/theme-selector.d.ts.map +0 -1
- package/dist/components/theme-selector.js +0 -51
- package/dist/components/theme-selector.js.map +0 -1
- package/dist/components/title-shape-selector.d.ts +0 -8
- package/dist/components/title-shape-selector.d.ts.map +0 -1
- package/dist/components/title-shape-selector.js +0 -108
- package/dist/components/title-shape-selector.js.map +0 -1
- package/dist/tools/git/git-branch-suggest.d.ts +0 -9
- package/dist/tools/git/git-branch-suggest.d.ts.map +0 -1
- package/dist/tools/git/git-branch-suggest.js +0 -326
- package/dist/tools/git/git-branch-suggest.js.map +0 -1
- package/dist/tools/git/git-create-pr.d.ts +0 -9
- package/dist/tools/git/git-create-pr.d.ts.map +0 -1
- package/dist/tools/git/git-create-pr.js +0 -404
- package/dist/tools/git/git-create-pr.js.map +0 -1
- package/dist/tools/git/git-smart-commit.d.ts +0 -9
- package/dist/tools/git/git-smart-commit.d.ts.map +0 -1
- package/dist/tools/git/git-smart-commit.js +0 -308
- package/dist/tools/git/git-smart-commit.js.map +0 -1
- package/dist/tools/git/git-status-enhanced.d.ts +0 -9
- package/dist/tools/git/git-status-enhanced.d.ts.map +0 -1
- package/dist/tools/git/git-status-enhanced.js +0 -305
- package/dist/tools/git/git-status-enhanced.js.map +0 -1
- package/dist/tools/git/types.d.ts +0 -103
- package/dist/tools/git/types.d.ts.map +0 -1
- package/dist/tools/git/types.js +0 -7
- package/dist/tools/git/types.js.map +0 -1
- package/dist/utils/gradient-utils.d.ts +0 -25
- package/dist/utils/gradient-utils.d.ts.map +0 -1
- package/dist/utils/gradient-utils.js +0 -45
- package/dist/utils/gradient-utils.js.map +0 -1
- package/dist/wizard/config-wizard.d.ts +0 -8
- package/dist/wizard/config-wizard.d.ts.map +0 -1
- package/dist/wizard/config-wizard.js +0 -212
- package/dist/wizard/config-wizard.js.map +0 -1
- package/dist/wizard/steps/location-step.d.ts +0 -9
- package/dist/wizard/steps/location-step.d.ts.map +0 -1
- package/dist/wizard/steps/location-step.js.map +0 -1
- package/dist/wizard/steps/mcp-step.d.ts.map +0 -1
- package/dist/wizard/steps/mcp-step.js.map +0 -1
- package/dist/wizard/steps/provider-step.d.ts +0 -9
- package/dist/wizard/steps/provider-step.d.ts.map +0 -1
- package/dist/wizard/steps/provider-step.js.map +0 -1
- package/dist/wizard/steps/summary-step.d.ts.map +0 -1
- package/dist/wizard/steps/summary-step.js.map +0 -1
- package/dist/wizard/templates/mcp-templates.d.ts.map +0 -1
- package/dist/wizard/templates/mcp-templates.js.map +0 -1
- package/dist/wizard/templates/provider-templates.d.ts.map +0 -1
- package/dist/wizard/templates/provider-templates.js.map +0 -1
- package/dist/wizard/utils/fetch-cloud-models.d.ts.map +0 -1
- package/dist/wizard/utils/fetch-cloud-models.js.map +0 -1
- package/dist/wizard/utils/fetch-local-models.d.ts.map +0 -1
- package/dist/wizard/utils/fetch-local-models.js.map +0 -1
- package/dist/wizard/validation.d.ts +0 -64
- package/dist/wizard/validation.d.ts.map +0 -1
- package/dist/wizard/validation.js.map +0 -1
- /package/dist/{wizard → wizards}/templates/mcp-templates.js +0 -0
- /package/dist/{wizard → wizards}/templates/provider-templates.d.ts +0 -0
- /package/dist/{wizard → wizards}/utils/fetch-cloud-models.d.ts +0 -0
- /package/dist/{wizard → wizards}/utils/fetch-cloud-models.js +0 -0
- /package/dist/{wizard → wizards}/utils/fetch-local-models.d.ts +0 -0
- /package/dist/{wizard → wizards}/utils/fetch-local-models.js +0 -0
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
|
|
2
|
-
import { Box, Text, useFocus, useInput } from 'ink';
|
|
3
|
-
import BigText from 'ink-big-text';
|
|
4
|
-
import Gradient from 'ink-gradient';
|
|
5
|
-
import SelectInput from 'ink-select-input';
|
|
6
|
-
import { useMemo, useState } from 'react';
|
|
7
|
-
import { TitledBoxWithPreferences } from '../components/ui/titled-box.js';
|
|
8
|
-
import { useTerminalWidth } from '../hooks/useTerminalWidth.js';
|
|
9
|
-
import { useTheme } from '../hooks/useTheme.js';
|
|
10
|
-
import { useTitleShape } from '../hooks/useTitleShape.js';
|
|
11
|
-
export default function TitleShapeSelector({ onComplete, onCancel, }) {
|
|
12
|
-
const boxWidth = useTerminalWidth();
|
|
13
|
-
const { colors } = useTheme();
|
|
14
|
-
const { currentTitleShape, setCurrentTitleShape } = useTitleShape();
|
|
15
|
-
// Store original shape for restore on cancel
|
|
16
|
-
const [originalShape] = useState(currentTitleShape);
|
|
17
|
-
// Auto-focus to ensure keyboard navigation works
|
|
18
|
-
useFocus({ autoFocus: true, id: 'title-shape-selector' });
|
|
19
|
-
// Handle escape key to cancel
|
|
20
|
-
useInput((_, key) => {
|
|
21
|
-
if (key.escape) {
|
|
22
|
-
// Restore original shape on cancel
|
|
23
|
-
setCurrentTitleShape(originalShape);
|
|
24
|
-
onCancel();
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
// Create title shape options
|
|
28
|
-
const shapeOptions = [
|
|
29
|
-
{ label: 'Pill :- Demo Title', value: 'pill' },
|
|
30
|
-
{ label: 'Rounded :- ╭ Demo Title ╮', value: 'rounded' },
|
|
31
|
-
{ label: 'Square :- ┌ Demo Title ┐', value: 'square' },
|
|
32
|
-
{ label: 'Double :- ╔ Demo Title ╗', value: 'double' },
|
|
33
|
-
{ label: 'Arrow Left :- ← Demo Title →', value: 'arrow-left' },
|
|
34
|
-
{ label: 'Arrow Right :- → Demo Title ←', value: 'arrow-right' },
|
|
35
|
-
{ label: 'Arrow Double :- « Demo Title »', value: 'arrow-double' },
|
|
36
|
-
{ label: 'Angled Box :- ╱ Demo Title ╲', value: 'angled-box' },
|
|
37
|
-
{
|
|
38
|
-
label: 'Powerline Angled :- Demo Title (Requires Nerd Fonts)',
|
|
39
|
-
value: 'powerline-angled',
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
label: 'Powerline Angled Thin :- Demo Title (Requires Nerd Fonts)',
|
|
43
|
-
value: 'powerline-angled-thin',
|
|
44
|
-
},
|
|
45
|
-
{
|
|
46
|
-
label: 'Powerline Block :- Demo Title (Requires Nerd Fonts)',
|
|
47
|
-
value: 'powerline-block',
|
|
48
|
-
},
|
|
49
|
-
{
|
|
50
|
-
label: 'Powerline Block Alt :- Demo Title (Requires Nerd Fonts)',
|
|
51
|
-
value: 'powerline-block-alt',
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
label: 'Powerline Curved :- Demo Title (Requires Nerd Fonts)',
|
|
55
|
-
value: 'powerline-curved',
|
|
56
|
-
},
|
|
57
|
-
{
|
|
58
|
-
label: 'Powerline Curved Thin :- Demo Title (Requires Nerd Fonts)',
|
|
59
|
-
value: 'powerline-curved-thin',
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
label: 'Powerline Flame :- Demo Title (Requires Nerd Fonts)',
|
|
63
|
-
value: 'powerline-flame',
|
|
64
|
-
},
|
|
65
|
-
{
|
|
66
|
-
label: 'Powerline Flame Thin :- Demo Title (Requires Nerd Fonts)',
|
|
67
|
-
value: 'powerline-flame-thin',
|
|
68
|
-
},
|
|
69
|
-
{
|
|
70
|
-
label: 'Powerline Graph :- Demo Title (Requires Nerd Fonts)',
|
|
71
|
-
value: 'powerline-graph',
|
|
72
|
-
},
|
|
73
|
-
{
|
|
74
|
-
label: 'Powerline Ribbon :- Demo Title (Requires Nerd Fonts)',
|
|
75
|
-
value: 'powerline-ribbon',
|
|
76
|
-
},
|
|
77
|
-
{
|
|
78
|
-
label: 'Powerline Segment :- Demo Title (Requires Nerd Fonts)',
|
|
79
|
-
value: 'powerline-segment',
|
|
80
|
-
},
|
|
81
|
-
{
|
|
82
|
-
label: 'Powerline Segment Thin :- Demo Title (Requires Nerd Fonts)',
|
|
83
|
-
value: 'powerline-segment-thin',
|
|
84
|
-
},
|
|
85
|
-
];
|
|
86
|
-
// Find index of current shape for initial selection
|
|
87
|
-
const initialIndex = useMemo(() => {
|
|
88
|
-
const index = shapeOptions.findIndex(option => option.value === originalShape);
|
|
89
|
-
return index >= 0 ? index : 0;
|
|
90
|
-
}, [originalShape]);
|
|
91
|
-
const [_currentIndex, _setCurrentIndex] = useState(initialIndex);
|
|
92
|
-
const handleSelect = (item) => {
|
|
93
|
-
setCurrentTitleShape(item.value);
|
|
94
|
-
onComplete(item.value);
|
|
95
|
-
};
|
|
96
|
-
// Handle shape preview during navigation
|
|
97
|
-
const handleHighlight = (item) => {
|
|
98
|
-
// Update the shape temporarily for preview
|
|
99
|
-
setCurrentTitleShape(item.value);
|
|
100
|
-
};
|
|
101
|
-
// Get the display name for current shape
|
|
102
|
-
const _getCurrentShapeName = () => {
|
|
103
|
-
const currentOption = shapeOptions.find(option => option.value === currentTitleShape);
|
|
104
|
-
return currentOption ? currentOption.label : 'Unknown';
|
|
105
|
-
};
|
|
106
|
-
return (_jsxs(_Fragment, { children: [_jsx(Gradient, { colors: [colors.primary, colors.tool], children: _jsx(BigText, { text: "Title Shapes", font: "tiny" }) }), _jsxs(TitledBoxWithPreferences, { title: "\u273B Choose your preferred title shape! \u273B", reversePowerline: true, width: boxWidth, borderColor: colors.primary, paddingX: 2, paddingY: 1, flexDirection: "column", marginBottom: 1, children: [_jsx(Box, { paddingBottom: 1, children: _jsx(Text, { color: colors.text, children: "Tips for getting started:" }) }), _jsxs(Box, { paddingBottom: 1, flexDirection: "column", children: [_jsx(Text, { color: colors.secondary, children: "1. Use arrow keys to navigate through the shape options." }), _jsx(Text, { color: colors.secondary, children: "2. Each option shows a preview of how the title will look." }), _jsx(Text, { color: colors.secondary, children: "3. Press Enter to select your preferred shape." }), _jsx(Text, { color: colors.secondary, children: "4. Press Esc to cancel and keep your current shape." }), _jsx(Text, { color: colors.secondary, children: "5. The CLI will remember your choice for all title boxes." })] }), _jsx(Text, { color: colors.text, children: "/help for help" })] }), _jsx(Box, { borderStyle: "round", width: boxWidth, borderColor: colors.primary, paddingX: 2, paddingY: 1, marginBottom: 1, children: _jsxs(Box, { flexDirection: "column", children: [_jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: colors.secondary, children: "Select a title shape" }) }), _jsx(Box, { marginBottom: 1, children: _jsx(Text, { color: colors.secondary, children: "\u2191/\u2193 Navigate \u2022 Enter Select \u2022 Esc Cancel" }) }), _jsx(SelectInput, { items: shapeOptions, onSelect: handleSelect, onHighlight: handleHighlight })] }) })] }));
|
|
107
|
-
}
|
|
108
|
-
//# sourceMappingURL=title-shape-selector.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"title-shape-selector.js","sourceRoot":"","sources":["../../source/components/title-shape-selector.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Git Branch Suggest Tool
|
|
3
|
-
*
|
|
4
|
-
* Provides intelligent branch naming suggestions and workflow
|
|
5
|
-
* strategy recommendations based on project context.
|
|
6
|
-
*/
|
|
7
|
-
import type { NanocoderToolExport } from '../../types/core.js';
|
|
8
|
-
export declare const gitBranchSuggestTool: NanocoderToolExport;
|
|
9
|
-
//# sourceMappingURL=git-branch-suggest.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"git-branch-suggest.d.ts","sourceRoot":"","sources":["../../../source/tools/git/git-branch-suggest.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAC;AA8atD,eAAO,MAAM,oBAAoB,EAAE,mBAKlC,CAAC"}
|
|
@@ -1,326 +0,0 @@
|
|
|
1
|
-
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
-
/**
|
|
3
|
-
* Git Branch Suggest Tool
|
|
4
|
-
*
|
|
5
|
-
* Provides intelligent branch naming suggestions and workflow
|
|
6
|
-
* strategy recommendations based on project context.
|
|
7
|
-
*/
|
|
8
|
-
import { Box, Text } from 'ink';
|
|
9
|
-
import React from 'react';
|
|
10
|
-
import ToolMessage from '../../components/tool-message.js';
|
|
11
|
-
import { ThemeContext } from '../../hooks/useTheme.js';
|
|
12
|
-
import { jsonSchema, tool } from '../../types/core.js';
|
|
13
|
-
import { execGit, getCurrentBranch, getDefaultBranch, isGitRepository, } from './utils.js';
|
|
14
|
-
/**
|
|
15
|
-
* Normalize description for branch name
|
|
16
|
-
*/
|
|
17
|
-
function normalizeForBranchName(description) {
|
|
18
|
-
return description
|
|
19
|
-
.toLowerCase()
|
|
20
|
-
.replace(/[^a-z0-9\s-]/g, '') // Remove special characters
|
|
21
|
-
.replace(/\s+/g, '-') // Replace spaces with hyphens
|
|
22
|
-
.replace(/-+/g, '-') // Remove duplicate hyphens
|
|
23
|
-
.replace(/^-|-$/g, '') // Trim hyphens from ends
|
|
24
|
-
.substring(0, 50); // Limit length
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Generate branch name based on work type and description
|
|
28
|
-
*/
|
|
29
|
-
function generateBranchName(workType, description, ticketId) {
|
|
30
|
-
const normalizedDesc = normalizeForBranchName(description);
|
|
31
|
-
// Validate normalized description isn't empty (could happen with special-char-only input)
|
|
32
|
-
if (!normalizedDesc && !ticketId) {
|
|
33
|
-
throw new Error('Description must contain at least some alphanumeric characters');
|
|
34
|
-
}
|
|
35
|
-
// Map work types to conventional prefixes
|
|
36
|
-
const prefixMap = {
|
|
37
|
-
feature: 'feature',
|
|
38
|
-
bugfix: 'bugfix',
|
|
39
|
-
hotfix: 'hotfix',
|
|
40
|
-
release: 'release',
|
|
41
|
-
chore: 'chore',
|
|
42
|
-
};
|
|
43
|
-
const prefix = prefixMap[workType];
|
|
44
|
-
// Build branch name
|
|
45
|
-
const parts = [prefix];
|
|
46
|
-
if (ticketId) {
|
|
47
|
-
parts.push(ticketId.toUpperCase());
|
|
48
|
-
}
|
|
49
|
-
if (normalizedDesc) {
|
|
50
|
-
parts.push(normalizedDesc);
|
|
51
|
-
}
|
|
52
|
-
return parts.join('/');
|
|
53
|
-
}
|
|
54
|
-
/**
|
|
55
|
-
* Generate alternative branch name formats
|
|
56
|
-
*/
|
|
57
|
-
function generateAlternatives(workType, description, ticketId) {
|
|
58
|
-
const normalizedDesc = normalizeForBranchName(description);
|
|
59
|
-
const alternatives = [];
|
|
60
|
-
// If normalized description is empty, use a fallback
|
|
61
|
-
const descPart = normalizedDesc || 'update';
|
|
62
|
-
// Alternative 1: Short form with ticket first
|
|
63
|
-
if (ticketId) {
|
|
64
|
-
alternatives.push(`${ticketId.toLowerCase()}-${descPart}`);
|
|
65
|
-
}
|
|
66
|
-
// Alternative 2: Kebab-case without prefix (only if we have content)
|
|
67
|
-
if (normalizedDesc) {
|
|
68
|
-
alternatives.push(normalizedDesc);
|
|
69
|
-
}
|
|
70
|
-
// Alternative 3: Username prefix (common pattern)
|
|
71
|
-
alternatives.push(`user/${workType}/${descPart}`);
|
|
72
|
-
// Alternative 4: Date-based
|
|
73
|
-
const date = new Date().toISOString().slice(0, 10).replace(/-/g, '');
|
|
74
|
-
alternatives.push(`${workType}/${date}-${descPart.substring(0, 20)}`);
|
|
75
|
-
return alternatives.filter(Boolean).slice(0, 4);
|
|
76
|
-
}
|
|
77
|
-
/**
|
|
78
|
-
* Analyze repository to suggest workflow strategy
|
|
79
|
-
*/
|
|
80
|
-
async function analyzeWorkflowStrategy() {
|
|
81
|
-
try {
|
|
82
|
-
// Get list of branches
|
|
83
|
-
const branchList = await execGit(['branch', '-a']);
|
|
84
|
-
const branches = branchList
|
|
85
|
-
.split('\n')
|
|
86
|
-
.map(b => b.trim().replace(/^\*?\s*/, ''));
|
|
87
|
-
// Check for common patterns
|
|
88
|
-
const hasDevelop = branches.some(b => b.includes('develop')) ||
|
|
89
|
-
branches.some(b => b.includes('dev'));
|
|
90
|
-
const hasReleaseBranches = branches.some(b => b.includes('release/'));
|
|
91
|
-
const hasHotfixBranches = branches.some(b => b.includes('hotfix/'));
|
|
92
|
-
const hasFeatureBranches = branches.some(b => b.includes('feature/'));
|
|
93
|
-
// Check commit frequency (recent commits on main)
|
|
94
|
-
let recentCommits = 0;
|
|
95
|
-
try {
|
|
96
|
-
const log = await execGit([
|
|
97
|
-
'log',
|
|
98
|
-
'--oneline',
|
|
99
|
-
'--since=1 week ago',
|
|
100
|
-
'-n',
|
|
101
|
-
'50',
|
|
102
|
-
]);
|
|
103
|
-
recentCommits = log.split('\n').filter(l => l.trim()).length;
|
|
104
|
-
}
|
|
105
|
-
catch {
|
|
106
|
-
// May fail on new repos
|
|
107
|
-
}
|
|
108
|
-
// Determine strategy
|
|
109
|
-
if (hasDevelop && hasReleaseBranches) {
|
|
110
|
-
return {
|
|
111
|
-
strategy: 'gitflow',
|
|
112
|
-
rationale: 'Repository uses develop branch and release branches, suggesting GitFlow workflow',
|
|
113
|
-
};
|
|
114
|
-
}
|
|
115
|
-
if (hasReleaseBranches && !hasDevelop) {
|
|
116
|
-
return {
|
|
117
|
-
strategy: 'release-flow',
|
|
118
|
-
rationale: 'Repository uses release branches without develop, suggesting Release Flow',
|
|
119
|
-
};
|
|
120
|
-
}
|
|
121
|
-
if (recentCommits > 30) {
|
|
122
|
-
return {
|
|
123
|
-
strategy: 'trunk-based',
|
|
124
|
-
rationale: 'High commit frequency suggests trunk-based development might be suitable',
|
|
125
|
-
};
|
|
126
|
-
}
|
|
127
|
-
if (hasFeatureBranches || hasHotfixBranches) {
|
|
128
|
-
return {
|
|
129
|
-
strategy: 'feature-branch',
|
|
130
|
-
rationale: 'Repository uses feature/hotfix branches, following feature branch workflow',
|
|
131
|
-
};
|
|
132
|
-
}
|
|
133
|
-
// Default to feature-branch
|
|
134
|
-
return {
|
|
135
|
-
strategy: 'feature-branch',
|
|
136
|
-
rationale: 'Default recommendation: Feature Branch workflow suits most projects',
|
|
137
|
-
};
|
|
138
|
-
}
|
|
139
|
-
catch {
|
|
140
|
-
return {
|
|
141
|
-
strategy: 'feature-branch',
|
|
142
|
-
rationale: 'Unable to analyze repository; recommending Feature Branch workflow',
|
|
143
|
-
};
|
|
144
|
-
}
|
|
145
|
-
}
|
|
146
|
-
/**
|
|
147
|
-
* Get workflow strategy description
|
|
148
|
-
*/
|
|
149
|
-
function getWorkflowDescription(strategy) {
|
|
150
|
-
const descriptions = {
|
|
151
|
-
'feature-branch': `
|
|
152
|
-
Feature Branch Workflow:
|
|
153
|
-
- Create feature branches from main/master
|
|
154
|
-
- Merge via pull requests after review
|
|
155
|
-
- Simple and suitable for most teams
|
|
156
|
-
- Best for: Small to medium teams, web applications
|
|
157
|
-
`,
|
|
158
|
-
gitflow: `
|
|
159
|
-
GitFlow Workflow:
|
|
160
|
-
- main: production-ready code
|
|
161
|
-
- develop: integration branch
|
|
162
|
-
- feature/*: new features
|
|
163
|
-
- release/*: release preparation
|
|
164
|
-
- hotfix/*: urgent production fixes
|
|
165
|
-
- Best for: Scheduled releases, larger teams
|
|
166
|
-
`,
|
|
167
|
-
'trunk-based': `
|
|
168
|
-
Trunk-Based Development:
|
|
169
|
-
- Short-lived feature branches (< 2 days)
|
|
170
|
-
- Frequent merges to main
|
|
171
|
-
- Feature flags for incomplete work
|
|
172
|
-
- Continuous integration required
|
|
173
|
-
- Best for: Experienced teams, continuous deployment
|
|
174
|
-
`,
|
|
175
|
-
'release-flow': `
|
|
176
|
-
Release Flow (GitHub Flow variant):
|
|
177
|
-
- main: always deployable
|
|
178
|
-
- feature branches for all work
|
|
179
|
-
- release/* for release stabilization
|
|
180
|
-
- Deploy from main or release branches
|
|
181
|
-
- Best for: Web services, SaaS products
|
|
182
|
-
`,
|
|
183
|
-
};
|
|
184
|
-
return descriptions[strategy] || descriptions['feature-branch'];
|
|
185
|
-
}
|
|
186
|
-
/**
|
|
187
|
-
* Execute the git_branch_suggest tool
|
|
188
|
-
*/
|
|
189
|
-
const executeGitBranchSuggest = async (args) => {
|
|
190
|
-
// Check if we're in a git repository
|
|
191
|
-
if (!(await isGitRepository())) {
|
|
192
|
-
return 'Error: Not a git repository. Please run this command from within a git repository.';
|
|
193
|
-
}
|
|
194
|
-
const currentBranch = await getCurrentBranch();
|
|
195
|
-
const defaultBranch = await getDefaultBranch();
|
|
196
|
-
// Analyze workflow
|
|
197
|
-
const { strategy, rationale } = await analyzeWorkflowStrategy();
|
|
198
|
-
// Generate suggestions
|
|
199
|
-
const suggestedName = generateBranchName(args.workType, args.description, args.ticketId);
|
|
200
|
-
const alternatives = generateAlternatives(args.workType, args.description, args.ticketId);
|
|
201
|
-
// Check if branch already exists
|
|
202
|
-
let branchExists = false;
|
|
203
|
-
try {
|
|
204
|
-
await execGit(['rev-parse', '--verify', suggestedName]);
|
|
205
|
-
branchExists = true;
|
|
206
|
-
}
|
|
207
|
-
catch {
|
|
208
|
-
branchExists = false;
|
|
209
|
-
}
|
|
210
|
-
// Build response
|
|
211
|
-
const responseLines = [];
|
|
212
|
-
responseLines.push('=== Branch Suggestion ===');
|
|
213
|
-
responseLines.push('');
|
|
214
|
-
responseLines.push(`Current branch: ${currentBranch}`);
|
|
215
|
-
responseLines.push(`Default branch: ${defaultBranch}`);
|
|
216
|
-
responseLines.push(`Work type: ${args.workType}`);
|
|
217
|
-
if (args.ticketId) {
|
|
218
|
-
responseLines.push(`Ticket ID: ${args.ticketId}`);
|
|
219
|
-
}
|
|
220
|
-
responseLines.push('');
|
|
221
|
-
responseLines.push('--- Suggested Branch Name ---');
|
|
222
|
-
responseLines.push(` ${suggestedName}${branchExists ? ' (already exists!)' : ''}`);
|
|
223
|
-
responseLines.push('');
|
|
224
|
-
responseLines.push('--- Alternatives ---');
|
|
225
|
-
for (const alt of alternatives) {
|
|
226
|
-
responseLines.push(` - ${alt}`);
|
|
227
|
-
}
|
|
228
|
-
responseLines.push('');
|
|
229
|
-
responseLines.push('--- Workflow Analysis ---');
|
|
230
|
-
responseLines.push(`Detected strategy: ${strategy}`);
|
|
231
|
-
responseLines.push(`Rationale: ${rationale}`);
|
|
232
|
-
responseLines.push('');
|
|
233
|
-
responseLines.push(getWorkflowDescription(strategy));
|
|
234
|
-
responseLines.push('');
|
|
235
|
-
responseLines.push('--- Commands ---');
|
|
236
|
-
responseLines.push('');
|
|
237
|
-
responseLines.push(`# Create and switch to the new branch:`);
|
|
238
|
-
responseLines.push(`git checkout -b ${suggestedName}`);
|
|
239
|
-
responseLines.push('');
|
|
240
|
-
responseLines.push(`# Or using the newer git switch:`);
|
|
241
|
-
responseLines.push(`git switch -c ${suggestedName}`);
|
|
242
|
-
return responseLines.join('\n');
|
|
243
|
-
};
|
|
244
|
-
// AI SDK tool definition with execute function
|
|
245
|
-
const gitBranchSuggestCoreTool = tool({
|
|
246
|
-
description: 'Suggest branch names based on work type and provide workflow strategy recommendations.',
|
|
247
|
-
inputSchema: jsonSchema({
|
|
248
|
-
type: 'object',
|
|
249
|
-
properties: {
|
|
250
|
-
workType: {
|
|
251
|
-
type: 'string',
|
|
252
|
-
enum: ['feature', 'bugfix', 'hotfix', 'release', 'chore'],
|
|
253
|
-
description: 'Type of work: feature (new functionality), bugfix (non-urgent fix), hotfix (urgent fix), release (release prep), chore (maintenance)',
|
|
254
|
-
},
|
|
255
|
-
description: {
|
|
256
|
-
type: 'string',
|
|
257
|
-
description: 'Brief description of the work (e.g., "add user authentication", "fix login button")',
|
|
258
|
-
},
|
|
259
|
-
ticketId: {
|
|
260
|
-
type: 'string',
|
|
261
|
-
description: 'Optional ticket/issue ID (e.g., "PROJ-123", "GH-456")',
|
|
262
|
-
},
|
|
263
|
-
},
|
|
264
|
-
required: ['workType', 'description'],
|
|
265
|
-
}),
|
|
266
|
-
execute: async (args, _options) => {
|
|
267
|
-
return await executeGitBranchSuggest(args);
|
|
268
|
-
},
|
|
269
|
-
});
|
|
270
|
-
// Formatter component
|
|
271
|
-
const GitBranchSuggestFormatter = React.memo(({ args, result }) => {
|
|
272
|
-
const themeContext = React.useContext(ThemeContext);
|
|
273
|
-
if (!themeContext) {
|
|
274
|
-
throw new Error('ThemeContext is required');
|
|
275
|
-
}
|
|
276
|
-
const { colors } = themeContext;
|
|
277
|
-
// Parse result for display
|
|
278
|
-
let suggestedBranch = '';
|
|
279
|
-
let workflow = '';
|
|
280
|
-
if (result) {
|
|
281
|
-
const branchMatch = result.match(/--- Suggested Branch Name ---\n\s+(\S+)/);
|
|
282
|
-
if (branchMatch)
|
|
283
|
-
suggestedBranch = branchMatch[1];
|
|
284
|
-
const workflowMatch = result.match(/Detected strategy: (\S+)/);
|
|
285
|
-
if (workflowMatch)
|
|
286
|
-
workflow = workflowMatch[1];
|
|
287
|
-
}
|
|
288
|
-
const messageContent = (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: colors.tool, children: "git_branch_suggest" }), _jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Type: " }), _jsx(Text, { color: colors.primary, children: args.workType })] }), args.ticketId && (_jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Ticket: " }), _jsx(Text, { color: colors.text, children: args.ticketId })] })), suggestedBranch && (_jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Branch: " }), _jsx(Text, { color: colors.text, children: suggestedBranch })] })), workflow && (_jsxs(Box, { children: [_jsx(Text, { color: colors.secondary, children: "Workflow: " }), _jsx(Text, { color: colors.text, children: workflow })] }))] }));
|
|
289
|
-
return _jsx(ToolMessage, { message: messageContent, hideBox: true });
|
|
290
|
-
});
|
|
291
|
-
const formatter = (args, result) => {
|
|
292
|
-
return _jsx(GitBranchSuggestFormatter, { args: args, result: result });
|
|
293
|
-
};
|
|
294
|
-
const validator = async (args) => {
|
|
295
|
-
// Check if in git repository
|
|
296
|
-
if (!(await isGitRepository())) {
|
|
297
|
-
return {
|
|
298
|
-
valid: false,
|
|
299
|
-
error: 'git Not in a git repository',
|
|
300
|
-
};
|
|
301
|
-
}
|
|
302
|
-
// Validate work type
|
|
303
|
-
const validTypes = ['feature', 'bugfix', 'hotfix', 'release', 'chore'];
|
|
304
|
-
if (!validTypes.includes(args.workType)) {
|
|
305
|
-
return {
|
|
306
|
-
valid: false,
|
|
307
|
-
error: `git Invalid work type. Must be one of: ${validTypes.join(', ')}`,
|
|
308
|
-
};
|
|
309
|
-
}
|
|
310
|
-
// Validate description
|
|
311
|
-
if (!args.description || args.description.trim().length < 3) {
|
|
312
|
-
return {
|
|
313
|
-
valid: false,
|
|
314
|
-
error: 'git Description must be at least 3 characters',
|
|
315
|
-
};
|
|
316
|
-
}
|
|
317
|
-
return { valid: true };
|
|
318
|
-
};
|
|
319
|
-
// Export the tool using NanocoderToolExport pattern
|
|
320
|
-
export const gitBranchSuggestTool = {
|
|
321
|
-
name: 'git_branch_suggest',
|
|
322
|
-
tool: gitBranchSuggestCoreTool,
|
|
323
|
-
formatter,
|
|
324
|
-
validator,
|
|
325
|
-
};
|
|
326
|
-
//# sourceMappingURL=git-branch-suggest.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"git-branch-suggest.js","sourceRoot":"","sources":["../../../source/tools/git/git-branch-suggest.tsx"],"names":[],"mappings":";AAAA;;;;;GAKG;AAEH,OAAO,EAAC,GAAG,EAAE,IAAI,EAAC,MAAM,KAAK,CAAC;AAC9B,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,WAAW,MAAM,2BAA2B,CAAC;AACpD,OAAO,EAAC,YAAY,EAAC,MAAM,kBAAkB,CAAC;AAE9C,OAAO,EAAC,UAAU,EAAE,IAAI,EAAC,MAAM,cAAc,CAAC;AAE9C,OAAO,EACN,OAAO,EACP,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,GACf,MAAM,SAAS,CAAC;AAEjB;;GAEG;AACH,SAAS,sBAAsB,CAAC,WAAmB;IAClD,OAAO,WAAW;SAChB,WAAW,EAAE;SACb,OAAO,CAAC,eAAe,EAAE,EAAE,CAAC,CAAC,4BAA4B;SACzD,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,8BAA8B;SACnD,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,2BAA2B;SAC/C,OAAO,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC,yBAAyB;SAC/C,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe;AACpC,CAAC;AAED;;GAEG;AACH,SAAS,kBAAkB,CAC1B,QAAwC,EACxC,WAAmB,EACnB,QAAiB;IAEjB,MAAM,cAAc,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAE3D,0FAA0F;IAC1F,IAAI,CAAC,cAAc,IAAI,CAAC,QAAQ,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CACd,gEAAgE,CAChE,CAAC;IACH,CAAC;IAED,0CAA0C;IAC1C,MAAM,SAAS,GAAmD;QACjE,OAAO,EAAE,SAAS;QAClB,MAAM,EAAE,QAAQ;QAChB,MAAM,EAAE,QAAQ;QAChB,OAAO,EAAE,SAAS;QAClB,KAAK,EAAE,OAAO;KACd,CAAC;IAEF,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;IAEnC,oBAAoB;IACpB,MAAM,KAAK,GAAa,CAAC,MAAM,CAAC,CAAC;IAEjC,IAAI,QAAQ,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC,CAAC;IACpC,CAAC;IAED,IAAI,cAAc,EAAE,CAAC;QACpB,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC5B,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AACxB,CAAC;AAED;;GAEG;AACH,SAAS,oBAAoB,CAC5B,QAAwC,EACxC,WAAmB,EACnB,QAAiB;IAEjB,MAAM,cAAc,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;IAC3D,MAAM,YAAY,GAAa,EAAE,CAAC;IAElC,qDAAqD;IACrD,MAAM,QAAQ,GAAG,cAAc,IAAI,QAAQ,CAAC;IAE5C,8CAA8C;IAC9C,IAAI,QAAQ,EAAE,CAAC;QACd,YAAY,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,WAAW,EAAE,IAAI,QAAQ,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,qEAAqE;IACrE,IAAI,cAAc,EAAE,CAAC;QACpB,YAAY,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IACnC,CAAC;IAED,kDAAkD;IAClD,YAAY,CAAC,IAAI,CAAC,QAAQ,QAAQ,IAAI,QAAQ,EAAE,CAAC,CAAC;IAElD,4BAA4B;IAC5B,MAAM,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;IACrE,YAAY,CAAC,IAAI,CAAC,GAAG,QAAQ,IAAI,IAAI,IAAI,QAAQ,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;IAEtE,OAAO,YAAY,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACjD,CAAC;AAED;;GAEG;AACH,KAAK,UAAU,uBAAuB;IAIrC,IAAI,CAAC;QACJ,uBAAuB;QACvB,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,UAAU;aACzB,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,CAAC;QAE5C,4BAA4B;QAC5B,MAAM,UAAU,GACf,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;YACzC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;QACvC,MAAM,kBAAkB,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;QACtE,MAAM,iBAAiB,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC;QACpE,MAAM,kBAAkB,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;QAEtE,kDAAkD;QAClD,IAAI,aAAa,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC;YACJ,MAAM,GAAG,GAAG,MAAM,OAAO,CAAC;gBACzB,KAAK;gBACL,WAAW;gBACX,oBAAoB;gBACpB,IAAI;gBACJ,IAAI;aACJ,CAAC,CAAC;YACH,aAAa,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC;QAC9D,CAAC;QAAC,MAAM,CAAC;YACR,wBAAwB;QACzB,CAAC;QAED,qBAAqB;QACrB,IAAI,UAAU,IAAI,kBAAkB,EAAE,CAAC;YACtC,OAAO;gBACN,QAAQ,EAAE,SAAS;gBACnB,SAAS,EACR,kFAAkF;aACnF,CAAC;QACH,CAAC;QAED,IAAI,kBAAkB,IAAI,CAAC,UAAU,EAAE,CAAC;YACvC,OAAO;gBACN,QAAQ,EAAE,cAAc;gBACxB,SAAS,EACR,2EAA2E;aAC5E,CAAC;QACH,CAAC;QAED,IAAI,aAAa,GAAG,EAAE,EAAE,CAAC;YACxB,OAAO;gBACN,QAAQ,EAAE,aAAa;gBACvB,SAAS,EACR,0EAA0E;aAC3E,CAAC;QACH,CAAC;QAED,IAAI,kBAAkB,IAAI,iBAAiB,EAAE,CAAC;YAC7C,OAAO;gBACN,QAAQ,EAAE,gBAAgB;gBAC1B,SAAS,EACR,4EAA4E;aAC7E,CAAC;QACH,CAAC;QAED,4BAA4B;QAC5B,OAAO;YACN,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EACR,qEAAqE;SACtE,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;YACN,QAAQ,EAAE,gBAAgB;YAC1B,SAAS,EACR,oEAAoE;SACrE,CAAC;IACH,CAAC;AACF,CAAC;AAED;;GAEG;AACH,SAAS,sBAAsB,CAAC,QAA0B;IACzD,MAAM,YAAY,GAAqC;QACtD,gBAAgB,EAAE;;;;;;CAMnB;QACC,OAAO,EAAE;;;;;;;;CAQV;QACC,aAAa,EAAE;;;;;;;CAOhB;QACC,cAAc,EAAE;;;;;;;CAOjB;KACC,CAAC;IAEF,OAAO,YAAY,CAAC,QAAQ,CAAC,IAAI,YAAY,CAAC,gBAAgB,CAAC,CAAC;AACjE,CAAC;AAED;;GAEG;AACH,MAAM,uBAAuB,GAAG,KAAK,EACpC,IAAwB,EACN,EAAE;IACpB,qCAAqC;IACrC,IAAI,CAAC,CAAC,MAAM,eAAe,EAAE,CAAC,EAAE,CAAC;QAChC,OAAO,oFAAoF,CAAC;IAC7F,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAC/C,MAAM,aAAa,GAAG,MAAM,gBAAgB,EAAE,CAAC;IAE/C,mBAAmB;IACnB,MAAM,EAAC,QAAQ,EAAE,SAAS,EAAC,GAAG,MAAM,uBAAuB,EAAE,CAAC;IAE9D,uBAAuB;IACvB,MAAM,aAAa,GAAG,kBAAkB,CACvC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,QAAQ,CACb,CAAC;IACF,MAAM,YAAY,GAAG,oBAAoB,CACxC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,WAAW,EAChB,IAAI,CAAC,QAAQ,CACb,CAAC;IAEF,iCAAiC;IACjC,IAAI,YAAY,GAAG,KAAK,CAAC;IACzB,IAAI,CAAC;QACJ,MAAM,OAAO,CAAC,CAAC,WAAW,EAAE,UAAU,EAAE,aAAa,CAAC,CAAC,CAAC;QACxD,YAAY,GAAG,IAAI,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACR,YAAY,GAAG,KAAK,CAAC;IACtB,CAAC;IAED,iBAAiB;IACjB,MAAM,aAAa,GAAa,EAAE,CAAC;IACnC,aAAa,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAChD,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,aAAa,CAAC,IAAI,CAAC,mBAAmB,aAAa,EAAE,CAAC,CAAC;IACvD,aAAa,CAAC,IAAI,CAAC,mBAAmB,aAAa,EAAE,CAAC,CAAC;IACvD,aAAa,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IAClD,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;QACnB,aAAa,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC;IACnD,CAAC;IACD,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,aAAa,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IACpD,aAAa,CAAC,IAAI,CACjB,KAAK,aAAa,GAAG,YAAY,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,EAAE,CAC/D,CAAC;IACF,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,aAAa,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC3C,KAAK,MAAM,GAAG,IAAI,YAAY,EAAE,CAAC;QAChC,aAAa,CAAC,IAAI,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC;IAClC,CAAC;IACD,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,aAAa,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;IAChD,aAAa,CAAC,IAAI,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;IACrD,aAAa,CAAC,IAAI,CAAC,cAAc,SAAS,EAAE,CAAC,CAAC;IAC9C,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,aAAa,CAAC,IAAI,CAAC,sBAAsB,CAAC,QAAQ,CAAC,CAAC,CAAC;IACrD,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,aAAa,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;IACvC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,aAAa,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;IAC7D,aAAa,CAAC,IAAI,CAAC,mBAAmB,aAAa,EAAE,CAAC,CAAC;IACvD,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvB,aAAa,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;IACvD,aAAa,CAAC,IAAI,CAAC,iBAAiB,aAAa,EAAE,CAAC,CAAC;IAErD,OAAO,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC,CAAC;AAEF,+CAA+C;AAC/C,MAAM,wBAAwB,GAAG,IAAI,CAAC;IACrC,WAAW,EACV,wFAAwF;IACzF,WAAW,EAAE,UAAU,CAAqB;QAC3C,IAAI,EAAE,QAAQ;QACd,UAAU,EAAE;YACX,QAAQ,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,IAAI,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC;gBACzD,WAAW,EACV,sIAAsI;aACvI;YACD,WAAW,EAAE;gBACZ,IAAI,EAAE,QAAQ;gBACd,WAAW,EACV,qFAAqF;aACtF;YACD,QAAQ,EAAE;gBACT,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,uDAAuD;aACpE;SACD;QACD,QAAQ,EAAE,CAAC,UAAU,EAAE,aAAa,CAAC;KACrC,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,EAAE;QACjC,OAAO,MAAM,uBAAuB,CAAC,IAAI,CAAC,CAAC;IAC5C,CAAC;CACD,CAAC,CAAC;AAEH,sBAAsB;AACtB,MAAM,yBAAyB,GAAG,KAAK,CAAC,IAAI,CAC3C,CAAC,EAAC,IAAI,EAAE,MAAM,EAA8C,EAAE,EAAE;IAC/D,MAAM,YAAY,GAAG,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;IACpD,IAAI,CAAC,YAAY,EAAE,CAAC;QACnB,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAC;IAC7C,CAAC;IACD,MAAM,EAAC,MAAM,EAAC,GAAG,YAAY,CAAC;IAE9B,2BAA2B;IAC3B,IAAI,eAAe,GAAG,EAAE,CAAC;IACzB,IAAI,QAAQ,GAAG,EAAE,CAAC;IAElB,IAAI,MAAM,EAAE,CAAC;QACZ,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAC/B,yCAAyC,CACzC,CAAC;QACF,IAAI,WAAW;YAAE,eAAe,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;QAElD,MAAM,aAAa,GAAG,MAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;QAC/D,IAAI,aAAa;YAAE,QAAQ,GAAG,aAAa,CAAC,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,MAAM,cAAc,GAAG,CACtB,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aAC1B,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,mCAA2B,EAEnD,MAAC,GAAG,eACH,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,uBAAe,EAC5C,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,OAAO,YAAG,IAAI,CAAC,QAAQ,GAAQ,IAC9C,EAEL,IAAI,CAAC,QAAQ,IAAI,CACjB,MAAC,GAAG,eACH,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,yBAAiB,EAC9C,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,YAAG,IAAI,CAAC,QAAQ,GAAQ,IAC3C,CACN,EAEA,eAAe,IAAI,CACnB,MAAC,GAAG,eACH,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,yBAAiB,EAC9C,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,YAAG,eAAe,GAAQ,IAC7C,CACN,EAEA,QAAQ,IAAI,CACZ,MAAC,GAAG,eACH,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,SAAS,2BAAmB,EAChD,KAAC,IAAI,IAAC,KAAK,EAAE,MAAM,CAAC,IAAI,YAAG,QAAQ,GAAQ,IACtC,CACN,IACI,CACN,CAAC;IAEF,OAAO,KAAC,WAAW,IAAC,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,IAAI,GAAI,CAAC;AAChE,CAAC,CACD,CAAC;AAEF,MAAM,SAAS,GAAG,CACjB,IAAwB,EACxB,MAAe,EACM,EAAE;IACvB,OAAO,KAAC,yBAAyB,IAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,GAAI,CAAC;AAClE,CAAC,CAAC;AAEF,MAAM,SAAS,GAAG,KAAK,EACtB,IAAwB,EACiC,EAAE;IAC3D,6BAA6B;IAC7B,IAAI,CAAC,CAAC,MAAM,eAAe,EAAE,CAAC,EAAE,CAAC;QAChC,OAAO;YACN,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,6BAA6B;SACpC,CAAC;IACH,CAAC;IAED,qBAAqB;IACrB,MAAM,UAAU,GAAG,CAAC,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACvE,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;QACzC,OAAO;YACN,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,0CAA0C,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SACxE,CAAC;IACH,CAAC;IAED,uBAAuB;IACvB,IAAI,CAAC,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7D,OAAO;YACN,KAAK,EAAE,KAAK;YACZ,KAAK,EAAE,+CAA+C;SACtD,CAAC;IACH,CAAC;IAED,OAAO,EAAC,KAAK,EAAE,IAAI,EAAC,CAAC;AACtB,CAAC,CAAC;AAEF,oDAAoD;AACpD,MAAM,CAAC,MAAM,oBAAoB,GAAwB;IACxD,IAAI,EAAE,oBAA6B;IACnC,IAAI,EAAE,wBAAwB;IAC9B,SAAS;IACT,SAAS;CACT,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Git Create PR Tool
|
|
3
|
-
*
|
|
4
|
-
* Generates pull request templates with auto-generated descriptions,
|
|
5
|
-
* test plans, and reviewer suggestions based on commit history.
|
|
6
|
-
*/
|
|
7
|
-
import type { NanocoderToolExport } from '../../types/core.js';
|
|
8
|
-
export declare const gitCreatePRTool: NanocoderToolExport;
|
|
9
|
-
//# sourceMappingURL=git-create-pr.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"git-create-pr.d.ts","sourceRoot":"","sources":["../../../source/tools/git/git-create-pr.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,OAAO,KAAK,EAAC,mBAAmB,EAAC,MAAM,cAAc,CAAC;AA4hBtD,eAAO,MAAM,eAAe,EAAE,mBAK7B,CAAC"}
|