@blackbox_ai/blackbox-cli 0.0.9 → 0.8.2
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/README.md +22 -196
- package/dist/index.js +8 -1
- package/dist/index.js.map +1 -1
- package/dist/package.json +11 -2
- package/dist/src/built-in-extensions/conductor/README.md +242 -0
- package/dist/src/built-in-extensions/conductor/blackbox-extension.json +5 -0
- package/dist/src/built-in-extensions/conductor/commands/conductor/implement.toml +170 -0
- package/dist/src/built-in-extensions/conductor/commands/conductor/newTrack.toml +142 -0
- package/dist/src/built-in-extensions/conductor/commands/conductor/revert.toml +122 -0
- package/dist/src/built-in-extensions/conductor/commands/conductor/setup.toml +424 -0
- package/dist/src/built-in-extensions/conductor/commands/conductor/status.toml +57 -0
- package/dist/src/built-in-extensions/conductor/templates/code_styleguides/general.md +23 -0
- package/dist/src/built-in-extensions/conductor/templates/code_styleguides/go.md +48 -0
- package/dist/src/built-in-extensions/conductor/templates/code_styleguides/html-css.md +49 -0
- package/dist/src/built-in-extensions/conductor/templates/code_styleguides/javascript.md +51 -0
- package/dist/src/built-in-extensions/conductor/templates/code_styleguides/python.md +37 -0
- package/dist/src/built-in-extensions/conductor/templates/code_styleguides/typescript.md +43 -0
- package/dist/src/built-in-extensions/conductor/templates/workflow.md +333 -0
- package/dist/src/built-in-extensions-data.d.ts +15 -0
- package/dist/src/built-in-extensions-data.js +61 -0
- package/dist/src/built-in-extensions-data.js.map +1 -0
- package/dist/src/commands/configure/ConfigureUI.d.ts +5 -2
- package/dist/src/commands/configure/ConfigureUI.js +181 -41
- package/dist/src/commands/configure/ConfigureUI.js.map +1 -1
- package/dist/src/commands/configure/index.js +35 -3
- package/dist/src/commands/configure/index.js.map +1 -1
- package/dist/src/commands/configure.js +20 -3
- package/dist/src/commands/configure.js.map +1 -1
- package/dist/src/commands/extensions/enable.js +1 -1
- package/dist/src/commands/extensions/enable.js.map +1 -1
- package/dist/src/commands/extensions/examples/context/CONTEXT.md +16 -0
- package/dist/src/commands/extensions/examples/context/blackbox-extension.json +5 -0
- package/dist/src/commands/extensions/examples/custom-commands/blackbox-extension.json +4 -0
- package/dist/src/commands/extensions/examples/custom-commands/commands/deploy.toml +12 -0
- package/dist/src/commands/extensions/examples/exclude-tools/README.md +28 -0
- package/dist/src/commands/extensions/examples/exclude-tools/blackbox-extension.json +5 -0
- package/dist/src/commands/extensions/install.d.ts +6 -2
- package/dist/src/commands/extensions/install.js +109 -15
- package/dist/src/commands/extensions/install.js.map +1 -1
- package/dist/src/commands/extensions/link.d.ts +12 -0
- package/dist/src/commands/extensions/link.js +53 -0
- package/dist/src/commands/extensions/link.js.map +1 -0
- package/dist/src/commands/extensions/list.js +2 -2
- package/dist/src/commands/extensions/list.js.map +1 -1
- package/dist/src/commands/extensions/new.d.ts +13 -0
- package/dist/src/commands/extensions/new.js +145 -0
- package/dist/src/commands/extensions/new.js.map +1 -0
- package/dist/src/commands/extensions/settings.d.ts +18 -0
- package/dist/src/commands/extensions/settings.js +98 -0
- package/dist/src/commands/extensions/settings.js.map +1 -0
- package/dist/src/commands/extensions/update.d.ts +2 -1
- package/dist/src/commands/extensions/update.js +59 -10
- package/dist/src/commands/extensions/update.js.map +1 -1
- package/dist/src/commands/extensions/validate.d.ts +12 -0
- package/dist/src/commands/extensions/validate.js +72 -0
- package/dist/src/commands/extensions/validate.js.map +1 -0
- package/dist/src/commands/extensions.js +10 -1
- package/dist/src/commands/extensions.js.map +1 -1
- package/dist/src/commands/mcp/add.d.ts +11 -0
- package/dist/src/commands/mcp/add.js +61 -7
- package/dist/src/commands/mcp/add.js.map +1 -1
- package/dist/src/commands/update.d.ts +7 -0
- package/dist/src/commands/update.js +103 -0
- package/dist/src/commands/update.js.map +1 -0
- package/dist/src/commands/voice.d.ts +7 -0
- package/dist/src/commands/voice.js +510 -0
- package/dist/src/commands/voice.js.map +1 -0
- package/dist/src/config/auth.d.ts +4 -2
- package/dist/src/config/auth.js +36 -1
- package/dist/src/config/auth.js.map +1 -1
- package/dist/src/config/config.d.ts +7 -1
- package/dist/src/config/config.js +68 -9
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/extension.d.ts +6 -1
- package/dist/src/config/extension.js +137 -11
- package/dist/src/config/extension.js.map +1 -1
- package/dist/src/config/extensions/github.d.ts +48 -0
- package/dist/src/config/extensions/github.js +308 -0
- package/dist/src/config/extensions/github.js.map +1 -0
- package/dist/src/config/keyBindings.d.ts +1 -0
- package/dist/src/config/keyBindings.js +3 -0
- package/dist/src/config/keyBindings.js.map +1 -1
- package/dist/src/config/modelFetcher.js +14 -39
- package/dist/src/config/modelFetcher.js.map +1 -1
- package/dist/src/config/settings.js +64 -0
- package/dist/src/config/settings.js.map +1 -1
- package/dist/src/config/settingsSchema.d.ts +351 -0
- package/dist/src/config/settingsSchema.js +351 -0
- package/dist/src/config/settingsSchema.js.map +1 -1
- package/dist/src/config/voice.d.ts +31 -0
- package/dist/src/config/voice.js +82 -0
- package/dist/src/config/voice.js.map +1 -0
- package/dist/src/encrypt/attestation.d.ts +5 -0
- package/dist/src/encrypt/attestation.js +100 -0
- package/dist/src/encrypt/attestation.js.map +1 -0
- package/dist/src/encrypt/bridge.d.ts +30 -0
- package/dist/src/encrypt/bridge.js +32 -0
- package/dist/src/encrypt/bridge.js.map +1 -0
- package/dist/src/encrypt/client.d.ts +14 -0
- package/dist/src/encrypt/client.js +133 -0
- package/dist/src/encrypt/client.js.map +1 -0
- package/dist/src/encrypt/config.d.ts +26 -0
- package/dist/src/encrypt/config.js +51 -0
- package/dist/src/encrypt/config.js.map +1 -0
- package/dist/src/encrypt/crypto-utils.d.ts +57 -0
- package/dist/src/encrypt/crypto-utils.js +257 -0
- package/dist/src/encrypt/crypto-utils.js.map +1 -0
- package/dist/src/encrypt/index.d.ts +12 -0
- package/dist/src/encrypt/index.js +13 -0
- package/dist/src/encrypt/index.js.map +1 -0
- package/dist/src/encrypt/retry-utils.d.ts +20 -0
- package/dist/src/encrypt/retry-utils.js +60 -0
- package/dist/src/encrypt/retry-utils.js.map +1 -0
- package/dist/src/encrypt/sessions.d.ts +17 -0
- package/dist/src/encrypt/sessions.js +221 -0
- package/dist/src/encrypt/sessions.js.map +1 -0
- package/dist/src/encrypt/streaming-client.d.ts +29 -0
- package/dist/src/encrypt/streaming-client.js +226 -0
- package/dist/src/encrypt/streaming-client.js.map +1 -0
- package/dist/src/encrypt/types.d.ts +81 -0
- package/dist/src/encrypt/types.js +2 -0
- package/dist/src/encrypt/types.js.map +1 -0
- package/dist/src/gemini.d.ts +1 -1
- package/dist/src/gemini.js +57 -27
- package/dist/src/gemini.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +3 -3
- package/dist/src/generated/git-commit.js +3 -3
- package/dist/src/nonInteractiveCli.d.ts +4 -0
- package/dist/src/nonInteractiveCli.js +418 -5
- package/dist/src/nonInteractiveCli.js.map +1 -1
- package/dist/src/on-demand-extensions/README.md +266 -0
- package/dist/src/on-demand-extensions/git-helper/README.md +16 -0
- package/dist/src/on-demand-extensions/git-helper/blackbox-extension.json +5 -0
- package/dist/src/on-demand-extensions/git-helper/commands/git/branch-cleanup.toml +18 -0
- package/dist/src/on-demand-extensions/git-helper/commands/git/smart-commit.toml +22 -0
- package/dist/src/on-demand-extensions/greet/README.md +76 -0
- package/dist/src/on-demand-extensions/greet/blackbox-extension.json +5 -0
- package/dist/src/on-demand-extensions/greet/commands/greet/hello.toml +9 -0
- package/dist/src/on-demand-extensions/registry.json +251 -0
- package/dist/src/services/BuiltinCommandLoader.js +20 -2
- package/dist/src/services/BuiltinCommandLoader.js.map +1 -1
- package/dist/src/services/EncryptedContentGenerator.d.ts +63 -0
- package/dist/src/services/EncryptedContentGenerator.js +426 -0
- package/dist/src/services/EncryptedContentGenerator.js.map +1 -0
- package/dist/src/services/McpCommandLoader.d.ts +24 -0
- package/dist/src/services/McpCommandLoader.js +50 -0
- package/dist/src/services/McpCommandLoader.js.map +1 -0
- package/dist/src/services/McpPromptLoader.js +17 -2
- package/dist/src/services/McpPromptLoader.js.map +1 -1
- package/dist/src/services/ReleaseNotesCache.d.ts +57 -0
- package/dist/src/services/ReleaseNotesCache.js +186 -0
- package/dist/src/services/ReleaseNotesCache.js.map +1 -0
- package/dist/src/services/elevenLabsErrors.d.ts +65 -0
- package/dist/src/services/elevenLabsErrors.js +233 -0
- package/dist/src/services/elevenLabsErrors.js.map +1 -0
- package/dist/src/services/elevenLabsService.d.ts +62 -0
- package/dist/src/services/elevenLabsService.js +186 -0
- package/dist/src/services/elevenLabsService.js.map +1 -0
- package/dist/src/services/elevenLabsStreamingService.d.ts +59 -0
- package/dist/src/services/elevenLabsStreamingService.js +202 -0
- package/dist/src/services/elevenLabsStreamingService.js.map +1 -0
- package/dist/src/services/elevenLabsTokenService.d.ts +21 -0
- package/dist/src/services/elevenLabsTokenService.js +42 -0
- package/dist/src/services/elevenLabsTokenService.js.map +1 -0
- package/dist/src/services/voiceInputHandler.d.ts +26 -0
- package/dist/src/services/voiceInputHandler.js +209 -0
- package/dist/src/services/voiceInputHandler.js.map +1 -0
- package/dist/src/services/voiceRecordingService.d.ts +69 -0
- package/dist/src/services/voiceRecordingService.js +397 -0
- package/dist/src/services/voiceRecordingService.js.map +1 -0
- package/dist/src/ui/App.d.ts +1 -0
- package/dist/src/ui/App.js +412 -63
- package/dist/src/ui/App.js.map +1 -1
- package/dist/src/ui/commands/browseExtensionsCommand.d.ts +7 -0
- package/dist/src/ui/commands/browseExtensionsCommand.js +16 -0
- package/dist/src/ui/commands/browseExtensionsCommand.js.map +1 -0
- package/dist/src/ui/commands/chatCommand.js +356 -16
- package/dist/src/ui/commands/chatCommand.js.map +1 -1
- package/dist/src/ui/commands/dbCommand.d.ts +7 -0
- package/dist/src/ui/commands/dbCommand.js +37 -0
- package/dist/src/ui/commands/dbCommand.js.map +1 -0
- package/dist/src/ui/commands/docsCommand.js +1 -1
- package/dist/src/ui/commands/docsCommand.js.map +1 -1
- package/dist/src/ui/commands/mcpCommand.js +3 -2
- package/dist/src/ui/commands/mcpCommand.js.map +1 -1
- package/dist/src/ui/commands/mcpInvokeCommand.d.ts +16 -0
- package/dist/src/ui/commands/mcpInvokeCommand.js +263 -0
- package/dist/src/ui/commands/mcpInvokeCommand.js.map +1 -0
- package/dist/src/ui/commands/modelCommand.js +79 -5
- package/dist/src/ui/commands/modelCommand.js.map +1 -1
- package/dist/src/ui/commands/multiAgentCommand.d.ts +7 -0
- package/dist/src/ui/commands/multiAgentCommand.js +833 -0
- package/dist/src/ui/commands/multiAgentCommand.js.map +1 -0
- package/dist/src/ui/commands/multiAgentConfigureCommand.d.ts +7 -0
- package/dist/src/ui/commands/multiAgentConfigureCommand.js +17 -0
- package/dist/src/ui/commands/multiAgentConfigureCommand.js.map +1 -0
- package/dist/src/ui/commands/quitCommand.js +71 -2
- package/dist/src/ui/commands/quitCommand.js.map +1 -1
- package/dist/src/ui/commands/releasesCommand.d.ts +7 -0
- package/dist/src/ui/commands/releasesCommand.js +16 -0
- package/dist/src/ui/commands/releasesCommand.js.map +1 -0
- package/dist/src/ui/commands/setupGithubCommand.js.map +1 -1
- package/dist/src/ui/commands/shellPermissionsCommand.d.ts +7 -0
- package/dist/src/ui/commands/shellPermissionsCommand.js +109 -0
- package/dist/src/ui/commands/shellPermissionsCommand.js.map +1 -0
- package/dist/src/ui/commands/skillCommand.d.ts +7 -0
- package/dist/src/ui/commands/skillCommand.js +240 -0
- package/dist/src/ui/commands/skillCommand.js.map +1 -0
- package/dist/src/ui/commands/statsCommand.js +243 -1
- package/dist/src/ui/commands/statsCommand.js.map +1 -1
- package/dist/src/ui/commands/tasksCommand.d.ts +7 -0
- package/dist/src/ui/commands/tasksCommand.js +535 -0
- package/dist/src/ui/commands/tasksCommand.js.map +1 -0
- package/dist/src/ui/commands/toolPermissionsCommand.d.ts +7 -0
- package/dist/src/ui/commands/toolPermissionsCommand.js +408 -0
- package/dist/src/ui/commands/toolPermissionsCommand.js.map +1 -0
- package/dist/src/ui/commands/types.d.ts +10 -2
- package/dist/src/ui/commands/types.js.map +1 -1
- package/dist/src/ui/commands/voiceCommand.d.ts +7 -0
- package/dist/src/ui/commands/voiceCommand.js +525 -0
- package/dist/src/ui/commands/voiceCommand.js.map +1 -0
- package/dist/src/ui/components/AuthDialog.d.ts +5 -4
- package/dist/src/ui/components/AuthDialog.js +89 -52
- package/dist/src/ui/components/AuthDialog.js.map +1 -1
- package/dist/src/ui/components/AuthInProgress.js +3 -1
- package/dist/src/ui/components/AuthInProgress.js.map +1 -1
- package/dist/src/ui/components/ExtensionsDialog.d.ts +11 -0
- package/dist/src/ui/components/ExtensionsDialog.js +303 -0
- package/dist/src/ui/components/ExtensionsDialog.js.map +1 -0
- package/dist/src/ui/components/GenericProviderKeyPrompt.d.ts +3 -1
- package/dist/src/ui/components/GenericProviderKeyPrompt.js +17 -4
- package/dist/src/ui/components/GenericProviderKeyPrompt.js.map +1 -1
- package/dist/src/ui/components/Header.js +10 -1
- package/dist/src/ui/components/Header.js.map +1 -1
- package/dist/src/ui/components/HistoryBrowserDialog.d.ts +15 -0
- package/dist/src/ui/components/HistoryBrowserDialog.js +166 -0
- package/dist/src/ui/components/HistoryBrowserDialog.js.map +1 -0
- package/dist/src/ui/components/HistoryItemDisplay.js +13 -1
- package/dist/src/ui/components/HistoryItemDisplay.js.map +1 -1
- package/dist/src/ui/components/InputPrompt.js +22 -8
- package/dist/src/ui/components/InputPrompt.js.map +1 -1
- package/dist/src/ui/components/LoadingIndicator.d.ts +4 -0
- package/dist/src/ui/components/LoadingIndicator.js +16 -4
- package/dist/src/ui/components/LoadingIndicator.js.map +1 -1
- package/dist/src/ui/components/LoadingIndicator.test.js +108 -16
- package/dist/src/ui/components/LoadingIndicator.test.js.map +1 -1
- package/dist/src/ui/components/ModelSelectionDialog.d.ts +2 -0
- package/dist/src/ui/components/ModelSelectionDialog.js +33 -4
- package/dist/src/ui/components/ModelSelectionDialog.js.map +1 -1
- package/dist/src/ui/components/ModelSelectionDialog.test.js +41 -4
- package/dist/src/ui/components/ModelSelectionDialog.test.js.map +1 -1
- package/dist/src/ui/components/ReleaseNotesDialog.d.ts +23 -0
- package/dist/src/ui/components/ReleaseNotesDialog.js +150 -0
- package/dist/src/ui/components/ReleaseNotesDialog.js.map +1 -0
- package/dist/src/ui/components/ReleaseNotesDisplay.d.ts +18 -0
- package/dist/src/ui/components/ReleaseNotesDisplay.js +14 -0
- package/dist/src/ui/components/ReleaseNotesDisplay.js.map +1 -0
- package/dist/src/ui/components/SessionSummaryDisplay.d.ts +2 -0
- package/dist/src/ui/components/SessionSummaryDisplay.js +1 -1
- package/dist/src/ui/components/SessionSummaryDisplay.js.map +1 -1
- package/dist/src/ui/components/SettingsDialog.d.ts +3 -1
- package/dist/src/ui/components/SettingsDialog.js +17 -7
- package/dist/src/ui/components/SettingsDialog.js.map +1 -1
- package/dist/src/ui/components/ShellConfirmationDialog.d.ts +2 -0
- package/dist/src/ui/components/ShellConfirmationDialog.js +7 -3
- package/dist/src/ui/components/ShellConfirmationDialog.js.map +1 -1
- package/dist/src/ui/components/StatsDisplay.d.ts +2 -0
- package/dist/src/ui/components/StatsDisplay.js +92 -7
- package/dist/src/ui/components/StatsDisplay.js.map +1 -1
- package/dist/src/ui/components/SuggestionsDisplay.js +6 -1
- package/dist/src/ui/components/SuggestionsDisplay.js.map +1 -1
- package/dist/src/ui/components/ThemeDialog.d.ts +3 -1
- package/dist/src/ui/components/ThemeDialog.js +5 -2
- package/dist/src/ui/components/ThemeDialog.js.map +1 -1
- package/dist/src/ui/components/Tips.js +1 -4
- package/dist/src/ui/components/Tips.js.map +1 -1
- package/dist/src/ui/components/TodoListDialog.d.ts +13 -0
- package/dist/src/ui/components/TodoListDialog.js +29 -0
- package/dist/src/ui/components/TodoListDialog.js.map +1 -0
- package/dist/src/ui/components/TodoListDialog.test.d.ts +6 -0
- package/dist/src/ui/components/TodoListDialog.test.js +60 -0
- package/dist/src/ui/components/TodoListDialog.test.js.map +1 -0
- package/dist/src/ui/components/VoiceConfigDialog.d.ts +17 -0
- package/dist/src/ui/components/VoiceConfigDialog.js +47 -0
- package/dist/src/ui/components/VoiceConfigDialog.js.map +1 -0
- package/dist/src/ui/components/messages/GeminiMessage.js +4 -0
- package/dist/src/ui/components/messages/GeminiMessage.js.map +1 -1
- package/dist/src/ui/components/messages/GeminiMessageContent.js +4 -0
- package/dist/src/ui/components/messages/GeminiMessageContent.js.map +1 -1
- package/dist/src/ui/components/messages/ToolConfirmationMessage.d.ts +2 -0
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js +96 -9
- package/dist/src/ui/components/messages/ToolConfirmationMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolGroupMessage.test.js +3 -3
- package/dist/src/ui/components/messages/ToolGroupMessage.test.js.map +1 -1
- package/dist/src/ui/components/messages/ToolMessage.js +1 -1
- package/dist/src/ui/components/messages/ToolMessage.js.map +1 -1
- package/dist/src/ui/components/messages/ToolMessage.test.js +9 -12
- package/dist/src/ui/components/messages/ToolMessage.test.js.map +1 -1
- package/dist/src/ui/components/multiagent/MultiAgentConfigDialog.d.ts +25 -0
- package/dist/src/ui/components/multiagent/MultiAgentConfigDialog.js +179 -0
- package/dist/src/ui/components/multiagent/MultiAgentConfigDialog.js.map +1 -0
- package/dist/src/ui/components/shared/RadioButtonSelect.d.ts +3 -1
- package/dist/src/ui/components/shared/RadioButtonSelect.js +57 -18
- package/dist/src/ui/components/shared/RadioButtonSelect.js.map +1 -1
- package/dist/src/ui/components/shared/TextInput.d.ts +2 -1
- package/dist/src/ui/components/shared/TextInput.js +5 -2
- package/dist/src/ui/components/shared/TextInput.js.map +1 -1
- package/dist/src/ui/components/subagents/runtime/AgentExecutionDisplay.js +3 -3
- package/dist/src/ui/components/subagents/runtime/AgentExecutionDisplay.js.map +1 -1
- package/dist/src/ui/constants.d.ts +3 -3
- package/dist/src/ui/constants.js +3 -3
- package/dist/src/ui/constants.js.map +1 -1
- package/dist/src/ui/contexts/SessionContext.d.ts +6 -0
- package/dist/src/ui/contexts/SessionContext.js +24 -2
- package/dist/src/ui/contexts/SessionContext.js.map +1 -1
- package/dist/src/ui/hooks/atCommandProcessor.js +139 -57
- package/dist/src/ui/hooks/atCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/slashCommandProcessor.d.ts +2 -1
- package/dist/src/ui/hooks/slashCommandProcessor.js +189 -17
- package/dist/src/ui/hooks/slashCommandProcessor.js.map +1 -1
- package/dist/src/ui/hooks/useAdaptiveStream.d.ts +42 -0
- package/dist/src/ui/hooks/useAdaptiveStream.js +31 -0
- package/dist/src/ui/hooks/useAdaptiveStream.js.map +1 -0
- package/dist/src/ui/hooks/useAtCompletion.js +20 -4
- package/dist/src/ui/hooks/useAtCompletion.js.map +1 -1
- package/dist/src/ui/hooks/useAuthCommand.d.ts +2 -2
- package/dist/src/ui/hooks/useAuthCommand.js +99 -5
- package/dist/src/ui/hooks/useAuthCommand.js.map +1 -1
- package/dist/src/ui/hooks/useCommandCompletion.js +14 -10
- package/dist/src/ui/hooks/useCommandCompletion.js.map +1 -1
- package/dist/src/ui/hooks/useDialogClose.d.ts +10 -0
- package/dist/src/ui/hooks/useDialogClose.js +25 -0
- package/dist/src/ui/hooks/useDialogClose.js.map +1 -1
- package/dist/src/ui/hooks/useDialogCloseAnimation.d.ts +22 -0
- package/dist/src/ui/hooks/useDialogCloseAnimation.js +68 -0
- package/dist/src/ui/hooks/useDialogCloseAnimation.js.map +1 -0
- package/dist/src/ui/hooks/useEncryptedStream.d.ts +22 -0
- package/dist/src/ui/hooks/useEncryptedStream.js +378 -0
- package/dist/src/ui/hooks/useEncryptedStream.js.map +1 -0
- package/dist/src/ui/hooks/useExtensionsDialog.d.ts +10 -0
- package/dist/src/ui/hooks/useExtensionsDialog.js +21 -0
- package/dist/src/ui/hooks/useExtensionsDialog.js.map +1 -0
- package/dist/src/ui/hooks/useGeminiStream.js +4 -2
- package/dist/src/ui/hooks/useGeminiStream.js.map +1 -1
- package/dist/src/ui/hooks/useGitBranchName.test.js.map +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.d.ts +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.js +3 -2
- package/dist/src/ui/hooks/useLoadingIndicator.js.map +1 -1
- package/dist/src/ui/hooks/useLoadingIndicator.test.js +27 -5
- package/dist/src/ui/hooks/useLoadingIndicator.test.js.map +1 -1
- package/dist/src/ui/hooks/useMultiAgentConfigCommand.d.ts +10 -0
- package/dist/src/ui/hooks/useMultiAgentConfigCommand.js +21 -0
- package/dist/src/ui/hooks/useMultiAgentConfigCommand.js.map +1 -0
- package/dist/src/ui/hooks/useReleasesDialog.d.ts +20 -0
- package/dist/src/ui/hooks/useReleasesDialog.js +214 -0
- package/dist/src/ui/hooks/useReleasesDialog.js.map +1 -0
- package/dist/src/ui/hooks/useSlashCompletion.js +10 -8
- package/dist/src/ui/hooks/useSlashCompletion.js.map +1 -1
- package/dist/src/ui/hooks/useTodoList.d.ts +17 -0
- package/dist/src/ui/hooks/useTodoList.js +51 -0
- package/dist/src/ui/hooks/useTodoList.js.map +1 -0
- package/dist/src/ui/keyMatchers.test.js +6 -0
- package/dist/src/ui/keyMatchers.test.js.map +1 -1
- package/dist/src/ui/themes/blackbox-dark.js +1 -1
- package/dist/src/ui/themes/blackbox-dark.js.map +1 -1
- package/dist/src/ui/themes/blackbox-light.js +1 -1
- package/dist/src/ui/themes/blackbox-light.js.map +1 -1
- package/dist/src/ui/types.d.ts +15 -2
- package/dist/src/ui/types.js +1 -0
- package/dist/src/ui/types.js.map +1 -1
- package/dist/src/ui/utils/computeStats.d.ts +25 -1
- package/dist/src/ui/utils/computeStats.js +58 -1
- package/dist/src/ui/utils/computeStats.js.map +1 -1
- package/dist/src/ui/utils/updateCheck.js +37 -54
- package/dist/src/ui/utils/updateCheck.js.map +1 -1
- package/dist/src/utils/backgroundUpdateCheck.d.ts +15 -0
- package/dist/src/utils/backgroundUpdateCheck.js +48 -0
- package/dist/src/utils/backgroundUpdateCheck.js.map +1 -0
- package/dist/src/utils/gitAutoDetect.d.ts +16 -0
- package/dist/src/utils/gitAutoDetect.js +45 -0
- package/dist/src/utils/gitAutoDetect.js.map +1 -0
- package/dist/src/utils/installationInfo.d.ts +1 -0
- package/dist/src/utils/installationInfo.js +24 -4
- package/dist/src/utils/installationInfo.js.map +1 -1
- package/dist/src/utils/preLaunchUpdateCheck.d.ts +17 -0
- package/dist/src/utils/preLaunchUpdateCheck.js +75 -0
- package/dist/src/utils/preLaunchUpdateCheck.js.map +1 -0
- package/dist/src/utils/version.js +12 -1
- package/dist/src/utils/version.js.map +1 -1
- package/dist/src/utils/versionStorage.d.ts +50 -0
- package/dist/src/utils/versionStorage.js +224 -0
- package/dist/src/utils/versionStorage.js.map +1 -0
- package/dist/src/validateNonInterActiveAuth.js +10 -3
- package/dist/src/validateNonInterActiveAuth.js.map +1 -1
- package/dist/src/virtual-extensions.d.ts +14 -0
- package/dist/src/virtual-extensions.js +56 -0
- package/dist/src/virtual-extensions.js.map +1 -0
- package/dist/src/zed-integration/fileSystemService.d.ts +3 -3
- package/dist/src/zed-integration/fileSystemService.js +5 -7
- package/dist/src/zed-integration/fileSystemService.js.map +1 -1
- package/dist/src/zed-integration/zedIntegration.js +62 -17
- package/dist/src/zed-integration/zedIntegration.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +11 -2
- package/dist/src/utils/handleAutoUpdate.d.ts +0 -11
- package/dist/src/utils/handleAutoUpdate.js +0 -102
- package/dist/src/utils/handleAutoUpdate.js.map +0 -1
- package/dist/src/utils/updateEventEmitter.d.ts +0 -11
- package/dist/src/utils/updateEventEmitter.js +0 -12
- package/dist/src/utils/updateEventEmitter.js.map +0 -1
- package/dist/src/zed-integration/acp.d.ts +0 -63
- package/dist/src/zed-integration/acp.js +0 -226
- package/dist/src/zed-integration/acp.js.map +0 -1
- package/dist/src/zed-integration/schema.d.ts +0 -11782
- package/dist/src/zed-integration/schema.js +0 -311
- package/dist/src/zed-integration/schema.js.map +0 -1
package/README.md
CHANGED
|
@@ -2,52 +2,11 @@
|
|
|
2
2
|
|
|
3
3
|
<div align="center">
|
|
4
4
|
|
|
5
|
-

