@blackbox_ai/blackbox-cli-core 0.0.9 → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +11 -183
- package/dist/index.d.ts +2 -1
- package/dist/index.js +2 -1
- package/dist/index.js.map +1 -1
- package/dist/src/blackbox/blackboxOAuth2.js +17 -1
- package/dist/src/blackbox/blackboxOAuth2.js.map +1 -1
- package/dist/src/code_assist/oauth2.js +15 -3
- package/dist/src/code_assist/oauth2.js.map +1 -1
- package/dist/src/config/blackboxModels.d.ts +3 -2
- package/dist/src/config/blackboxModels.js +262 -33
- package/dist/src/config/blackboxModels.js.map +1 -1
- package/dist/src/config/config.d.ts +65 -0
- package/dist/src/config/config.js +282 -17
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/models.d.ts +1 -1
- package/dist/src/config/models.js +1 -1
- package/dist/src/config/models.js.map +1 -1
- package/dist/src/config/multiAgentModels.d.ts +63 -0
- package/dist/src/config/multiAgentModels.js +194 -0
- package/dist/src/config/multiAgentModels.js.map +1 -0
- package/dist/src/core/client.js +8 -2
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/contentGenerator.d.ts +1 -0
- package/dist/src/core/contentGenerator.js +57 -7
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/encryptedClientFactory.d.ts +17 -0
- package/dist/src/core/encryptedClientFactory.js +92 -0
- package/dist/src/core/encryptedClientFactory.js.map +1 -0
- package/dist/src/core/encryptedContentGenerator.d.ts +47 -0
- package/dist/src/core/encryptedContentGenerator.js +445 -0
- package/dist/src/core/encryptedContentGenerator.js.map +1 -0
- package/dist/src/core/encryptedGeminiClient.d.ts +59 -0
- package/dist/src/core/encryptedGeminiClient.js +177 -0
- package/dist/src/core/encryptedGeminiClient.js.map +1 -0
- package/dist/src/core/encryptedGeminiClientBridge.d.ts +107 -0
- package/dist/src/core/encryptedGeminiClientBridge.js +808 -0
- package/dist/src/core/encryptedGeminiClientBridge.js.map +1 -0
- package/dist/src/core/encryptedGeminiClientWrapper.d.ts +129 -0
- package/dist/src/core/encryptedGeminiClientWrapper.js +305 -0
- package/dist/src/core/encryptedGeminiClientWrapper.js.map +1 -0
- package/dist/src/core/encryptedTurn.d.ts +40 -0
- package/dist/src/core/encryptedTurn.js +114 -0
- package/dist/src/core/encryptedTurn.js.map +1 -0
- package/dist/src/core/logger.d.ts +21 -0
- package/dist/src/core/logger.js +110 -0
- package/dist/src/core/logger.js.map +1 -1
- package/dist/src/core/openaiContentGenerator/constants.d.ts +2 -0
- package/dist/src/core/openaiContentGenerator/constants.js +2 -0
- package/dist/src/core/openaiContentGenerator/constants.js.map +1 -1
- package/dist/src/core/openaiContentGenerator/converter.d.ts +16 -1
- package/dist/src/core/openaiContentGenerator/converter.js +135 -4
- package/dist/src/core/openaiContentGenerator/converter.js.map +1 -1
- package/dist/src/core/openaiContentGenerator/pipeline.js +6 -2
- package/dist/src/core/openaiContentGenerator/pipeline.js.map +1 -1
- package/dist/src/core/openaiContentGenerator/provider/default.js +10 -1
- package/dist/src/core/openaiContentGenerator/provider/default.js.map +1 -1
- package/dist/src/core/prompts.d.ts +17 -0
- package/dist/src/core/prompts.js +347 -19
- package/dist/src/core/prompts.js.map +1 -1
- package/dist/src/core/tokenLimits.d.ts +1 -0
- package/dist/src/core/tokenLimits.js +37 -2
- package/dist/src/core/tokenLimits.js.map +1 -1
- package/dist/src/core/tokenLimits.test.js +36 -1
- package/dist/src/core/tokenLimits.test.js.map +1 -1
- 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/client.d.ts +14 -0
- package/dist/src/encrypt/client.js +132 -0
- package/dist/src/encrypt/client.js.map +1 -0
- package/dist/src/encrypt/config.d.ts +22 -0
- package/dist/src/encrypt/config.js +43 -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/history-manager.d.ts +43 -0
- package/dist/src/encrypt/history-manager.js +164 -0
- package/dist/src/encrypt/history-manager.js.map +1 -0
- package/dist/src/encrypt/minimax-template.d.ts +73 -0
- package/dist/src/encrypt/minimax-template.js +276 -0
- package/dist/src/encrypt/minimax-template.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 +232 -0
- package/dist/src/encrypt/streaming-client.js.map +1 -0
- package/dist/src/encrypt/tool-formatter.d.ts +36 -0
- package/dist/src/encrypt/tool-formatter.js +353 -0
- package/dist/src/encrypt/tool-formatter.js.map +1 -0
- package/dist/src/encrypt/tool-parser.d.ts +93 -0
- package/dist/src/encrypt/tool-parser.js +567 -0
- package/dist/src/encrypt/tool-parser.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/generated/git-commit.d.ts +3 -3
- package/dist/src/generated/git-commit.js +3 -3
- package/dist/src/ide/ide-client.js +9 -19
- package/dist/src/ide/ide-client.js.map +1 -1
- package/dist/src/index.d.ts +15 -0
- package/dist/src/index.js +15 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/mcp/oauth-provider.js +2 -6
- package/dist/src/mcp/oauth-provider.js.map +1 -1
- package/dist/src/mcp/oauth-token-storage.d.ts +7 -0
- package/dist/src/mcp/oauth-token-storage.js +24 -0
- package/dist/src/mcp/oauth-token-storage.js.map +1 -1
- package/dist/src/services/EncryptedChatService.d.ts +80 -0
- package/dist/src/services/EncryptedChatService.js +202 -0
- package/dist/src/services/EncryptedChatService.js.map +1 -0
- package/dist/src/services/StatsHistoryService.d.ts +131 -0
- package/dist/src/services/StatsHistoryService.js +427 -0
- package/dist/src/services/StatsHistoryService.js.map +1 -0
- package/dist/src/services/checkpointApiService.d.ts +101 -0
- package/dist/src/services/checkpointApiService.js +215 -0
- package/dist/src/services/checkpointApiService.js.map +1 -0
- package/dist/src/services/environmentSanitization.d.ts +24 -0
- package/dist/src/services/environmentSanitization.js +152 -0
- package/dist/src/services/environmentSanitization.js.map +1 -0
- package/dist/src/telemetry/blackbox-logger/blackbox-logger.d.ts +2 -6
- package/dist/src/telemetry/blackbox-logger/blackbox-logger.js +29 -135
- package/dist/src/telemetry/blackbox-logger/blackbox-logger.js.map +1 -1
- package/dist/src/telemetry/blackbox-logger/blackbox-logger.test.js +1 -1
- package/dist/src/telemetry/blackbox-logger/blackbox-logger.test.js.map +1 -1
- package/dist/src/telemetry/uiTelemetry.d.ts +8 -0
- package/dist/src/telemetry/uiTelemetry.js +17 -0
- package/dist/src/telemetry/uiTelemetry.js.map +1 -1
- package/dist/src/tools/browser-interactive.d.ts +63 -0
- package/dist/src/tools/browser-interactive.js +394 -0
- package/dist/src/tools/browser-interactive.js.map +1 -0
- package/dist/src/tools/browser_use.d.ts +22 -1
- package/dist/src/tools/browser_use.js +403 -23
- package/dist/src/tools/browser_use.js.map +1 -1
- package/dist/src/tools/data-file-constants.d.ts +17 -0
- package/dist/src/tools/data-file-constants.js +30 -0
- package/dist/src/tools/data-file-constants.js.map +1 -0
- package/dist/src/tools/edit.js +44 -7
- package/dist/src/tools/edit.js.map +1 -1
- package/dist/src/tools/ls.js +40 -6
- package/dist/src/tools/ls.js.map +1 -1
- package/dist/src/tools/ls.test.js +4 -4
- package/dist/src/tools/ls.test.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.d.ts +28 -2
- package/dist/src/tools/mcp-client-manager.js +62 -4
- package/dist/src/tools/mcp-client-manager.js.map +1 -1
- package/dist/src/tools/mcp-client.d.ts +5 -3
- package/dist/src/tools/mcp-client.js +39 -11
- package/dist/src/tools/mcp-client.js.map +1 -1
- package/dist/src/tools/mcp-tool.d.ts +3 -1
- package/dist/src/tools/mcp-tool.js +37 -9
- package/dist/src/tools/mcp-tool.js.map +1 -1
- package/dist/src/tools/memoryTool.d.ts +14 -4
- package/dist/src/tools/memoryTool.js +98 -39
- package/dist/src/tools/memoryTool.js.map +1 -1
- package/dist/src/tools/read-data-file.d.ts +31 -0
- package/dist/src/tools/read-data-file.js +469 -0
- package/dist/src/tools/read-data-file.js.map +1 -0
- package/dist/src/tools/read-file.js +64 -5
- package/dist/src/tools/read-file.js.map +1 -1
- package/dist/src/tools/read-file.test.js +40 -6
- package/dist/src/tools/read-file.test.js.map +1 -1
- package/dist/src/tools/shell.d.ts +3 -1
- package/dist/src/tools/shell.js +25 -4
- package/dist/src/tools/shell.js.map +1 -1
- package/dist/src/tools/skill.d.ts +34 -0
- package/dist/src/tools/skill.js +143 -0
- package/dist/src/tools/skill.js.map +1 -0
- package/dist/src/tools/sql_db.d.ts +101 -0
- package/dist/src/tools/sql_db.js +1033 -0
- package/dist/src/tools/sql_db.js.map +1 -0
- package/dist/src/tools/sql_db_configure.d.ts +18 -0
- package/dist/src/tools/sql_db_configure.js +96 -0
- package/dist/src/tools/sql_db_configure.js.map +1 -0
- package/dist/src/tools/taskCompletion.d.ts +29 -0
- package/dist/src/tools/taskCompletion.js +231 -0
- package/dist/src/tools/taskCompletion.js.map +1 -0
- package/dist/src/tools/tool-error.d.ts +3 -1
- package/dist/src/tools/tool-error.js +3 -0
- package/dist/src/tools/tool-error.js.map +1 -1
- package/dist/src/tools/tool-names.d.ts +8 -0
- package/dist/src/tools/tool-names.js +8 -0
- package/dist/src/tools/tool-names.js.map +1 -1
- package/dist/src/tools/tool-registry.d.ts +22 -0
- package/dist/src/tools/tool-registry.js +41 -1
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tools.d.ts +18 -2
- package/dist/src/tools/tools.js +3 -0
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/web-fetch.js +24 -4
- package/dist/src/tools/web-fetch.js.map +1 -1
- package/dist/src/tools/web-search.js +160 -2
- package/dist/src/tools/web-search.js.map +1 -1
- package/dist/src/tools/workspace-error-helper.d.ts +9 -0
- package/dist/src/tools/workspace-error-helper.js +43 -0
- package/dist/src/tools/workspace-error-helper.js.map +1 -0
- package/dist/src/tools/workspace-error-helper.test.js +85 -0
- package/dist/src/tools/workspace-error-helper.test.js.map +1 -0
- package/dist/src/tools/write-file.js +42 -7
- package/dist/src/tools/write-file.js.map +1 -1
- package/dist/src/utils/environmentContext.js +3 -1
- package/dist/src/utils/environmentContext.js.map +1 -1
- package/dist/src/utils/environmentContext.test.js +3 -2
- package/dist/src/utils/environmentContext.test.js.map +1 -1
- package/dist/src/utils/fetch.d.ts +3 -1
- package/dist/src/utils/fetch.js +35 -2
- package/dist/src/utils/fetch.js.map +1 -1
- package/dist/src/utils/fileUtils.js +30 -3
- package/dist/src/utils/fileUtils.js.map +1 -1
- package/dist/src/utils/filesearch/fileSearch.d.ts +2 -0
- package/dist/src/utils/filesearch/fileSearch.js +38 -7
- package/dist/src/utils/filesearch/fileSearch.js.map +1 -1
- package/dist/src/utils/git-worktree-utils.d.ts +56 -0
- package/dist/src/utils/git-worktree-utils.js +176 -0
- package/dist/src/utils/git-worktree-utils.js.map +1 -0
- package/dist/src/utils/imageCompression.d.ts +34 -0
- package/dist/src/utils/imageCompression.js +170 -0
- package/dist/src/utils/imageCompression.js.map +1 -0
- package/dist/src/utils/messageTruncator.d.ts +51 -0
- package/dist/src/utils/messageTruncator.js +346 -0
- package/dist/src/utils/messageTruncator.js.map +1 -0
- package/dist/src/utils/pathReader.js +26 -6
- package/dist/src/utils/pathReader.js.map +1 -1
- package/dist/src/utils/skill.d.ts +65 -0
- package/dist/src/utils/skill.js +241 -0
- package/dist/src/utils/skill.js.map +1 -0
- package/dist/src/utils/textCleaning.d.ts +51 -0
- package/dist/src/utils/textCleaning.js +327 -0
- package/dist/src/utils/textCleaning.js.map +1 -0
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +16 -2
- package/dist/src/tools/mcp-client-manager.test.js +0 -39
- package/dist/src/tools/mcp-client-manager.test.js.map +0 -1
- package/dist/src/tools/mcp-client.test.d.ts +0 -6
- package/dist/src/tools/mcp-client.test.js +0 -454
- package/dist/src/tools/mcp-client.test.js.map +0 -1
- package/dist/src/tools/mcp-tool.test.d.ts +0 -6
- package/dist/src/tools/mcp-tool.test.js +0 -576
- package/dist/src/tools/mcp-tool.test.js.map +0 -1
- package/dist/src/tools/memoryTool.test.d.ts +0 -6
- package/dist/src/tools/memoryTool.test.js +0 -420
- package/dist/src/tools/memoryTool.test.js.map +0 -1
- package/dist/src/tools/tool-registry.test.d.ts +0 -6
- package/dist/src/tools/tool-registry.test.js +0 -332
- package/dist/src/tools/tool-registry.test.js.map +0 -1
- /package/dist/src/tools/{mcp-client-manager.test.d.ts → workspace-error-helper.test.d.ts} +0 -0
|
@@ -0,0 +1,194 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Blackbox
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Claude models available via Blackbox API Gateway
|
|
8
|
+
*/
|
|
9
|
+
export const CLAUDE_MODELS = [
|
|
10
|
+
{
|
|
11
|
+
id: 'blackboxai/anthropic/claude-sonnet-4.5',
|
|
12
|
+
name: 'Claude Sonnet 4.5',
|
|
13
|
+
description: 'Latest Sonnet model - balanced performance',
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
id: 'blackboxai/anthropic/claude-sonnet-4',
|
|
17
|
+
name: 'Claude Sonnet 4',
|
|
18
|
+
description: 'Previous Sonnet version',
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
id: 'blackboxai/anthropic/claude-opus-4.5',
|
|
22
|
+
name: 'Claude Opus 4.5',
|
|
23
|
+
description: 'Most capable model - best for complex tasks',
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
id: 'blackboxai/anthropic/claude-opus-4',
|
|
27
|
+
name: 'Claude Opus 4',
|
|
28
|
+
description: 'Most capable model - best for complex tasks',
|
|
29
|
+
},
|
|
30
|
+
];
|
|
31
|
+
/**
|
|
32
|
+
* Codex/OpenAI models available
|
|
33
|
+
*/
|
|
34
|
+
export const CODEX_MODELS = [
|
|
35
|
+
{
|
|
36
|
+
id: 'gpt-5.1-codex-max',
|
|
37
|
+
name: 'GPT-5.1-Codex Max',
|
|
38
|
+
description: 'GPT-5.1 Codex Max optimized for coding',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
id: 'gpt-5.1-codex',
|
|
42
|
+
name: 'GPT-5.1-Codex',
|
|
43
|
+
description: 'GPT-5.1 Codex optimized for coding',
|
|
44
|
+
},
|
|
45
|
+
{
|
|
46
|
+
id: 'gpt-5.1',
|
|
47
|
+
name: 'GPT-5.1',
|
|
48
|
+
description: 'GPT-5.1 optimized for coding',
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
id: 'gpt-5-codex',
|
|
52
|
+
name: 'GPT-5-Codex',
|
|
53
|
+
description: 'GPT-5 optimized for coding',
|
|
54
|
+
},
|
|
55
|
+
{
|
|
56
|
+
id: 'gpt-5',
|
|
57
|
+
name: 'GPT-5',
|
|
58
|
+
description: 'Latest GPT-5 model',
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
id: 'gpt-5-mini',
|
|
62
|
+
name: 'GPT-5 Mini',
|
|
63
|
+
description: 'Smaller, faster GPT-5 variant',
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
id: 'gpt-5-nano',
|
|
67
|
+
name: 'GPT-5 Nano',
|
|
68
|
+
description: 'Lightweight GPT-5 model',
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
id: 'gpt-4.1',
|
|
72
|
+
name: 'GPT-4.1',
|
|
73
|
+
description: 'Enhanced GPT-4 model',
|
|
74
|
+
},
|
|
75
|
+
];
|
|
76
|
+
/**
|
|
77
|
+
* Blackbox models available
|
|
78
|
+
*/
|
|
79
|
+
export const BLACKBOX_MODELS = [
|
|
80
|
+
{
|
|
81
|
+
id: 'coder-model',
|
|
82
|
+
name: 'Blackbox Coder (Default)',
|
|
83
|
+
description: 'Default coding model - optimized for development',
|
|
84
|
+
},
|
|
85
|
+
{
|
|
86
|
+
id: 'blackboxai-pro',
|
|
87
|
+
name: 'Blackbox Pro',
|
|
88
|
+
description: 'Pro model - enhanced capabilities',
|
|
89
|
+
},
|
|
90
|
+
{
|
|
91
|
+
id: 'blackbox-vl-max-latest',
|
|
92
|
+
name: 'Blackbox VL Max',
|
|
93
|
+
description: 'Vision-language model',
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
id: 'blackboxai/x-ai/grok-code-fast-1:free',
|
|
97
|
+
name: 'Grok Code Fast',
|
|
98
|
+
description: 'Fast coding model via xAI',
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
id: 'blackboxai/google/gemini-2.5-flash',
|
|
102
|
+
name: 'Gemini 2.5 Flash',
|
|
103
|
+
description: 'Fast Google model',
|
|
104
|
+
},
|
|
105
|
+
];
|
|
106
|
+
/**
|
|
107
|
+
* Gemini models available (requires GEMINI_API_KEY)
|
|
108
|
+
*/
|
|
109
|
+
export const GEMINI_MODELS = [
|
|
110
|
+
{
|
|
111
|
+
id: 'gemini-3-pro-preview',
|
|
112
|
+
name: 'Gemini 3 Pro (Default)',
|
|
113
|
+
description: 'Most capable Gemini model - best for complex tasks',
|
|
114
|
+
},
|
|
115
|
+
{
|
|
116
|
+
id: 'gemini-2.5-pro',
|
|
117
|
+
name: 'Gemini 2.5 Pro (Default)',
|
|
118
|
+
description: 'Gemini model - best for complex tasks',
|
|
119
|
+
},
|
|
120
|
+
{
|
|
121
|
+
id: 'gemini-2.5-flash',
|
|
122
|
+
name: 'Gemini 2.5 Flash',
|
|
123
|
+
description: 'Fast and efficient Gemini model',
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
id: 'gemini-2.0-flash-exp',
|
|
127
|
+
name: 'Gemini 2.0 Flash Experimental',
|
|
128
|
+
description: 'Experimental fast model with latest features',
|
|
129
|
+
},
|
|
130
|
+
{
|
|
131
|
+
id: 'gemini-1.5-pro',
|
|
132
|
+
name: 'Gemini 1.5 Pro',
|
|
133
|
+
description: 'Previous generation Pro model',
|
|
134
|
+
},
|
|
135
|
+
{
|
|
136
|
+
id: 'gemini-1.5-flash',
|
|
137
|
+
name: 'Gemini 1.5 Flash',
|
|
138
|
+
description: 'Previous generation Flash model',
|
|
139
|
+
},
|
|
140
|
+
];
|
|
141
|
+
/**
|
|
142
|
+
* Default model selections for each agent
|
|
143
|
+
*/
|
|
144
|
+
export const DEFAULT_MODELS = {
|
|
145
|
+
claude: 'blackboxai/anthropic/claude-sonnet-4.5',
|
|
146
|
+
codex: 'gpt-5-codex',
|
|
147
|
+
blackbox: 'coder-model',
|
|
148
|
+
gemini: 'gemini-2.5-pro',
|
|
149
|
+
};
|
|
150
|
+
/**
|
|
151
|
+
* Get model options for a specific agent type
|
|
152
|
+
*/
|
|
153
|
+
export function getModelsForAgent(agentType) {
|
|
154
|
+
switch (agentType) {
|
|
155
|
+
case 'claude':
|
|
156
|
+
return CLAUDE_MODELS;
|
|
157
|
+
case 'codex':
|
|
158
|
+
return CODEX_MODELS;
|
|
159
|
+
case 'blackbox':
|
|
160
|
+
return BLACKBOX_MODELS;
|
|
161
|
+
case 'gemini':
|
|
162
|
+
return GEMINI_MODELS;
|
|
163
|
+
default:
|
|
164
|
+
return [];
|
|
165
|
+
}
|
|
166
|
+
}
|
|
167
|
+
/**
|
|
168
|
+
* Get default model for a specific agent type
|
|
169
|
+
*/
|
|
170
|
+
export function getDefaultModelForAgent(agentType) {
|
|
171
|
+
return DEFAULT_MODELS[agentType];
|
|
172
|
+
}
|
|
173
|
+
/**
|
|
174
|
+
* Validate if a model ID is valid for a given agent type
|
|
175
|
+
*/
|
|
176
|
+
export function isValidModelForAgent(agentType, modelId) {
|
|
177
|
+
const models = getModelsForAgent(agentType);
|
|
178
|
+
return models.some((model) => model.id === modelId);
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Get display name for a model ID
|
|
182
|
+
*/
|
|
183
|
+
export function getModelDisplayName(modelId) {
|
|
184
|
+
const allModels = [...CLAUDE_MODELS, ...CODEX_MODELS, ...BLACKBOX_MODELS, ...GEMINI_MODELS];
|
|
185
|
+
const model = allModels.find((m) => m.id === modelId);
|
|
186
|
+
return model ? model.name : modelId;
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* Check if Gemini API key is available
|
|
190
|
+
*/
|
|
191
|
+
export function isGeminiAvailable() {
|
|
192
|
+
return !!process.env['GEMINI_API_KEY'];
|
|
193
|
+
}
|
|
194
|
+
//# sourceMappingURL=multiAgentModels.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multiAgentModels.js","sourceRoot":"","sources":["../../../src/config/multiAgentModels.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAaH;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C;QACE,EAAE,EAAE,wCAAwC;QAC5C,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,4CAA4C;KAC1D;IACD;QACE,EAAE,EAAE,sCAAsC;QAC1C,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,yBAAyB;KACvC;IACD;QACE,EAAE,EAAE,sCAAsC;QAC1C,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,6CAA6C;KAC3D;IACD;QACE,EAAE,EAAE,oCAAoC;QACxC,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,6CAA6C;KAC3D;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAkB;IACzC;QACE,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,wCAAwC;KACtD;IACA;QACC,EAAE,EAAE,eAAe;QACnB,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,oCAAoC;KAClD;IACD;QACE,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,8BAA8B;KAC5C;IACD;QACE,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,aAAa;QACnB,WAAW,EAAE,4BAA4B;KAC1C;IACD;QACE,EAAE,EAAE,OAAO;QACX,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,oBAAoB;KAClC;IACD;QACE,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,+BAA+B;KAC7C;IACD;QACE,EAAE,EAAE,YAAY;QAChB,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,yBAAyB;KACvC;IACD;QACE,EAAE,EAAE,SAAS;QACb,IAAI,EAAE,SAAS;QACf,WAAW,EAAE,sBAAsB;KACpC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAkB;IAC5C;QACE,EAAE,EAAE,aAAa;QACjB,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,kDAAkD;KAChE;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,IAAI,EAAE,cAAc;QACpB,WAAW,EAAE,mCAAmC;KACjD;IACD;QACE,EAAE,EAAE,wBAAwB;QAC5B,IAAI,EAAE,iBAAiB;QACvB,WAAW,EAAE,uBAAuB;KACrC;IACD;QACE,EAAE,EAAE,uCAAuC;QAC3C,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,2BAA2B;KACzC;IACD;QACE,EAAE,EAAE,oCAAoC;QACxC,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,mBAAmB;KACjC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C;QACE,EAAE,EAAE,sBAAsB;QAC1B,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EAAE,oDAAoD;KAClE;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,IAAI,EAAE,0BAA0B;QAChC,WAAW,EAAE,uCAAuC;KACrD;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,iCAAiC;KAC/C;IACD;QACE,EAAE,EAAE,sBAAsB;QAC1B,IAAI,EAAE,+BAA+B;QACrC,WAAW,EAAE,8CAA8C;KAC5D;IACD;QACE,EAAE,EAAE,gBAAgB;QACpB,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,+BAA+B;KAC7C;IACD;QACE,EAAE,EAAE,kBAAkB;QACtB,IAAI,EAAE,kBAAkB;QACxB,WAAW,EAAE,iCAAiC;KAC/C;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG;IAC5B,MAAM,EAAE,wCAAwC;IAChD,KAAK,EAAE,aAAa;IACpB,QAAQ,EAAE,aAAa;IACvB,MAAM,EAAE,gBAAgB;CAChB,CAAC;AAOX;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,SAAoB;IACpD,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC;QACvB,KAAK,OAAO;YACV,OAAO,YAAY,CAAC;QACtB,KAAK,UAAU;YACb,OAAO,eAAe,CAAC;QACzB,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC;QACvB;YACE,OAAO,EAAE,CAAC;IACd,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,uBAAuB,CAAC,SAAoB;IAC1D,OAAO,cAAc,CAAC,SAAS,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAAoB,EAAE,OAAe;IACxE,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,CAAC,CAAC;IAC5C,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAe;IACjD,MAAM,SAAS,GAAG,CAAC,GAAG,aAAa,EAAE,GAAG,YAAY,EAAE,GAAG,eAAe,EAAE,GAAG,aAAa,CAAC,CAAC;IAC5F,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,OAAO,CAAC,CAAC;IACtD,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;AACtC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;AACzC,CAAC"}
|
package/dist/src/core/client.js
CHANGED
|
@@ -21,7 +21,7 @@ import { retryWithBackoff } from '../utils/retry.js';
|
|
|
21
21
|
import { flatMapTextParts } from '../utils/partUtils.js';
|
|
22
22
|
import { AuthType, createContentGenerator } from './contentGenerator.js';
|
|
23
23
|
import { GeminiChat } from './geminiChat.js';
|
|
24
|
-
import { getCompressionPrompt, getCoreSystemPrompt, getCustomSystemPrompt, getPlanModeSystemReminder, getSubagentSystemReminder, } from './prompts.js';
|
|
24
|
+
import { getCompressionPrompt, getCoreSystemPrompt, getCustomSystemPrompt, getPlanModeSystemReminder, getSubagentSystemReminder, getSkillSystemReminder, } from './prompts.js';
|
|
25
25
|
import { tokenLimit } from './tokenLimits.js';
|
|
26
26
|
import { CompressionStatus, GeminiEventType, Turn } from './turn.js';
|
|
27
27
|
function isThinkingSupported(model) {
|
|
@@ -453,6 +453,12 @@ export class GeminiClient {
|
|
|
453
453
|
let requestToSent = await flatMapTextParts(request, async (text) => [text]);
|
|
454
454
|
if (isNewPrompt) {
|
|
455
455
|
const systemReminders = [];
|
|
456
|
+
// add skill system reminder if there are skills available
|
|
457
|
+
const { getAvailableSkills } = await import('../utils/skill.js');
|
|
458
|
+
const availableSkills = await getAvailableSkills(this.config.getWorkingDir());
|
|
459
|
+
if (availableSkills) {
|
|
460
|
+
systemReminders.push(getSkillSystemReminder(availableSkills));
|
|
461
|
+
}
|
|
456
462
|
// add subagent system reminder if there are subagents
|
|
457
463
|
const hasTaskTool = this.config.getToolRegistry().getTool(TaskTool.Name);
|
|
458
464
|
const subagents = (await this.config.getSubagentManager().listSubagents())
|
|
@@ -681,7 +687,7 @@ export class GeminiClient {
|
|
|
681
687
|
},
|
|
682
688
|
config: {
|
|
683
689
|
systemInstruction: { text: getCompressionPrompt() },
|
|
684
|
-
maxOutputTokens: originalTokenCount,
|
|
690
|
+
maxOutputTokens: Math.min(originalTokenCount, tokenLimit(this.config.getModel(), 'output')),
|
|
685
691
|
},
|
|
686
692
|
}, prompt_id);
|
|
687
693
|
const chat = await this.startChat([
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/core/client.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../../../src/core/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -46,6 +46,7 @@ export type ContentGeneratorConfig = {
|
|
|
46
46
|
};
|
|
47
47
|
proxy?: string | undefined;
|
|
48
48
|
userAgent?: string;
|
|
49
|
+
customHeaders?: Record<string, string>;
|
|
49
50
|
};
|
|
50
51
|
export declare function createContentGeneratorConfig(config: Config, authType: AuthType | undefined): ContentGeneratorConfig;
|
|
51
52
|
export declare function createContentGenerator(config: ContentGeneratorConfig, gcConfig: Config, sessionId?: string): Promise<ContentGenerator>;
|
|
@@ -8,6 +8,7 @@ import { createCodeAssistContentGenerator } from '../code_assist/codeAssist.js';
|
|
|
8
8
|
import { DEFAULT_GEMINI_MODEL, DEFAULT_BLACKBOX_MODEL, DEFAULT_BLACKBOX_API_MODEL } from '../config/models.js';
|
|
9
9
|
import { InstallationManager } from '../utils/installationManager.js';
|
|
10
10
|
import { LoggingContentGenerator } from './loggingContentGenerator.js';
|
|
11
|
+
import { EncryptedContentGenerator } from './encryptedContentGenerator.js';
|
|
11
12
|
export var AuthType;
|
|
12
13
|
(function (AuthType) {
|
|
13
14
|
AuthType["LOGIN_WITH_GOOGLE"] = "oauth-personal";
|
|
@@ -32,7 +33,26 @@ export function createContentGeneratorConfig(config, authType) {
|
|
|
32
33
|
const blackboxApiBaseUrl = process.env['BLACKBOX_API_BASE_URL'] || undefined;
|
|
33
34
|
const blackboxApiModel = process.env['BLACKBOX_API_MODEL'] || undefined;
|
|
34
35
|
// Use runtime model from config if available; otherwise, fall back to parameter or default
|
|
35
|
-
|
|
36
|
+
// The model from config.getModel() takes precedence as it may come from command line --model flag
|
|
37
|
+
// Environment variables are only used as fallback when no explicit model is set
|
|
38
|
+
let effectiveModel = config.getModel() || DEFAULT_GEMINI_MODEL;
|
|
39
|
+
// For USE_BLACKBOX_API, only use environment variable as fallback when config doesn't have an explicit model
|
|
40
|
+
// This ensures --model command line flag takes precedence over settings
|
|
41
|
+
if (authType === AuthType.USE_BLACKBOX_API) {
|
|
42
|
+
const configModel = config.getModel();
|
|
43
|
+
const blackboxApiModel = process.env['BLACKBOX_API_MODEL'];
|
|
44
|
+
const blackboxEncryptedModel = process.env['BLACKBOX_ENCRYPTED_MODEL'];
|
|
45
|
+
// Only use environment variable if config doesn't have an explicit model set
|
|
46
|
+
// (i.e., config.getModel() returns empty/undefined or the default model)
|
|
47
|
+
if (!configModel) {
|
|
48
|
+
if (blackboxApiModel) {
|
|
49
|
+
effectiveModel = blackboxApiModel;
|
|
50
|
+
}
|
|
51
|
+
else if (blackboxEncryptedModel) {
|
|
52
|
+
effectiveModel = blackboxEncryptedModel;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
}
|
|
36
56
|
const contentGeneratorConfig = {
|
|
37
57
|
model: effectiveModel,
|
|
38
58
|
authType,
|
|
@@ -42,6 +62,7 @@ export function createContentGeneratorConfig(config, authType) {
|
|
|
42
62
|
maxRetries: config.getContentGeneratorMaxRetries(),
|
|
43
63
|
disableCacheControl: config.getContentGeneratorDisableCacheControl(),
|
|
44
64
|
samplingParams: config.getContentGeneratorSamplingParams(),
|
|
65
|
+
customHeaders: config.getContentGeneratorCustomHeaders(),
|
|
45
66
|
};
|
|
46
67
|
// If we are using Google auth or we are in Cloud Shell, there is nothing else to validate for now
|
|
47
68
|
if (authType === AuthType.LOGIN_WITH_GOOGLE ||
|
|
@@ -74,11 +95,30 @@ export function createContentGeneratorConfig(config, authType) {
|
|
|
74
95
|
process.env['BLACKBOX_MODEL'] || DEFAULT_BLACKBOX_MODEL;
|
|
75
96
|
return contentGeneratorConfig;
|
|
76
97
|
}
|
|
77
|
-
if (authType === AuthType.USE_BLACKBOX_API
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
98
|
+
if (authType === AuthType.USE_BLACKBOX_API) {
|
|
99
|
+
// Check if this is the encrypted provider
|
|
100
|
+
const blackboxEncryptionBaseUrl = process.env['BLACKBOX_ENCRYPTION_BASE_URL'];
|
|
101
|
+
const blackboxEncryptedModel = process.env['BLACKBOX_ENCRYPTED_MODEL'];
|
|
102
|
+
const isEncryptedProvider = blackboxEncryptionBaseUrl || blackboxEncryptedModel;
|
|
103
|
+
if (isEncryptedProvider) {
|
|
104
|
+
// For encrypted provider, use encryption-specific environment variables
|
|
105
|
+
contentGeneratorConfig.baseUrl = blackboxEncryptionBaseUrl || 'https://encrypt.blackboxai.app';
|
|
106
|
+
contentGeneratorConfig.model = blackboxEncryptedModel || 'blackboxai/encrypted';
|
|
107
|
+
// No API key required for encrypted provider
|
|
108
|
+
return contentGeneratorConfig;
|
|
109
|
+
}
|
|
110
|
+
else if (blackboxApiKey) {
|
|
111
|
+
// For regular BlackboxAI provider, require API key
|
|
112
|
+
contentGeneratorConfig.apiKey = blackboxApiKey;
|
|
113
|
+
contentGeneratorConfig.baseUrl = blackboxApiBaseUrl || 'https://api.blackbox.ai';
|
|
114
|
+
// Don't override the model if it's already set from effectiveModel (which includes --model flag)
|
|
115
|
+
// The effectiveModel is already set in contentGeneratorConfig.model above
|
|
116
|
+
// Only use blackboxApiModel as fallback if effectiveModel is the default
|
|
117
|
+
if (!effectiveModel || effectiveModel === DEFAULT_GEMINI_MODEL) {
|
|
118
|
+
contentGeneratorConfig.model = blackboxApiModel || DEFAULT_BLACKBOX_API_MODEL;
|
|
119
|
+
}
|
|
120
|
+
return contentGeneratorConfig;
|
|
121
|
+
}
|
|
82
122
|
}
|
|
83
123
|
return contentGeneratorConfig;
|
|
84
124
|
}
|
|
@@ -136,7 +176,17 @@ export async function createContentGenerator(config, gcConfig, sessionId) {
|
|
|
136
176
|
}
|
|
137
177
|
}
|
|
138
178
|
if (config.authType === AuthType.USE_BLACKBOX_API) {
|
|
139
|
-
if
|
|
179
|
+
// Check if this is the encrypted provider by looking at the base URL or model
|
|
180
|
+
const isEncryptedProvider = config.baseUrl?.includes('encrypt.blackboxai.app') ||
|
|
181
|
+
config.model?.includes('encrypted') ||
|
|
182
|
+
process.env['BLACKBOX_ENCRYPTION_BASE_URL'] ||
|
|
183
|
+
process.env['BLACKBOX_ENCRYPTED_MODEL'];
|
|
184
|
+
if (isEncryptedProvider) {
|
|
185
|
+
// Use the sessionId if provided, otherwise generate a unique one
|
|
186
|
+
const encryptedSessionId = sessionId || `encrypted_${Date.now()}_${Math.random().toString(36).substring(2, 9)}`;
|
|
187
|
+
return new LoggingContentGenerator(new EncryptedContentGenerator(encryptedSessionId, gcConfig), gcConfig);
|
|
188
|
+
}
|
|
189
|
+
else if (!config.apiKey) {
|
|
140
190
|
throw new Error('BlackboxAI API key is required');
|
|
141
191
|
}
|
|
142
192
|
// Import OpenAIContentGenerator dynamically to reuse for BlackboxAI
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"contentGenerator.js","sourceRoot":"","sources":["../../../src/core/contentGenerator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,gCAAgC,EAAE,MAAM,8BAA8B,CAAC;AAEhF,OAAO,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AAG/G,OAAO,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AACtE,OAAO,EAAE,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;
|
|
1
|
+
{"version":3,"file":"contentGenerator.js","sourceRoot":"","sources":["../../../src/core/contentGenerator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import type { Config } from '../config/config.js';
|
|
7
|
+
import type { ContentGeneratorConfig } from './contentGenerator.js';
|
|
8
|
+
import { EncryptedGeminiClientWrapper } from './encryptedGeminiClientWrapper.js';
|
|
9
|
+
/**
|
|
10
|
+
* Factory function to create an encrypted GeminiClient wrapper
|
|
11
|
+
* This replaces the regular GeminiClient for encrypted providers
|
|
12
|
+
*/
|
|
13
|
+
export declare function createEncryptedGeminiClient(config: Config, contentGeneratorConfig: ContentGeneratorConfig, sessionId: string): Promise<EncryptedGeminiClientWrapper>;
|
|
14
|
+
/**
|
|
15
|
+
* Check if the given configuration represents an encrypted provider
|
|
16
|
+
*/
|
|
17
|
+
export declare function isEncryptedProvider(config: ContentGeneratorConfig): boolean;
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright 2025 Google LLC
|
|
4
|
+
* SPDX-License-Identifier: Apache-2.0
|
|
5
|
+
*/
|
|
6
|
+
import { EncryptedGeminiClientWrapper } from './encryptedGeminiClientWrapper.js';
|
|
7
|
+
import { EncryptedChatService } from '../services/EncryptedChatService.js';
|
|
8
|
+
/**
|
|
9
|
+
* Factory function to create an encrypted GeminiClient wrapper
|
|
10
|
+
* This replaces the regular GeminiClient for encrypted providers
|
|
11
|
+
*/
|
|
12
|
+
export async function createEncryptedGeminiClient(config, contentGeneratorConfig, sessionId) {
|
|
13
|
+
const encryptedService = {
|
|
14
|
+
async sendMessage(message, messageHistory) {
|
|
15
|
+
try {
|
|
16
|
+
// Create a real instance and delegate to it
|
|
17
|
+
const realService = new EncryptedChatService(sessionId);
|
|
18
|
+
// Initialize if not ready
|
|
19
|
+
if (!realService.isReady()) {
|
|
20
|
+
await realService.initialize();
|
|
21
|
+
}
|
|
22
|
+
return await realService.sendMessage(message, messageHistory);
|
|
23
|
+
}
|
|
24
|
+
catch (error) {
|
|
25
|
+
console.error('❌ Failed to load EncryptedChatService:', error);
|
|
26
|
+
// Fallback to mock response
|
|
27
|
+
const encoder = new TextEncoder();
|
|
28
|
+
return new ReadableStream({
|
|
29
|
+
start(controller) {
|
|
30
|
+
controller.enqueue(encoder.encode(`Fallback response for: ${message}`));
|
|
31
|
+
controller.close();
|
|
32
|
+
}
|
|
33
|
+
});
|
|
34
|
+
}
|
|
35
|
+
},
|
|
36
|
+
async sendMessageWithToolResults(message, toolResults, messageHistory) {
|
|
37
|
+
try {
|
|
38
|
+
// Create a real instance and delegate to it
|
|
39
|
+
const realService = new EncryptedChatService(sessionId);
|
|
40
|
+
// Initialize if not ready
|
|
41
|
+
if (!realService.isReady()) {
|
|
42
|
+
await realService.initialize();
|
|
43
|
+
}
|
|
44
|
+
return await realService.sendMessageWithToolResults(message, toolResults, messageHistory);
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
console.error('❌ Failed to load EncryptedChatService for tool results:', error);
|
|
48
|
+
// Fallback to mock response
|
|
49
|
+
const encoder = new TextEncoder();
|
|
50
|
+
const toolResultsText = toolResults.map(tr => `${tr.toolName}: ${JSON.stringify(tr.result)}`).join('; ');
|
|
51
|
+
return new ReadableStream({
|
|
52
|
+
start(controller) {
|
|
53
|
+
controller.enqueue(encoder.encode(`Fallback response with tool results (${toolResultsText}) for: ${message}`));
|
|
54
|
+
controller.close();
|
|
55
|
+
}
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
},
|
|
59
|
+
async initialize(systemPrompt) {
|
|
60
|
+
try {
|
|
61
|
+
// Initialize the real service from the core package
|
|
62
|
+
const realService = new EncryptedChatService(sessionId);
|
|
63
|
+
await realService.initialize(systemPrompt);
|
|
64
|
+
// Store the real service for future use
|
|
65
|
+
this._realService = realService;
|
|
66
|
+
}
|
|
67
|
+
catch (error) {
|
|
68
|
+
console.error('❌ Failed to initialize EncryptedChatService:', error);
|
|
69
|
+
}
|
|
70
|
+
},
|
|
71
|
+
isReady() {
|
|
72
|
+
const realService = this._realService;
|
|
73
|
+
return realService ? realService.isReady() : true; // Fallback to true for mock
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
// Create the wrapper
|
|
77
|
+
const wrapper = new EncryptedGeminiClientWrapper(encryptedService, config);
|
|
78
|
+
// Initialize the wrapper
|
|
79
|
+
await wrapper.initialize();
|
|
80
|
+
return wrapper;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Check if the given configuration represents an encrypted provider
|
|
84
|
+
*/
|
|
85
|
+
export function isEncryptedProvider(config) {
|
|
86
|
+
const isEncrypted = config.baseUrl?.includes('encrypt.blackboxai.app') ||
|
|
87
|
+
config.model?.includes('encrypted') ||
|
|
88
|
+
process.env['BLACKBOX_ENCRYPTION_BASE_URL'] ||
|
|
89
|
+
process.env['BLACKBOX_ENCRYPTED_MODEL'];
|
|
90
|
+
return !!isEncrypted;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=encryptedClientFactory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"encryptedClientFactory.js","sourceRoot":"","sources":["../../../src/core/encryptedClientFactory.ts"],"names":[],"mappings":"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"}
|