centaurus-cli 2.5.2 → 2.6.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/dist/cli-adapter.d.ts +6 -0
- package/dist/cli-adapter.d.ts.map +1 -1
- package/dist/cli-adapter.js +215 -29
- package/dist/cli-adapter.js.map +1 -1
- package/dist/commands/CommandParser.js +2 -2
- package/dist/commands/CommandParser.js.map +1 -1
- package/dist/config/defaultConfig.js +1 -1
- package/dist/config/defaultConfig.js.map +1 -1
- package/dist/config/models.d.ts +50 -5
- package/dist/config/models.d.ts.map +1 -1
- package/dist/config/models.js +144 -20
- package/dist/config/models.js.map +1 -1
- package/dist/config/types.d.ts +3 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js +3 -1
- package/dist/config/types.js.map +1 -1
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -1
- package/dist/services/ai-service-client.d.ts +8 -2
- package/dist/services/ai-service-client.d.ts.map +1 -1
- package/dist/services/ai-service-client.js +2 -1
- package/dist/services/ai-service-client.js.map +1 -1
- package/dist/services/environment-context-injector.d.ts +69 -0
- package/dist/services/environment-context-injector.d.ts.map +1 -0
- package/dist/services/environment-context-injector.js +198 -0
- package/dist/services/environment-context-injector.js.map +1 -0
- package/dist/tools/ToolRegistry.d.ts.map +1 -1
- package/dist/tools/ToolRegistry.js +120 -26
- package/dist/tools/ToolRegistry.js.map +1 -1
- package/dist/tools/command.d.ts.map +1 -1
- package/dist/tools/command.js +30 -6
- package/dist/tools/command.js.map +1 -1
- package/dist/tools/file-ops.d.ts.map +1 -1
- package/dist/tools/file-ops.js +70 -23
- package/dist/tools/file-ops.js.map +1 -1
- package/dist/tools/find-files.d.ts +47 -0
- package/dist/tools/find-files.d.ts.map +1 -0
- package/dist/tools/find-files.js +190 -0
- package/dist/tools/find-files.js.map +1 -0
- package/dist/tools/get-diff.d.ts +45 -0
- package/dist/tools/get-diff.d.ts.map +1 -0
- package/dist/tools/get-diff.js +138 -0
- package/dist/tools/get-diff.js.map +1 -0
- package/dist/tools/grep-search.d.ts +85 -0
- package/dist/tools/grep-search.d.ts.map +1 -0
- package/dist/tools/grep-search.js +497 -0
- package/dist/tools/grep-search.js.map +1 -0
- package/dist/tools/inspect-symbol.d.ts +27 -0
- package/dist/tools/inspect-symbol.d.ts.map +1 -0
- package/dist/tools/inspect-symbol.js +259 -0
- package/dist/tools/inspect-symbol.js.map +1 -0
- package/dist/tools/validation.d.ts +49 -0
- package/dist/tools/validation.d.ts.map +1 -0
- package/dist/tools/validation.js +125 -0
- package/dist/tools/validation.js.map +1 -0
- package/dist/types/index.d.ts +13 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/ui/components/App.d.ts +3 -0
- package/dist/ui/components/App.d.ts.map +1 -1
- package/dist/ui/components/App.js +272 -72
- package/dist/ui/components/App.js.map +1 -1
- package/dist/ui/components/ContextWindowIndicator.d.ts +8 -0
- package/dist/ui/components/ContextWindowIndicator.d.ts.map +1 -0
- package/dist/ui/components/ContextWindowIndicator.js +34 -0
- package/dist/ui/components/ContextWindowIndicator.js.map +1 -0
- package/dist/ui/components/FontRecommendation.d.ts +1 -0
- package/dist/ui/components/FontRecommendation.d.ts.map +1 -0
- package/dist/ui/components/FontRecommendation.js +1 -0
- package/dist/ui/components/FontRecommendation.js.map +1 -0
- package/dist/ui/components/InputBox.d.ts +2 -0
- package/dist/ui/components/InputBox.d.ts.map +1 -1
- package/dist/ui/components/InputBox.js +9 -4
- package/dist/ui/components/InputBox.js.map +1 -1
- package/dist/ui/components/MarkdownRenderer.d.ts.map +1 -1
- package/dist/ui/components/MarkdownRenderer.js +34 -9
- package/dist/ui/components/MarkdownRenderer.js.map +1 -1
- package/dist/ui/components/MessageDisplay.d.ts.map +1 -1
- package/dist/ui/components/MessageDisplay.js +9 -2
- package/dist/ui/components/MessageDisplay.js.map +1 -1
- package/dist/ui/components/StreamingMessageDisplay.d.ts.map +1 -1
- package/dist/ui/components/StreamingMessageDisplay.js +11 -3
- package/dist/ui/components/StreamingMessageDisplay.js.map +1 -1
- package/dist/ui/components/ThinkingDisplay.d.ts +12 -0
- package/dist/ui/components/ThinkingDisplay.d.ts.map +1 -0
- package/dist/ui/components/ThinkingDisplay.js +41 -0
- package/dist/ui/components/ThinkingDisplay.js.map +1 -0
- package/dist/utils/markdown-parser.d.ts +4 -0
- package/dist/utils/markdown-parser.d.ts.map +1 -1
- package/dist/utils/markdown-parser.js +15 -1
- package/dist/utils/markdown-parser.js.map +1 -1
- package/dist/utils/version-checker.d.ts.map +1 -1
- package/dist/utils/version-checker.js +3 -31
- package/dist/utils/version-checker.js.map +1 -1
- package/package.json +6 -5
- package/README.md +0 -501
- package/dist/ai/provider-factory.d.ts +0 -6
- package/dist/ai/provider-factory.d.ts.map +0 -1
- package/dist/ai/provider-factory.js +0 -27
- package/dist/ai/provider-factory.js.map +0 -1
- package/dist/ai/providers/base.d.ts +0 -25
- package/dist/ai/providers/base.d.ts.map +0 -1
- package/dist/ai/providers/base.js +0 -9
- package/dist/ai/providers/base.js.map +0 -1
- package/dist/ai/providers/gemini.d.ts +0 -34
- package/dist/ai/providers/gemini.d.ts.map +0 -1
- package/dist/ai/providers/gemini.js +0 -146
- package/dist/ai/providers/gemini.js.map +0 -1
- package/dist/commands/view-duplication-logs.d.ts +0 -5
- package/dist/commands/view-duplication-logs.d.ts.map +0 -1
- package/dist/commands/view-duplication-logs.js +0 -14
- package/dist/commands/view-duplication-logs.js.map +0 -1
- package/dist/context/__tests__/command-detector.test.d.ts +0 -14
- package/dist/context/__tests__/command-detector.test.d.ts.map +0 -1
- package/dist/context/__tests__/command-detector.test.js +0 -318
- package/dist/context/__tests__/command-detector.test.js.map +0 -1
- package/dist/context/__tests__/context-manager.test.d.ts +0 -16
- package/dist/context/__tests__/context-manager.test.d.ts.map +0 -1
- package/dist/context/__tests__/context-manager.test.js +0 -375
- package/dist/context/__tests__/context-manager.test.js.map +0 -1
- package/dist/context/__tests__/error-handling.test.d.ts +0 -15
- package/dist/context/__tests__/error-handling.test.d.ts.map +0 -1
- package/dist/context/__tests__/error-handling.test.js +0 -447
- package/dist/context/__tests__/error-handling.test.js.map +0 -1
- package/dist/context/handlers/__tests__/docker-handler.test.d.ts +0 -13
- package/dist/context/handlers/__tests__/docker-handler.test.d.ts.map +0 -1
- package/dist/context/handlers/__tests__/docker-handler.test.js +0 -285
- package/dist/context/handlers/__tests__/docker-handler.test.js.map +0 -1
- package/dist/context/handlers/__tests__/ssh-handler.test.d.ts +0 -13
- package/dist/context/handlers/__tests__/ssh-handler.test.d.ts.map +0 -1
- package/dist/context/handlers/__tests__/ssh-handler.test.js +0 -251
- package/dist/context/handlers/__tests__/ssh-handler.test.js.map +0 -1
- package/dist/context/handlers/__tests__/wsl-handler.test.d.ts +0 -7
- package/dist/context/handlers/__tests__/wsl-handler.test.d.ts.map +0 -1
- package/dist/context/handlers/__tests__/wsl-handler.test.js +0 -331
- package/dist/context/handlers/__tests__/wsl-handler.test.js.map +0 -1
- package/dist/index-custom.d.ts +0 -3
- package/dist/index-custom.d.ts.map +0 -1
- package/dist/index-custom.js +0 -65
- package/dist/index-custom.js.map +0 -1
- package/dist/prompts/system-prompt.d.ts +0 -47
- package/dist/prompts/system-prompt.d.ts.map +0 -1
- package/dist/prompts/system-prompt.js +0 -377
- package/dist/prompts/system-prompt.js.map +0 -1
- package/dist/providers/GoogleProvider.d.ts +0 -26
- package/dist/providers/GoogleProvider.d.ts.map +0 -1
- package/dist/providers/GoogleProvider.js +0 -313
- package/dist/providers/GoogleProvider.js.map +0 -1
- package/dist/providers/Provider.d.ts +0 -114
- package/dist/providers/Provider.d.ts.map +0 -1
- package/dist/providers/Provider.js +0 -44
- package/dist/providers/Provider.js.map +0 -1
- package/dist/services/__tests__/ai-context-injector.test.d.ts +0 -15
- package/dist/services/__tests__/ai-context-injector.test.d.ts.map +0 -1
- package/dist/services/__tests__/ai-context-injector.test.js +0 -326
- package/dist/services/__tests__/ai-context-injector.test.js.map +0 -1
- package/dist/src/context/types.js +0 -27
- package/dist/src/services/ai-context-injector.js +0 -96
- package/dist/src/services/ai-service-client.js +0 -270
- package/dist/src/services/api-client.js +0 -349
- package/dist/src/tools/types.js +0 -1
- package/dist/src/types/index.js +0 -1
- package/dist/test/context/types.js +0 -27
- package/dist/test/services/__tests__/ai-context-injector.test.js +0 -325
- package/dist/test/services/ai-context-injector.js +0 -96
- package/dist/test/services/ai-service-client.js +0 -270
- package/dist/test/services/api-client.js +0 -349
- package/dist/test/tools/types.js +0 -1
- package/dist/test/types/index.js +0 -1
- package/dist/test-ai-context-injector.js +0 -97
- package/dist/tests/automated-verification.d.ts +0 -27
- package/dist/tests/automated-verification.d.ts.map +0 -1
- package/dist/tests/automated-verification.js +0 -359
- package/dist/tests/automated-verification.js.map +0 -1
- package/dist/tests/integration-tests.d.ts +0 -50
- package/dist/tests/integration-tests.d.ts.map +0 -1
- package/dist/tests/integration-tests.js +0 -648
- package/dist/tests/integration-tests.js.map +0 -1
- package/dist/tools/file-ops-test.d.ts +0 -6
- package/dist/tools/file-ops-test.d.ts.map +0 -1
- package/dist/tools/file-ops-test.js +0 -197
- package/dist/tools/file-ops-test.js.map +0 -1
- package/dist/ui/DisplayHistory.d.ts +0 -53
- package/dist/ui/DisplayHistory.d.ts.map +0 -1
- package/dist/ui/DisplayHistory.js +0 -82
- package/dist/ui/DisplayHistory.js.map +0 -1
- package/dist/ui/clack-ui.d.ts +0 -83
- package/dist/ui/clack-ui.d.ts.map +0 -1
- package/dist/ui/clack-ui.js +0 -304
- package/dist/ui/clack-ui.js.map +0 -1
- package/dist/ui/components/DisplayItemRenderer.d.ts +0 -18
- package/dist/ui/components/DisplayItemRenderer.d.ts.map +0 -1
- package/dist/ui/components/DisplayItemRenderer.js +0 -53
- package/dist/ui/components/DisplayItemRenderer.js.map +0 -1
- package/dist/ui/components/DynamicMessage.d.ts +0 -13
- package/dist/ui/components/DynamicMessage.d.ts.map +0 -1
- package/dist/ui/components/DynamicMessage.js +0 -27
- package/dist/ui/components/DynamicMessage.js.map +0 -1
- package/dist/ui/components/FileViewerScreen.d.ts +0 -14
- package/dist/ui/components/FileViewerScreen.d.ts.map +0 -1
- package/dist/ui/components/FileViewerScreen.js +0 -74
- package/dist/ui/components/FileViewerScreen.js.map +0 -1
- package/dist/ui/components/ScrollableContent.d.ts +0 -7
- package/dist/ui/components/ScrollableContent.d.ts.map +0 -1
- package/dist/ui/components/ScrollableContent.js +0 -6
- package/dist/ui/components/ScrollableContent.js.map +0 -1
- package/dist/ui/components/ScrollableMessageList.d.ts +0 -10
- package/dist/ui/components/ScrollableMessageList.d.ts.map +0 -1
- package/dist/ui/components/ScrollableMessageList.js +0 -133
- package/dist/ui/components/ScrollableMessageList.js.map +0 -1
- package/dist/ui/components/ScrollableScreen.d.ts +0 -9
- package/dist/ui/components/ScrollableScreen.d.ts.map +0 -1
- package/dist/ui/components/ScrollableScreen.js +0 -22
- package/dist/ui/components/ScrollableScreen.js.map +0 -1
- package/dist/ui/components/StaticMessageHistory.d.ts +0 -14
- package/dist/ui/components/StaticMessageHistory.d.ts.map +0 -1
- package/dist/ui/components/StaticMessageHistory.js +0 -19
- package/dist/ui/components/StaticMessageHistory.js.map +0 -1
- package/dist/ui/components/code-block.d.ts +0 -10
- package/dist/ui/components/code-block.d.ts.map +0 -1
- package/dist/ui/components/code-block.js +0 -74
- package/dist/ui/components/code-block.js.map +0 -1
- package/dist/ui/components/confirm-prompt.d.ts +0 -12
- package/dist/ui/components/confirm-prompt.d.ts.map +0 -1
- package/dist/ui/components/confirm-prompt.js +0 -104
- package/dist/ui/components/confirm-prompt.js.map +0 -1
- package/dist/ui/components/diff-viewer.d.ts +0 -9
- package/dist/ui/components/diff-viewer.d.ts.map +0 -1
- package/dist/ui/components/diff-viewer.js +0 -57
- package/dist/ui/components/diff-viewer.js.map +0 -1
- package/dist/ui/components/input-box.d.ts +0 -18
- package/dist/ui/components/input-box.d.ts.map +0 -1
- package/dist/ui/components/input-box.js +0 -157
- package/dist/ui/components/input-box.js.map +0 -1
- package/dist/ui/components/keyboard-help.d.ts +0 -7
- package/dist/ui/components/keyboard-help.d.ts.map +0 -1
- package/dist/ui/components/keyboard-help.js +0 -43
- package/dist/ui/components/keyboard-help.js.map +0 -1
- package/dist/ui/components/loading-indicator.d.ts +0 -3
- package/dist/ui/components/loading-indicator.d.ts.map +0 -1
- package/dist/ui/components/loading-indicator.js +0 -42
- package/dist/ui/components/loading-indicator.js.map +0 -1
- package/dist/ui/components/message-display.d.ts +0 -7
- package/dist/ui/components/message-display.d.ts.map +0 -1
- package/dist/ui/components/message-display.js +0 -104
- package/dist/ui/components/message-display.js.map +0 -1
- package/dist/ui/components/misc.d.ts +0 -28
- package/dist/ui/components/misc.d.ts.map +0 -1
- package/dist/ui/components/misc.js +0 -128
- package/dist/ui/components/misc.js.map +0 -1
- package/dist/ui/components/select-prompt.d.ts +0 -13
- package/dist/ui/components/select-prompt.d.ts.map +0 -1
- package/dist/ui/components/select-prompt.js +0 -42
- package/dist/ui/components/select-prompt.js.map +0 -1
- package/dist/ui/components/status-bar.d.ts +0 -11
- package/dist/ui/components/status-bar.d.ts.map +0 -1
- package/dist/ui/components/status-bar.js +0 -47
- package/dist/ui/components/status-bar.js.map +0 -1
- package/dist/ui/components/tool-execution.d.ts +0 -3
- package/dist/ui/components/tool-execution.d.ts.map +0 -1
- package/dist/ui/components/tool-execution.js +0 -374
- package/dist/ui/components/tool-execution.js.map +0 -1
- package/dist/ui/components/tool-result.d.ts +0 -11
- package/dist/ui/components/tool-result.d.ts.map +0 -1
- package/dist/ui/components/tool-result.js +0 -58
- package/dist/ui/components/tool-result.js.map +0 -1
- package/dist/ui/components/welcome-banner.d.ts +0 -3
- package/dist/ui/components/welcome-banner.d.ts.map +0 -1
- package/dist/ui/components/welcome-banner.js +0 -46
- package/dist/ui/components/welcome-banner.js.map +0 -1
- package/dist/ui/hooks/useDisplayHistory.d.ts +0 -13
- package/dist/ui/hooks/useDisplayHistory.d.ts.map +0 -1
- package/dist/ui/hooks/useDisplayHistory.js +0 -45
- package/dist/ui/hooks/useDisplayHistory.js.map +0 -1
- package/dist/ui/render-engine.d.ts +0 -69
- package/dist/ui/render-engine.d.ts.map +0 -1
- package/dist/ui/render-engine.js +0 -197
- package/dist/ui/render-engine.js.map +0 -1
- package/dist/ui/terminal/TerminalRenderer.d.ts +0 -84
- package/dist/ui/terminal/TerminalRenderer.d.ts.map +0 -1
- package/dist/ui/terminal/TerminalRenderer.js +0 -154
- package/dist/ui/terminal/TerminalRenderer.js.map +0 -1
- package/dist/ui/terminal/TerminalUI.d.ts +0 -139
- package/dist/ui/terminal/TerminalUI.d.ts.map +0 -1
- package/dist/ui/terminal/TerminalUI.js +0 -430
- package/dist/ui/terminal/TerminalUI.js.map +0 -1
- package/dist/ui/terminal/VirtualChatBuffer.d.ts +0 -32
- package/dist/ui/terminal/VirtualChatBuffer.d.ts.map +0 -1
- package/dist/ui/terminal/VirtualChatBuffer.js +0 -37
- package/dist/ui/terminal/VirtualChatBuffer.js.map +0 -1
- package/dist/ui/terminal-kit-base.d.ts +0 -117
- package/dist/ui/terminal-kit-base.d.ts.map +0 -1
- package/dist/ui/terminal-kit-base.js +0 -188
- package/dist/ui/terminal-kit-base.js.map +0 -1
- package/dist/ui/utils/duplication-detector.d.ts +0 -32
- package/dist/ui/utils/duplication-detector.d.ts.map +0 -1
- package/dist/ui/utils/duplication-detector.js +0 -227
- package/dist/ui/utils/duplication-detector.js.map +0 -1
- package/dist/ui/utils/duplication-logger.d.ts +0 -21
- package/dist/ui/utils/duplication-logger.d.ts.map +0 -1
- package/dist/ui/utils/duplication-logger.js +0 -85
- package/dist/ui/utils/duplication-logger.js.map +0 -1
- package/dist/ui/utils/terminal-scanner.d.ts +0 -19
- package/dist/ui/utils/terminal-scanner.d.ts.map +0 -1
- package/dist/ui/utils/terminal-scanner.js +0 -217
- package/dist/ui/utils/terminal-scanner.js.map +0 -1
- package/dist/version.d.ts +0 -2
- package/dist/version.d.ts.map +0 -1
- package/dist/version.js +0 -3
- package/dist/version.js.map +0 -1
- package/scripts/generate-version.js +0 -25
package/dist/cli-adapter.d.ts
CHANGED
|
@@ -9,8 +9,11 @@ export declare class CentaurusCLI {
|
|
|
9
9
|
private previousMode;
|
|
10
10
|
private onResponseCallback?;
|
|
11
11
|
private onResponseStreamCallback?;
|
|
12
|
+
private onThoughtStreamCallback?;
|
|
13
|
+
private onThoughtCompleteCallback?;
|
|
12
14
|
private onCommandModeChange?;
|
|
13
15
|
private onCwdChange?;
|
|
16
|
+
private onModelChange?;
|
|
14
17
|
private onShowPickerCallback?;
|
|
15
18
|
private onToolExecutionUpdate?;
|
|
16
19
|
private onToolApprovalRequest?;
|
|
@@ -26,6 +29,8 @@ export declare class CentaurusCLI {
|
|
|
26
29
|
constructor();
|
|
27
30
|
setOnResponseCallback(callback: (message: string) => void): void;
|
|
28
31
|
setOnResponseStreamCallback(callback: (chunk: string) => void): void;
|
|
32
|
+
setOnThoughtStreamCallback(callback: (thought: string) => void): void;
|
|
33
|
+
setOnThoughtCompleteCallback(callback: (durationSeconds: number) => void): void;
|
|
29
34
|
setOnShowPickerCallback(callback: (options: {
|
|
30
35
|
message: string;
|
|
31
36
|
choices: Array<{
|
|
@@ -64,6 +69,7 @@ export declare class CentaurusCLI {
|
|
|
64
69
|
}) => Promise<boolean>): void;
|
|
65
70
|
setOnCommandModeChange(callback: (commandMode: boolean) => void): void;
|
|
66
71
|
setOnCwdChange(callback: (cwd: string) => void): void;
|
|
72
|
+
setOnModelChange(callback: (modelName: string) => void): void;
|
|
67
73
|
setOnSubshellContextChange(callback: (context: SubshellContext) => void): void;
|
|
68
74
|
setOnPasswordRequest(callback: (message: string) => Promise<string>): void;
|
|
69
75
|
getPlanMode(): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-adapter.d.ts","sourceRoot":"","sources":["../src/cli-adapter.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-adapter.d.ts","sourceRoot":"","sources":["../src/cli-adapter.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAIrD,qBAAa,YAAY;IACvB,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,mBAAmB,CAAmB;IAC9C,OAAO,CAAC,GAAG,CAAS;IACpB,OAAO,CAAC,QAAQ,CAAkB;IAClC,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,YAAY,CAAyC;IAC7D,OAAO,CAAC,kBAAkB,CAAC,CAA4B;IACvD,OAAO,CAAC,wBAAwB,CAAC,CAA0B;IAC3D,OAAO,CAAC,uBAAuB,CAAC,CAA4B;IAC5D,OAAO,CAAC,yBAAyB,CAAC,CAAoC;IACtE,OAAO,CAAC,mBAAmB,CAAC,CAAiC;IAC7D,OAAO,CAAC,WAAW,CAAC,CAAwB;IAC5C,OAAO,CAAC,aAAa,CAAC,CAA8B;IACpD,OAAO,CAAC,oBAAoB,CAAC,CAA0G;IACvI,OAAO,CAAC,qBAAqB,CAAC,CAAwJ;IACtL,OAAO,CAAC,qBAAqB,CAAC,CAAsP;IACpR,OAAO,CAAC,qBAAqB,CAAC,CAAmF;IACjH,OAAO,CAAC,gBAAgB,CAAC,CAA8B;IACvD,OAAO,CAAC,qBAAqB,CAAC,CAAoE;IAClG,OAAO,CAAC,iBAAiB,CAAC,CAAuC;IACjE,OAAO,CAAC,mBAAmB,CAAkB;IAC7C,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,uBAAuB,CAAC,CAAqC;;IAwBrE,qBAAqB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIhE,2BAA2B,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIpE,0BAA0B,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIrE,4BAA4B,CAAC,QAAQ,EAAE,CAAC,eAAe,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAI/E,uBAAuB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,KAAK,CAAC;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;QAAC,IAAI,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,GAAG,IAAI;IAIhJ,wBAAwB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,WAAW,GAAG,WAAW,GAAG,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,KAAK,IAAI,GAAG,IAAI;IAI/L,wBAAwB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,OAAO,CAAC;QAAC,OAAO,CAAC,EAAE;YAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;SAAE,CAAC;QAAC,aAAa,CAAC,EAAE,YAAY,GAAG,WAAW,GAAG,iBAAiB,CAAC;QAAC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAA;KAAE,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI;IAI7R,wBAAwB,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAA;KAAE,KAAK,IAAI,GAAG,IAAI;IAI1H,mBAAmB,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAIhE,wBAAwB,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI;IAI3G,sBAAsB,CAAC,QAAQ,EAAE,CAAC,WAAW,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI;IAItE,cAAc,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAIrD,gBAAgB,CAAC,QAAQ,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,GAAG,IAAI;IAI7D,0BAA0B,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,eAAe,KAAK,IAAI,GAAG,IAAI;IAI9E,oBAAoB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,GAAG,IAAI;IAQ1E,WAAW,IAAI,OAAO;IAItB,cAAc,IAAI,OAAO;IAIzB,0BAA0B,IAAI,MAAM;IAIpC,yBAAyB,IAAI,eAAe;IAItC,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAoClF,OAAO,CAAC,UAAU,CAAC,CAAa;IAE1B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAmCjC;;;OAGG;IACH,mBAAmB,IAAI,MAAM,GAAG,IAAI;IAkCpC;;OAEG;IACH,eAAe,IAAI,OAAO;IAI1B;;OAEG;YACW,yBAAyB;IAuBvC;;OAEG;YACW,oBAAoB;IAoBlC,QAAQ,IAAI,MAAM;IAMZ,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YA6gBrC,kBAAkB;IAgQhC;;;OAGG;IACH,OAAO,CAAC,qBAAqB;IAe7B;;;OAGG;IACH,OAAO,CAAC,OAAO;IAMf;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAI3B;;;OAGG;IACH,OAAO,CAAC,sBAAsB;IAI9B;;;;OAIG;IACH,OAAO,CAAC,yBAAyB;IAqCjC;;;;OAIG;IACH,OAAO,CAAC,eAAe;IA6CvB,OAAO,CAAC,uBAAuB;IAI/B,OAAO,CAAC,iBAAiB;IAqBzB;;OAEG;IACH,iBAAiB,IAAI,IAAI;IA6BzB;;OAEG;YACW,0BAA0B;CAqIzC"}
|
package/dist/cli-adapter.js
CHANGED
|
@@ -12,7 +12,7 @@ import { webSearchTool, fetchUrlTool } from './tools/web-search.js';
|
|
|
12
12
|
import { apiClient } from './services/api-client.js';
|
|
13
13
|
import { conversationManager } from './services/conversation-manager.js';
|
|
14
14
|
import { aiServiceClient } from './services/ai-service-client.js';
|
|
15
|
-
import {
|
|
15
|
+
import { isValidModel, getInvalidModelError } from './config/models.js';
|
|
16
16
|
import { authenticateWithGoogle } from './services/auth-handler.js';
|
|
17
17
|
import { ContextManager } from './context/context-manager.js';
|
|
18
18
|
import { CommandDetector } from './context/command-detector.js';
|
|
@@ -20,6 +20,7 @@ import { SSHHandler } from './context/handlers/ssh-handler.js';
|
|
|
20
20
|
import { WSLHandler } from './context/handlers/wsl-handler.js';
|
|
21
21
|
import { DockerHandler } from './context/handlers/docker-handler.js';
|
|
22
22
|
import { AIContextInjector } from './services/ai-context-injector.js';
|
|
23
|
+
import { environmentContextInjector } from './services/environment-context-injector.js';
|
|
23
24
|
export class CentaurusCLI {
|
|
24
25
|
configManager;
|
|
25
26
|
toolRegistry;
|
|
@@ -30,8 +31,11 @@ export class CentaurusCLI {
|
|
|
30
31
|
previousMode = 'execution';
|
|
31
32
|
onResponseCallback;
|
|
32
33
|
onResponseStreamCallback;
|
|
34
|
+
onThoughtStreamCallback;
|
|
35
|
+
onThoughtCompleteCallback;
|
|
33
36
|
onCommandModeChange;
|
|
34
37
|
onCwdChange;
|
|
38
|
+
onModelChange;
|
|
35
39
|
onShowPickerCallback;
|
|
36
40
|
onToolExecutionUpdate;
|
|
37
41
|
onToolApprovalRequest;
|
|
@@ -69,6 +73,12 @@ export class CentaurusCLI {
|
|
|
69
73
|
setOnResponseStreamCallback(callback) {
|
|
70
74
|
this.onResponseStreamCallback = callback;
|
|
71
75
|
}
|
|
76
|
+
setOnThoughtStreamCallback(callback) {
|
|
77
|
+
this.onThoughtStreamCallback = callback;
|
|
78
|
+
}
|
|
79
|
+
setOnThoughtCompleteCallback(callback) {
|
|
80
|
+
this.onThoughtCompleteCallback = callback;
|
|
81
|
+
}
|
|
72
82
|
setOnShowPickerCallback(callback) {
|
|
73
83
|
this.onShowPickerCallback = callback;
|
|
74
84
|
}
|
|
@@ -93,6 +103,9 @@ export class CentaurusCLI {
|
|
|
93
103
|
setOnCwdChange(callback) {
|
|
94
104
|
this.onCwdChange = callback;
|
|
95
105
|
}
|
|
106
|
+
setOnModelChange(callback) {
|
|
107
|
+
this.onModelChange = callback;
|
|
108
|
+
}
|
|
96
109
|
setOnSubshellContextChange(callback) {
|
|
97
110
|
this.onSubshellContextChange = callback;
|
|
98
111
|
}
|
|
@@ -117,9 +130,22 @@ export class CentaurusCLI {
|
|
|
117
130
|
}
|
|
118
131
|
async handlePickerSelection(selection, pickerType) {
|
|
119
132
|
try {
|
|
120
|
-
//
|
|
121
|
-
|
|
122
|
-
const
|
|
133
|
+
// Selection is the index of the model in ALL_MODELS array
|
|
134
|
+
const { ALL_MODELS } = await import('./config/models.js');
|
|
135
|
+
const modelIndex = parseInt(selection, 10);
|
|
136
|
+
if (isNaN(modelIndex) || modelIndex < 0 || modelIndex >= ALL_MODELS.length) {
|
|
137
|
+
throw new Error('Invalid model selection');
|
|
138
|
+
}
|
|
139
|
+
const selectedModel = ALL_MODELS[modelIndex];
|
|
140
|
+
// Store only the model ID and name (not the full config with thinkingConfig)
|
|
141
|
+
// This prevents caching issues when we update model configs
|
|
142
|
+
this.configManager.set('model', selectedModel.id);
|
|
143
|
+
this.configManager.set('modelName', selectedModel.name);
|
|
144
|
+
// Notify UI of model name change
|
|
145
|
+
if (this.onModelChange) {
|
|
146
|
+
this.onModelChange(selectedModel.name);
|
|
147
|
+
}
|
|
148
|
+
const responseMessage = `Model changed to: ${selectedModel.name}`;
|
|
123
149
|
// Send response back to UI
|
|
124
150
|
if (this.onResponseCallback) {
|
|
125
151
|
this.onResponseCallback(responseMessage);
|
|
@@ -186,7 +212,7 @@ Your Centaurus CLI configuration has been automatically updated to the new forma
|
|
|
186
212
|
• Your authentication is already active for this session
|
|
187
213
|
|
|
188
214
|
✅ Your Preferences Preserved:
|
|
189
|
-
• Model selection: ${this.configManager.get('model') || 'gemini-2.
|
|
215
|
+
• Model selection: ${this.configManager.get('model') || 'gemini-2.5-flash'}
|
|
190
216
|
• Other settings remain unchanged
|
|
191
217
|
|
|
192
218
|
ℹ️ This is a one-time migration. Your configuration is now up to date.
|
|
@@ -212,7 +238,7 @@ Press Enter to continue...
|
|
|
212
238
|
try {
|
|
213
239
|
const config = this.configManager.load();
|
|
214
240
|
const title = `Conversation ${new Date().toLocaleString()}`;
|
|
215
|
-
await conversationManager.startNewConversation(title, config.model || 'gemini-2.
|
|
241
|
+
await conversationManager.startNewConversation(title, config.model || 'gemini-2.5-flash', 'google', // Always use Google provider now
|
|
216
242
|
this.cwd);
|
|
217
243
|
this.conversationStarted = true;
|
|
218
244
|
}
|
|
@@ -244,7 +270,8 @@ Press Enter to continue...
|
|
|
244
270
|
}
|
|
245
271
|
getModel() {
|
|
246
272
|
const config = this.configManager.load();
|
|
247
|
-
|
|
273
|
+
// Return the stored model name, or fall back to model ID
|
|
274
|
+
return config.modelName || config.model || 'gemini-2.5-flash';
|
|
248
275
|
}
|
|
249
276
|
async handleMessage(message) {
|
|
250
277
|
// Handle command mode - execute commands directly
|
|
@@ -268,12 +295,6 @@ Press Enter to continue...
|
|
|
268
295
|
});
|
|
269
296
|
// Save user message to backend
|
|
270
297
|
await this.saveMessageToBackend('user', message);
|
|
271
|
-
// Create messages array WITHOUT system prompt
|
|
272
|
-
// Backend will inject the system prompt automatically
|
|
273
|
-
let messages = [...this.conversationHistory];
|
|
274
|
-
// Inject subshell context if in a subshell environment
|
|
275
|
-
const currentContext = this.contextManager.getCurrentContext();
|
|
276
|
-
messages = this.aiContextInjector.injectSubshellContext(messages, currentContext);
|
|
277
298
|
try {
|
|
278
299
|
const tools = this.toolRegistry.getSchemas();
|
|
279
300
|
const context = {
|
|
@@ -292,15 +313,50 @@ Press Enter to continue...
|
|
|
292
313
|
}
|
|
293
314
|
},
|
|
294
315
|
};
|
|
295
|
-
// Get selected model from config
|
|
316
|
+
// Get selected model ID from config, then look up full config from models-config.json
|
|
296
317
|
const config = this.configManager.load();
|
|
297
|
-
const
|
|
318
|
+
const selectedModelId = config.model || 'gemini-2.5-flash';
|
|
319
|
+
// Look up the full model config (including thinkingConfig) from models-config.json
|
|
320
|
+
// This ensures we always use the latest config, not a cached version
|
|
321
|
+
const { ALL_MODELS } = await import('./config/models.js');
|
|
322
|
+
const selectedModelConfig = ALL_MODELS.find(m => m.id === selectedModelId && m.name === config.modelName);
|
|
323
|
+
const selectedModel = selectedModelId;
|
|
324
|
+
const selectedModelThinkingConfig = selectedModelConfig?.thinkingConfig;
|
|
325
|
+
// Create messages array and inject enhanced system prompt with environment context
|
|
326
|
+
// Always use the enhanced system prompt for all models
|
|
327
|
+
const systemPromptPath = path.join(__dirname, '..', 'prompts', 'system-prompt-enhanced.md');
|
|
328
|
+
let systemPrompt = '';
|
|
329
|
+
try {
|
|
330
|
+
systemPrompt = fs.readFileSync(systemPromptPath, 'utf-8');
|
|
331
|
+
}
|
|
332
|
+
catch (error) {
|
|
333
|
+
// Fallback to basic prompt if file not found
|
|
334
|
+
console.warn('Failed to load system-prompt-enhanced.md, using fallback prompt');
|
|
335
|
+
systemPrompt = 'You are Centaurus, a Senior Site Reliability Engineer (SRE) and Full-Stack Architect embedded in a CLI.';
|
|
336
|
+
}
|
|
337
|
+
// Enhance system prompt with environment context
|
|
338
|
+
const enhancedSystemPrompt = environmentContextInjector.getEnhancedSystemPrompt(systemPrompt);
|
|
339
|
+
// Build messages array with enhanced system prompt at the beginning
|
|
340
|
+
let messages = [
|
|
341
|
+
{
|
|
342
|
+
role: 'system',
|
|
343
|
+
content: enhancedSystemPrompt,
|
|
344
|
+
},
|
|
345
|
+
...this.conversationHistory
|
|
346
|
+
];
|
|
347
|
+
// Inject subshell context if in a subshell environment
|
|
348
|
+
const currentContext = this.contextManager.getCurrentContext();
|
|
349
|
+
messages = this.aiContextInjector.injectSubshellContext(messages, currentContext);
|
|
298
350
|
// Build environment context to send to backend
|
|
299
351
|
const environmentContext = this.getEnvironmentContext();
|
|
300
352
|
const mode = this.getMode();
|
|
301
353
|
let finalAssistantMessage = '';
|
|
302
354
|
const MAX_TURNS = 100; // Allow up to 100 turns for complex tasks
|
|
355
|
+
const MAX_TOOL_CALLS_PER_TURN = 5; // Limit tool calls per turn to prevent overthinking
|
|
303
356
|
let turnCount = 0;
|
|
357
|
+
let streamBuffer = ''; // Buffer to handle TASK_COMPLETE marker split across chunks
|
|
358
|
+
let thoughtStartTime = null; // Track when thinking started
|
|
359
|
+
let thoughtContent = ''; // Accumulate thought content
|
|
304
360
|
// Multi-turn tool execution loop
|
|
305
361
|
while (turnCount < MAX_TURNS) {
|
|
306
362
|
turnCount++;
|
|
@@ -308,29 +364,105 @@ Press Enter to continue...
|
|
|
308
364
|
let toolCalls = [];
|
|
309
365
|
// Stream AI response from backend
|
|
310
366
|
// Backend will inject system prompt automatically with environment context
|
|
311
|
-
for await (const chunk of aiServiceClient.streamChat(selectedModel, messages, tools, environmentContext, mode)) {
|
|
367
|
+
for await (const chunk of aiServiceClient.streamChat(selectedModel, messages, tools, environmentContext, mode, selectedModelThinkingConfig)) {
|
|
312
368
|
// Handle error chunks
|
|
313
369
|
if (chunk.type === 'error') {
|
|
314
370
|
throw new Error(chunk.message);
|
|
315
371
|
}
|
|
372
|
+
// Handle thought chunks (internal reasoning)
|
|
373
|
+
if (chunk.type === 'thought') {
|
|
374
|
+
// Debug logging to file
|
|
375
|
+
fs.appendFileSync('cli_frontend_logs.txt', `[${new Date().toISOString()}] [CLI] Received thought chunk: ${chunk.content.substring(0, 100)}\n`);
|
|
376
|
+
if (!thoughtStartTime) {
|
|
377
|
+
thoughtStartTime = Date.now();
|
|
378
|
+
}
|
|
379
|
+
thoughtContent += chunk.content;
|
|
380
|
+
// Send thought to UI callback if available
|
|
381
|
+
if (this.onThoughtStreamCallback) {
|
|
382
|
+
fs.appendFileSync('cli_frontend_logs.txt', `[${new Date().toISOString()}] [CLI] Calling onThoughtStreamCallback\n`);
|
|
383
|
+
this.onThoughtStreamCallback(chunk.content);
|
|
384
|
+
}
|
|
385
|
+
else {
|
|
386
|
+
fs.appendFileSync('cli_frontend_logs.txt', `[${new Date().toISOString()}] [CLI] WARNING: onThoughtStreamCallback is not set!\n`);
|
|
387
|
+
}
|
|
388
|
+
continue;
|
|
389
|
+
}
|
|
316
390
|
// Handle text chunks
|
|
317
391
|
if (chunk.type === 'text') {
|
|
392
|
+
// If we were thinking and now got text, finalize the thought
|
|
393
|
+
if (thoughtStartTime) {
|
|
394
|
+
const thinkingDuration = Math.round((Date.now() - thoughtStartTime) / 1000);
|
|
395
|
+
if (this.onThoughtCompleteCallback) {
|
|
396
|
+
this.onThoughtCompleteCallback(thinkingDuration);
|
|
397
|
+
}
|
|
398
|
+
thoughtStartTime = null;
|
|
399
|
+
thoughtContent = '';
|
|
400
|
+
}
|
|
318
401
|
assistantMessage += chunk.content;
|
|
319
402
|
// Send chunk to UI in real-time (but filter out completion marker)
|
|
320
403
|
if (this.onResponseStreamCallback) {
|
|
321
|
-
//
|
|
322
|
-
|
|
323
|
-
if
|
|
324
|
-
|
|
404
|
+
// Add to buffer
|
|
405
|
+
streamBuffer += chunk.content;
|
|
406
|
+
// Check if buffer contains complete TASK_COMPLETE marker
|
|
407
|
+
if (streamBuffer.includes('<TASK_COMPLETE>')) {
|
|
408
|
+
// Remove the marker and flush buffer
|
|
409
|
+
const cleanBuffer = streamBuffer.replace(/<TASK_COMPLETE>/g, '');
|
|
410
|
+
if (cleanBuffer) {
|
|
411
|
+
this.onResponseStreamCallback(cleanBuffer);
|
|
412
|
+
}
|
|
413
|
+
streamBuffer = '';
|
|
414
|
+
}
|
|
415
|
+
else if (streamBuffer.length > 20) {
|
|
416
|
+
// If buffer is getting long without marker, flush it
|
|
417
|
+
// Keep last 20 chars in case marker is split
|
|
418
|
+
const toFlush = streamBuffer.slice(0, -20);
|
|
419
|
+
if (toFlush) {
|
|
420
|
+
this.onResponseStreamCallback(toFlush);
|
|
421
|
+
}
|
|
422
|
+
streamBuffer = streamBuffer.slice(-20);
|
|
325
423
|
}
|
|
326
424
|
}
|
|
327
425
|
}
|
|
328
426
|
// Handle tool call chunks
|
|
329
427
|
if (chunk.type === 'tool_call') {
|
|
428
|
+
// If we were thinking and now got a tool call, finalize the thought
|
|
429
|
+
if (thoughtStartTime) {
|
|
430
|
+
const thinkingDuration = Math.round((Date.now() - thoughtStartTime) / 1000);
|
|
431
|
+
if (this.onThoughtCompleteCallback) {
|
|
432
|
+
this.onThoughtCompleteCallback(thinkingDuration);
|
|
433
|
+
}
|
|
434
|
+
thoughtStartTime = null;
|
|
435
|
+
thoughtContent = '';
|
|
436
|
+
}
|
|
330
437
|
toolCalls.push(chunk.toolCall);
|
|
331
438
|
}
|
|
332
439
|
// Handle done chunk
|
|
333
440
|
if (chunk.type === 'done') {
|
|
441
|
+
// If we were thinking and stream ended, finalize the thought
|
|
442
|
+
if (thoughtStartTime) {
|
|
443
|
+
const thinkingDuration = Math.round((Date.now() - thoughtStartTime) / 1000);
|
|
444
|
+
fs.appendFileSync('cli_frontend_logs.txt', `[${new Date().toISOString()}] [CLI] Stream done, finalizing thinking: ${thinkingDuration}s\n`);
|
|
445
|
+
if (this.onThoughtCompleteCallback) {
|
|
446
|
+
fs.appendFileSync('cli_frontend_logs.txt', `[${new Date().toISOString()}] [CLI] Calling onThoughtCompleteCallback from done handler\n`);
|
|
447
|
+
this.onThoughtCompleteCallback(thinkingDuration);
|
|
448
|
+
}
|
|
449
|
+
else {
|
|
450
|
+
fs.appendFileSync('cli_frontend_logs.txt', `[${new Date().toISOString()}] [CLI] WARNING: onThoughtCompleteCallback not set in done handler!\n`);
|
|
451
|
+
}
|
|
452
|
+
thoughtStartTime = null;
|
|
453
|
+
thoughtContent = '';
|
|
454
|
+
}
|
|
455
|
+
else {
|
|
456
|
+
fs.appendFileSync('cli_frontend_logs.txt', `[${new Date().toISOString()}] [CLI] Stream done but no thinking was in progress\n`);
|
|
457
|
+
}
|
|
458
|
+
// Flush any remaining buffer
|
|
459
|
+
if (streamBuffer && this.onResponseStreamCallback) {
|
|
460
|
+
const cleanBuffer = streamBuffer.replace(/<TASK_COMPLETE>/g, '');
|
|
461
|
+
if (cleanBuffer) {
|
|
462
|
+
this.onResponseStreamCallback(cleanBuffer);
|
|
463
|
+
}
|
|
464
|
+
streamBuffer = '';
|
|
465
|
+
}
|
|
334
466
|
break;
|
|
335
467
|
}
|
|
336
468
|
}
|
|
@@ -342,6 +474,21 @@ Press Enter to continue...
|
|
|
342
474
|
}
|
|
343
475
|
// If there are tool calls, execute them and continue loop
|
|
344
476
|
if (toolCalls.length > 0) {
|
|
477
|
+
// Limit tool calls per turn to prevent overthinking
|
|
478
|
+
if (toolCalls.length > MAX_TOOL_CALLS_PER_TURN) {
|
|
479
|
+
console.warn(`⚠️ Model attempted ${toolCalls.length} tool calls, limiting to ${MAX_TOOL_CALLS_PER_TURN}`);
|
|
480
|
+
toolCalls = toolCalls.slice(0, MAX_TOOL_CALLS_PER_TURN);
|
|
481
|
+
}
|
|
482
|
+
// Helper function to truncate large results
|
|
483
|
+
const truncateResult = (result, maxLength = 500000) => {
|
|
484
|
+
const resultStr = typeof result === 'string' ? result : JSON.stringify(result);
|
|
485
|
+
if (resultStr.length > maxLength) {
|
|
486
|
+
const truncated = resultStr.substring(0, maxLength);
|
|
487
|
+
const linesRemoved = (resultStr.match(/\n/g) || []).length - (truncated.match(/\n/g) || []).length;
|
|
488
|
+
return truncated + `\n\n[... truncated ${resultStr.length - maxLength} characters, ~${linesRemoved} lines removed for brevity ...]`;
|
|
489
|
+
}
|
|
490
|
+
return result;
|
|
491
|
+
};
|
|
345
492
|
const toolResults = [];
|
|
346
493
|
let userCancelledOperation = false;
|
|
347
494
|
for (let i = 0; i < toolCalls.length; i++) {
|
|
@@ -351,7 +498,7 @@ Press Enter to continue...
|
|
|
351
498
|
// Don't send 'executing' status here - it causes duplication with approval UI
|
|
352
499
|
const result = await this.toolRegistry.execute(toolCall.name, toolCall.arguments, context);
|
|
353
500
|
if (result.success) {
|
|
354
|
-
// Notify UI: tool succeeded
|
|
501
|
+
// Notify UI: tool succeeded (send full result to UI)
|
|
355
502
|
if (this.onToolExecutionUpdate) {
|
|
356
503
|
this.onToolExecutionUpdate({
|
|
357
504
|
toolName: toolCall.name,
|
|
@@ -371,10 +518,12 @@ Press Enter to continue...
|
|
|
371
518
|
parsedResult = result.result;
|
|
372
519
|
}
|
|
373
520
|
}
|
|
521
|
+
// Truncate result before sending to AI (to avoid exceeding message size limits)
|
|
522
|
+
const truncatedResult = truncateResult(parsedResult);
|
|
374
523
|
toolResults.push({
|
|
375
524
|
tool_call_id: toolCall.id,
|
|
376
525
|
name: toolCall.name,
|
|
377
|
-
result:
|
|
526
|
+
result: truncatedResult,
|
|
378
527
|
});
|
|
379
528
|
}
|
|
380
529
|
else {
|
|
@@ -433,6 +582,7 @@ Press Enter to continue...
|
|
|
433
582
|
this.conversationHistory.push({
|
|
434
583
|
role: 'assistant',
|
|
435
584
|
content: assistantMessage || '',
|
|
585
|
+
tool_calls: toolCalls, // Store tool calls for MaaS models
|
|
436
586
|
});
|
|
437
587
|
// Add tool results to history
|
|
438
588
|
for (const toolResult of toolResults) {
|
|
@@ -454,6 +604,7 @@ Press Enter to continue...
|
|
|
454
604
|
this.conversationHistory.push({
|
|
455
605
|
role: 'assistant',
|
|
456
606
|
content: assistantMessage || '',
|
|
607
|
+
tool_calls: toolCalls, // Store tool calls for MaaS models
|
|
457
608
|
});
|
|
458
609
|
// Add tool results to conversation history as tool messages
|
|
459
610
|
// Format: { tool_call_id, name, result: <object or string> }
|
|
@@ -545,7 +696,8 @@ Press Enter to continue...
|
|
|
545
696
|
finalAssistantMessage = (finalAssistantMessage || 'Task processing limit reached.') + warningMessage;
|
|
546
697
|
}
|
|
547
698
|
// Send final message to user (without tool execution logs)
|
|
548
|
-
|
|
699
|
+
// Always remove the completion marker before displaying
|
|
700
|
+
const finalMessage = this.removeCompletionMarker(finalAssistantMessage || 'Task completed.');
|
|
549
701
|
// Save to conversation history
|
|
550
702
|
this.conversationHistory.push({
|
|
551
703
|
role: 'assistant',
|
|
@@ -593,6 +745,7 @@ Press Enter to continue...
|
|
|
593
745
|
`/config - View current configuration\n` +
|
|
594
746
|
`/model - Select from available Google models\n` +
|
|
595
747
|
`/plan - Toggle plan mode for complex implementations\n` +
|
|
748
|
+
`/quality - Toggle enhanced quality features (thinking protocol, validation)\n` +
|
|
596
749
|
`/sign-in - Sign in with Google (if not already signed in)\n` +
|
|
597
750
|
`/logout - Sign out, clear session, and exit CLI\n` +
|
|
598
751
|
`/exit - Exit the application\n\n` +
|
|
@@ -693,6 +846,24 @@ Press Enter to continue...
|
|
|
693
846
|
}
|
|
694
847
|
// Don't send any response message - the status bar shows the mode
|
|
695
848
|
return;
|
|
849
|
+
case 'quality':
|
|
850
|
+
// Toggle enhanced quality features
|
|
851
|
+
const currentQuality = this.configManager.get('enhancedQuality');
|
|
852
|
+
const newQuality = currentQuality === false; // Toggle (default is true)
|
|
853
|
+
this.configManager.set('enhancedQuality', newQuality);
|
|
854
|
+
responseMessage = newQuality
|
|
855
|
+
? '✅ Enhanced quality features enabled\n\n' +
|
|
856
|
+
'The AI will now use:\n' +
|
|
857
|
+
'• Structured thinking protocol before actions\n' +
|
|
858
|
+
'• Enhanced command execution hygiene\n' +
|
|
859
|
+
'• Intelligent file editing validation\n' +
|
|
860
|
+
'• Professional SRE/Architect persona'
|
|
861
|
+
: '⚠️ Enhanced quality features disabled\n\n' +
|
|
862
|
+
'The AI will use the basic system prompt without:\n' +
|
|
863
|
+
'• Thinking protocol\n' +
|
|
864
|
+
'• Advanced validation\n' +
|
|
865
|
+
'• Enhanced tool descriptions';
|
|
866
|
+
break;
|
|
696
867
|
case 'clear':
|
|
697
868
|
this.conversationHistory = [];
|
|
698
869
|
this.conversationStarted = false;
|
|
@@ -720,8 +891,19 @@ Press Enter to continue...
|
|
|
720
891
|
responseMessage = `❌ Failed to update configuration: ${error.message}`;
|
|
721
892
|
}
|
|
722
893
|
}
|
|
894
|
+
else if (configKey === 'enhancedQuality') {
|
|
895
|
+
// Parse boolean value
|
|
896
|
+
const boolValue = configValue.toLowerCase() === 'true' || configValue === '1';
|
|
897
|
+
try {
|
|
898
|
+
this.configManager.set('enhancedQuality', boolValue);
|
|
899
|
+
responseMessage = `✅ Configuration updated: ${configKey} = ${boolValue}`;
|
|
900
|
+
}
|
|
901
|
+
catch (error) {
|
|
902
|
+
responseMessage = `❌ Failed to update configuration: ${error.message}`;
|
|
903
|
+
}
|
|
904
|
+
}
|
|
723
905
|
else {
|
|
724
|
-
responseMessage = `❌ Error: Unknown config key: ${configKey}\nValid keys: model`;
|
|
906
|
+
responseMessage = `❌ Error: Unknown config key: ${configKey}\nValid keys: model, enhancedQuality`;
|
|
725
907
|
}
|
|
726
908
|
}
|
|
727
909
|
else {
|
|
@@ -732,7 +914,8 @@ Press Enter to continue...
|
|
|
732
914
|
const currentVersion = getCurrentVersion();
|
|
733
915
|
responseMessage = `Current Configuration:\n\n` +
|
|
734
916
|
`Version: ${currentVersion}\n` +
|
|
735
|
-
`Model: ${config.model || 'gemini-2.
|
|
917
|
+
`Model: ${config.model || 'gemini-2.5-flash (default)'}\n` +
|
|
918
|
+
`Enhanced Quality: ${config.enhancedQuality !== false ? '✅ Enabled' : '❌ Disabled'}\n` +
|
|
736
919
|
`Authentication: ${apiClient.isAuthenticated() ? '✅ Signed in' : '❌ Not signed in'}`;
|
|
737
920
|
}
|
|
738
921
|
break;
|
|
@@ -740,13 +923,16 @@ Press Enter to continue...
|
|
|
740
923
|
if (args.length === 0) {
|
|
741
924
|
// Show picker for model selection
|
|
742
925
|
if (this.onShowPickerCallback) {
|
|
743
|
-
const
|
|
926
|
+
const config = this.configManager.load();
|
|
927
|
+
const currentModelName = config.modelName || '';
|
|
928
|
+
// Import ALL_MODELS to show all variants including duplicates
|
|
929
|
+
const { ALL_MODELS } = await import('./config/models.js');
|
|
744
930
|
this.onShowPickerCallback({
|
|
745
931
|
message: 'Select Model',
|
|
746
932
|
type: 'model',
|
|
747
|
-
choices:
|
|
748
|
-
label: `${
|
|
749
|
-
value:
|
|
933
|
+
choices: ALL_MODELS.map((modelConfig, index) => ({
|
|
934
|
+
label: `${modelConfig.name} - ${modelConfig.description}${currentModelName === modelConfig.name ? ' [CURRENT]' : ''}`,
|
|
935
|
+
value: `${index}` // Use index as unique identifier
|
|
750
936
|
}))
|
|
751
937
|
});
|
|
752
938
|
return; // Don't send a text response, picker will handle it
|
package/dist/cli-adapter.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-adapter.js","sourceRoot":"","sources":["../src/cli-adapter.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli-adapter.js","sourceRoot":"","sources":["../src/cli-adapter.ts"],"names":[],"mappings":"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"}
|