snow-ai 0.4.16 → 0.4.17
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/bundle/cli.mjs +477445 -0
- package/bundle/sql-wasm.wasm +0 -0
- package/package.json +31 -26
- package/dist/agents/codebaseIndexAgent.d.ts +0 -102
- package/dist/agents/codebaseIndexAgent.js +0 -641
- package/dist/agents/codebaseReviewAgent.d.ts +0 -61
- package/dist/agents/codebaseReviewAgent.js +0 -301
- package/dist/agents/compactAgent.d.ts +0 -55
- package/dist/agents/compactAgent.js +0 -306
- package/dist/agents/promptOptimizeAgent.d.ts +0 -54
- package/dist/agents/promptOptimizeAgent.js +0 -268
- package/dist/agents/reviewAgent.d.ts +0 -50
- package/dist/agents/reviewAgent.js +0 -265
- package/dist/agents/summaryAgent.d.ts +0 -57
- package/dist/agents/summaryAgent.js +0 -260
- package/dist/api/anthropic.d.ts +0 -44
- package/dist/api/anthropic.js +0 -598
- package/dist/api/chat.d.ts +0 -73
- package/dist/api/chat.js +0 -386
- package/dist/api/embedding.d.ts +0 -34
- package/dist/api/embedding.js +0 -80
- package/dist/api/gemini.d.ts +0 -31
- package/dist/api/gemini.js +0 -445
- package/dist/api/models.d.ts +0 -15
- package/dist/api/models.js +0 -139
- package/dist/api/responses.d.ts +0 -38
- package/dist/api/responses.js +0 -515
- package/dist/api/systemPrompt.d.ts +0 -4
- package/dist/api/systemPrompt.js +0 -408
- package/dist/api/types.d.ts +0 -53
- package/dist/api/types.js +0 -4
- package/dist/app.d.ts +0 -8
- package/dist/app.js +0 -112
- package/dist/cli.d.ts +0 -2
- package/dist/cli.js +0 -199
- package/dist/hooks/useAgentPicker.d.ts +0 -14
- package/dist/hooks/useAgentPicker.js +0 -119
- package/dist/hooks/useClipboard.d.ts +0 -4
- package/dist/hooks/useClipboard.js +0 -175
- package/dist/hooks/useCommandHandler.d.ts +0 -35
- package/dist/hooks/useCommandHandler.js +0 -346
- package/dist/hooks/useCommandPanel.d.ts +0 -17
- package/dist/hooks/useCommandPanel.js +0 -114
- package/dist/hooks/useConversation.d.ts +0 -49
- package/dist/hooks/useConversation.js +0 -1052
- package/dist/hooks/useFilePicker.d.ts +0 -18
- package/dist/hooks/useFilePicker.js +0 -224
- package/dist/hooks/useGlobalExit.d.ts +0 -5
- package/dist/hooks/useGlobalExit.js +0 -34
- package/dist/hooks/useGlobalNavigation.d.ts +0 -6
- package/dist/hooks/useGlobalNavigation.js +0 -17
- package/dist/hooks/useHistoryNavigation.d.ts +0 -35
- package/dist/hooks/useHistoryNavigation.js +0 -133
- package/dist/hooks/useInputBuffer.d.ts +0 -6
- package/dist/hooks/useInputBuffer.js +0 -45
- package/dist/hooks/useKeyboardInput.d.ts +0 -80
- package/dist/hooks/useKeyboardInput.js +0 -608
- package/dist/hooks/useSessionManagement.d.ts +0 -10
- package/dist/hooks/useSessionManagement.js +0 -43
- package/dist/hooks/useSessionSave.d.ts +0 -8
- package/dist/hooks/useSessionSave.js +0 -63
- package/dist/hooks/useSnapshotState.d.ts +0 -26
- package/dist/hooks/useSnapshotState.js +0 -28
- package/dist/hooks/useStreamingState.d.ts +0 -33
- package/dist/hooks/useStreamingState.js +0 -105
- package/dist/hooks/useTerminalFocus.d.ts +0 -28
- package/dist/hooks/useTerminalFocus.js +0 -87
- package/dist/hooks/useTerminalSize.d.ts +0 -4
- package/dist/hooks/useTerminalSize.js +0 -20
- package/dist/hooks/useTodoPicker.d.ts +0 -16
- package/dist/hooks/useTodoPicker.js +0 -94
- package/dist/hooks/useToolConfirmation.d.ts +0 -19
- package/dist/hooks/useToolConfirmation.js +0 -61
- package/dist/hooks/useVSCodeState.d.ts +0 -8
- package/dist/hooks/useVSCodeState.js +0 -81
- package/dist/i18n/I18nContext.d.ts +0 -14
- package/dist/i18n/I18nContext.js +0 -24
- package/dist/i18n/index.d.ts +0 -3
- package/dist/i18n/index.js +0 -2
- package/dist/i18n/lang/en.d.ts +0 -2
- package/dist/i18n/lang/en.js +0 -502
- package/dist/i18n/lang/es.d.ts +0 -2
- package/dist/i18n/lang/es.js +0 -502
- package/dist/i18n/lang/ja.d.ts +0 -2
- package/dist/i18n/lang/ja.js +0 -502
- package/dist/i18n/lang/ko.d.ts +0 -2
- package/dist/i18n/lang/ko.js +0 -502
- package/dist/i18n/lang/zh-TW.d.ts +0 -2
- package/dist/i18n/lang/zh-TW.js +0 -502
- package/dist/i18n/lang/zh.d.ts +0 -2
- package/dist/i18n/lang/zh.js +0 -502
- package/dist/i18n/translations.d.ts +0 -2
- package/dist/i18n/translations.js +0 -14
- package/dist/i18n/types.d.ts +0 -478
- package/dist/i18n/types.js +0 -1
- package/dist/mcp/aceCodeSearch.d.ts +0 -247
- package/dist/mcp/aceCodeSearch.js +0 -1058
- package/dist/mcp/bash.d.ts +0 -50
- package/dist/mcp/bash.js +0 -153
- package/dist/mcp/codebaseSearch.d.ts +0 -44
- package/dist/mcp/codebaseSearch.js +0 -275
- package/dist/mcp/filesystem.d.ts +0 -392
- package/dist/mcp/filesystem.js +0 -1445
- package/dist/mcp/ideDiagnostics.d.ts +0 -36
- package/dist/mcp/ideDiagnostics.js +0 -90
- package/dist/mcp/notebook.d.ts +0 -10
- package/dist/mcp/notebook.js +0 -367
- package/dist/mcp/subagent.d.ts +0 -37
- package/dist/mcp/subagent.js +0 -113
- package/dist/mcp/todo.d.ts +0 -46
- package/dist/mcp/todo.js +0 -511
- package/dist/mcp/types/aceCodeSearch.types.d.ts +0 -92
- package/dist/mcp/types/aceCodeSearch.types.js +0 -4
- package/dist/mcp/types/bash.types.d.ts +0 -13
- package/dist/mcp/types/bash.types.js +0 -4
- package/dist/mcp/types/filesystem.types.d.ts +0 -210
- package/dist/mcp/types/filesystem.types.js +0 -27
- package/dist/mcp/types/todo.types.d.ts +0 -27
- package/dist/mcp/types/todo.types.js +0 -4
- package/dist/mcp/types/websearch.types.d.ts +0 -30
- package/dist/mcp/types/websearch.types.js +0 -4
- package/dist/mcp/utils/aceCodeSearch/filesystem.utils.d.ts +0 -34
- package/dist/mcp/utils/aceCodeSearch/filesystem.utils.js +0 -146
- package/dist/mcp/utils/aceCodeSearch/language.utils.d.ts +0 -14
- package/dist/mcp/utils/aceCodeSearch/language.utils.js +0 -418
- package/dist/mcp/utils/aceCodeSearch/search.utils.d.ts +0 -31
- package/dist/mcp/utils/aceCodeSearch/search.utils.js +0 -136
- package/dist/mcp/utils/aceCodeSearch/symbol.utils.d.ts +0 -20
- package/dist/mcp/utils/aceCodeSearch/symbol.utils.js +0 -141
- package/dist/mcp/utils/bash/security.utils.d.ts +0 -20
- package/dist/mcp/utils/bash/security.utils.js +0 -34
- package/dist/mcp/utils/filesystem/batch-operations.utils.d.ts +0 -39
- package/dist/mcp/utils/filesystem/batch-operations.utils.js +0 -182
- package/dist/mcp/utils/filesystem/code-analysis.utils.d.ts +0 -18
- package/dist/mcp/utils/filesystem/code-analysis.utils.js +0 -165
- package/dist/mcp/utils/filesystem/match-finder.utils.d.ts +0 -16
- package/dist/mcp/utils/filesystem/match-finder.utils.js +0 -85
- package/dist/mcp/utils/filesystem/office-parser.utils.d.ts +0 -43
- package/dist/mcp/utils/filesystem/office-parser.utils.js +0 -163
- package/dist/mcp/utils/filesystem/path-fixer.utils.d.ts +0 -7
- package/dist/mcp/utils/filesystem/path-fixer.utils.js +0 -60
- package/dist/mcp/utils/filesystem/similarity.utils.d.ts +0 -22
- package/dist/mcp/utils/filesystem/similarity.utils.js +0 -75
- package/dist/mcp/utils/todo/date.utils.d.ts +0 -9
- package/dist/mcp/utils/todo/date.utils.js +0 -14
- package/dist/mcp/utils/websearch/browser.utils.d.ts +0 -8
- package/dist/mcp/utils/websearch/browser.utils.js +0 -58
- package/dist/mcp/utils/websearch/text.utils.d.ts +0 -16
- package/dist/mcp/utils/websearch/text.utils.js +0 -39
- package/dist/mcp/websearch.d.ts +0 -88
- package/dist/mcp/websearch.js +0 -375
- package/dist/test/logger-test.d.ts +0 -1
- package/dist/test/logger-test.js +0 -7
- package/dist/types/index.d.ts +0 -15
- package/dist/types/index.js +0 -1
- package/dist/ui/components/AgentPickerPanel.d.ts +0 -10
- package/dist/ui/components/AgentPickerPanel.js +0 -74
- package/dist/ui/components/ChatInput.d.ts +0 -46
- package/dist/ui/components/ChatInput.js +0 -384
- package/dist/ui/components/CommandPanel.d.ts +0 -15
- package/dist/ui/components/CommandPanel.js +0 -80
- package/dist/ui/components/DiffViewer.d.ts +0 -11
- package/dist/ui/components/DiffViewer.js +0 -178
- package/dist/ui/components/FileList.d.ts +0 -15
- package/dist/ui/components/FileList.js +0 -360
- package/dist/ui/components/FileRollbackConfirmation.d.ts +0 -8
- package/dist/ui/components/FileRollbackConfirmation.js +0 -108
- package/dist/ui/components/HelpPanel.d.ts +0 -2
- package/dist/ui/components/HelpPanel.js +0 -67
- package/dist/ui/components/MCPInfoPanel.d.ts +0 -2
- package/dist/ui/components/MCPInfoPanel.js +0 -108
- package/dist/ui/components/MCPInfoScreen.d.ts +0 -7
- package/dist/ui/components/MCPInfoScreen.js +0 -115
- package/dist/ui/components/MarkdownRenderer.d.ts +0 -6
- package/dist/ui/components/MarkdownRenderer.js +0 -70
- package/dist/ui/components/Menu.d.ts +0 -17
- package/dist/ui/components/Menu.js +0 -88
- package/dist/ui/components/MessageList.d.ts +0 -56
- package/dist/ui/components/MessageList.js +0 -97
- package/dist/ui/components/PendingMessages.d.ts +0 -13
- package/dist/ui/components/PendingMessages.js +0 -29
- package/dist/ui/components/PendingToolCalls.d.ts +0 -11
- package/dist/ui/components/PendingToolCalls.js +0 -35
- package/dist/ui/components/ScrollableSelectInput.d.ts +0 -29
- package/dist/ui/components/ScrollableSelectInput.js +0 -157
- package/dist/ui/components/SessionListPanel.d.ts +0 -7
- package/dist/ui/components/SessionListPanel.js +0 -175
- package/dist/ui/components/SessionListScreen.d.ts +0 -7
- package/dist/ui/components/SessionListScreen.js +0 -217
- package/dist/ui/components/SessionListScreenWrapper.d.ts +0 -7
- package/dist/ui/components/SessionListScreenWrapper.js +0 -14
- package/dist/ui/components/ShimmerText.d.ts +0 -9
- package/dist/ui/components/ShimmerText.js +0 -30
- package/dist/ui/components/TodoPickerPanel.d.ts +0 -14
- package/dist/ui/components/TodoPickerPanel.js +0 -119
- package/dist/ui/components/TodoTree.d.ts +0 -15
- package/dist/ui/components/TodoTree.js +0 -60
- package/dist/ui/components/ToolConfirmation.d.ts +0 -21
- package/dist/ui/components/ToolConfirmation.js +0 -204
- package/dist/ui/components/ToolResultPreview.d.ts +0 -13
- package/dist/ui/components/ToolResultPreview.js +0 -337
- package/dist/ui/components/UsagePanel.d.ts +0 -2
- package/dist/ui/components/UsagePanel.js +0 -394
- package/dist/ui/contexts/ThemeContext.d.ts +0 -13
- package/dist/ui/contexts/ThemeContext.js +0 -28
- package/dist/ui/pages/ChatScreen.d.ts +0 -6
- package/dist/ui/pages/ChatScreen.js +0 -1519
- package/dist/ui/pages/CodeBaseConfigScreen.d.ts +0 -8
- package/dist/ui/pages/CodeBaseConfigScreen.js +0 -350
- package/dist/ui/pages/ConfigScreen.d.ts +0 -8
- package/dist/ui/pages/ConfigScreen.js +0 -1101
- package/dist/ui/pages/CustomHeadersScreen.d.ts +0 -6
- package/dist/ui/pages/CustomHeadersScreen.js +0 -502
- package/dist/ui/pages/HeadlessModeScreen.d.ts +0 -7
- package/dist/ui/pages/HeadlessModeScreen.js +0 -381
- package/dist/ui/pages/LanguageSettingsScreen.d.ts +0 -7
- package/dist/ui/pages/LanguageSettingsScreen.js +0 -91
- package/dist/ui/pages/MCPConfigScreen.d.ts +0 -6
- package/dist/ui/pages/MCPConfigScreen.js +0 -55
- package/dist/ui/pages/ProxyConfigScreen.d.ts +0 -8
- package/dist/ui/pages/ProxyConfigScreen.js +0 -149
- package/dist/ui/pages/SensitiveCommandConfigScreen.d.ts +0 -7
- package/dist/ui/pages/SensitiveCommandConfigScreen.js +0 -271
- package/dist/ui/pages/SubAgentConfigScreen.d.ts +0 -9
- package/dist/ui/pages/SubAgentConfigScreen.js +0 -435
- package/dist/ui/pages/SubAgentListScreen.d.ts +0 -9
- package/dist/ui/pages/SubAgentListScreen.js +0 -131
- package/dist/ui/pages/SystemPromptConfigScreen.d.ts +0 -6
- package/dist/ui/pages/SystemPromptConfigScreen.js +0 -326
- package/dist/ui/pages/ThemeSettingsScreen.d.ts +0 -7
- package/dist/ui/pages/ThemeSettingsScreen.js +0 -106
- package/dist/ui/pages/WelcomeScreen.d.ts +0 -7
- package/dist/ui/pages/WelcomeScreen.js +0 -217
- package/dist/ui/themes/index.d.ts +0 -23
- package/dist/ui/themes/index.js +0 -140
- package/dist/utils/apiConfig.d.ts +0 -126
- package/dist/utils/apiConfig.js +0 -423
- package/dist/utils/autoCompress.d.ts +0 -15
- package/dist/utils/autoCompress.js +0 -24
- package/dist/utils/chatExporter.d.ts +0 -9
- package/dist/utils/chatExporter.js +0 -118
- package/dist/utils/checkpointManager.d.ts +0 -74
- package/dist/utils/checkpointManager.js +0 -181
- package/dist/utils/codebaseConfig.d.ts +0 -16
- package/dist/utils/codebaseConfig.js +0 -67
- package/dist/utils/codebaseDatabase.d.ts +0 -102
- package/dist/utils/codebaseDatabase.js +0 -333
- package/dist/utils/codebaseSearchEvents.d.ts +0 -16
- package/dist/utils/codebaseSearchEvents.js +0 -13
- package/dist/utils/commandExecutor.d.ts +0 -13
- package/dist/utils/commandExecutor.js +0 -26
- package/dist/utils/commands/agent.d.ts +0 -2
- package/dist/utils/commands/agent.js +0 -12
- package/dist/utils/commands/clear.d.ts +0 -2
- package/dist/utils/commands/clear.js +0 -12
- package/dist/utils/commands/compact.d.ts +0 -2
- package/dist/utils/commands/compact.js +0 -12
- package/dist/utils/commands/export.d.ts +0 -2
- package/dist/utils/commands/export.js +0 -12
- package/dist/utils/commands/help.d.ts +0 -2
- package/dist/utils/commands/help.js +0 -11
- package/dist/utils/commands/home.d.ts +0 -2
- package/dist/utils/commands/home.js +0 -34
- package/dist/utils/commands/ide.d.ts +0 -2
- package/dist/utils/commands/ide.js +0 -32
- package/dist/utils/commands/init.d.ts +0 -2
- package/dist/utils/commands/init.js +0 -93
- package/dist/utils/commands/mcp.d.ts +0 -2
- package/dist/utils/commands/mcp.js +0 -12
- package/dist/utils/commands/resume.d.ts +0 -2
- package/dist/utils/commands/resume.js +0 -12
- package/dist/utils/commands/review.d.ts +0 -2
- package/dist/utils/commands/review.js +0 -81
- package/dist/utils/commands/role.d.ts +0 -2
- package/dist/utils/commands/role.js +0 -37
- package/dist/utils/commands/todoPicker.d.ts +0 -2
- package/dist/utils/commands/todoPicker.js +0 -12
- package/dist/utils/commands/usage.d.ts +0 -2
- package/dist/utils/commands/usage.js +0 -12
- package/dist/utils/commands/yolo.d.ts +0 -2
- package/dist/utils/commands/yolo.js +0 -12
- package/dist/utils/configManager.d.ts +0 -45
- package/dist/utils/configManager.js +0 -303
- package/dist/utils/contextCompressor.d.ts +0 -16
- package/dist/utils/contextCompressor.js +0 -334
- package/dist/utils/devMode.d.ts +0 -13
- package/dist/utils/devMode.js +0 -54
- package/dist/utils/escapeHandler.d.ts +0 -79
- package/dist/utils/escapeHandler.js +0 -153
- package/dist/utils/fileDialog.d.ts +0 -9
- package/dist/utils/fileDialog.js +0 -74
- package/dist/utils/fileUtils.d.ts +0 -40
- package/dist/utils/fileUtils.js +0 -185
- package/dist/utils/historyManager.d.ts +0 -45
- package/dist/utils/historyManager.js +0 -159
- package/dist/utils/incrementalSnapshot.d.ts +0 -109
- package/dist/utils/incrementalSnapshot.js +0 -383
- package/dist/utils/index.d.ts +0 -11
- package/dist/utils/index.js +0 -18
- package/dist/utils/languageConfig.d.ts +0 -21
- package/dist/utils/languageConfig.js +0 -61
- package/dist/utils/logger.d.ts +0 -37
- package/dist/utils/logger.js +0 -122
- package/dist/utils/mcpToolsManager.d.ts +0 -52
- package/dist/utils/mcpToolsManager.js +0 -878
- package/dist/utils/messageFormatter.d.ts +0 -12
- package/dist/utils/messageFormatter.js +0 -115
- package/dist/utils/notebookManager.d.ts +0 -59
- package/dist/utils/notebookManager.js +0 -213
- package/dist/utils/patch-highlight.d.ts +0 -5
- package/dist/utils/patch-highlight.js +0 -23
- package/dist/utils/processManager.d.ts +0 -27
- package/dist/utils/processManager.js +0 -75
- package/dist/utils/proxyUtils.d.ts +0 -15
- package/dist/utils/proxyUtils.js +0 -50
- package/dist/utils/resourceMonitor.d.ts +0 -65
- package/dist/utils/resourceMonitor.js +0 -175
- package/dist/utils/retryUtils.d.ts +0 -49
- package/dist/utils/retryUtils.js +0 -303
- package/dist/utils/sensitiveCommandManager.d.ts +0 -53
- package/dist/utils/sensitiveCommandManager.js +0 -308
- package/dist/utils/sessionConverter.d.ts +0 -7
- package/dist/utils/sessionConverter.js +0 -306
- package/dist/utils/sessionManager.d.ts +0 -53
- package/dist/utils/sessionManager.js +0 -371
- package/dist/utils/subAgentConfig.d.ts +0 -50
- package/dist/utils/subAgentConfig.js +0 -221
- package/dist/utils/subAgentExecutor.d.ts +0 -40
- package/dist/utils/subAgentExecutor.js +0 -434
- package/dist/utils/terminal.d.ts +0 -5
- package/dist/utils/terminal.js +0 -13
- package/dist/utils/textBuffer.d.ts +0 -99
- package/dist/utils/textBuffer.js +0 -547
- package/dist/utils/textUtils.d.ts +0 -37
- package/dist/utils/textUtils.js +0 -102
- package/dist/utils/themeConfig.d.ts +0 -21
- package/dist/utils/themeConfig.js +0 -61
- package/dist/utils/todoPreprocessor.d.ts +0 -5
- package/dist/utils/todoPreprocessor.js +0 -18
- package/dist/utils/todoScanner.d.ts +0 -8
- package/dist/utils/todoScanner.js +0 -148
- package/dist/utils/toolDisplayConfig.d.ts +0 -16
- package/dist/utils/toolDisplayConfig.js +0 -47
- package/dist/utils/toolExecutor.d.ts +0 -37
- package/dist/utils/toolExecutor.js +0 -224
- package/dist/utils/usageLogger.d.ts +0 -11
- package/dist/utils/usageLogger.js +0 -114
- package/dist/utils/vscodeConnection.d.ts +0 -76
- package/dist/utils/vscodeConnection.js +0 -430
- package/dist/utils/workspaceSnapshot.d.ts +0 -63
- package/dist/utils/workspaceSnapshot.js +0 -300
|
@@ -1,210 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Type definitions for Filesystem MCP Service
|
|
3
|
-
*/
|
|
4
|
-
import type { Diagnostic } from '../../utils/vscodeConnection.js';
|
|
5
|
-
/**
|
|
6
|
-
* MCP Content Types - supports multimodal content
|
|
7
|
-
*/
|
|
8
|
-
export type MCPContentType = 'text' | 'image' | 'document';
|
|
9
|
-
/**
|
|
10
|
-
* Text content block
|
|
11
|
-
*/
|
|
12
|
-
export interface TextContent {
|
|
13
|
-
type: 'text';
|
|
14
|
-
text: string;
|
|
15
|
-
}
|
|
16
|
-
/**
|
|
17
|
-
* Image content block (base64 encoded)
|
|
18
|
-
*/
|
|
19
|
-
export interface ImageContent {
|
|
20
|
-
type: 'image';
|
|
21
|
-
data: string;
|
|
22
|
-
mimeType: string;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Document content block (for Office files like PDF, Word, Excel, PPT)
|
|
26
|
-
*/
|
|
27
|
-
export interface DocumentContent {
|
|
28
|
-
type: 'document';
|
|
29
|
-
text: string;
|
|
30
|
-
fileType: 'pdf' | 'word' | 'excel' | 'powerpoint';
|
|
31
|
-
metadata?: {
|
|
32
|
-
pages?: number;
|
|
33
|
-
sheets?: string[];
|
|
34
|
-
slides?: number;
|
|
35
|
-
[key: string]: unknown;
|
|
36
|
-
};
|
|
37
|
-
}
|
|
38
|
-
/**
|
|
39
|
-
* Multimodal content - array of text, image, and document blocks
|
|
40
|
-
*/
|
|
41
|
-
export type MultimodalContent = Array<TextContent | ImageContent | DocumentContent>;
|
|
42
|
-
/**
|
|
43
|
-
* Supported image MIME types
|
|
44
|
-
*/
|
|
45
|
-
export declare const IMAGE_MIME_TYPES: Record<string, string>;
|
|
46
|
-
/**
|
|
47
|
-
* Supported Office document types
|
|
48
|
-
*/
|
|
49
|
-
export declare const OFFICE_FILE_TYPES: Record<string, 'pdf' | 'word' | 'excel' | 'powerpoint'>;
|
|
50
|
-
/**
|
|
51
|
-
* Structure analysis result for code validation
|
|
52
|
-
*/
|
|
53
|
-
export interface StructureAnalysis {
|
|
54
|
-
bracketBalance: {
|
|
55
|
-
curly: {
|
|
56
|
-
open: number;
|
|
57
|
-
close: number;
|
|
58
|
-
balanced: boolean;
|
|
59
|
-
};
|
|
60
|
-
round: {
|
|
61
|
-
open: number;
|
|
62
|
-
close: number;
|
|
63
|
-
balanced: boolean;
|
|
64
|
-
};
|
|
65
|
-
square: {
|
|
66
|
-
open: number;
|
|
67
|
-
close: number;
|
|
68
|
-
balanced: boolean;
|
|
69
|
-
};
|
|
70
|
-
};
|
|
71
|
-
htmlTags?: {
|
|
72
|
-
unclosedTags: string[];
|
|
73
|
-
unopenedTags: string[];
|
|
74
|
-
balanced: boolean;
|
|
75
|
-
};
|
|
76
|
-
indentationWarnings: string[];
|
|
77
|
-
codeBlockBoundary?: {
|
|
78
|
-
isInCompleteBlock: boolean;
|
|
79
|
-
suggestion?: string;
|
|
80
|
-
};
|
|
81
|
-
}
|
|
82
|
-
/**
|
|
83
|
-
* Match candidate for fuzzy search
|
|
84
|
-
*/
|
|
85
|
-
export interface MatchCandidate {
|
|
86
|
-
startLine: number;
|
|
87
|
-
endLine: number;
|
|
88
|
-
similarity: number;
|
|
89
|
-
preview: string;
|
|
90
|
-
}
|
|
91
|
-
/**
|
|
92
|
-
* File read configuration
|
|
93
|
-
*/
|
|
94
|
-
export interface FileReadConfig {
|
|
95
|
-
path: string;
|
|
96
|
-
startLine?: number;
|
|
97
|
-
endLine?: number;
|
|
98
|
-
}
|
|
99
|
-
/**
|
|
100
|
-
* Single file read result
|
|
101
|
-
*/
|
|
102
|
-
export interface SingleFileReadResult {
|
|
103
|
-
content: string | MultimodalContent;
|
|
104
|
-
startLine?: number;
|
|
105
|
-
endLine?: number;
|
|
106
|
-
totalLines?: number;
|
|
107
|
-
isImage?: boolean;
|
|
108
|
-
isDocument?: boolean;
|
|
109
|
-
fileType?: 'pdf' | 'word' | 'excel' | 'powerpoint';
|
|
110
|
-
mimeType?: string;
|
|
111
|
-
}
|
|
112
|
-
/**
|
|
113
|
-
* Multiple files read result
|
|
114
|
-
*/
|
|
115
|
-
export interface MultipleFilesReadResult {
|
|
116
|
-
content: string | MultimodalContent;
|
|
117
|
-
files: Array<{
|
|
118
|
-
path: string;
|
|
119
|
-
startLine?: number;
|
|
120
|
-
endLine?: number;
|
|
121
|
-
totalLines?: number;
|
|
122
|
-
isImage?: boolean;
|
|
123
|
-
isDocument?: boolean;
|
|
124
|
-
fileType?: 'pdf' | 'word' | 'excel' | 'powerpoint';
|
|
125
|
-
mimeType?: string;
|
|
126
|
-
}>;
|
|
127
|
-
totalFiles: number;
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Edit by search configuration
|
|
131
|
-
*/
|
|
132
|
-
export interface EditBySearchConfig {
|
|
133
|
-
path: string;
|
|
134
|
-
searchContent: string;
|
|
135
|
-
replaceContent: string;
|
|
136
|
-
occurrence?: number;
|
|
137
|
-
}
|
|
138
|
-
/**
|
|
139
|
-
* Edit by line range configuration
|
|
140
|
-
*/
|
|
141
|
-
export interface EditByLineConfig {
|
|
142
|
-
path: string;
|
|
143
|
-
startLine: number;
|
|
144
|
-
endLine: number;
|
|
145
|
-
newContent: string;
|
|
146
|
-
}
|
|
147
|
-
/**
|
|
148
|
-
* Single file edit result (common fields)
|
|
149
|
-
*/
|
|
150
|
-
export interface SingleFileEditResult {
|
|
151
|
-
message: string;
|
|
152
|
-
oldContent: string;
|
|
153
|
-
newContent: string;
|
|
154
|
-
contextStartLine: number;
|
|
155
|
-
contextEndLine: number;
|
|
156
|
-
totalLines: number;
|
|
157
|
-
structureAnalysis?: StructureAnalysis;
|
|
158
|
-
diagnostics?: Diagnostic[];
|
|
159
|
-
}
|
|
160
|
-
/**
|
|
161
|
-
* Edit by search single file result
|
|
162
|
-
*/
|
|
163
|
-
export interface EditBySearchSingleResult extends SingleFileEditResult {
|
|
164
|
-
replacedContent: string;
|
|
165
|
-
matchLocation: {
|
|
166
|
-
startLine: number;
|
|
167
|
-
endLine: number;
|
|
168
|
-
};
|
|
169
|
-
}
|
|
170
|
-
/**
|
|
171
|
-
* Edit by line single file result
|
|
172
|
-
*/
|
|
173
|
-
export interface EditByLineSingleResult extends SingleFileEditResult {
|
|
174
|
-
replacedLines: string;
|
|
175
|
-
linesModified: number;
|
|
176
|
-
}
|
|
177
|
-
/**
|
|
178
|
-
* Batch operation result item (generic)
|
|
179
|
-
*/
|
|
180
|
-
export interface BatchResultItem {
|
|
181
|
-
path: string;
|
|
182
|
-
success: boolean;
|
|
183
|
-
error?: string;
|
|
184
|
-
}
|
|
185
|
-
/**
|
|
186
|
-
* Edit by search batch result item
|
|
187
|
-
*/
|
|
188
|
-
export type EditBySearchBatchResultItem = BatchResultItem & Partial<EditBySearchSingleResult>;
|
|
189
|
-
/**
|
|
190
|
-
* Edit by line batch result item
|
|
191
|
-
*/
|
|
192
|
-
export type EditByLineBatchResultItem = BatchResultItem & Partial<EditByLineSingleResult>;
|
|
193
|
-
/**
|
|
194
|
-
* Batch operation result (generic)
|
|
195
|
-
*/
|
|
196
|
-
export interface BatchOperationResult<T extends BatchResultItem> {
|
|
197
|
-
message: string;
|
|
198
|
-
results: T[];
|
|
199
|
-
totalFiles: number;
|
|
200
|
-
successCount: number;
|
|
201
|
-
failureCount: number;
|
|
202
|
-
}
|
|
203
|
-
/**
|
|
204
|
-
* Edit by search return type
|
|
205
|
-
*/
|
|
206
|
-
export type EditBySearchResult = EditBySearchSingleResult | BatchOperationResult<EditBySearchBatchResultItem>;
|
|
207
|
-
/**
|
|
208
|
-
* Edit by line return type
|
|
209
|
-
*/
|
|
210
|
-
export type EditByLineResult = EditByLineSingleResult | BatchOperationResult<EditByLineBatchResultItem>;
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Type definitions for Filesystem MCP Service
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Supported image MIME types
|
|
6
|
-
*/
|
|
7
|
-
export const IMAGE_MIME_TYPES = {
|
|
8
|
-
'.png': 'image/png',
|
|
9
|
-
'.jpg': 'image/jpeg',
|
|
10
|
-
'.jpeg': 'image/jpeg',
|
|
11
|
-
'.gif': 'image/gif',
|
|
12
|
-
'.webp': 'image/webp',
|
|
13
|
-
'.bmp': 'image/bmp',
|
|
14
|
-
'.svg': 'image/svg+xml',
|
|
15
|
-
};
|
|
16
|
-
/**
|
|
17
|
-
* Supported Office document types
|
|
18
|
-
*/
|
|
19
|
-
export const OFFICE_FILE_TYPES = {
|
|
20
|
-
'.pdf': 'pdf',
|
|
21
|
-
'.docx': 'word',
|
|
22
|
-
'.doc': 'word',
|
|
23
|
-
'.xlsx': 'excel',
|
|
24
|
-
'.xls': 'excel',
|
|
25
|
-
'.pptx': 'powerpoint',
|
|
26
|
-
'.ppt': 'powerpoint',
|
|
27
|
-
};
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Type definitions for TODO Service
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* TODO item
|
|
6
|
-
*/
|
|
7
|
-
export interface TodoItem {
|
|
8
|
-
id: string;
|
|
9
|
-
content: string;
|
|
10
|
-
status: 'pending' | 'completed';
|
|
11
|
-
createdAt: string;
|
|
12
|
-
updatedAt: string;
|
|
13
|
-
parentId?: string;
|
|
14
|
-
}
|
|
15
|
-
/**
|
|
16
|
-
* TODO list for a session
|
|
17
|
-
*/
|
|
18
|
-
export interface TodoList {
|
|
19
|
-
sessionId: string;
|
|
20
|
-
todos: TodoItem[];
|
|
21
|
-
createdAt: string;
|
|
22
|
-
updatedAt: string;
|
|
23
|
-
}
|
|
24
|
-
/**
|
|
25
|
-
* Callback function type for getting current session ID
|
|
26
|
-
*/
|
|
27
|
-
export type GetCurrentSessionId = () => string | null;
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Type definitions for Web Search Service
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Search result item
|
|
6
|
-
*/
|
|
7
|
-
export interface SearchResult {
|
|
8
|
-
title: string;
|
|
9
|
-
url: string;
|
|
10
|
-
snippet: string;
|
|
11
|
-
displayUrl: string;
|
|
12
|
-
}
|
|
13
|
-
/**
|
|
14
|
-
* Search response
|
|
15
|
-
*/
|
|
16
|
-
export interface SearchResponse {
|
|
17
|
-
query: string;
|
|
18
|
-
results: SearchResult[];
|
|
19
|
-
totalResults: number;
|
|
20
|
-
}
|
|
21
|
-
/**
|
|
22
|
-
* Web page content
|
|
23
|
-
*/
|
|
24
|
-
export interface WebPageContent {
|
|
25
|
-
url: string;
|
|
26
|
-
title: string;
|
|
27
|
-
content: string;
|
|
28
|
-
textLength: number;
|
|
29
|
-
contentPreview: string;
|
|
30
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Filesystem utilities for ACE Code Search
|
|
3
|
-
*/
|
|
4
|
-
/**
|
|
5
|
-
* Default exclusion directories
|
|
6
|
-
*/
|
|
7
|
-
export declare const DEFAULT_EXCLUDES: string[];
|
|
8
|
-
/**
|
|
9
|
-
* Check if a directory should be excluded based on exclusion patterns
|
|
10
|
-
* @param dirName - Directory name
|
|
11
|
-
* @param fullPath - Full path to directory
|
|
12
|
-
* @param basePath - Base path for relative path calculation
|
|
13
|
-
* @param customExcludes - Custom exclusion patterns
|
|
14
|
-
* @param regexCache - Cache for compiled regex patterns
|
|
15
|
-
* @returns True if directory should be excluded
|
|
16
|
-
*/
|
|
17
|
-
export declare function shouldExcludeDirectory(dirName: string, fullPath: string, basePath: string, customExcludes: string[], regexCache: Map<string, RegExp>): boolean;
|
|
18
|
-
/**
|
|
19
|
-
* Load custom exclusion patterns from .gitignore and .snowignore
|
|
20
|
-
* @param basePath - Base path to search for ignore files
|
|
21
|
-
* @returns Array of exclusion patterns
|
|
22
|
-
*/
|
|
23
|
-
export declare function loadExclusionPatterns(basePath: string): Promise<string[]>;
|
|
24
|
-
/**
|
|
25
|
-
* Read file with LRU cache to reduce repeated file system access
|
|
26
|
-
* @param filePath - Path to file
|
|
27
|
-
* @param fileContentCache - Cache for file contents
|
|
28
|
-
* @param maxCacheSize - Maximum cache size
|
|
29
|
-
* @returns File content
|
|
30
|
-
*/
|
|
31
|
-
export declare function readFileWithCache(filePath: string, fileContentCache: Map<string, {
|
|
32
|
-
content: string;
|
|
33
|
-
mtime: number;
|
|
34
|
-
}>, maxCacheSize?: number): Promise<string>;
|
|
@@ -1,146 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Filesystem utilities for ACE Code Search
|
|
3
|
-
*/
|
|
4
|
-
import { promises as fs } from 'fs';
|
|
5
|
-
import * as path from 'path';
|
|
6
|
-
/**
|
|
7
|
-
* Default exclusion directories
|
|
8
|
-
*/
|
|
9
|
-
export const DEFAULT_EXCLUDES = [
|
|
10
|
-
'node_modules',
|
|
11
|
-
'.git',
|
|
12
|
-
'dist',
|
|
13
|
-
'build',
|
|
14
|
-
'__pycache__',
|
|
15
|
-
'target',
|
|
16
|
-
'.next',
|
|
17
|
-
'.nuxt',
|
|
18
|
-
'coverage',
|
|
19
|
-
'out',
|
|
20
|
-
'.cache',
|
|
21
|
-
'vendor',
|
|
22
|
-
];
|
|
23
|
-
/**
|
|
24
|
-
* Check if a directory should be excluded based on exclusion patterns
|
|
25
|
-
* @param dirName - Directory name
|
|
26
|
-
* @param fullPath - Full path to directory
|
|
27
|
-
* @param basePath - Base path for relative path calculation
|
|
28
|
-
* @param customExcludes - Custom exclusion patterns
|
|
29
|
-
* @param regexCache - Cache for compiled regex patterns
|
|
30
|
-
* @returns True if directory should be excluded
|
|
31
|
-
*/
|
|
32
|
-
export function shouldExcludeDirectory(dirName, fullPath, basePath, customExcludes, regexCache) {
|
|
33
|
-
// Check default excludes
|
|
34
|
-
if (DEFAULT_EXCLUDES.includes(dirName)) {
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
// Check hidden directories
|
|
38
|
-
if (dirName.startsWith('.')) {
|
|
39
|
-
return true;
|
|
40
|
-
}
|
|
41
|
-
// Check custom exclusion patterns
|
|
42
|
-
const relativePath = path.relative(basePath, fullPath);
|
|
43
|
-
for (const pattern of customExcludes) {
|
|
44
|
-
// Simple pattern matching: exact match or glob-style wildcards
|
|
45
|
-
if (pattern.includes('*')) {
|
|
46
|
-
// Use cached regex to avoid recompilation
|
|
47
|
-
let regex = regexCache.get(pattern);
|
|
48
|
-
if (!regex) {
|
|
49
|
-
const regexPattern = pattern
|
|
50
|
-
.replace(/\./g, '\\.')
|
|
51
|
-
.replace(/\*/g, '.*');
|
|
52
|
-
regex = new RegExp(`^${regexPattern}$`);
|
|
53
|
-
regexCache.set(pattern, regex);
|
|
54
|
-
}
|
|
55
|
-
if (regex.test(relativePath) || regex.test(dirName)) {
|
|
56
|
-
return true;
|
|
57
|
-
}
|
|
58
|
-
}
|
|
59
|
-
else {
|
|
60
|
-
// Exact match
|
|
61
|
-
if (relativePath === pattern ||
|
|
62
|
-
dirName === pattern ||
|
|
63
|
-
relativePath.startsWith(pattern + '/')) {
|
|
64
|
-
return true;
|
|
65
|
-
}
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
return false;
|
|
69
|
-
}
|
|
70
|
-
/**
|
|
71
|
-
* Load custom exclusion patterns from .gitignore and .snowignore
|
|
72
|
-
* @param basePath - Base path to search for ignore files
|
|
73
|
-
* @returns Array of exclusion patterns
|
|
74
|
-
*/
|
|
75
|
-
export async function loadExclusionPatterns(basePath) {
|
|
76
|
-
const patterns = [];
|
|
77
|
-
// Load .gitignore if exists
|
|
78
|
-
const gitignorePath = path.join(basePath, '.gitignore');
|
|
79
|
-
try {
|
|
80
|
-
const gitignoreContent = await fs.readFile(gitignorePath, 'utf-8');
|
|
81
|
-
const lines = gitignoreContent.split('\n');
|
|
82
|
-
for (const line of lines) {
|
|
83
|
-
const trimmed = line.trim();
|
|
84
|
-
// Skip empty lines and comments
|
|
85
|
-
if (trimmed && !trimmed.startsWith('#')) {
|
|
86
|
-
// Remove leading slash and trailing slash
|
|
87
|
-
const pattern = trimmed.replace(/^\//, '').replace(/\/$/, '');
|
|
88
|
-
if (pattern) {
|
|
89
|
-
patterns.push(pattern);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
catch {
|
|
95
|
-
// .gitignore doesn't exist or cannot be read, skip
|
|
96
|
-
}
|
|
97
|
-
// Load .snowignore if exists
|
|
98
|
-
const snowignorePath = path.join(basePath, '.snowignore');
|
|
99
|
-
try {
|
|
100
|
-
const snowignoreContent = await fs.readFile(snowignorePath, 'utf-8');
|
|
101
|
-
const lines = snowignoreContent.split('\n');
|
|
102
|
-
for (const line of lines) {
|
|
103
|
-
const trimmed = line.trim();
|
|
104
|
-
// Skip empty lines and comments
|
|
105
|
-
if (trimmed && !trimmed.startsWith('#')) {
|
|
106
|
-
// Remove leading slash and trailing slash
|
|
107
|
-
const pattern = trimmed.replace(/^\//, '').replace(/\/$/, '');
|
|
108
|
-
if (pattern) {
|
|
109
|
-
patterns.push(pattern);
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
catch {
|
|
115
|
-
// .snowignore doesn't exist or cannot be read, skip
|
|
116
|
-
}
|
|
117
|
-
return patterns;
|
|
118
|
-
}
|
|
119
|
-
/**
|
|
120
|
-
* Read file with LRU cache to reduce repeated file system access
|
|
121
|
-
* @param filePath - Path to file
|
|
122
|
-
* @param fileContentCache - Cache for file contents
|
|
123
|
-
* @param maxCacheSize - Maximum cache size
|
|
124
|
-
* @returns File content
|
|
125
|
-
*/
|
|
126
|
-
export async function readFileWithCache(filePath, fileContentCache, maxCacheSize = 50) {
|
|
127
|
-
const stats = await fs.stat(filePath);
|
|
128
|
-
const mtime = stats.mtimeMs;
|
|
129
|
-
// Check cache
|
|
130
|
-
const cached = fileContentCache.get(filePath);
|
|
131
|
-
if (cached && cached.mtime === mtime) {
|
|
132
|
-
return cached.content;
|
|
133
|
-
}
|
|
134
|
-
// Read file
|
|
135
|
-
const content = await fs.readFile(filePath, 'utf-8');
|
|
136
|
-
// Manage cache size (simple LRU: remove oldest if over limit)
|
|
137
|
-
if (fileContentCache.size >= maxCacheSize) {
|
|
138
|
-
const firstKey = fileContentCache.keys().next().value;
|
|
139
|
-
if (firstKey) {
|
|
140
|
-
fileContentCache.delete(firstKey);
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
// Cache the content
|
|
144
|
-
fileContentCache.set(filePath, { content, mtime });
|
|
145
|
-
return content;
|
|
146
|
-
}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Language configuration utilities for ACE Code Search
|
|
3
|
-
*/
|
|
4
|
-
import type { LanguageConfig } from '../../types/aceCodeSearch.types.js';
|
|
5
|
-
/**
|
|
6
|
-
* Language-specific parsers configuration
|
|
7
|
-
*/
|
|
8
|
-
export declare const LANGUAGE_CONFIG: Record<string, LanguageConfig>;
|
|
9
|
-
/**
|
|
10
|
-
* Detect programming language from file extension
|
|
11
|
-
* @param filePath - File path to detect language from
|
|
12
|
-
* @returns Language name or null if not supported
|
|
13
|
-
*/
|
|
14
|
-
export declare function detectLanguage(filePath: string): string | null;
|