|
|
6
6
|
|
|
7
|
-
[](https://www.npmjs.com/package/@blackbox_ai/blackbox-cli)
|
|
8
|
-
[](./LICENSE)
|
|
9
|
-
[](https://nodejs.org/)
|
|
10
|
-
[](https://www.npmjs.com/package/@blackbox_ai/blackbox-cli)
|
|
11
7
|
|
|
12
|
-
**AI-powered command-line workflow tool for developers**
|
|
13
|
-
|
|
14
|
-
[Installation](#installation) • [Quick Start](#quick-start) • [Features](#key-features) • [Documentation](./docs/) • [Contributing](./CONTRIBUTING.md)
|
|
15
|
-
|
|
16
|
-
</div>
|
|
17
|
-
|
|
18
|
-
<div align="center">
|
|
19
|
-
|
|
20
|
-
<a href="https://blackbox_ai.github.io/blackbox-cli-docs/de/">Deutsch</a> |
|
|
21
|
-
<a href="https://blackbox_ai.github.io/blackbox-cli-docs/fr">français</a> |
|
|
22
|
-
<a href="https://blackbox_ai.github.io/blackbox-cli-docs/ja/">日本語</a> |
|
|
23
|
-
<a href="https://blackbox_ai.github.io/blackbox-cli-docs/ru">Русский</a> |
|
|
24
|
-
<a href="https://blackbox_ai.github.io/blackbox-cli-docs/zh/">中文</a>
|
|
25
|
-
|
|
26
8
|
</div>
|
|
27
9
|
|
|
28
|
-
Blackbox Code is a powerful command-line AI workflow tool adapted from [**Gemini CLI**](https://github.com/google-gemini/gemini-cli) ([details](./README.gemini.md)), specifically optimized for [Blackbox3-Coder](https://github.com/llmcod/Blackbox3-Coder) models. It enhances your development workflow with advanced code understanding, automated tasks, and intelligent assistance.
|
|
29
|
-
|
|
30
|
-
## 💡 Free Options Available
|
|
31
|
-
|
|
32
|
-
Get started with Blackbox Code at no cost using any of these free options:
|
|
33
|
-
|
|
34
|
-
### 🔥 Blackbox OAuth (Recommended)
|
|
35
|
-
|
|
36
|
-
- **2,000 requests per day** with no token limits
|
|
37
|
-
- **60 requests per minute** rate limit
|
|
38
|
-
- Simply run `blackbox` and authenticate with your blackbox.ai account
|
|
39
|
-
- Automatic credential management and refresh
|
|
40
|
-
- Use `/auth` command to switch to Blackbox OAuth if you have initialized with OpenAI compatible mode
|
|
41
|
-
|
|
42
|
-
### 🌏 Regional Free Tiers
|
|
43
|
-
|
|
44
|
-
- **Mainland China**: ModelScope offers **2,000 free API calls per day**
|
|
45
|
-
- **International**: OpenRouter provides **up to 1,000 free API calls per day** worldwide
|
|
46
|
-
|
|
47
|
-
For detailed setup instructions, see [Authorization](#authorization).
|
|
48
|
-
|
|
49
|
-
> [!WARNING]
|
|
50
|
-
> **Token Usage Notice**: Blackbox Code may issue multiple API calls per cycle, resulting in higher token usage (similar to Claude Code). We're actively optimizing API efficiency.
|
|
51
10
|
|
|
52
11
|
## Key Features
|
|
53
12
|
|
|
@@ -66,27 +25,16 @@ Ensure you have [Node.js version 20](https://nodejs.org/en/download) or higher i
|
|
|
66
25
|
curl -qL https://www.npmjs.com/install.sh | sh
|
|
67
26
|
```
|
|
68
27
|
|
|
69
|
-
### Install from npm
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
npm install -g @blackbox_ai/blackbox-cli@latest
|
|
73
|
-
blackbox --version
|
|
74
|
-
```
|
|
75
28
|
|
|
76
29
|
### Install from source
|
|
77
30
|
|
|
78
31
|
```bash
|
|
79
|
-
git clone https://github.com/
|
|
80
|
-
cd
|
|
32
|
+
git clone https://github.com/blackboxaicode/cli.git
|
|
33
|
+
cd cli
|
|
81
34
|
npm install
|
|
82
35
|
npm install -g .
|
|
83
36
|
```
|
|
84
37
|
|
|
85
|
-
### Install globally with Homebrew (macOS/Linux)
|
|
86
|
-
|
|
87
|
-
```bash
|
|
88
|
-
brew install blackbox-cli
|
|
89
|
-
```
|
|
90
38
|
|
|
91
39
|
## Quick Start
|
|
92
40
|
|
|
@@ -120,7 +68,7 @@ Create or edit `.blackboxcli/settings.json` in your home directory:
|
|
|
120
68
|
- **`/clear`** - Clear all conversation history and start fresh
|
|
121
69
|
- **`/stats`** - Check current token usage and limits
|
|
122
70
|
|
|
123
|
-
>
|
|
71
|
+
> **Note**: Session token limit applies to a single conversation, not cumulative API calls.
|
|
124
72
|
|
|
125
73
|
### Vision Model Configuration
|
|
126
74
|
|
|
@@ -145,20 +93,6 @@ If you don't want to see the interactive dialog each time, configure the default
|
|
|
145
93
|
- **`"persist"`** - Continue with current model (no switching)
|
|
146
94
|
- **Not set** - Show interactive dialog each time (default)
|
|
147
95
|
|
|
148
|
-
#### Command Line Override
|
|
149
|
-
|
|
150
|
-
You can also set the behavior via command line:
|
|
151
|
-
|
|
152
|
-
```bash
|
|
153
|
-
# Switch once per query
|
|
154
|
-
blackbox --vlm-switch-mode once
|
|
155
|
-
|
|
156
|
-
# Switch for entire session
|
|
157
|
-
blackbox --vlm-switch-mode session
|
|
158
|
-
|
|
159
|
-
# Never switch automatically
|
|
160
|
-
blackbox --vlm-switch-mode persist
|
|
161
|
-
```
|
|
162
96
|
|
|
163
97
|
#### Disable Vision Models (Optional)
|
|
164
98
|
|
|
@@ -172,113 +106,28 @@ To completely disable vision model support, add to your `.blackboxcli/settings.j
|
|
|
172
106
|
}
|
|
173
107
|
```
|
|
174
108
|
|
|
175
|
-
>
|
|
109
|
+
> **Tip**: In YOLO mode (`--yolo`), vision switching happens automatically without prompts when images are detected.
|
|
176
110
|
|
|
177
111
|
### Authorization
|
|
178
112
|
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
#### 1. Blackbox OAuth (🚀 Recommended - Start in 30 seconds)
|
|
182
|
-
|
|
183
|
-
The easiest way to get started - completely free with generous quotas:
|
|
184
|
-
|
|
185
|
-
```bash
|
|
186
|
-
# Just run this command and follow the browser authentication
|
|
187
|
-
blackbox
|
|
188
|
-
```
|
|
189
|
-
|
|
190
|
-
**What happens:**
|
|
191
|
-
|
|
192
|
-
1. **Instant Setup**: CLI opens your browser automatically
|
|
193
|
-
2. **One-Click Login**: Authenticate with your blackbox.ai account
|
|
194
|
-
3. **Automatic Management**: Credentials cached locally for future use
|
|
195
|
-
4. **No Configuration**: Zero setup required - just start coding!
|
|
196
|
-
|
|
197
|
-
**Free Tier Benefits:**
|
|
113
|
+
API Key Authentication
|
|
198
114
|
|
|
199
|
-
|
|
200
|
-
- ✅ **60 requests/minute** rate limit
|
|
201
|
-
- ✅ **Automatic credential refresh**
|
|
202
|
-
- ✅ **Zero cost** for individual users
|
|
203
|
-
- ℹ️ **Note**: Model fallback may occur to maintain service quality
|
|
115
|
+
For programmatic access or advanced use cases, you can authenticate using an API key:
|
|
204
116
|
|
|
205
|
-
|
|
117
|
+
**Getting Your API Key:**
|
|
206
118
|
|
|
207
|
-
|
|
119
|
+
1. Navigate to the [API Keys section](https://app.blackbox.ai/dashboard) of your BLACKBOX dashboard
|
|
120
|
+
2. Your API key will be displayed on this page
|
|
121
|
+
3. Click the copy icon to copy the key to your clipboard
|
|
122
|
+
4. Run `blackbox configure` and you will be able to set the key
|
|
208
123
|
|
|
209
|
-
**Configuration Methods:**
|
|
210
124
|
|
|
211
|
-
|
|
125
|
+
> **Important:** Treat your API key like a password! Do not share it publicly or commit it to version control.
|
|
212
126
|
|
|
213
|
-
```bash
|
|
214
|
-
export OPENAI_API_KEY="your_api_key_here"
|
|
215
|
-
export OPENAI_BASE_URL="your_api_endpoint"
|
|
216
|
-
export OPENAI_MODEL="your_model_choice"
|
|
217
|
-
```
|
|
218
|
-
|
|
219
|
-
2. **Project `.env` File**
|
|
220
|
-
Create a `.env` file in your project root:
|
|
221
|
-
```env
|
|
222
|
-
OPENAI_API_KEY=your_api_key_here
|
|
223
|
-
OPENAI_BASE_URL=your_api_endpoint
|
|
224
|
-
OPENAI_MODEL=your_model_choice
|
|
225
|
-
```
|
|
226
|
-
|
|
227
|
-
**API Provider Options**
|
|
228
|
-
|
|
229
|
-
> ⚠️ **Regional Notice:**
|
|
230
|
-
>
|
|
231
|
-
> - **Mainland China**: Use Alibaba Cloud Bailian or ModelScope
|
|
232
|
-
> - **International**: Use Alibaba Cloud ModelStudio or OpenRouter
|
|
233
|
-
|
|
234
|
-
<details>
|
|
235
|
-
<summary><b>🇨🇳 For Users in Mainland China</b></summary>
|
|
236
|
-
|
|
237
|
-
**Option 1: Alibaba Cloud Bailian** ([Apply for API Key](https://bailian.console.aliyun.com/))
|
|
238
|
-
|
|
239
|
-
```bash
|
|
240
|
-
export OPENAI_API_KEY="your_api_key_here"
|
|
241
|
-
export OPENAI_BASE_URL="https://dashscope.aliyuncs.com/compatible-mode/v1"
|
|
242
|
-
export OPENAI_MODEL="blackbox3-coder-plus"
|
|
243
|
-
```
|
|
244
|
-
|
|
245
|
-
**Option 2: ModelScope (Free Tier)** ([Apply for API Key](https://modelscope.cn/docs/model-service/API-Inference/intro))
|
|
246
|
-
|
|
247
|
-
- ✅ **2,000 free API calls per day**
|
|
248
|
-
- ⚠️ Connect your Aliyun account to avoid authentication errors
|
|
249
|
-
|
|
250
|
-
```bash
|
|
251
|
-
export OPENAI_API_KEY="your_api_key_here"
|
|
252
|
-
export OPENAI_BASE_URL="https://api-inference.modelscope.cn/v1"
|
|
253
|
-
export OPENAI_MODEL="Blackbox/Blackbox3-Coder-480B-A35B-Instruct"
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
</details>
|
|
257
|
-
|
|
258
|
-
<details>
|
|
259
|
-
<summary><b>🌍 For International Users</b></summary>
|
|
260
|
-
|
|
261
|
-
**Option 1: Alibaba Cloud ModelStudio** ([Apply for API Key](https://modelstudio.console.alibabacloud.com/))
|
|
262
|
-
|
|
263
|
-
```bash
|
|
264
|
-
export OPENAI_API_KEY="your_api_key_here"
|
|
265
|
-
export OPENAI_BASE_URL="https://dashscope-intl.aliyuncs.com/compatible-mode/v1"
|
|
266
|
-
export OPENAI_MODEL="blackbox3-coder-plus"
|
|
267
|
-
```
|
|
268
|
-
|
|
269
|
-
**Option 2: OpenRouter (Free Tier Available)** ([Apply for API Key](https://openrouter.ai/))
|
|
270
|
-
|
|
271
|
-
```bash
|
|
272
|
-
export OPENAI_API_KEY="your_api_key_here"
|
|
273
|
-
export OPENAI_BASE_URL="https://openrouter.ai/api/v1"
|
|
274
|
-
export OPENAI_MODEL="blackbox/blackbox3-coder:free"
|
|
275
|
-
```
|
|
276
|
-
|
|
277
|
-
</details>
|
|
278
127
|
|
|
279
128
|
## Usage Examples
|
|
280
129
|
|
|
281
|
-
###
|
|
130
|
+
### Explore Codebases
|
|
282
131
|
|
|
283
132
|
```bash
|
|
284
133
|
cd your-project/
|
|
@@ -290,7 +139,7 @@ blackbox
|
|
|
290
139
|
> Find all API endpoints and their authentication methods
|
|
291
140
|
```
|
|
292
141
|
|
|
293
|
-
###
|
|
142
|
+
### Code Development
|
|
294
143
|
|
|
295
144
|
```bash
|
|
296
145
|
# Refactoring
|
|
@@ -304,7 +153,7 @@ blackbox
|
|
|
304
153
|
> Add error handling to all database operations
|
|
305
154
|
```
|
|
306
155
|
|
|
307
|
-
###
|
|
156
|
+
### Automate Workflows
|
|
308
157
|
|
|
309
158
|
```bash
|
|
310
159
|
# Git automation
|
|
@@ -318,7 +167,7 @@ blackbox
|
|
|
318
167
|
> Find and remove all console.log statements
|
|
319
168
|
```
|
|
320
169
|
|
|
321
|
-
###
|
|
170
|
+
### Debugging & Analysis
|
|
322
171
|
|
|
323
172
|
```bash
|
|
324
173
|
# Performance analysis
|
|
@@ -332,7 +181,7 @@ blackbox
|
|
|
332
181
|
|
|
333
182
|
## Popular Tasks
|
|
334
183
|
|
|
335
|
-
###
|
|
184
|
+
### Understand New Codebases
|
|
336
185
|
|
|
337
186
|
```text
|
|
338
187
|
> What are the core business logic components?
|
|
@@ -342,7 +191,7 @@ blackbox
|
|
|
342
191
|
> Generate a dependency graph for this module
|
|
343
192
|
```
|
|
344
193
|
|
|
345
|
-
###
|
|
194
|
+
### Code Refactoring & Optimization
|
|
346
195
|
|
|
347
196
|
```text
|
|
348
197
|
> What parts of this module can be optimized?
|
|
@@ -352,7 +201,7 @@ blackbox
|
|
|
352
201
|
> Implement caching for expensive operations
|
|
353
202
|
```
|
|
354
203
|
|
|
355
|
-
###
|
|
204
|
+
### Documentation & Testing
|
|
356
205
|
|
|
357
206
|
```text
|
|
358
207
|
> Generate comprehensive JSDoc comments for all public APIs
|
|
@@ -362,7 +211,7 @@ blackbox
|
|
|
362
211
|
> Generate a README for this module
|
|
363
212
|
```
|
|
364
213
|
|
|
365
|
-
###
|
|
214
|
+
### Development Acceleration
|
|
366
215
|
|
|
367
216
|
```text
|
|
368
217
|
> Set up a new Express server with authentication
|
|
@@ -388,33 +237,10 @@ blackbox
|
|
|
388
237
|
- `Ctrl+D` - Exit (on empty line)
|
|
389
238
|
- `Up/Down` - Navigate command history
|
|
390
239
|
|
|
391
|
-
## Benchmark Results
|
|
392
|
-
|
|
393
|
-
### Terminal-Bench Performance
|
|
394
|
-
|
|
395
|
-
| Agent | Model | Accuracy |
|
|
396
|
-
| --------- | ------------------ | -------- |
|
|
397
|
-
| Blackbox Code | Blackbox3-Coder-480A35 | 37.5% |
|
|
398
|
-
| Blackbox Code | Blackbox3-Coder-30BA3B | 31.3% |
|
|
399
|
-
|
|
400
|
-
## Development & Contributing
|
|
401
|
-
|
|
402
|
-
See [CONTRIBUTING.md](./CONTRIBUTING.md) to learn how to contribute to the project.
|
|
403
|
-
|
|
404
|
-
For detailed authentication setup, see the [authentication guide](./docs/cli/authentication.md).
|
|
405
|
-
|
|
406
|
-
## Troubleshooting
|
|
407
|
-
|
|
408
|
-
If you encounter issues, check the [troubleshooting guide](docs/troubleshooting.md).
|
|
409
|
-
|
|
410
240
|
## Acknowledgments
|
|
411
241
|
|
|
412
|
-
This project is based on [Google Gemini CLI](https://github.com/google-gemini/gemini-cli). We acknowledge and appreciate the excellent work of the Gemini CLI team.
|
|
242
|
+
This project is based on [Google Gemini CLI](https://github.com/google-gemini/gemini-cli). We acknowledge and appreciate the excellent work of the Gemini CLI team.
|
|
413
243
|
|
|
414
244
|
## License
|
|
415
245
|
|
|
416
246
|
[LICENSE](./LICENSE)
|
|
417
|
-
|
|
418
|
-
## Star History
|
|
419
|
-
|
|
420
|
-
[](https://www.star-history.com/#llmcod/blackbox-cli&Date)
|
package/dist/index.js
CHANGED
|
@@ -7,8 +7,15 @@
|
|
|
7
7
|
import './src/gemini.js';
|
|
8
8
|
import { main } from './src/gemini.js';
|
|
9
9
|
import { FatalError } from '@blackbox_ai/blackbox-cli-core';
|
|
10
|
+
import { preLaunchUpdateCheck } from './src/utils/preLaunchUpdateCheck.js';
|
|
10
11
|
// --- Global Entry Point ---
|
|
11
|
-
|
|
12
|
+
// First, check for updates before starting the CLI
|
|
13
|
+
preLaunchUpdateCheck()
|
|
14
|
+
.then(() => {
|
|
15
|
+
// After update check (and potential update), start the main CLI
|
|
16
|
+
return main();
|
|
17
|
+
})
|
|
18
|
+
.catch((error) => {
|
|
12
19
|
if (error instanceof FatalError) {
|
|
13
20
|
let errorMessage = error.message;
|
|
14
21
|
if (!process.env['NO_COLOR']) {
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAEA;;;;GAIG;AAEH,OAAO,iBAAiB,CAAC;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";AAEA;;;;GAIG;AAEH,OAAO,iBAAiB,CAAC;AACzB,OAAO,EAAE,IAAI,EAAE,MAAM,iBAAiB,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAC;AAC5D,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAE3E,6BAA6B;AAC7B,mDAAmD;AACnD,oBAAoB,EAAE;KACnB,IAAI,CAAC,GAAG,EAAE;IACT,gEAAgE;IAChE,OAAO,IAAI,EAAE,CAAC;AAChB,CAAC,CAAC;KACD,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACf,IAAI,KAAK,YAAY,UAAU,EAAE,CAAC;QAChC,IAAI,YAAY,GAAG,KAAK,CAAC,OAAO,CAAC;QACjC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,CAAC;YAC7B,YAAY,GAAG,WAAW,YAAY,SAAS,CAAC;QAClD,CAAC;QACD,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;QAC5B,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,CAAC,KAAK,CAAC,wCAAwC,CAAC,CAAC;IACxD,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;QAC3B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IAC/B,CAAC;IACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC,CAAC"}
|
package/dist/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@blackbox_ai/blackbox-cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.8.2",
|
|
4
4
|
"description": "Blackbox Code",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -28,14 +28,20 @@
|
|
|
28
28
|
"sandboxImageUri": "ghcr.io/blackbox_ai/blackbox-cli:0.0.1"
|
|
29
29
|
},
|
|
30
30
|
"dependencies": {
|
|
31
|
-
"@
|
|
31
|
+
"@agentclientprotocol/sdk": "^0.11.0",
|
|
32
|
+
"@blackbox_ai/blackbox-cli-core": "0.8.2",
|
|
33
|
+
"@ffmpeg-installer/ffmpeg": "^1.1.0",
|
|
32
34
|
"@google/genai": "^1.26.0",
|
|
33
35
|
"@iarna/toml": "^2.2.5",
|
|
34
36
|
"@modelcontextprotocol/sdk": "^1.15.1",
|
|
37
|
+
"@types/fluent-ffmpeg": "^2.1.27",
|
|
35
38
|
"@types/update-notifier": "^6.0.8",
|
|
39
|
+
"@types/ws": "^8.18.1",
|
|
36
40
|
"command-exists": "^1.2.9",
|
|
37
41
|
"diff": "^7.0.0",
|
|
38
42
|
"dotenv": "^17.1.0",
|
|
43
|
+
"extract-zip": "^2.0.1",
|
|
44
|
+
"fluent-ffmpeg": "^2.1.3",
|
|
39
45
|
"fzf": "^0.5.2",
|
|
40
46
|
"glob": "^10.4.1",
|
|
41
47
|
"highlight.js": "^11.11.1",
|
|
@@ -55,8 +61,10 @@
|
|
|
55
61
|
"string-width": "^7.1.0",
|
|
56
62
|
"strip-ansi": "^7.1.0",
|
|
57
63
|
"strip-json-comments": "^3.1.1",
|
|
64
|
+
"tar": "^7.4.3",
|
|
58
65
|
"undici": "^7.10.0",
|
|
59
66
|
"update-notifier": "^7.3.1",
|
|
67
|
+
"ws": "^8.18.3",
|
|
60
68
|
"yargs": "^17.7.2",
|
|
61
69
|
"zod": "^3.23.8"
|
|
62
70
|
},
|
|
@@ -74,6 +82,7 @@
|
|
|
74
82
|
"@types/react-dom": "^19.1.6",
|
|
75
83
|
"@types/semver": "^7.7.0",
|
|
76
84
|
"@types/shell-quote": "^1.7.5",
|
|
85
|
+
"@types/tar": "^6.1.13",
|
|
77
86
|
"@types/yargs": "^17.0.32",
|
|
78
87
|
"google-auth-library": "^10.4.1",
|
|
79
88
|
"ink-testing-library": "^4.0.0",
|
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
# Conductor Extension for Blackbox CLI
|
|
2
|
+
|
|
3
|
+
The Conductor extension enables Context-Driven Development (CDD) - a structured approach to software development that emphasizes clear specifications, systematic planning, and rigorous execution tracking.
|
|
4
|
+
|
|
5
|
+
## Overview
|
|
6
|
+
|
|
7
|
+
Conductor provides a spec-driven workflow that guides you through:
|
|
8
|
+
1. **Context** - Understanding the problem and requirements
|
|
9
|
+
2. **Spec & Plan** - Creating detailed specifications and implementation plans
|
|
10
|
+
3. **Implement** - Following the plan with strict adherence to workflow
|
|
11
|
+
|
|
12
|
+
## Installation
|
|
13
|
+
|
|
14
|
+
```bash
|
|
15
|
+
blackbox extensions install ./path/to/conductor
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
Or copy this example to your extensions directory:
|
|
19
|
+
```bash
|
|
20
|
+
cp -r packages/cli/src/commands/extensions/examples/conductor ~/.blackbox/extensions/
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Commands
|
|
24
|
+
|
|
25
|
+
### `/conductor:setup`
|
|
26
|
+
Initialize a new project with Conductor workflow files.
|
|
27
|
+
|
|
28
|
+
**Usage:**
|
|
29
|
+
```
|
|
30
|
+
/conductor:setup
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
**What it creates:**
|
|
34
|
+
- `plan.md` - Project plan with phases and tasks
|
|
35
|
+
- `tech-stack.md` - Technology decisions and architecture
|
|
36
|
+
- `product.md` - Product specification and requirements
|
|
37
|
+
- `product-guidelines.md` - Design and development guidelines
|
|
38
|
+
- `workflow.md` - Development workflow and processes
|
|
39
|
+
- `code_styleguides/` - Language-specific style guides
|
|
40
|
+
- `.blackboxignore` - Files to exclude from Blackbox context
|
|
41
|
+
|
|
42
|
+
### `/conductor:newTrack`
|
|
43
|
+
Create a new development track (feature/bug fix) with planning.
|
|
44
|
+
|
|
45
|
+
**Usage:**
|
|
46
|
+
```
|
|
47
|
+
/conductor:newTrack
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
**What it does:**
|
|
51
|
+
- Analyzes current project state
|
|
52
|
+
- Creates detailed implementation plan
|
|
53
|
+
- Sets up tracking structure
|
|
54
|
+
- Guides through specification process
|
|
55
|
+
|
|
56
|
+
### `/conductor:implement`
|
|
57
|
+
Work on the current track following Conductor workflow.
|
|
58
|
+
|
|
59
|
+
**Usage:**
|
|
60
|
+
```
|
|
61
|
+
/conductor:implement
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**What it does:**
|
|
65
|
+
- Enforces Test-Driven Development (TDD)
|
|
66
|
+
- Tracks task progress in `plan.md`
|
|
67
|
+
- Manages git commits with detailed notes
|
|
68
|
+
- Handles phase completion and checkpointing
|
|
69
|
+
- Ensures quality gates are met
|
|
70
|
+
|
|
71
|
+
### `/conductor:status`
|
|
72
|
+
Show current project status and progress.
|
|
73
|
+
|
|
74
|
+
**Usage:**
|
|
75
|
+
```
|
|
76
|
+
/conductor:status
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
**What it shows:**
|
|
80
|
+
- Current phase and tasks
|
|
81
|
+
- Completed work with commit references
|
|
82
|
+
- Quality metrics and coverage
|
|
83
|
+
- Next steps and recommendations
|
|
84
|
+
|
|
85
|
+
### `/conductor:revert`
|
|
86
|
+
Revert changes using git-aware rollback.
|
|
87
|
+
|
|
88
|
+
**Usage:**
|
|
89
|
+
```
|
|
90
|
+
/conductor:revert
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
**What it does:**
|
|
94
|
+
- Safely reverts to previous checkpoints
|
|
95
|
+
- Handles track, phase, or task-level rollbacks
|
|
96
|
+
- Preserves git history and notes
|
|
97
|
+
- Updates plan.md accordingly
|
|
98
|
+
|
|
99
|
+
## Workflow Overview
|
|
100
|
+
|
|
101
|
+
### 1. Project Setup
|
|
102
|
+
```bash
|
|
103
|
+
# Initialize new project with Conductor
|
|
104
|
+
/conductor:setup
|
|
105
|
+
|
|
106
|
+
# Review and customize generated files
|
|
107
|
+
# - Edit product.md with your requirements
|
|
108
|
+
# - Update tech-stack.md with your technology choices
|
|
109
|
+
# - Customize workflow.md for your team
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
### 2. Development Cycle
|
|
113
|
+
```bash
|
|
114
|
+
# Start new feature/track
|
|
115
|
+
/conductor:newTrack
|
|
116
|
+
|
|
117
|
+
# Work on implementation
|
|
118
|
+
/conductor:implement
|
|
119
|
+
|
|
120
|
+
# Check progress
|
|
121
|
+
/conductor:status
|
|
122
|
+
|
|
123
|
+
# Revert if needed
|
|
124
|
+
/conductor:revert
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
### 3. Quality Gates
|
|
128
|
+
Every task must pass:
|
|
129
|
+
- ✅ All tests pass
|
|
130
|
+
- ✅ Code coverage >80%
|
|
131
|
+
- ✅ Follows style guidelines
|
|
132
|
+
- ✅ Documentation updated
|
|
133
|
+
- ✅ Security review (if applicable)
|
|
134
|
+
|
|
135
|
+
## Key Features
|
|
136
|
+
|
|
137
|
+
### Test-Driven Development
|
|
138
|
+
- Enforces Red-Green-Refactor cycle
|
|
139
|
+
- Requires failing tests before implementation
|
|
140
|
+
- Tracks coverage metrics
|
|
141
|
+
- Integrates with project test frameworks
|
|
142
|
+
|
|
143
|
+
### Git Integration
|
|
144
|
+
- Automatic commit tracking
|
|
145
|
+
- Detailed git notes for audit trail
|
|
146
|
+
- Phase checkpointing
|
|
147
|
+
- Safe rollback capabilities
|
|
148
|
+
|
|
149
|
+
### Progress Tracking
|
|
150
|
+
- Task status in `plan.md`
|
|
151
|
+
- Commit SHA tracking
|
|
152
|
+
- Phase completion markers
|
|
153
|
+
- Quality gate verification
|
|
154
|
+
|
|
155
|
+
### Template System
|
|
156
|
+
- Project templates for common setups
|
|
157
|
+
- Code style guides for multiple languages
|
|
158
|
+
- Workflow templates adaptable to any tech stack
|
|
159
|
+
- Product specification templates
|
|
160
|
+
|
|
161
|
+
## File Structure
|
|
162
|
+
|
|
163
|
+
After setup, your project will have:
|
|
164
|
+
|
|
165
|
+
```
|
|
166
|
+
project/
|
|
167
|
+
├── plan.md # Main project plan
|
|
168
|
+
├── tech-stack.md # Technology decisions
|
|
169
|
+
├── product.md # Product specification
|
|
170
|
+
├── product-guidelines.md # Design guidelines
|
|
171
|
+
├── workflow.md # Development workflow
|
|
172
|
+
├── .blackboxignore # Blackbox exclusions
|
|
173
|
+
└── code_styleguides/ # Style guides
|
|
174
|
+
├── general.md
|
|
175
|
+
├── javascript.md
|
|
176
|
+
├── typescript.md
|
|
177
|
+
├── python.md
|
|
178
|
+
└── go.md
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
## Best Practices
|
|
182
|
+
|
|
183
|
+
### Planning
|
|
184
|
+
- Keep tasks small and specific
|
|
185
|
+
- Write clear acceptance criteria
|
|
186
|
+
- Update tech-stack.md before implementation
|
|
187
|
+
- Review product.md regularly
|
|
188
|
+
|
|
189
|
+
### Implementation
|
|
190
|
+
- Follow TDD strictly (Red-Green-Refactor)
|
|
191
|
+
- Commit frequently with descriptive messages
|
|
192
|
+
- Update plan.md as you complete tasks
|
|
193
|
+
- Run quality checks before marking tasks complete
|
|
194
|
+
|
|
195
|
+
### Team Collaboration
|
|
196
|
+
- Use consistent commit message format
|
|
197
|
+
- Review and update workflow.md together
|
|
198
|
+
- Share code style guidelines
|
|
199
|
+
- Conduct regular retrospectives
|
|
200
|
+
|
|
201
|
+
## Customization
|
|
202
|
+
|
|
203
|
+
### Adapting Templates
|
|
204
|
+
The templates in `templates/` can be customized:
|
|
205
|
+
- Modify `workflow.md` for your team's process
|
|
206
|
+
- Update style guides for your coding standards
|
|
207
|
+
- Customize `product.md` template for your domain
|
|
208
|
+
- Add new templates as needed
|
|
209
|
+
|
|
210
|
+
### Project-Specific Setup
|
|
211
|
+
- Update `.blackboxignore` for your project structure
|
|
212
|
+
- Modify quality gates in workflow.md
|
|
213
|
+
- Adapt testing requirements
|
|
214
|
+
- Customize deployment processes
|
|
215
|
+
|
|
216
|
+
## Troubleshooting
|
|
217
|
+
|
|
218
|
+
### Common Issues
|
|
219
|
+
|
|
220
|
+
**Q: Tests are failing during implementation**
|
|
221
|
+
A: This is expected in TDD. Write failing tests first (Red), then implement to make them pass (Green), then refactor.
|
|
222
|
+
|
|
223
|
+
**Q: Can't find previous checkpoint**
|
|
224
|
+
A: Use `/conductor:status` to see available checkpoints, or check git notes with `git notes list`.
|
|
225
|
+
|
|
226
|
+
**Q: Quality gates are too strict**
|
|
227
|
+
A: Customize the quality requirements in `workflow.md` to match your project needs.
|
|
228
|
+
|
|
229
|
+
**Q: Extension commands not working**
|
|
230
|
+
A: Ensure the extension is properly installed with `blackbox extensions list`.
|
|
231
|
+
|
|
232
|
+
## Contributing
|
|
233
|
+
|
|
234
|
+
To improve the Conductor extension:
|
|
235
|
+
1. Fork the repository
|
|
236
|
+
2. Make your changes
|
|
237
|
+
3. Test with real projects
|
|
238
|
+
4. Submit a pull request
|
|
239
|
+
|
|
240
|
+
## License
|
|
241
|
+
|
|
242
|
+
This extension follows the same license as Blackbox CLI.
|