centaurus-cli 2.5.2 → 2.5.3
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/AUTH_FLOW.md +138 -0
- package/CONFIG_GUIDE.md +249 -0
- package/dist/config/models.d.ts +1 -1
- package/dist/config/models.d.ts.map +1 -1
- package/dist/config/models.js +2 -0
- package/dist/config/models.js.map +1 -1
- package/dist/ui/components/App.d.ts.map +1 -1
- package/dist/ui/components/App.js +104 -62
- package/dist/ui/components/App.js.map +1 -1
- 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.map +1 -1
- package/dist/ui/components/InputBox.js +3 -2
- 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.js +2 -2
- package/dist/ui/components/StreamingMessageDisplay.d.ts.map +1 -1
- package/dist/ui/components/StreamingMessageDisplay.js +3 -3
- package/dist/ui/components/StreamingMessageDisplay.js.map +1 -1
- package/dist/ui/components/ThinkingDisplay.d.ts +13 -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/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 +5 -5
- 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
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Command to view duplication detection logs
|
|
3
|
-
*/
|
|
4
|
-
import { getLogFilePath, readLastLogLines } from '../ui/utils/duplication-logger.js';
|
|
5
|
-
export function viewDuplicationLogs(lines = 50) {
|
|
6
|
-
const logPath = getLogFilePath();
|
|
7
|
-
console.log(`\n📋 Duplication Detection Logs (last ${lines} lines)`);
|
|
8
|
-
console.log(`📁 Log file: ${logPath}\n`);
|
|
9
|
-
console.log('─'.repeat(80));
|
|
10
|
-
console.log(readLastLogLines(lines));
|
|
11
|
-
console.log('─'.repeat(80));
|
|
12
|
-
console.log(`\nTo view full log: cat "${logPath}"\n`);
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=view-duplication-logs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"view-duplication-logs.js","sourceRoot":"","sources":["../../src/commands/view-duplication-logs.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErF,MAAM,UAAU,mBAAmB,CAAC,QAAgB,EAAE;IACpD,MAAM,OAAO,GAAG,cAAc,EAAE,CAAC;IACjC,OAAO,CAAC,GAAG,CAAC,yCAAyC,KAAK,SAAS,CAAC,CAAC;IACrE,OAAO,CAAC,GAAG,CAAC,gBAAgB,OAAO,IAAI,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC5B,OAAO,CAAC,GAAG,CAAC,4BAA4B,OAAO,KAAK,CAAC,CAAC;AACxD,CAAC"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Unit tests for Command Detector
|
|
3
|
-
*
|
|
4
|
-
* These tests verify:
|
|
5
|
-
* - Pattern matching for SSH, WSL, Docker commands
|
|
6
|
-
* - Handler registration and lookup
|
|
7
|
-
* - Detection result accuracy
|
|
8
|
-
*/
|
|
9
|
-
/**
|
|
10
|
-
* Run all tests
|
|
11
|
-
*/
|
|
12
|
-
declare function runTests(): void;
|
|
13
|
-
export { runTests };
|
|
14
|
-
//# sourceMappingURL=command-detector.test.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"command-detector.test.d.ts","sourceRoot":"","sources":["../../../src/context/__tests__/command-detector.test.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAsVH;;GAEG;AACH,iBAAS,QAAQ,SAgBhB;AAOD,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|
|
@@ -1,318 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Unit tests for Command Detector
|
|
3
|
-
*
|
|
4
|
-
* These tests verify:
|
|
5
|
-
* - Pattern matching for SSH, WSL, Docker commands
|
|
6
|
-
* - Handler registration and lookup
|
|
7
|
-
* - Detection result accuracy
|
|
8
|
-
*/
|
|
9
|
-
import { CommandDetector } from '../command-detector';
|
|
10
|
-
/**
|
|
11
|
-
* Mock SSH Handler for testing
|
|
12
|
-
*/
|
|
13
|
-
class MockSSHHandler {
|
|
14
|
-
type = 'ssh';
|
|
15
|
-
detectionPatterns = [
|
|
16
|
-
/^ssh\s+/,
|
|
17
|
-
/^ssh\s+-[^\s]+\s+/,
|
|
18
|
-
];
|
|
19
|
-
detect(command) {
|
|
20
|
-
return this.detectionPatterns.some(pattern => pattern.test(command));
|
|
21
|
-
}
|
|
22
|
-
async connect(command, cwd) {
|
|
23
|
-
return {
|
|
24
|
-
type: 'ssh',
|
|
25
|
-
handler: this,
|
|
26
|
-
metadata: {
|
|
27
|
-
hostname: 'example.com',
|
|
28
|
-
username: 'testuser',
|
|
29
|
-
workingDirectory: '/home/user',
|
|
30
|
-
shell: 'bash',
|
|
31
|
-
os: 'linux',
|
|
32
|
-
},
|
|
33
|
-
connectionState: 'connected',
|
|
34
|
-
sessionId: 'test-session',
|
|
35
|
-
};
|
|
36
|
-
}
|
|
37
|
-
async disconnect() { }
|
|
38
|
-
async executeCommand(command) {
|
|
39
|
-
return { stdout: '', stderr: '', exitCode: 0 };
|
|
40
|
-
}
|
|
41
|
-
async readFile(path) { return ''; }
|
|
42
|
-
async writeFile(path, content) { }
|
|
43
|
-
async listDirectory(path) { return []; }
|
|
44
|
-
async searchFiles(pattern, directory) { return []; }
|
|
45
|
-
async getCurrentWorkingDirectory() { return '/home/user'; }
|
|
46
|
-
async getShellType() { return 'bash'; }
|
|
47
|
-
async getOSType() { return 'linux'; }
|
|
48
|
-
getBreadcrumbs() { return []; }
|
|
49
|
-
}
|
|
50
|
-
/**
|
|
51
|
-
* Mock WSL Handler for testing
|
|
52
|
-
*/
|
|
53
|
-
class MockWSLHandler {
|
|
54
|
-
type = 'wsl';
|
|
55
|
-
detectionPatterns = [
|
|
56
|
-
/^wsl$/,
|
|
57
|
-
/^wsl\s+/,
|
|
58
|
-
/^wsl\.exe\s+/,
|
|
59
|
-
];
|
|
60
|
-
detect(command) {
|
|
61
|
-
return this.detectionPatterns.some(pattern => pattern.test(command));
|
|
62
|
-
}
|
|
63
|
-
async connect(command, cwd) {
|
|
64
|
-
return {
|
|
65
|
-
type: 'wsl',
|
|
66
|
-
handler: this,
|
|
67
|
-
metadata: {
|
|
68
|
-
distroName: 'Ubuntu',
|
|
69
|
-
workingDirectory: '/home/user',
|
|
70
|
-
shell: 'bash',
|
|
71
|
-
os: 'linux',
|
|
72
|
-
},
|
|
73
|
-
connectionState: 'connected',
|
|
74
|
-
sessionId: 'test-session',
|
|
75
|
-
};
|
|
76
|
-
}
|
|
77
|
-
async disconnect() { }
|
|
78
|
-
async executeCommand(command) {
|
|
79
|
-
return { stdout: '', stderr: '', exitCode: 0 };
|
|
80
|
-
}
|
|
81
|
-
async readFile(path) { return ''; }
|
|
82
|
-
async writeFile(path, content) { }
|
|
83
|
-
async listDirectory(path) { return []; }
|
|
84
|
-
async searchFiles(pattern, directory) { return []; }
|
|
85
|
-
async getCurrentWorkingDirectory() { return '/home/user'; }
|
|
86
|
-
async getShellType() { return 'bash'; }
|
|
87
|
-
async getOSType() { return 'linux'; }
|
|
88
|
-
getBreadcrumbs() { return []; }
|
|
89
|
-
}
|
|
90
|
-
/**
|
|
91
|
-
* Mock Docker Handler for testing
|
|
92
|
-
*/
|
|
93
|
-
class MockDockerHandler {
|
|
94
|
-
type = 'docker';
|
|
95
|
-
detectionPatterns = [
|
|
96
|
-
/^docker\s+exec\s+/,
|
|
97
|
-
/^docker\s+exec\s+-it\s+/,
|
|
98
|
-
];
|
|
99
|
-
detect(command) {
|
|
100
|
-
return this.detectionPatterns.some(pattern => pattern.test(command));
|
|
101
|
-
}
|
|
102
|
-
async connect(command, cwd) {
|
|
103
|
-
return {
|
|
104
|
-
type: 'docker',
|
|
105
|
-
handler: this,
|
|
106
|
-
metadata: {
|
|
107
|
-
containerId: 'abc123',
|
|
108
|
-
workingDirectory: '/app',
|
|
109
|
-
shell: 'bash',
|
|
110
|
-
os: 'linux',
|
|
111
|
-
},
|
|
112
|
-
connectionState: 'connected',
|
|
113
|
-
sessionId: 'test-session',
|
|
114
|
-
};
|
|
115
|
-
}
|
|
116
|
-
async disconnect() { }
|
|
117
|
-
async executeCommand(command) {
|
|
118
|
-
return { stdout: '', stderr: '', exitCode: 0 };
|
|
119
|
-
}
|
|
120
|
-
async readFile(path) { return ''; }
|
|
121
|
-
async writeFile(path, content) { }
|
|
122
|
-
async listDirectory(path) { return []; }
|
|
123
|
-
async searchFiles(pattern, directory) { return []; }
|
|
124
|
-
async getCurrentWorkingDirectory() { return '/app'; }
|
|
125
|
-
async getShellType() { return 'bash'; }
|
|
126
|
-
async getOSType() { return 'linux'; }
|
|
127
|
-
getBreadcrumbs() { return []; }
|
|
128
|
-
}
|
|
129
|
-
/**
|
|
130
|
-
* Test: SSH command detection
|
|
131
|
-
*/
|
|
132
|
-
function testSSHDetection() {
|
|
133
|
-
console.log('Test: SSH command detection');
|
|
134
|
-
const detector = new CommandDetector();
|
|
135
|
-
const handler = new MockSSHHandler();
|
|
136
|
-
detector.registerHandler(handler);
|
|
137
|
-
// Test basic SSH command
|
|
138
|
-
let result = detector.detect('ssh user@host');
|
|
139
|
-
if (!result || result.handler.type !== 'ssh') {
|
|
140
|
-
throw new Error('Expected to detect SSH command');
|
|
141
|
-
}
|
|
142
|
-
// Test SSH with options
|
|
143
|
-
result = detector.detect('ssh -i key.pem user@host');
|
|
144
|
-
if (!result || result.handler.type !== 'ssh') {
|
|
145
|
-
throw new Error('Expected to detect SSH command with options');
|
|
146
|
-
}
|
|
147
|
-
// Test non-SSH command
|
|
148
|
-
result = detector.detect('ls -la');
|
|
149
|
-
if (result !== null) {
|
|
150
|
-
throw new Error('Expected not to detect non-SSH command');
|
|
151
|
-
}
|
|
152
|
-
console.log('✓ SSH command detection works correctly');
|
|
153
|
-
}
|
|
154
|
-
/**
|
|
155
|
-
* Test: WSL command detection
|
|
156
|
-
*/
|
|
157
|
-
function testWSLDetection() {
|
|
158
|
-
console.log('\nTest: WSL command detection');
|
|
159
|
-
const detector = new CommandDetector();
|
|
160
|
-
const handler = new MockWSLHandler();
|
|
161
|
-
detector.registerHandler(handler);
|
|
162
|
-
// Test basic WSL command
|
|
163
|
-
let result = detector.detect('wsl');
|
|
164
|
-
if (!result || result.handler.type !== 'wsl') {
|
|
165
|
-
throw new Error('Expected to detect WSL command');
|
|
166
|
-
}
|
|
167
|
-
// Test WSL with distribution
|
|
168
|
-
result = detector.detect('wsl -d Ubuntu');
|
|
169
|
-
if (!result || result.handler.type !== 'wsl') {
|
|
170
|
-
throw new Error('Expected to detect WSL command with distribution');
|
|
171
|
-
}
|
|
172
|
-
// Test wsl.exe
|
|
173
|
-
result = detector.detect('wsl.exe --cd /home/user');
|
|
174
|
-
if (!result || result.handler.type !== 'wsl') {
|
|
175
|
-
throw new Error('Expected to detect wsl.exe command');
|
|
176
|
-
}
|
|
177
|
-
console.log('✓ WSL command detection works correctly');
|
|
178
|
-
}
|
|
179
|
-
/**
|
|
180
|
-
* Test: Docker command detection
|
|
181
|
-
*/
|
|
182
|
-
function testDockerDetection() {
|
|
183
|
-
console.log('\nTest: Docker command detection');
|
|
184
|
-
const detector = new CommandDetector();
|
|
185
|
-
const handler = new MockDockerHandler();
|
|
186
|
-
detector.registerHandler(handler);
|
|
187
|
-
// Test docker exec
|
|
188
|
-
let result = detector.detect('docker exec container_name bash');
|
|
189
|
-
if (!result || result.handler.type !== 'docker') {
|
|
190
|
-
throw new Error('Expected to detect docker exec command');
|
|
191
|
-
}
|
|
192
|
-
// Test docker exec with -it
|
|
193
|
-
result = detector.detect('docker exec -it container_name bash');
|
|
194
|
-
if (!result || result.handler.type !== 'docker') {
|
|
195
|
-
throw new Error('Expected to detect docker exec -it command');
|
|
196
|
-
}
|
|
197
|
-
// Test non-docker exec command
|
|
198
|
-
result = detector.detect('docker ps');
|
|
199
|
-
if (result !== null) {
|
|
200
|
-
throw new Error('Expected not to detect docker ps command');
|
|
201
|
-
}
|
|
202
|
-
console.log('✓ Docker command detection works correctly');
|
|
203
|
-
}
|
|
204
|
-
/**
|
|
205
|
-
* Test: Multiple handlers
|
|
206
|
-
*/
|
|
207
|
-
function testMultipleHandlers() {
|
|
208
|
-
console.log('\nTest: Multiple handlers');
|
|
209
|
-
const detector = new CommandDetector();
|
|
210
|
-
detector.registerHandler(new MockSSHHandler());
|
|
211
|
-
detector.registerHandler(new MockWSLHandler());
|
|
212
|
-
detector.registerHandler(new MockDockerHandler());
|
|
213
|
-
// Test SSH detection
|
|
214
|
-
let result = detector.detect('ssh user@host');
|
|
215
|
-
if (!result || result.handler.type !== 'ssh') {
|
|
216
|
-
throw new Error('Expected to detect SSH with multiple handlers');
|
|
217
|
-
}
|
|
218
|
-
// Test WSL detection
|
|
219
|
-
result = detector.detect('wsl');
|
|
220
|
-
if (!result || result.handler.type !== 'wsl') {
|
|
221
|
-
throw new Error('Expected to detect WSL with multiple handlers');
|
|
222
|
-
}
|
|
223
|
-
// Test Docker detection
|
|
224
|
-
result = detector.detect('docker exec -it container bash');
|
|
225
|
-
if (!result || result.handler.type !== 'docker') {
|
|
226
|
-
throw new Error('Expected to detect Docker with multiple handlers');
|
|
227
|
-
}
|
|
228
|
-
console.log('✓ Multiple handlers work correctly');
|
|
229
|
-
}
|
|
230
|
-
/**
|
|
231
|
-
* Test: Handler management
|
|
232
|
-
*/
|
|
233
|
-
function testHandlerManagement() {
|
|
234
|
-
console.log('\nTest: Handler management');
|
|
235
|
-
const detector = new CommandDetector();
|
|
236
|
-
const sshHandler = new MockSSHHandler();
|
|
237
|
-
const wslHandler = new MockWSLHandler();
|
|
238
|
-
// Register handlers
|
|
239
|
-
detector.registerHandler(sshHandler);
|
|
240
|
-
detector.registerHandler(wslHandler);
|
|
241
|
-
// Check handlers
|
|
242
|
-
const handlers = detector.getHandlers();
|
|
243
|
-
if (handlers.length !== 2) {
|
|
244
|
-
throw new Error('Expected 2 registered handlers');
|
|
245
|
-
}
|
|
246
|
-
// Check hasHandler
|
|
247
|
-
if (!detector.hasHandler('ssh')) {
|
|
248
|
-
throw new Error('Expected to have SSH handler');
|
|
249
|
-
}
|
|
250
|
-
// Get handler by type
|
|
251
|
-
const retrieved = detector.getHandlerByType('ssh');
|
|
252
|
-
if (retrieved !== sshHandler) {
|
|
253
|
-
throw new Error('Expected to retrieve SSH handler');
|
|
254
|
-
}
|
|
255
|
-
// Remove handler
|
|
256
|
-
const removed = detector.removeHandler('ssh');
|
|
257
|
-
if (!removed) {
|
|
258
|
-
throw new Error('Expected to remove SSH handler');
|
|
259
|
-
}
|
|
260
|
-
if (detector.hasHandler('ssh')) {
|
|
261
|
-
throw new Error('Expected SSH handler to be removed');
|
|
262
|
-
}
|
|
263
|
-
// Clear handlers
|
|
264
|
-
detector.clearHandlers();
|
|
265
|
-
if (detector.getHandlers().length !== 0) {
|
|
266
|
-
throw new Error('Expected all handlers to be cleared');
|
|
267
|
-
}
|
|
268
|
-
console.log('✓ Handler management works correctly');
|
|
269
|
-
}
|
|
270
|
-
/**
|
|
271
|
-
* Test: Empty and whitespace commands
|
|
272
|
-
*/
|
|
273
|
-
function testEdgeCases() {
|
|
274
|
-
console.log('\nTest: Edge cases');
|
|
275
|
-
const detector = new CommandDetector();
|
|
276
|
-
detector.registerHandler(new MockSSHHandler());
|
|
277
|
-
// Test empty command
|
|
278
|
-
let result = detector.detect('');
|
|
279
|
-
if (result !== null) {
|
|
280
|
-
throw new Error('Expected null for empty command');
|
|
281
|
-
}
|
|
282
|
-
// Test whitespace command
|
|
283
|
-
result = detector.detect(' ');
|
|
284
|
-
if (result !== null) {
|
|
285
|
-
throw new Error('Expected null for whitespace command');
|
|
286
|
-
}
|
|
287
|
-
// Test command with leading/trailing whitespace
|
|
288
|
-
result = detector.detect(' ssh user@host ');
|
|
289
|
-
if (!result || result.handler.type !== 'ssh') {
|
|
290
|
-
throw new Error('Expected to detect SSH command with whitespace');
|
|
291
|
-
}
|
|
292
|
-
console.log('✓ Edge cases handled correctly');
|
|
293
|
-
}
|
|
294
|
-
/**
|
|
295
|
-
* Run all tests
|
|
296
|
-
*/
|
|
297
|
-
function runTests() {
|
|
298
|
-
console.log('=== Command Detector Tests ===\n');
|
|
299
|
-
try {
|
|
300
|
-
testSSHDetection();
|
|
301
|
-
testWSLDetection();
|
|
302
|
-
testDockerDetection();
|
|
303
|
-
testMultipleHandlers();
|
|
304
|
-
testHandlerManagement();
|
|
305
|
-
testEdgeCases();
|
|
306
|
-
console.log('\n=== All tests passed! ===');
|
|
307
|
-
}
|
|
308
|
-
catch (error) {
|
|
309
|
-
console.error('\n❌ Test failed:', error);
|
|
310
|
-
process.exit(1);
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
// Run tests if this file is executed directly
|
|
314
|
-
if (import.meta.url === `file://${process.argv[1]}`) {
|
|
315
|
-
runTests();
|
|
316
|
-
}
|
|
317
|
-
export { runTests };
|
|
318
|
-
//# sourceMappingURL=command-detector.test.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"command-detector.test.js","sourceRoot":"","sources":["../../../src/context/__tests__/command-detector.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Unit tests for Context Manager
|
|
3
|
-
*
|
|
4
|
-
* These tests verify:
|
|
5
|
-
* - Context switching (local → subshell → local)
|
|
6
|
-
* - Context stack management
|
|
7
|
-
* - Handler registration
|
|
8
|
-
* - State updates
|
|
9
|
-
* - Error handling
|
|
10
|
-
*/
|
|
11
|
-
/**
|
|
12
|
-
* Run all tests
|
|
13
|
-
*/
|
|
14
|
-
declare function runTests(): Promise<void>;
|
|
15
|
-
export { runTests };
|
|
16
|
-
//# sourceMappingURL=context-manager.test.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context-manager.test.d.ts","sourceRoot":"","sources":["../../../src/context/__tests__/context-manager.test.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAgbH;;GAEG;AACH,iBAAe,QAAQ,kBAqBtB;AAOD,OAAO,EAAE,QAAQ,EAAE,CAAC"}
|