centaurus-cli 3.0.1 → 3.1.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/ai/types.js +0 -1
- package/dist/ai/types.js.map +1 -1
- package/dist/cli-adapter.js +5047 -5158
- package/dist/cli-adapter.js.map +1 -1
- package/dist/commands/CommandParser.js +372 -315
- package/dist/commands/CommandParser.js.map +1 -1
- package/dist/config/build-config.js +11 -42
- package/dist/config/build-config.js.map +1 -1
- package/dist/config/defaultConfig.js +94 -82
- package/dist/config/defaultConfig.js.map +1 -1
- package/dist/config/manager.js +144 -160
- package/dist/config/manager.js.map +1 -1
- package/dist/config/mcp-config-manager.js +411 -364
- package/dist/config/mcp-config-manager.js.map +1 -1
- package/dist/config/models.js +118 -185
- package/dist/config/models.js.map +1 -1
- package/dist/config/slash-commands.js +186 -184
- package/dist/config/slash-commands.js.map +1 -1
- package/dist/config/types.js +33 -26
- package/dist/config/types.js.map +1 -1
- package/dist/context/command-detector.js +63 -67
- package/dist/context/command-detector.js.map +1 -1
- package/dist/context/context-manager.js +533 -518
- package/dist/context/context-manager.js.map +1 -1
- package/dist/context/handlers/docker-handler.js +518 -576
- package/dist/context/handlers/docker-handler.js.map +1 -1
- package/dist/context/handlers/ssh-handler.js +1050 -1109
- package/dist/context/handlers/ssh-handler.js.map +1 -1
- package/dist/context/handlers/wsl-handler.js +558 -630
- package/dist/context/handlers/wsl-handler.js.map +1 -1
- package/dist/context/index.js +42 -6
- package/dist/context/index.js.map +1 -1
- package/dist/context/subshell-handler.js +0 -4
- package/dist/context/subshell-handler.js.map +1 -1
- package/dist/context/types.js +20 -31
- package/dist/context/types.js.map +1 -1
- package/dist/hooks/useConnectivity.js +13 -10
- package/dist/hooks/useConnectivity.js.map +1 -1
- package/dist/hooks/useTerminalDimensions.js +67 -79
- package/dist/hooks/useTerminalDimensions.js.map +1 -1
- package/dist/index.js +228 -251
- package/dist/index.js.map +1 -1
- package/dist/mcp/mcp-command-handler.js +297 -260
- package/dist/mcp/mcp-command-handler.js.map +1 -1
- package/dist/mcp/mcp-server-manager.js +139 -155
- package/dist/mcp/mcp-server-manager.js.map +1 -1
- package/dist/mcp/mcp-tool-wrapper.js +74 -94
- package/dist/mcp/mcp-tool-wrapper.js.map +1 -1
- package/dist/services/ai-autocomplete-agent.js +169 -181
- package/dist/services/ai-autocomplete-agent.js.map +1 -1
- package/dist/services/ai-context-injector.js +180 -93
- package/dist/services/ai-context-injector.js.map +1 -1
- package/dist/services/ai-service-client.js +513 -456
- package/dist/services/ai-service-client.js.map +1 -1
- package/dist/services/api-client.js +443 -441
- package/dist/services/api-client.js.map +1 -1
- package/dist/services/auth-handler.js +162 -198
- package/dist/services/auth-handler.js.map +1 -1
- package/dist/services/background-task-manager.js +258 -282
- package/dist/services/background-task-manager.js.map +1 -1
- package/dist/services/checkpoint-manager.js +1526 -1512
- package/dist/services/checkpoint-manager.js.map +1 -1
- package/dist/services/clipboard-service.js +151 -200
- package/dist/services/clipboard-service.js.map +1 -1
- package/dist/services/connectivity-manager.js +63 -65
- package/dist/services/connectivity-manager.js.map +1 -1
- package/dist/services/conversation-manager.js +118 -121
- package/dist/services/conversation-manager.js.map +1 -1
- package/dist/services/environment-context-injector.js +160 -187
- package/dist/services/environment-context-injector.js.map +1 -1
- package/dist/services/fast-context-agent.js +203 -243
- package/dist/services/fast-context-agent.js.map +1 -1
- package/dist/services/input-detection-agent.js +190 -202
- package/dist/services/input-detection-agent.js.map +1 -1
- package/dist/services/input-requirement-detector.js +155 -189
- package/dist/services/input-requirement-detector.js.map +1 -1
- package/dist/services/local-chat-storage.js +342 -365
- package/dist/services/local-chat-storage.js.map +1 -1
- package/dist/services/monitored-shell-manager.js +225 -233
- package/dist/services/monitored-shell-manager.js.map +1 -1
- package/dist/services/ollama-service.js +293 -310
- package/dist/services/ollama-service.js.map +1 -1
- package/dist/services/rules-storage.js +142 -0
- package/dist/services/rules-storage.js.map +1 -0
- package/dist/services/session-quota-manager.js +219 -235
- package/dist/services/session-quota-manager.js.map +1 -1
- package/dist/services/shell-input-agent.js +299 -334
- package/dist/services/shell-input-agent.js.map +1 -1
- package/dist/services/sub-agent-manager.js +459 -501
- package/dist/services/sub-agent-manager.js.map +1 -1
- package/dist/services/warpify-detector.js +133 -183
- package/dist/services/warpify-detector.js.map +1 -1
- package/dist/services/workflow-storage.js +202 -217
- package/dist/services/workflow-storage.js.map +1 -1
- package/dist/test-ssh-handler.js +148 -193
- package/dist/test-ssh-handler.js.map +1 -1
- package/dist/tools/add-mcp.js +161 -0
- package/dist/tools/add-mcp.js.map +1 -0
- package/dist/tools/background-command.js +240 -273
- package/dist/tools/background-command.js.map +1 -1
- package/dist/tools/command.js +447 -440
- package/dist/tools/command.js.map +1 -1
- package/dist/tools/create-image.js +172 -202
- package/dist/tools/create-image.js.map +1 -1
- package/dist/tools/enter-remote-session.js +169 -215
- package/dist/tools/enter-remote-session.js.map +1 -1
- package/dist/tools/fast-context.js +60 -67
- package/dist/tools/fast-context.js.map +1 -1
- package/dist/tools/file-ops.js +601 -572
- package/dist/tools/file-ops.js.map +1 -1
- package/dist/tools/find-files.js +262 -303
- package/dist/tools/find-files.js.map +1 -1
- package/dist/tools/get-diff.js +423 -406
- package/dist/tools/get-diff.js.map +1 -1
- package/dist/tools/grep-search.js +966 -948
- package/dist/tools/grep-search.js.map +1 -1
- package/dist/tools/inspect-symbol.js +308 -323
- package/dist/tools/inspect-symbol.js.map +1 -1
- package/dist/tools/plan-mode.js +459 -503
- package/dist/tools/plan-mode.js.map +1 -1
- package/dist/tools/read-binary-file.js +160 -190
- package/dist/tools/read-binary-file.js.map +1 -1
- package/dist/tools/registry.js +100 -84
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/reproduce_issue.js +170 -151
- package/dist/tools/reproduce_issue.js.map +1 -1
- package/dist/tools/sub-agent.js +223 -228
- package/dist/tools/sub-agent.js.map +1 -1
- package/dist/tools/task-complete.js +28 -27
- package/dist/tools/task-complete.js.map +1 -1
- package/dist/tools/types.js +0 -1
- package/dist/tools/types.js.map +1 -1
- package/dist/tools/validation.js +96 -118
- package/dist/tools/validation.js.map +1 -1
- package/dist/tools/web-search.js +194 -194
- package/dist/tools/web-search.js.map +1 -1
- package/dist/tools/workflow-tool.js +77 -82
- package/dist/tools/workflow-tool.js.map +1 -1
- package/dist/types/index.js +0 -1
- package/dist/types/index.js.map +1 -1
- package/dist/types/rule.js +1 -0
- package/dist/types/rule.js.map +1 -0
- package/dist/types/workflow.js +0 -7
- package/dist/types/workflow.js.map +1 -1
- package/dist/ui/components/AgentTimer.js +24 -25
- package/dist/ui/components/AgentTimer.js.map +1 -1
- package/dist/ui/components/App.js +3266 -3263
- package/dist/ui/components/App.js.map +1 -1
- package/dist/ui/components/AuthScreen.js +22 -34
- package/dist/ui/components/AuthScreen.js.map +1 -1
- package/dist/ui/components/AuthWelcomeScreen.js +30 -24
- package/dist/ui/components/AuthWelcomeScreen.js.map +1 -1
- package/dist/ui/components/Breadcrumbs.js +53 -82
- package/dist/ui/components/Breadcrumbs.js.map +1 -1
- package/dist/ui/components/CircularSelectInput.js +59 -67
- package/dist/ui/components/CircularSelectInput.js.map +1 -1
- package/dist/ui/components/ClipboardFileAutocomplete.js +78 -39
- package/dist/ui/components/ClipboardFileAutocomplete.js.map +1 -1
- package/dist/ui/components/CodeBlock.js +24 -42
- package/dist/ui/components/CodeBlock.js.map +1 -1
- package/dist/ui/components/ConfigViewer.js +18 -25
- package/dist/ui/components/ConfigViewer.js.map +1 -1
- package/dist/ui/components/ConfirmPrompt.js +49 -71
- package/dist/ui/components/ConfirmPrompt.js.map +1 -1
- package/dist/ui/components/ConnectionStatusMessage.js +32 -83
- package/dist/ui/components/ConnectionStatusMessage.js.map +1 -1
- package/dist/ui/components/ContextWindowIndicator.js +34 -49
- package/dist/ui/components/ContextWindowIndicator.js.map +1 -1
- package/dist/ui/components/DetailedPlanReviewScreen.js +104 -106
- package/dist/ui/components/DetailedPlanReviewScreen.js.map +1 -1
- package/dist/ui/components/DiffViewer.js +68 -121
- package/dist/ui/components/DiffViewer.js.map +1 -1
- package/dist/ui/components/ErrorBoundary.js +40 -48
- package/dist/ui/components/ErrorBoundary.js.map +1 -1
- package/dist/ui/components/FileCreationPreview.js +29 -60
- package/dist/ui/components/FileCreationPreview.js.map +1 -1
- package/dist/ui/components/FileOperation.js +34 -29
- package/dist/ui/components/FileOperation.js.map +1 -1
- package/dist/ui/components/FileTagAutocomplete.js +55 -25
- package/dist/ui/components/FileTagAutocomplete.js.map +1 -1
- package/dist/ui/components/FontRecommendation.js.map +1 -1
- package/dist/ui/components/GitDiffBreadcrumb.js +29 -0
- package/dist/ui/components/GitDiffBreadcrumb.js.map +1 -0
- package/dist/ui/components/InputBox.js +1620 -2150
- package/dist/ui/components/InputBox.js.map +1 -1
- package/dist/ui/components/InteractiveShell.js +234 -352
- package/dist/ui/components/InteractiveShell.js.map +1 -1
- package/dist/ui/components/KeyboardHelp.js +34 -35
- package/dist/ui/components/KeyboardHelp.js.map +1 -1
- package/dist/ui/components/LoadingIndicator.js +22 -25
- package/dist/ui/components/LoadingIndicator.js.map +1 -1
- package/dist/ui/components/MCPAddScreen.js +40 -51
- package/dist/ui/components/MCPAddScreen.js.map +1 -1
- package/dist/ui/components/MCPListScreen.js +40 -48
- package/dist/ui/components/MCPListScreen.js.map +1 -1
- package/dist/ui/components/MCPServerListScreen.js +49 -56
- package/dist/ui/components/MCPServerListScreen.js.map +1 -1
- package/dist/ui/components/MarkdownRenderer.js +69 -96
- package/dist/ui/components/MarkdownRenderer.js.map +1 -1
- package/dist/ui/components/MessageBox.js +66 -48
- package/dist/ui/components/MessageBox.js.map +1 -1
- package/dist/ui/components/MessageDisplay.js +150 -142
- package/dist/ui/components/MessageDisplay.js.map +1 -1
- package/dist/ui/components/MonitorModeAIPanel.js +46 -65
- package/dist/ui/components/MonitorModeAIPanel.js.map +1 -1
- package/dist/ui/components/MultiLineInput.js +243 -277
- package/dist/ui/components/MultiLineInput.js.map +1 -1
- package/dist/ui/components/PasswordPrompt.js +37 -18
- package/dist/ui/components/PasswordPrompt.js.map +1 -1
- package/dist/ui/components/PlanAcceptedMessage.js +27 -38
- package/dist/ui/components/PlanAcceptedMessage.js.map +1 -1
- package/dist/ui/components/PlanReviewScreen.js +46 -50
- package/dist/ui/components/PlanReviewScreen.js.map +1 -1
- package/dist/ui/components/RulesEditorScreen.js +81 -0
- package/dist/ui/components/RulesEditorScreen.js.map +1 -0
- package/dist/ui/components/SelectPrompt.js +19 -8
- package/dist/ui/components/SelectPrompt.js.map +1 -1
- package/dist/ui/components/ShimmerText.js +44 -0
- package/dist/ui/components/ShimmerText.js.map +1 -0
- package/dist/ui/components/SlashCommandAutocomplete.js +49 -22
- package/dist/ui/components/SlashCommandAutocomplete.js.map +1 -1
- package/dist/ui/components/StatusBar.js +56 -87
- package/dist/ui/components/StatusBar.js.map +1 -1
- package/dist/ui/components/StreamingMessageDisplay.js +116 -99
- package/dist/ui/components/StreamingMessageDisplay.js.map +1 -1
- package/dist/ui/components/TaskCompletedMessage.js +28 -23
- package/dist/ui/components/TaskCompletedMessage.js.map +1 -1
- package/dist/ui/components/TaskProgressIndicator.js +44 -70
- package/dist/ui/components/TaskProgressIndicator.js.map +1 -1
- package/dist/ui/components/ThinkingDisplay.js +44 -41
- package/dist/ui/components/ThinkingDisplay.js.map +1 -1
- package/dist/ui/components/ToolExecutionMessage.js +772 -1326
- package/dist/ui/components/ToolExecutionMessage.js.map +1 -1
- package/dist/ui/components/ToolExecutionStatus.js +53 -84
- package/dist/ui/components/ToolExecutionStatus.js.map +1 -1
- package/dist/ui/components/ToolResult.js +22 -15
- package/dist/ui/components/ToolResult.js.map +1 -1
- package/dist/ui/components/VersionUpdatePrompt.js +88 -120
- package/dist/ui/components/VersionUpdatePrompt.js.map +1 -1
- package/dist/ui/components/WelcomeBanner.js +176 -26
- package/dist/ui/components/WelcomeBanner.js.map +1 -1
- package/dist/ui/components/WorkflowCreatorScreen.js +94 -161
- package/dist/ui/components/WorkflowCreatorScreen.js.map +1 -1
- package/dist/utils/ansi-encoder.js +30 -61
- package/dist/utils/ansi-encoder.js.map +1 -1
- package/dist/utils/chat-formatter.js +327 -305
- package/dist/utils/chat-formatter.js.map +1 -1
- package/dist/utils/command-history.js +152 -174
- package/dist/utils/command-history.js.map +1 -1
- package/dist/utils/context-sanitizer.js +49 -112
- package/dist/utils/context-sanitizer.js.map +1 -1
- package/dist/utils/conversation-logger.js +292 -324
- package/dist/utils/conversation-logger.js.map +1 -1
- package/dist/utils/custom-commands-manager.js +126 -131
- package/dist/utils/custom-commands-manager.js.map +1 -1
- package/dist/utils/editor-utils.js +732 -837
- package/dist/utils/editor-utils.js.map +1 -1
- package/dist/utils/file.js +174 -213
- package/dist/utils/file.js.map +1 -1
- package/dist/utils/git-stats.js +169 -0
- package/dist/utils/git-stats.js.map +1 -0
- package/dist/utils/input-classifier.js +960 -482
- package/dist/utils/input-classifier.js.map +1 -1
- package/dist/utils/logger.js +48 -73
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/markdown-parser.js +277 -310
- package/dist/utils/markdown-parser.js.map +1 -1
- package/dist/utils/rule-reference-resolver.js +54 -0
- package/dist/utils/rule-reference-resolver.js.map +1 -0
- package/dist/utils/shell.js +144 -156
- package/dist/utils/shell.js.map +1 -1
- package/dist/utils/state.js +23 -22
- package/dist/utils/state.js.map +1 -1
- package/dist/utils/syntax-checker.js +279 -327
- package/dist/utils/syntax-checker.js.map +1 -1
- package/dist/utils/terminal-output.js +199 -302
- package/dist/utils/terminal-output.js.map +1 -1
- package/dist/utils/text-clipboard.js +47 -70
- package/dist/utils/text-clipboard.js.map +1 -1
- package/dist/utils/unicode-sanitizer.js +134 -197
- package/dist/utils/unicode-sanitizer.js.map +1 -1
- package/dist/utils/version-checker.js +46 -56
- package/dist/utils/version-checker.js.map +1 -1
- package/package.json +6 -4
- package/dist/ai/types.d.ts +0 -20
- package/dist/ai/types.d.ts.map +0 -1
- package/dist/cli-adapter.d.ts +0 -514
- package/dist/cli-adapter.d.ts.map +0 -1
- package/dist/commands/CommandParser.d.ts +0 -27
- package/dist/commands/CommandParser.d.ts.map +0 -1
- package/dist/config/build-config.d.ts +0 -42
- package/dist/config/build-config.d.ts.map +0 -1
- package/dist/config/defaultConfig.d.ts +0 -79
- package/dist/config/defaultConfig.d.ts.map +0 -1
- package/dist/config/manager.d.ts +0 -62
- package/dist/config/manager.d.ts.map +0 -1
- package/dist/config/mcp-config-manager.d.ts +0 -79
- package/dist/config/mcp-config-manager.d.ts.map +0 -1
- package/dist/config/models.d.ts +0 -83
- package/dist/config/models.d.ts.map +0 -1
- package/dist/config/slash-commands.d.ts +0 -23
- package/dist/config/slash-commands.d.ts.map +0 -1
- package/dist/config/types.d.ts +0 -35
- package/dist/config/types.d.ts.map +0 -1
- package/dist/context/command-detector.d.ts +0 -50
- package/dist/context/command-detector.d.ts.map +0 -1
- package/dist/context/context-manager.d.ts +0 -157
- package/dist/context/context-manager.d.ts.map +0 -1
- package/dist/context/handlers/docker-handler.d.ts +0 -130
- package/dist/context/handlers/docker-handler.d.ts.map +0 -1
- package/dist/context/handlers/ssh-handler.d.ts +0 -201
- package/dist/context/handlers/ssh-handler.d.ts.map +0 -1
- package/dist/context/handlers/wsl-handler.d.ts +0 -146
- package/dist/context/handlers/wsl-handler.d.ts.map +0 -1
- package/dist/context/index.d.ts +0 -8
- package/dist/context/index.d.ts.map +0 -1
- package/dist/context/subshell-handler.d.ts +0 -165
- package/dist/context/subshell-handler.d.ts.map +0 -1
- package/dist/context/types.d.ts +0 -70
- package/dist/context/types.d.ts.map +0 -1
- package/dist/hooks/useConnectivity.d.ts +0 -2
- package/dist/hooks/useConnectivity.d.ts.map +0 -1
- package/dist/hooks/useTerminalDimensions.d.ts +0 -41
- package/dist/hooks/useTerminalDimensions.d.ts.map +0 -1
- package/dist/index.d.ts +0 -9
- package/dist/index.d.ts.map +0 -1
- package/dist/mcp/mcp-command-handler.d.ts +0 -47
- package/dist/mcp/mcp-command-handler.d.ts.map +0 -1
- package/dist/mcp/mcp-server-manager.d.ts +0 -30
- package/dist/mcp/mcp-server-manager.d.ts.map +0 -1
- package/dist/mcp/mcp-tool-wrapper.d.ts +0 -12
- package/dist/mcp/mcp-tool-wrapper.d.ts.map +0 -1
- package/dist/services/ai-autocomplete-agent.d.ts +0 -39
- package/dist/services/ai-autocomplete-agent.d.ts.map +0 -1
- package/dist/services/ai-context-injector.d.ts +0 -41
- package/dist/services/ai-context-injector.d.ts.map +0 -1
- package/dist/services/ai-service-client.d.ts +0 -128
- package/dist/services/ai-service-client.d.ts.map +0 -1
- package/dist/services/api-client.d.ts +0 -353
- package/dist/services/api-client.d.ts.map +0 -1
- package/dist/services/auth-handler.d.ts +0 -30
- package/dist/services/auth-handler.d.ts.map +0 -1
- package/dist/services/background-task-manager.d.ts +0 -114
- package/dist/services/background-task-manager.d.ts.map +0 -1
- package/dist/services/checkpoint-manager.d.ts +0 -204
- package/dist/services/checkpoint-manager.d.ts.map +0 -1
- package/dist/services/clipboard-service.d.ts +0 -37
- package/dist/services/clipboard-service.d.ts.map +0 -1
- package/dist/services/connectivity-manager.d.ts +0 -18
- package/dist/services/connectivity-manager.d.ts.map +0 -1
- package/dist/services/conversation-manager.d.ts +0 -73
- package/dist/services/conversation-manager.d.ts.map +0 -1
- package/dist/services/environment-context-injector.d.ts +0 -69
- package/dist/services/environment-context-injector.d.ts.map +0 -1
- package/dist/services/fast-context-agent.d.ts +0 -12
- package/dist/services/fast-context-agent.d.ts.map +0 -1
- package/dist/services/input-detection-agent.d.ts +0 -40
- package/dist/services/input-detection-agent.d.ts.map +0 -1
- package/dist/services/input-requirement-detector.d.ts +0 -28
- package/dist/services/input-requirement-detector.d.ts.map +0 -1
- package/dist/services/local-chat-storage.d.ts +0 -182
- package/dist/services/local-chat-storage.d.ts.map +0 -1
- package/dist/services/monitored-shell-manager.d.ts +0 -120
- package/dist/services/monitored-shell-manager.d.ts.map +0 -1
- package/dist/services/ollama-service.d.ts +0 -197
- package/dist/services/ollama-service.d.ts.map +0 -1
- package/dist/services/session-quota-manager.d.ts +0 -101
- package/dist/services/session-quota-manager.d.ts.map +0 -1
- package/dist/services/shell-input-agent.d.ts +0 -89
- package/dist/services/shell-input-agent.d.ts.map +0 -1
- package/dist/services/sub-agent-manager.d.ts +0 -140
- package/dist/services/sub-agent-manager.d.ts.map +0 -1
- package/dist/services/warpify-detector.d.ts +0 -43
- package/dist/services/warpify-detector.d.ts.map +0 -1
- package/dist/services/workflow-storage.d.ts +0 -72
- package/dist/services/workflow-storage.d.ts.map +0 -1
- package/dist/test-ssh-handler.d.ts +0 -8
- package/dist/test-ssh-handler.d.ts.map +0 -1
- package/dist/tools/background-command.d.ts +0 -11
- package/dist/tools/background-command.d.ts.map +0 -1
- package/dist/tools/command.d.ts +0 -3
- package/dist/tools/command.d.ts.map +0 -1
- package/dist/tools/create-image.d.ts +0 -10
- package/dist/tools/create-image.d.ts.map +0 -1
- package/dist/tools/enter-remote-session.d.ts +0 -48
- package/dist/tools/enter-remote-session.d.ts.map +0 -1
- package/dist/tools/fast-context.d.ts +0 -3
- package/dist/tools/fast-context.d.ts.map +0 -1
- package/dist/tools/file-ops.d.ts +0 -7
- package/dist/tools/file-ops.d.ts.map +0 -1
- package/dist/tools/find-files.d.ts +0 -49
- package/dist/tools/find-files.d.ts.map +0 -1
- package/dist/tools/get-diff.d.ts +0 -14
- package/dist/tools/get-diff.d.ts.map +0 -1
- package/dist/tools/grep-search.d.ts +0 -155
- package/dist/tools/grep-search.d.ts.map +0 -1
- package/dist/tools/inspect-symbol.d.ts +0 -32
- package/dist/tools/inspect-symbol.d.ts.map +0 -1
- package/dist/tools/plan-mode.d.ts +0 -140
- package/dist/tools/plan-mode.d.ts.map +0 -1
- package/dist/tools/read-binary-file.d.ts +0 -10
- package/dist/tools/read-binary-file.d.ts.map +0 -1
- package/dist/tools/registry.d.ts +0 -31
- package/dist/tools/registry.d.ts.map +0 -1
- package/dist/tools/reproduce_issue.d.ts +0 -2
- package/dist/tools/reproduce_issue.d.ts.map +0 -1
- package/dist/tools/sub-agent.d.ts +0 -9
- package/dist/tools/sub-agent.d.ts.map +0 -1
- package/dist/tools/task-complete.d.ts +0 -3
- package/dist/tools/task-complete.d.ts.map +0 -1
- package/dist/tools/types.d.ts +0 -40
- package/dist/tools/types.d.ts.map +0 -1
- package/dist/tools/validation.d.ts +0 -47
- package/dist/tools/validation.d.ts.map +0 -1
- package/dist/tools/web-search.d.ts +0 -24
- package/dist/tools/web-search.d.ts.map +0 -1
- package/dist/tools/workflow-tool.d.ts +0 -11
- package/dist/tools/workflow-tool.d.ts.map +0 -1
- package/dist/types/index.d.ts +0 -123
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/workflow.d.ts +0 -110
- package/dist/types/workflow.d.ts.map +0 -1
- package/dist/ui/components/AgentTimer.d.ts +0 -7
- package/dist/ui/components/AgentTimer.d.ts.map +0 -1
- package/dist/ui/components/App.d.ts +0 -197
- package/dist/ui/components/App.d.ts.map +0 -1
- package/dist/ui/components/AuthScreen.d.ts +0 -8
- package/dist/ui/components/AuthScreen.d.ts.map +0 -1
- package/dist/ui/components/AuthWelcomeScreen.d.ts +0 -8
- package/dist/ui/components/AuthWelcomeScreen.d.ts.map +0 -1
- package/dist/ui/components/Breadcrumbs.d.ts +0 -13
- package/dist/ui/components/Breadcrumbs.d.ts.map +0 -1
- package/dist/ui/components/CircularSelectInput.d.ts +0 -24
- package/dist/ui/components/CircularSelectInput.d.ts.map +0 -1
- package/dist/ui/components/ClipboardFileAutocomplete.d.ts +0 -10
- package/dist/ui/components/ClipboardFileAutocomplete.d.ts.map +0 -1
- package/dist/ui/components/CodeBlock.d.ts +0 -9
- package/dist/ui/components/CodeBlock.d.ts.map +0 -1
- package/dist/ui/components/ConfigViewer.d.ts +0 -11
- package/dist/ui/components/ConfigViewer.d.ts.map +0 -1
- package/dist/ui/components/ConfirmPrompt.d.ts +0 -13
- package/dist/ui/components/ConfirmPrompt.d.ts.map +0 -1
- package/dist/ui/components/ConnectionStatusMessage.d.ts +0 -17
- package/dist/ui/components/ConnectionStatusMessage.d.ts.map +0 -1
- package/dist/ui/components/ContextWindowIndicator.d.ts +0 -8
- package/dist/ui/components/ContextWindowIndicator.d.ts.map +0 -1
- package/dist/ui/components/DetailedPlanReviewScreen.d.ts +0 -17
- package/dist/ui/components/DetailedPlanReviewScreen.d.ts.map +0 -1
- package/dist/ui/components/DiffViewer.d.ts +0 -9
- package/dist/ui/components/DiffViewer.d.ts.map +0 -1
- package/dist/ui/components/ErrorBoundary.d.ts +0 -17
- package/dist/ui/components/ErrorBoundary.d.ts.map +0 -1
- package/dist/ui/components/FileCreationPreview.d.ts +0 -8
- package/dist/ui/components/FileCreationPreview.d.ts.map +0 -1
- package/dist/ui/components/FileOperation.d.ts +0 -10
- package/dist/ui/components/FileOperation.d.ts.map +0 -1
- package/dist/ui/components/FileTagAutocomplete.d.ts +0 -11
- package/dist/ui/components/FileTagAutocomplete.d.ts.map +0 -1
- package/dist/ui/components/FontRecommendation.d.ts +0 -1
- package/dist/ui/components/FontRecommendation.d.ts.map +0 -1
- package/dist/ui/components/InputBox.d.ts +0 -42
- package/dist/ui/components/InputBox.d.ts.map +0 -1
- package/dist/ui/components/InteractiveShell.d.ts +0 -30
- package/dist/ui/components/InteractiveShell.d.ts.map +0 -1
- package/dist/ui/components/KeyboardHelp.d.ts +0 -7
- package/dist/ui/components/KeyboardHelp.d.ts.map +0 -1
- package/dist/ui/components/LoadingIndicator.d.ts +0 -3
- package/dist/ui/components/LoadingIndicator.d.ts.map +0 -1
- package/dist/ui/components/MCPAddScreen.d.ts +0 -13
- package/dist/ui/components/MCPAddScreen.d.ts.map +0 -1
- package/dist/ui/components/MCPListScreen.d.ts +0 -17
- package/dist/ui/components/MCPListScreen.d.ts.map +0 -1
- package/dist/ui/components/MCPServerListScreen.d.ts +0 -16
- package/dist/ui/components/MCPServerListScreen.d.ts.map +0 -1
- package/dist/ui/components/MarkdownRenderer.d.ts +0 -8
- package/dist/ui/components/MarkdownRenderer.d.ts.map +0 -1
- package/dist/ui/components/MessageBox.d.ts +0 -10
- package/dist/ui/components/MessageBox.d.ts.map +0 -1
- package/dist/ui/components/MessageDisplay.d.ts +0 -14
- package/dist/ui/components/MessageDisplay.d.ts.map +0 -1
- package/dist/ui/components/MonitorModeAIPanel.d.ts +0 -23
- package/dist/ui/components/MonitorModeAIPanel.d.ts.map +0 -1
- package/dist/ui/components/MultiLineInput.d.ts +0 -13
- package/dist/ui/components/MultiLineInput.d.ts.map +0 -1
- package/dist/ui/components/PasswordPrompt.d.ts +0 -9
- package/dist/ui/components/PasswordPrompt.d.ts.map +0 -1
- package/dist/ui/components/PlanAcceptedMessage.d.ts +0 -20
- package/dist/ui/components/PlanAcceptedMessage.d.ts.map +0 -1
- package/dist/ui/components/PlanReviewScreen.d.ts +0 -14
- package/dist/ui/components/PlanReviewScreen.d.ts.map +0 -1
- package/dist/ui/components/SelectPrompt.d.ts +0 -12
- package/dist/ui/components/SelectPrompt.d.ts.map +0 -1
- package/dist/ui/components/SlashCommandAutocomplete.d.ts +0 -13
- package/dist/ui/components/SlashCommandAutocomplete.d.ts.map +0 -1
- package/dist/ui/components/StatusBar.d.ts +0 -14
- package/dist/ui/components/StatusBar.d.ts.map +0 -1
- package/dist/ui/components/StreamingMessageDisplay.d.ts +0 -15
- package/dist/ui/components/StreamingMessageDisplay.d.ts.map +0 -1
- package/dist/ui/components/TaskCompletedMessage.d.ts +0 -14
- package/dist/ui/components/TaskCompletedMessage.d.ts.map +0 -1
- package/dist/ui/components/TaskProgressIndicator.d.ts +0 -18
- package/dist/ui/components/TaskProgressIndicator.d.ts.map +0 -1
- package/dist/ui/components/ThinkingDisplay.d.ts +0 -15
- package/dist/ui/components/ThinkingDisplay.d.ts.map +0 -1
- package/dist/ui/components/ToolExecutionMessage.d.ts +0 -8
- package/dist/ui/components/ToolExecutionMessage.d.ts.map +0 -1
- package/dist/ui/components/ToolExecutionStatus.d.ts +0 -10
- package/dist/ui/components/ToolExecutionStatus.d.ts.map +0 -1
- package/dist/ui/components/ToolResult.d.ts +0 -10
- package/dist/ui/components/ToolResult.d.ts.map +0 -1
- package/dist/ui/components/VersionUpdatePrompt.d.ts +0 -9
- package/dist/ui/components/VersionUpdatePrompt.d.ts.map +0 -1
- package/dist/ui/components/WelcomeBanner.d.ts +0 -3
- package/dist/ui/components/WelcomeBanner.d.ts.map +0 -1
- package/dist/ui/components/WorkflowCreatorScreen.d.ts +0 -25
- package/dist/ui/components/WorkflowCreatorScreen.d.ts.map +0 -1
- package/dist/utils/ansi-encoder.d.ts +0 -7
- package/dist/utils/ansi-encoder.d.ts.map +0 -1
- package/dist/utils/chat-formatter.d.ts +0 -12
- package/dist/utils/chat-formatter.d.ts.map +0 -1
- package/dist/utils/command-history.d.ts +0 -24
- package/dist/utils/command-history.d.ts.map +0 -1
- package/dist/utils/context-sanitizer.d.ts +0 -50
- package/dist/utils/context-sanitizer.d.ts.map +0 -1
- package/dist/utils/conversation-logger.d.ts +0 -142
- package/dist/utils/conversation-logger.d.ts.map +0 -1
- package/dist/utils/custom-commands-manager.d.ts +0 -59
- package/dist/utils/custom-commands-manager.d.ts.map +0 -1
- package/dist/utils/editor-utils.d.ts +0 -101
- package/dist/utils/editor-utils.d.ts.map +0 -1
- package/dist/utils/file.d.ts +0 -61
- package/dist/utils/file.d.ts.map +0 -1
- package/dist/utils/input-classifier.d.ts +0 -25
- package/dist/utils/input-classifier.d.ts.map +0 -1
- package/dist/utils/logger.d.ts +0 -17
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/markdown-parser.d.ts +0 -60
- package/dist/utils/markdown-parser.d.ts.map +0 -1
- package/dist/utils/shell.d.ts +0 -47
- package/dist/utils/shell.d.ts.map +0 -1
- package/dist/utils/state.d.ts +0 -13
- package/dist/utils/state.d.ts.map +0 -1
- package/dist/utils/syntax-checker.d.ts +0 -24
- package/dist/utils/syntax-checker.d.ts.map +0 -1
- package/dist/utils/terminal-output.d.ts +0 -25
- package/dist/utils/terminal-output.d.ts.map +0 -1
- package/dist/utils/text-clipboard.d.ts +0 -12
- package/dist/utils/text-clipboard.d.ts.map +0 -1
- package/dist/utils/unicode-sanitizer.d.ts +0 -44
- package/dist/utils/unicode-sanitizer.d.ts.map +0 -1
- package/dist/utils/version-checker.d.ts +0 -14
- package/dist/utils/version-checker.d.ts.map +0 -1
|
@@ -1,182 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Local Chat Storage Service
|
|
3
|
-
*
|
|
4
|
-
* Provides persistent local storage for CLI conversations.
|
|
5
|
-
* Stores chats in ~/.centaurus/chats/ directory as JSON files.
|
|
6
|
-
*/
|
|
7
|
-
/**
|
|
8
|
-
* Message interface matching the AIMessage type from ai-service-client
|
|
9
|
-
*/
|
|
10
|
-
export interface StoredMessage {
|
|
11
|
-
role: 'user' | 'assistant' | 'system' | 'tool';
|
|
12
|
-
content: string;
|
|
13
|
-
tool_calls?: Array<{
|
|
14
|
-
id: string;
|
|
15
|
-
name: string;
|
|
16
|
-
arguments: Record<string, any>;
|
|
17
|
-
}>;
|
|
18
|
-
tool_call_id?: string;
|
|
19
|
-
}
|
|
20
|
-
/**
|
|
21
|
-
* UI Message for restoring full chat history display
|
|
22
|
-
* This is a serializable version of the Message type from types/index.ts
|
|
23
|
-
*/
|
|
24
|
-
export interface StoredUIMessage {
|
|
25
|
-
id: string;
|
|
26
|
-
role: 'user' | 'assistant' | 'system' | 'tool';
|
|
27
|
-
content: string;
|
|
28
|
-
timestamp?: string;
|
|
29
|
-
toolExecution?: {
|
|
30
|
-
toolName: string;
|
|
31
|
-
status: 'pending' | 'executing' | 'completed' | 'error';
|
|
32
|
-
result?: string;
|
|
33
|
-
error?: string;
|
|
34
|
-
arguments?: Record<string, any>;
|
|
35
|
-
};
|
|
36
|
-
shouldStream?: boolean;
|
|
37
|
-
isCommandMode?: boolean;
|
|
38
|
-
tool_call_id?: string;
|
|
39
|
-
tool_calls?: Array<{
|
|
40
|
-
id: string;
|
|
41
|
-
name: string;
|
|
42
|
-
arguments: Record<string, any>;
|
|
43
|
-
}>;
|
|
44
|
-
thinkingDuration?: number;
|
|
45
|
-
taskCompletion?: {
|
|
46
|
-
taskNumber: number;
|
|
47
|
-
totalTasks: number;
|
|
48
|
-
taskDescription: string;
|
|
49
|
-
completionNote?: string;
|
|
50
|
-
};
|
|
51
|
-
planAccepted?: {
|
|
52
|
-
planTitle?: string;
|
|
53
|
-
totalTasks?: number;
|
|
54
|
-
};
|
|
55
|
-
connectionStatus?: {
|
|
56
|
-
type: 'ssh' | 'wsl' | 'docker';
|
|
57
|
-
status: 'connecting' | 'connected' | 'error' | 'disconnected';
|
|
58
|
-
connectionString?: string;
|
|
59
|
-
error?: string;
|
|
60
|
-
};
|
|
61
|
-
}
|
|
62
|
-
/**
|
|
63
|
-
* Remote environment context for SSH/WSL/Docker sessions
|
|
64
|
-
* Used to restore remote session state when resuming a chat
|
|
65
|
-
*/
|
|
66
|
-
export interface StoredRemoteContext {
|
|
67
|
-
type: 'ssh' | 'wsl' | 'docker';
|
|
68
|
-
connectionCommand: string;
|
|
69
|
-
remoteCwd: string;
|
|
70
|
-
localCwdBeforeRemote: string;
|
|
71
|
-
metadata?: {
|
|
72
|
-
hostname?: string;
|
|
73
|
-
username?: string;
|
|
74
|
-
distroName?: string;
|
|
75
|
-
containerId?: string;
|
|
76
|
-
port?: number;
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
/**
|
|
80
|
-
* Local chat metadata (without messages, for listing)
|
|
81
|
-
*/
|
|
82
|
-
export interface LocalChatMeta {
|
|
83
|
-
id: string;
|
|
84
|
-
title: string;
|
|
85
|
-
createdAt: string;
|
|
86
|
-
updatedAt: string;
|
|
87
|
-
messageCount: number;
|
|
88
|
-
environment?: string;
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Full local chat with messages
|
|
92
|
-
*/
|
|
93
|
-
export interface LocalChat extends LocalChatMeta {
|
|
94
|
-
messages: StoredMessage[];
|
|
95
|
-
uiMessages?: StoredUIMessage[];
|
|
96
|
-
cwd?: string;
|
|
97
|
-
remoteContext?: StoredRemoteContext;
|
|
98
|
-
remoteContextStack?: StoredRemoteContext[];
|
|
99
|
-
backendConversationId?: string;
|
|
100
|
-
}
|
|
101
|
-
/**
|
|
102
|
-
* LocalChatStorage class for managing local conversation persistence
|
|
103
|
-
*/
|
|
104
|
-
export declare class LocalChatStorage {
|
|
105
|
-
private chatsDir;
|
|
106
|
-
private indexPath;
|
|
107
|
-
private chatIndex;
|
|
108
|
-
private indexLoaded;
|
|
109
|
-
constructor();
|
|
110
|
-
/**
|
|
111
|
-
* Load the metadata index from disk, or rebuild it from chat files if missing
|
|
112
|
-
*/
|
|
113
|
-
private loadIndex;
|
|
114
|
-
/**
|
|
115
|
-
* Rebuild the index by reading metadata from all chat files
|
|
116
|
-
* This is a one-time migration that reads full files, but only happens once
|
|
117
|
-
*/
|
|
118
|
-
private rebuildIndex;
|
|
119
|
-
/**
|
|
120
|
-
* Save the metadata index to disk
|
|
121
|
-
*/
|
|
122
|
-
private saveIndex;
|
|
123
|
-
/**
|
|
124
|
-
* Update the index entry for a chat
|
|
125
|
-
*/
|
|
126
|
-
private updateIndexEntry;
|
|
127
|
-
/**
|
|
128
|
-
* Generate a unique chat ID based on timestamp
|
|
129
|
-
*/
|
|
130
|
-
generateChatId(): string;
|
|
131
|
-
/**
|
|
132
|
-
* Generate a title from the first user message
|
|
133
|
-
*/
|
|
134
|
-
generateTitle(messages: StoredMessage[]): string;
|
|
135
|
-
/**
|
|
136
|
-
* Get the file path for a chat
|
|
137
|
-
*/
|
|
138
|
-
private getChatPath;
|
|
139
|
-
/**
|
|
140
|
-
* Save a chat to disk
|
|
141
|
-
* @param remoteContext - undefined = preserve existing, null = clear, StoredRemoteContext = set new value
|
|
142
|
-
* @param remoteContextStack - Stack of nested contexts for SSH>SSH, SSH>Docker etc.
|
|
143
|
-
*/
|
|
144
|
-
saveChat(chatId: string, messages: StoredMessage[], uiMessages?: StoredUIMessage[], cwd?: string, remoteContext?: StoredRemoteContext | null, remoteContextStack?: StoredRemoteContext[] | null): LocalChat;
|
|
145
|
-
/**
|
|
146
|
-
* Set the backend conversation ID for a chat
|
|
147
|
-
* This is used to associate local chats with backend file storage
|
|
148
|
-
*/
|
|
149
|
-
setBackendConversationId(chatId: string, backendConversationId: string): boolean;
|
|
150
|
-
/**
|
|
151
|
-
* Get the backend conversation ID for a chat (if any)
|
|
152
|
-
*/
|
|
153
|
-
getBackendConversationId(chatId: string): string | undefined;
|
|
154
|
-
/**
|
|
155
|
-
* Load a chat by ID
|
|
156
|
-
*/
|
|
157
|
-
loadChat(chatId: string): LocalChat | null;
|
|
158
|
-
/**
|
|
159
|
-
* List all chats (metadata only, sorted by updatedAt descending)
|
|
160
|
-
* Uses the in-memory index to avoid loading full chat files
|
|
161
|
-
*/
|
|
162
|
-
listChats(): LocalChatMeta[];
|
|
163
|
-
/**
|
|
164
|
-
* Delete a chat by ID
|
|
165
|
-
*/
|
|
166
|
-
deleteChat(chatId: string): boolean;
|
|
167
|
-
/**
|
|
168
|
-
* Import a full chat object (used for restoring from cloud sync)
|
|
169
|
-
* Overwrites existing chat with same ID if present
|
|
170
|
-
*/
|
|
171
|
-
importChat(chat: LocalChat): boolean;
|
|
172
|
-
/**
|
|
173
|
-
* Rename a chat by ID
|
|
174
|
-
*/
|
|
175
|
-
renameChat(chatId: string, newTitle: string): boolean;
|
|
176
|
-
/**
|
|
177
|
-
* Get the chats directory path
|
|
178
|
-
*/
|
|
179
|
-
getChatsDir(): string;
|
|
180
|
-
}
|
|
181
|
-
export declare const localChatStorage: LocalChatStorage;
|
|
182
|
-
//# sourceMappingURL=local-chat-storage.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"local-chat-storage.d.ts","sourceRoot":"","sources":["../../src/services/local-chat-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,120 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Monitored Shell Manager Service
|
|
3
|
-
*
|
|
4
|
-
* Manages agent-controlled shell sessions, detecting when input is required
|
|
5
|
-
* and coordinating with the AI to provide appropriate responses.
|
|
6
|
-
*/
|
|
7
|
-
import { InputDetectionResult } from './input-requirement-detector.js';
|
|
8
|
-
/**
|
|
9
|
-
* Represents a message displayed during monitoring mode
|
|
10
|
-
*/
|
|
11
|
-
export interface MonitorMessage {
|
|
12
|
-
id: string;
|
|
13
|
-
type: 'thinking' | 'tool_call' | 'text' | 'input_sent';
|
|
14
|
-
content: string;
|
|
15
|
-
timestamp: Date;
|
|
16
|
-
isAnswered?: boolean;
|
|
17
|
-
}
|
|
18
|
-
/**
|
|
19
|
-
* Represents an active monitored shell session
|
|
20
|
-
*/
|
|
21
|
-
export interface MonitoredShellSession {
|
|
22
|
-
shellId: string;
|
|
23
|
-
command: string;
|
|
24
|
-
cwd: string;
|
|
25
|
-
output: string;
|
|
26
|
-
isRunning: boolean;
|
|
27
|
-
lastOutputTime: number;
|
|
28
|
-
monitoringMessages: MonitorMessage[];
|
|
29
|
-
inputCheckInterval?: NodeJS.Timeout;
|
|
30
|
-
onInputRequired?: (session: MonitoredShellSession, detectionResult: InputDetectionResult) => void;
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Callback when the AI needs to be prompted for shell input
|
|
34
|
-
*/
|
|
35
|
-
export type OnAIInputRequestCallback = (shellId: string, shellOutput: string, promptContext: string, inputType: string) => Promise<string | null>;
|
|
36
|
-
/**
|
|
37
|
-
* Monitored Shell Manager
|
|
38
|
-
*
|
|
39
|
-
* Handles tracking of agent-controlled shells and coordinating input detection.
|
|
40
|
-
*/
|
|
41
|
-
declare class MonitoredShellManagerClass {
|
|
42
|
-
private sessions;
|
|
43
|
-
private onAIInputRequest?;
|
|
44
|
-
private onMonitoringMessage?;
|
|
45
|
-
private inputCheckIntervalMs;
|
|
46
|
-
private shellIdCounter;
|
|
47
|
-
/**
|
|
48
|
-
* Generate a unique shell ID
|
|
49
|
-
*/
|
|
50
|
-
generateShellId(): string;
|
|
51
|
-
/**
|
|
52
|
-
* Set the callback for requesting AI input
|
|
53
|
-
*/
|
|
54
|
-
setOnAIInputRequest(callback: OnAIInputRequestCallback): void;
|
|
55
|
-
/**
|
|
56
|
-
* Set the callback for new monitoring messages
|
|
57
|
-
*/
|
|
58
|
-
setOnMonitoringMessage(callback: (shellId: string, message: MonitorMessage) => void): void;
|
|
59
|
-
/**
|
|
60
|
-
* Start monitoring a shell session
|
|
61
|
-
*/
|
|
62
|
-
startMonitoring(shellId: string, command: string, cwd: string, onInputRequired?: (session: MonitoredShellSession, detectionResult: InputDetectionResult) => void): MonitoredShellSession;
|
|
63
|
-
/**
|
|
64
|
-
* Stop monitoring a shell session
|
|
65
|
-
*/
|
|
66
|
-
stopMonitoring(shellId: string): void;
|
|
67
|
-
/**
|
|
68
|
-
* Update shell output for a monitored session
|
|
69
|
-
*/
|
|
70
|
-
updateOutput(shellId: string, newOutput: string): void;
|
|
71
|
-
/**
|
|
72
|
-
* Mark a shell session as complete
|
|
73
|
-
*/
|
|
74
|
-
markComplete(shellId: string): void;
|
|
75
|
-
/**
|
|
76
|
-
* Get a session by ID
|
|
77
|
-
*/
|
|
78
|
-
getSession(shellId: string): MonitoredShellSession | undefined;
|
|
79
|
-
/**
|
|
80
|
-
* Check if a specific shell session is active
|
|
81
|
-
*/
|
|
82
|
-
isSessionActive(shellId: string): boolean;
|
|
83
|
-
/**
|
|
84
|
-
* Get all active shell IDs
|
|
85
|
-
*/
|
|
86
|
-
getActiveShellIds(): string[];
|
|
87
|
-
/**
|
|
88
|
-
* Add a monitoring message to a session
|
|
89
|
-
*/
|
|
90
|
-
addMonitoringMessage(shellId: string, type: MonitorMessage['type'], content: string): MonitorMessage;
|
|
91
|
-
/**
|
|
92
|
-
* Get monitoring messages for a session
|
|
93
|
-
*/
|
|
94
|
-
getMonitoringMessages(shellId: string): MonitorMessage[];
|
|
95
|
-
/**
|
|
96
|
-
* Clear monitoring messages for a session
|
|
97
|
-
*/
|
|
98
|
-
clearMonitoringMessages(shellId: string): void;
|
|
99
|
-
/**
|
|
100
|
-
* Mark the most recent 'thinking' message as answered
|
|
101
|
-
* This changes the spinner to a tick in the UI
|
|
102
|
-
*/
|
|
103
|
-
markLastThinkingAsAnswered(shellId: string): void;
|
|
104
|
-
/**
|
|
105
|
-
* Check if a shell requires input and trigger AI prompt if needed
|
|
106
|
-
*/
|
|
107
|
-
private checkForInputRequirement;
|
|
108
|
-
/**
|
|
109
|
-
* Build a prompt for the AI to provide shell input
|
|
110
|
-
* This is used when the AI needs to decide what to input
|
|
111
|
-
*/
|
|
112
|
-
buildInputPrompt(shellOutput: string, promptContext: string, inputType: string, originalCommand: string): string;
|
|
113
|
-
/**
|
|
114
|
-
* Get the last N lines of output
|
|
115
|
-
*/
|
|
116
|
-
private getLastNLines;
|
|
117
|
-
}
|
|
118
|
-
export declare const MonitoredShellManager: MonitoredShellManagerClass;
|
|
119
|
-
export {};
|
|
120
|
-
//# sourceMappingURL=monitored-shell-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"monitored-shell-manager.d.ts","sourceRoot":"","sources":["../../src/services/monitored-shell-manager.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAyE,oBAAoB,EAA4B,MAAM,iCAAiC,CAAC;AAGxK;;GAEG;AACH,MAAM,WAAW,cAAc;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,MAAM,GAAG,YAAY,CAAC;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,IAAI,CAAC;IAChB,UAAU,CAAC,EAAE,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,kBAAkB,EAAE,cAAc,EAAE,CAAC;IACrC,kBAAkB,CAAC,EAAE,MAAM,CAAC,OAAO,CAAC;IACpC,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,oBAAoB,KAAK,IAAI,CAAC;CACrG;AAED;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,CACnC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,SAAS,EAAE,MAAM,KAChB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;AAE5B;;;;GAIG;AACH,cAAM,0BAA0B;IAC5B,OAAO,CAAC,QAAQ,CAAiD;IACjE,OAAO,CAAC,gBAAgB,CAAC,CAA2B;IACpD,OAAO,CAAC,mBAAmB,CAAC,CAAqD;IACjF,OAAO,CAAC,oBAAoB,CAAe;IAC3C,OAAO,CAAC,cAAc,CAAa;IAEnC;;OAEG;IACH,eAAe,IAAI,MAAM;IAKzB;;OAEG;IACH,mBAAmB,CAAC,QAAQ,EAAE,wBAAwB,GAAG,IAAI;IAI7D;;OAEG;IACH,sBAAsB,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,KAAK,IAAI,GAAG,IAAI;IAI1F;;OAEG;IACH,eAAe,CACX,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,qBAAqB,EAAE,eAAe,EAAE,oBAAoB,KAAK,IAAI,GAClG,qBAAqB;IA2BxB;;OAEG;IACH,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAWrC;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAQtD;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAQnC;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB,GAAG,SAAS;IAI9D;;OAEG;IACH,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO;IAIzC;;OAEG;IACH,iBAAiB,IAAI,MAAM,EAAE;IAI7B;;OAEG;IACH,oBAAoB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,cAAc,CAAC,MAAM,CAAC,EAAE,OAAO,EAAE,MAAM,GAAG,cAAc;IAqBpG;;OAEG;IACH,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,cAAc,EAAE;IAIxD;;OAEG;IACH,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAO9C;;;OAGG;IACH,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI;IAejD;;OAEG;YACW,wBAAwB;IA6CtC;;;OAGG;IACH,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM;IAuBhH;;OAEG;IACH,OAAO,CAAC,aAAa;CAIxB;AAGD,eAAO,MAAM,qBAAqB,4BAAmC,CAAC"}
|
|
@@ -1,197 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Ollama Service
|
|
3
|
-
* Client for interacting with the local Ollama API
|
|
4
|
-
*
|
|
5
|
-
* Ollama exposes a REST API at http://localhost:11434 by default.
|
|
6
|
-
* This service provides methods for:
|
|
7
|
-
* - Checking if Ollama is running
|
|
8
|
-
* - Fetching available local models
|
|
9
|
-
* - Sending chat messages to local models
|
|
10
|
-
*/
|
|
11
|
-
/**
|
|
12
|
-
* Ollama model information as returned by /api/tags
|
|
13
|
-
*/
|
|
14
|
-
export interface OllamaModel {
|
|
15
|
-
name: string;
|
|
16
|
-
model: string;
|
|
17
|
-
size: number;
|
|
18
|
-
digest: string;
|
|
19
|
-
modified_at: string;
|
|
20
|
-
details?: {
|
|
21
|
-
family?: string;
|
|
22
|
-
parameter_size?: string;
|
|
23
|
-
quantization_level?: string;
|
|
24
|
-
};
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Response from Ollama /api/tags endpoint
|
|
28
|
-
*/
|
|
29
|
-
export interface OllamaTagsResponse {
|
|
30
|
-
models: OllamaModel[];
|
|
31
|
-
}
|
|
32
|
-
/**
|
|
33
|
-
* Chat message format for Ollama (with tool support)
|
|
34
|
-
*/
|
|
35
|
-
export interface OllamaChatMessage {
|
|
36
|
-
role: 'system' | 'user' | 'assistant' | 'tool';
|
|
37
|
-
content: string;
|
|
38
|
-
images?: string[];
|
|
39
|
-
tool_calls?: OllamaToolCall[];
|
|
40
|
-
tool_name?: string;
|
|
41
|
-
}
|
|
42
|
-
/**
|
|
43
|
-
* Ollama tool call structure (OpenAI-compatible)
|
|
44
|
-
*/
|
|
45
|
-
export interface OllamaToolCall {
|
|
46
|
-
function: {
|
|
47
|
-
name: string;
|
|
48
|
-
arguments: Record<string, any>;
|
|
49
|
-
};
|
|
50
|
-
}
|
|
51
|
-
/**
|
|
52
|
-
* Ollama tool definition (OpenAI-compatible)
|
|
53
|
-
*/
|
|
54
|
-
export interface OllamaTool {
|
|
55
|
-
type: 'function';
|
|
56
|
-
function: {
|
|
57
|
-
name: string;
|
|
58
|
-
description: string;
|
|
59
|
-
parameters: {
|
|
60
|
-
type: 'object';
|
|
61
|
-
properties: Record<string, {
|
|
62
|
-
type: string;
|
|
63
|
-
description: string;
|
|
64
|
-
enum?: string[];
|
|
65
|
-
}>;
|
|
66
|
-
required?: string[];
|
|
67
|
-
};
|
|
68
|
-
};
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Request body for Ollama /api/chat endpoint (with tools support)
|
|
72
|
-
*/
|
|
73
|
-
export interface OllamaChatRequest {
|
|
74
|
-
model: string;
|
|
75
|
-
messages: OllamaChatMessage[];
|
|
76
|
-
stream?: boolean;
|
|
77
|
-
format?: 'json';
|
|
78
|
-
tools?: OllamaTool[];
|
|
79
|
-
options?: {
|
|
80
|
-
temperature?: number;
|
|
81
|
-
top_p?: number;
|
|
82
|
-
top_k?: number;
|
|
83
|
-
num_predict?: number;
|
|
84
|
-
stop?: string[];
|
|
85
|
-
};
|
|
86
|
-
}
|
|
87
|
-
/**
|
|
88
|
-
* Model families that support tool calling
|
|
89
|
-
* Based on https://ollama.com/search?c=tools
|
|
90
|
-
*/
|
|
91
|
-
export declare const TOOL_CAPABLE_MODEL_FAMILIES: string[];
|
|
92
|
-
/**
|
|
93
|
-
* Single streaming response chunk from Ollama /api/chat
|
|
94
|
-
*/
|
|
95
|
-
export interface OllamaChatStreamChunk {
|
|
96
|
-
model: string;
|
|
97
|
-
created_at: string;
|
|
98
|
-
message: {
|
|
99
|
-
role: 'assistant';
|
|
100
|
-
content: string;
|
|
101
|
-
tool_calls?: OllamaToolCall[];
|
|
102
|
-
};
|
|
103
|
-
done: boolean;
|
|
104
|
-
done_reason?: string;
|
|
105
|
-
total_duration?: number;
|
|
106
|
-
load_duration?: number;
|
|
107
|
-
prompt_eval_count?: number;
|
|
108
|
-
prompt_eval_duration?: number;
|
|
109
|
-
eval_count?: number;
|
|
110
|
-
eval_duration?: number;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Non-streaming response from Ollama /api/chat
|
|
114
|
-
*/
|
|
115
|
-
export interface OllamaChatResponse {
|
|
116
|
-
model: string;
|
|
117
|
-
created_at: string;
|
|
118
|
-
message: {
|
|
119
|
-
role: 'assistant';
|
|
120
|
-
content: string;
|
|
121
|
-
tool_calls?: OllamaToolCall[];
|
|
122
|
-
};
|
|
123
|
-
done: boolean;
|
|
124
|
-
done_reason?: string;
|
|
125
|
-
total_duration: number;
|
|
126
|
-
load_duration: number;
|
|
127
|
-
prompt_eval_count: number;
|
|
128
|
-
prompt_eval_duration: number;
|
|
129
|
-
eval_count: number;
|
|
130
|
-
eval_duration: number;
|
|
131
|
-
}
|
|
132
|
-
/**
|
|
133
|
-
* Result from checking if Ollama is available
|
|
134
|
-
*/
|
|
135
|
-
export interface OllamaStatus {
|
|
136
|
-
available: boolean;
|
|
137
|
-
version?: string;
|
|
138
|
-
error?: string;
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* Ollama Service Class
|
|
142
|
-
* Provides methods for interacting with the local Ollama API
|
|
143
|
-
*/
|
|
144
|
-
declare class OllamaService {
|
|
145
|
-
private baseUrl;
|
|
146
|
-
constructor(baseUrl?: string);
|
|
147
|
-
/**
|
|
148
|
-
* Check if Ollama is running and accessible
|
|
149
|
-
* @returns OllamaStatus indicating if Ollama is available
|
|
150
|
-
*/
|
|
151
|
-
isOllamaRunning(): Promise<OllamaStatus>;
|
|
152
|
-
/**
|
|
153
|
-
* Get list of locally available models from Ollama
|
|
154
|
-
* @returns Array of OllamaModel objects
|
|
155
|
-
* @throws Error if Ollama is not available or request fails
|
|
156
|
-
*/
|
|
157
|
-
getLocalModels(): Promise<OllamaModel[]>;
|
|
158
|
-
/**
|
|
159
|
-
* Send a chat message to an Ollama model (non-streaming)
|
|
160
|
-
* @param model Model name to use (e.g., "llama3:latest")
|
|
161
|
-
* @param messages Array of chat messages
|
|
162
|
-
* @param tools Optional array of tool definitions
|
|
163
|
-
* @param options Optional generation parameters
|
|
164
|
-
* @returns OllamaChatResponse with the model's reply
|
|
165
|
-
*/
|
|
166
|
-
sendChatMessage(model: string, messages: OllamaChatMessage[], tools?: OllamaTool[], options?: OllamaChatRequest['options']): Promise<OllamaChatResponse>;
|
|
167
|
-
/**
|
|
168
|
-
* Check if a model name indicates it supports tool calling
|
|
169
|
-
* @param modelName The model name (e.g., "llama3.2:latest")
|
|
170
|
-
* @returns True if the model likely supports tools
|
|
171
|
-
*/
|
|
172
|
-
static modelSupportsTools(modelName: string): boolean;
|
|
173
|
-
/**
|
|
174
|
-
* Send a streaming chat message to an Ollama model
|
|
175
|
-
* @param model Model name to use
|
|
176
|
-
* @param messages Array of chat messages
|
|
177
|
-
* @param onChunk Callback for each streaming chunk
|
|
178
|
-
* @param options Optional generation parameters
|
|
179
|
-
* @returns Final complete response after stream ends
|
|
180
|
-
*/
|
|
181
|
-
sendChatMessageStreaming(model: string, messages: OllamaChatMessage[], onChunk: (chunk: OllamaChatStreamChunk) => void, options?: OllamaChatRequest['options']): Promise<OllamaChatResponse>;
|
|
182
|
-
/**
|
|
183
|
-
* Format model size for display (bytes to human-readable)
|
|
184
|
-
* @param bytes Size in bytes
|
|
185
|
-
* @returns Human-readable size string
|
|
186
|
-
*/
|
|
187
|
-
static formatModelSize(bytes: number): string;
|
|
188
|
-
/**
|
|
189
|
-
* Get a user-friendly error message for common Ollama issues
|
|
190
|
-
* @param error The error that occurred
|
|
191
|
-
* @returns User-friendly error message with helpful instructions
|
|
192
|
-
*/
|
|
193
|
-
static getHelpfulErrorMessage(error: Error): string;
|
|
194
|
-
}
|
|
195
|
-
export declare const ollamaService: OllamaService;
|
|
196
|
-
export { OllamaService };
|
|
197
|
-
//# sourceMappingURL=ollama-service.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ollama-service.d.ts","sourceRoot":"","sources":["../../src/services/ollama-service.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,101 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Session Quota Manager
|
|
3
|
-
*
|
|
4
|
-
* Tracks and enforces rate limits based on backend configuration.
|
|
5
|
-
* Each agent loop turn counts as one message.
|
|
6
|
-
* Configuration is fetched from backend API on startup with fallback defaults.
|
|
7
|
-
*/
|
|
8
|
-
/**
|
|
9
|
-
* Session quota state stored on disk
|
|
10
|
-
*/
|
|
11
|
-
interface SessionQuotaState {
|
|
12
|
-
sessionStartTime: number;
|
|
13
|
-
messagesUsed: number;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* SessionQuotaManager class for managing rate limits
|
|
17
|
-
*/
|
|
18
|
-
declare class SessionQuotaManager {
|
|
19
|
-
private quotaFilePath;
|
|
20
|
-
private configFilePath;
|
|
21
|
-
private state;
|
|
22
|
-
private configLoaded;
|
|
23
|
-
constructor();
|
|
24
|
-
/**
|
|
25
|
-
* Load cached config from disk (synced on previous fetch)
|
|
26
|
-
*/
|
|
27
|
-
private loadCachedConfig;
|
|
28
|
-
/**
|
|
29
|
-
* Apply configuration values
|
|
30
|
-
*/
|
|
31
|
-
private applyConfig;
|
|
32
|
-
/**
|
|
33
|
-
* Save config to disk for caching
|
|
34
|
-
*/
|
|
35
|
-
private saveConfigCache;
|
|
36
|
-
/**
|
|
37
|
-
* Fetch configuration from backend API
|
|
38
|
-
* Call this on CLI startup to get latest config
|
|
39
|
-
*/
|
|
40
|
-
fetchConfigFromBackend(): Promise<void>;
|
|
41
|
-
/**
|
|
42
|
-
* Load quota state from disk, or create fresh state if expired or missing
|
|
43
|
-
*/
|
|
44
|
-
private loadState;
|
|
45
|
-
/**
|
|
46
|
-
* Create a fresh session state
|
|
47
|
-
*/
|
|
48
|
-
private createFreshState;
|
|
49
|
-
/**
|
|
50
|
-
* Save current state to disk
|
|
51
|
-
*/
|
|
52
|
-
private saveState;
|
|
53
|
-
/**
|
|
54
|
-
* Check if session has expired and reset if needed
|
|
55
|
-
*/
|
|
56
|
-
private checkAndResetIfExpired;
|
|
57
|
-
/**
|
|
58
|
-
* Check if user can send a message (has remaining quota)
|
|
59
|
-
*/
|
|
60
|
-
canSendMessage(): boolean;
|
|
61
|
-
/**
|
|
62
|
-
* Increment the message count (call this on each agent loop turn)
|
|
63
|
-
*/
|
|
64
|
-
incrementMessageCount(): void;
|
|
65
|
-
/**
|
|
66
|
-
* Get the number of remaining messages in the current session
|
|
67
|
-
*/
|
|
68
|
-
getRemainingMessages(): number;
|
|
69
|
-
/**
|
|
70
|
-
* Get the total messages used in the current session
|
|
71
|
-
*/
|
|
72
|
-
getMessagesUsed(): number;
|
|
73
|
-
/**
|
|
74
|
-
* Get time remaining until session resets (in milliseconds)
|
|
75
|
-
* Returns 0 if no session has started
|
|
76
|
-
*/
|
|
77
|
-
getTimeUntilReset(): number;
|
|
78
|
-
/**
|
|
79
|
-
* Get formatted time remaining as "Xh Ym" string
|
|
80
|
-
*/
|
|
81
|
-
getFormattedTimeRemaining(): string;
|
|
82
|
-
/**
|
|
83
|
-
* Get session start time (for debugging)
|
|
84
|
-
*/
|
|
85
|
-
getSessionStartTime(): number;
|
|
86
|
-
/**
|
|
87
|
-
* Force reset the session (for testing purposes)
|
|
88
|
-
*/
|
|
89
|
-
resetSession(): void;
|
|
90
|
-
/**
|
|
91
|
-
* Get current config values (for debugging)
|
|
92
|
-
*/
|
|
93
|
-
getCurrentConfig(): {
|
|
94
|
-
maxMessagesPerSession: number;
|
|
95
|
-
sessionDurationMs: number;
|
|
96
|
-
warningThreshold: number;
|
|
97
|
-
};
|
|
98
|
-
}
|
|
99
|
-
export declare const sessionQuotaManager: SessionQuotaManager;
|
|
100
|
-
export { SessionQuotaState };
|
|
101
|
-
//# sourceMappingURL=session-quota-manager.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"session-quota-manager.d.ts","sourceRoot":"","sources":["../../src/services/session-quota-manager.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAaH;;GAEG;AACH,UAAU,iBAAiB;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,YAAY,EAAE,MAAM,CAAC;CACxB;AAYD;;GAEG;AACH,cAAM,mBAAmB;IACrB,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,KAAK,CAAoB;IACjC,OAAO,CAAC,YAAY,CAAkB;;IAoBtC;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAaxB;;OAEG;IACH,OAAO,CAAC,WAAW;IAMnB;;OAEG;IACH,OAAO,CAAC,eAAe;IAQvB;;;OAGG;IACG,sBAAsB,IAAI,OAAO,CAAC,IAAI,CAAC;IAkB7C;;OAEG;IACH,OAAO,CAAC,SAAS;IAwBjB;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAOxB;;OAEG;IACH,OAAO,CAAC,SAAS;IAQjB;;OAEG;IACH,OAAO,CAAC,sBAAsB;IAgB9B;;OAEG;IACH,cAAc,IAAI,OAAO;IAKzB;;OAEG;IACH,qBAAqB,IAAI,IAAI;IAY7B;;OAEG;IACH,oBAAoB,IAAI,MAAM;IAK9B;;OAEG;IACH,eAAe,IAAI,MAAM;IAKzB;;;OAGG;IACH,iBAAiB,IAAI,MAAM;IAY3B;;OAEG;IACH,yBAAyB,IAAI,MAAM;IAiBnC;;OAEG;IACH,mBAAmB,IAAI,MAAM;IAI7B;;OAEG;IACH,YAAY,IAAI,IAAI;IAKpB;;OAEG;IACH,gBAAgB;;;;;CAOnB;AAGD,eAAO,MAAM,mBAAmB,qBAA4B,CAAC;AAG7D,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
|