@maxanatsko/llm-cli-bridge 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/LICENSE +26 -0
- package/README.md +203 -0
- package/dist/backends/codex.d.ts +37 -0
- package/dist/backends/codex.d.ts.map +1 -0
- package/dist/backends/codex.js +438 -0
- package/dist/backends/codex.js.map +1 -0
- package/dist/backends/gemini.d.ts +17 -0
- package/dist/backends/gemini.d.ts.map +1 -0
- package/dist/backends/gemini.js +174 -0
- package/dist/backends/gemini.js.map +1 -0
- package/dist/backends/index.d.ts +8 -0
- package/dist/backends/index.d.ts.map +1 -0
- package/dist/backends/index.js +9 -0
- package/dist/backends/index.js.map +1 -0
- package/dist/backends/registry.d.ts +33 -0
- package/dist/backends/registry.d.ts.map +1 -0
- package/dist/backends/registry.js +80 -0
- package/dist/backends/registry.js.map +1 -0
- package/dist/backends/types.d.ts +61 -0
- package/dist/backends/types.d.ts.map +1 -0
- package/dist/backends/types.js +5 -0
- package/dist/backends/types.js.map +1 -0
- package/dist/constants.d.ts +223 -0
- package/dist/constants.d.ts.map +1 -0
- package/dist/constants.js +228 -0
- package/dist/constants.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +192 -0
- package/dist/index.js.map +1 -0
- package/dist/tools/ask.tool.d.ts +4 -0
- package/dist/tools/ask.tool.d.ts.map +1 -0
- package/dist/tools/ask.tool.js +113 -0
- package/dist/tools/ask.tool.js.map +1 -0
- package/dist/tools/brainstorm.tool.d.ts +3 -0
- package/dist/tools/brainstorm.tool.d.ts.map +1 -0
- package/dist/tools/brainstorm.tool.js +250 -0
- package/dist/tools/brainstorm.tool.js.map +1 -0
- package/dist/tools/index.d.ts +5 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +13 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/registry.d.ts +42 -0
- package/dist/tools/registry.d.ts.map +1 -0
- package/dist/tools/registry.js +85 -0
- package/dist/tools/registry.js.map +1 -0
- package/dist/tools/review-code.tool.d.ts +3 -0
- package/dist/tools/review-code.tool.d.ts.map +1 -0
- package/dist/tools/review-code.tool.js +279 -0
- package/dist/tools/review-code.tool.js.map +1 -0
- package/dist/tools/test-tool.example.d.ts +13 -0
- package/dist/tools/test-tool.example.d.ts.map +1 -0
- package/dist/tools/test-tool.example.js +32 -0
- package/dist/tools/test-tool.example.js.map +1 -0
- package/dist/tools/timeout-test.tool.d.ts +3 -0
- package/dist/tools/timeout-test.tool.d.ts.map +1 -0
- package/dist/tools/timeout-test.tool.js +38 -0
- package/dist/tools/timeout-test.tool.js.map +1 -0
- package/dist/utils/askSessionManager.d.ts +59 -0
- package/dist/utils/askSessionManager.d.ts.map +1 -0
- package/dist/utils/askSessionManager.js +123 -0
- package/dist/utils/askSessionManager.js.map +1 -0
- package/dist/utils/brainstormSessionManager.d.ts +67 -0
- package/dist/utils/brainstormSessionManager.d.ts.map +1 -0
- package/dist/utils/brainstormSessionManager.js +174 -0
- package/dist/utils/brainstormSessionManager.js.map +1 -0
- package/dist/utils/changeModeInstructions.d.ts +17 -0
- package/dist/utils/changeModeInstructions.d.ts.map +1 -0
- package/dist/utils/changeModeInstructions.js +100 -0
- package/dist/utils/changeModeInstructions.js.map +1 -0
- package/dist/utils/changeModeParser.d.ts +15 -0
- package/dist/utils/changeModeParser.d.ts.map +1 -0
- package/dist/utils/changeModeParser.js +81 -0
- package/dist/utils/changeModeParser.js.map +1 -0
- package/dist/utils/changeModeTranslator.d.ts +4 -0
- package/dist/utils/changeModeTranslator.d.ts.map +1 -0
- package/dist/utils/changeModeTranslator.js +42 -0
- package/dist/utils/changeModeTranslator.js.map +1 -0
- package/dist/utils/commandExecutor.d.ts +2 -0
- package/dist/utils/commandExecutor.d.ts.map +1 -0
- package/dist/utils/commandExecutor.js +76 -0
- package/dist/utils/commandExecutor.js.map +1 -0
- package/dist/utils/envAllowlist.d.ts +17 -0
- package/dist/utils/envAllowlist.d.ts.map +1 -0
- package/dist/utils/envAllowlist.js +54 -0
- package/dist/utils/envAllowlist.js.map +1 -0
- package/dist/utils/geminiExecutor.d.ts +3 -0
- package/dist/utils/geminiExecutor.d.ts.map +1 -0
- package/dist/utils/geminiExecutor.js +94 -0
- package/dist/utils/geminiExecutor.js.map +1 -0
- package/dist/utils/gitStateDetector.d.ts +32 -0
- package/dist/utils/gitStateDetector.d.ts.map +1 -0
- package/dist/utils/gitStateDetector.js +68 -0
- package/dist/utils/gitStateDetector.js.map +1 -0
- package/dist/utils/logger.d.ts +13 -0
- package/dist/utils/logger.d.ts.map +1 -0
- package/dist/utils/logger.js +42 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/reviewFormatter.d.ts +35 -0
- package/dist/utils/reviewFormatter.d.ts.map +1 -0
- package/dist/utils/reviewFormatter.js +201 -0
- package/dist/utils/reviewFormatter.js.map +1 -0
- package/dist/utils/reviewPromptBuilder.d.ts +43 -0
- package/dist/utils/reviewPromptBuilder.d.ts.map +1 -0
- package/dist/utils/reviewPromptBuilder.js +170 -0
- package/dist/utils/reviewPromptBuilder.js.map +1 -0
- package/dist/utils/reviewResponseParser.d.ts +20 -0
- package/dist/utils/reviewResponseParser.d.ts.map +1 -0
- package/dist/utils/reviewResponseParser.js +149 -0
- package/dist/utils/reviewResponseParser.js.map +1 -0
- package/dist/utils/reviewSessionCache.d.ts +81 -0
- package/dist/utils/reviewSessionCache.d.ts.map +1 -0
- package/dist/utils/reviewSessionCache.js +220 -0
- package/dist/utils/reviewSessionCache.js.map +1 -0
- package/dist/utils/reviewSessionManager.d.ts +52 -0
- package/dist/utils/reviewSessionManager.d.ts.map +1 -0
- package/dist/utils/reviewSessionManager.js +65 -0
- package/dist/utils/reviewSessionManager.js.map +1 -0
- package/dist/utils/sessionManager.d.ts +95 -0
- package/dist/utils/sessionManager.d.ts.map +1 -0
- package/dist/utils/sessionManager.js +382 -0
- package/dist/utils/sessionManager.js.map +1 -0
- package/dist/utils/sessionSchemas.d.ts +140 -0
- package/dist/utils/sessionSchemas.d.ts.map +1 -0
- package/dist/utils/sessionSchemas.js +2 -0
- package/dist/utils/sessionSchemas.js.map +1 -0
- package/dist/utils/timeoutManager.d.ts +2 -0
- package/dist/utils/timeoutManager.d.ts.map +1 -0
- package/dist/utils/timeoutManager.js +2 -0
- package/dist/utils/timeoutManager.js.map +1 -0
- package/package.json +72 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../src/backends/gemini.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backends module - Dual-backend support for Gemini and Codex CLI
|
|
3
|
+
*/
|
|
4
|
+
export type { BackendType, BackendConfig, BackendExecutor, BackendResult } from './types.js';
|
|
5
|
+
export { GeminiBackend } from './gemini.js';
|
|
6
|
+
export { CodexBackend } from './codex.js';
|
|
7
|
+
export { getBackend, getBackendSync, isBackendAvailable, getAllBackends, getAvailableBackends } from './registry.js';
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,YAAY,EAAE,WAAW,EAAE,aAAa,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAG7F,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,OAAO,EACL,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACrB,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backends module - Dual-backend support for Gemini and Codex CLI
|
|
3
|
+
*/
|
|
4
|
+
// Implementations
|
|
5
|
+
export { GeminiBackend } from './gemini.js';
|
|
6
|
+
export { CodexBackend } from './codex.js';
|
|
7
|
+
// Registry
|
|
8
|
+
export { getBackend, getBackendSync, isBackendAvailable, getAllBackends, getAvailableBackends } from './registry.js';
|
|
9
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/backends/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAKH,kBAAkB;AAClB,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,WAAW;AACX,OAAO,EACL,UAAU,EACV,cAAc,EACd,kBAAkB,EAClB,cAAc,EACd,oBAAoB,EACrB,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backend Registry - Manages available AI backends
|
|
3
|
+
*
|
|
4
|
+
* Defaults to Gemini. User must explicitly pass 'codex' to use Codex backend.
|
|
5
|
+
*/
|
|
6
|
+
import { BackendExecutor, BackendType } from './types.js';
|
|
7
|
+
/**
|
|
8
|
+
* Get the requested backend. Defaults to Gemini if not specified.
|
|
9
|
+
* User must explicitly choose 'codex' to use Codex backend.
|
|
10
|
+
*
|
|
11
|
+
* @param preference The backend to use ('gemini' or 'codex'). Defaults to 'gemini'.
|
|
12
|
+
* @returns The backend executor instance
|
|
13
|
+
* @throws Error if the requested backend is not available
|
|
14
|
+
*/
|
|
15
|
+
export declare function getBackend(preference?: BackendType): Promise<BackendExecutor>;
|
|
16
|
+
/**
|
|
17
|
+
* Get a backend without checking availability.
|
|
18
|
+
* Use this when you just need the backend instance for metadata.
|
|
19
|
+
*/
|
|
20
|
+
export declare function getBackendSync(preference?: BackendType): BackendExecutor;
|
|
21
|
+
/**
|
|
22
|
+
* Check if a specific backend is available
|
|
23
|
+
*/
|
|
24
|
+
export declare function isBackendAvailable(backendName: BackendType): Promise<boolean>;
|
|
25
|
+
/**
|
|
26
|
+
* Get all registered backends
|
|
27
|
+
*/
|
|
28
|
+
export declare function getAllBackends(): BackendExecutor[];
|
|
29
|
+
/**
|
|
30
|
+
* Get all available backends (async check)
|
|
31
|
+
*/
|
|
32
|
+
export declare function getAvailableBackends(): Promise<BackendExecutor[]>;
|
|
33
|
+
//# sourceMappingURL=registry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/backends/registry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAc1D;;;;;;;GAOG;AACH,wBAAsB,UAAU,CAAC,UAAU,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,eAAe,CAAC,CAqBnF;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,UAAU,CAAC,EAAE,WAAW,GAAG,eAAe,CASxE;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAInF;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,eAAe,EAAE,CAElD;AAED;;GAEG;AACH,wBAAsB,oBAAoB,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC,CAUvE"}
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backend Registry - Manages available AI backends
|
|
3
|
+
*
|
|
4
|
+
* Defaults to Gemini. User must explicitly pass 'codex' to use Codex backend.
|
|
5
|
+
*/
|
|
6
|
+
import { GeminiBackend } from './gemini.js';
|
|
7
|
+
import { CodexBackend } from './codex.js';
|
|
8
|
+
import { Logger } from '../utils/logger.js';
|
|
9
|
+
// Initialize backends
|
|
10
|
+
const geminiBackend = new GeminiBackend();
|
|
11
|
+
const codexBackend = new CodexBackend();
|
|
12
|
+
const backends = new Map([
|
|
13
|
+
['gemini', geminiBackend],
|
|
14
|
+
['codex', codexBackend],
|
|
15
|
+
]);
|
|
16
|
+
/**
|
|
17
|
+
* Get the requested backend. Defaults to Gemini if not specified.
|
|
18
|
+
* User must explicitly choose 'codex' to use Codex backend.
|
|
19
|
+
*
|
|
20
|
+
* @param preference The backend to use ('gemini' or 'codex'). Defaults to 'gemini'.
|
|
21
|
+
* @returns The backend executor instance
|
|
22
|
+
* @throws Error if the requested backend is not available
|
|
23
|
+
*/
|
|
24
|
+
export async function getBackend(preference) {
|
|
25
|
+
const backendName = preference || 'gemini'; // Default to Gemini
|
|
26
|
+
const backend = backends.get(backendName);
|
|
27
|
+
if (!backend) {
|
|
28
|
+
throw new Error(`Unknown backend: '${backendName}'. Available backends: gemini, codex`);
|
|
29
|
+
}
|
|
30
|
+
const isAvailable = await backend.isAvailable();
|
|
31
|
+
if (!isAvailable) {
|
|
32
|
+
throw new Error(`Backend '${backendName}' is not available. ` +
|
|
33
|
+
`Please install the ${backendName} CLI first.\n` +
|
|
34
|
+
(backendName === 'gemini'
|
|
35
|
+
? 'Install Gemini CLI: https://github.com/google-gemini/gemini-cli'
|
|
36
|
+
: 'Install Codex CLI: npm install -g @openai/codex'));
|
|
37
|
+
}
|
|
38
|
+
Logger.debug(`Using backend: ${backendName}`);
|
|
39
|
+
return backend;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Get a backend without checking availability.
|
|
43
|
+
* Use this when you just need the backend instance for metadata.
|
|
44
|
+
*/
|
|
45
|
+
export function getBackendSync(preference) {
|
|
46
|
+
const backendName = preference || 'gemini';
|
|
47
|
+
const backend = backends.get(backendName);
|
|
48
|
+
if (!backend) {
|
|
49
|
+
throw new Error(`Unknown backend: '${backendName}'`);
|
|
50
|
+
}
|
|
51
|
+
return backend;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Check if a specific backend is available
|
|
55
|
+
*/
|
|
56
|
+
export async function isBackendAvailable(backendName) {
|
|
57
|
+
const backend = backends.get(backendName);
|
|
58
|
+
if (!backend)
|
|
59
|
+
return false;
|
|
60
|
+
return backend.isAvailable();
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* Get all registered backends
|
|
64
|
+
*/
|
|
65
|
+
export function getAllBackends() {
|
|
66
|
+
return Array.from(backends.values());
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Get all available backends (async check)
|
|
70
|
+
*/
|
|
71
|
+
export async function getAvailableBackends() {
|
|
72
|
+
const available = [];
|
|
73
|
+
for (const backend of backends.values()) {
|
|
74
|
+
if (await backend.isAvailable()) {
|
|
75
|
+
available.push(backend);
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return available;
|
|
79
|
+
}
|
|
80
|
+
//# sourceMappingURL=registry.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/backends/registry.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAE5C,sBAAsB;AACtB,MAAM,aAAa,GAAG,IAAI,aAAa,EAAE,CAAC;AAC1C,MAAM,YAAY,GAAG,IAAI,YAAY,EAAE,CAAC;AAExC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAA+B;IACrD,CAAC,QAAQ,EAAE,aAAa,CAAC;IACzB,CAAC,OAAO,EAAE,YAAY,CAAC;CACxB,CAAC,CAAC;AAEH;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAAC,UAAwB;IACvD,MAAM,WAAW,GAAgB,UAAU,IAAI,QAAQ,CAAC,CAAC,oBAAoB;IAC7E,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,qBAAqB,WAAW,sCAAsC,CAAC,CAAC;IAC1F,CAAC;IAED,MAAM,WAAW,GAAG,MAAM,OAAO,CAAC,WAAW,EAAE,CAAC;IAChD,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CACb,YAAY,WAAW,sBAAsB;YAC7C,sBAAsB,WAAW,eAAe;YAChD,CAAC,WAAW,KAAK,QAAQ;gBACvB,CAAC,CAAC,iEAAiE;gBACnE,CAAC,CAAC,iDAAiD,CAAC,CACvD,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,kBAAkB,WAAW,EAAE,CAAC,CAAC;IAC9C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,UAAwB;IACrD,MAAM,WAAW,GAAgB,UAAU,IAAI,QAAQ,CAAC;IACxD,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE1C,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,MAAM,IAAI,KAAK,CAAC,qBAAqB,WAAW,GAAG,CAAC,CAAC;IACvD,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,WAAwB;IAC/D,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAC1C,IAAI,CAAC,OAAO;QAAE,OAAO,KAAK,CAAC;IAC3B,OAAO,OAAO,CAAC,WAAW,EAAE,CAAC;AAC/B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB;IACxC,MAAM,SAAS,GAAsB,EAAE,CAAC;IAExC,KAAK,MAAM,OAAO,IAAI,QAAQ,CAAC,MAAM,EAAE,EAAE,CAAC;QACxC,IAAI,MAAM,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC;YAChC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Backend abstraction layer types for dual-backend support (Gemini + Codex)
|
|
3
|
+
*/
|
|
4
|
+
export type BackendType = 'gemini' | 'codex';
|
|
5
|
+
export interface BackendConfig {
|
|
6
|
+
provider: BackendType;
|
|
7
|
+
model?: string;
|
|
8
|
+
sandbox?: boolean;
|
|
9
|
+
/**
|
|
10
|
+
* Sandbox mode for backends that support granular policies (Codex).
|
|
11
|
+
* If not provided, the backend chooses a safe default.
|
|
12
|
+
*/
|
|
13
|
+
sandboxMode?: 'read-only' | 'workspace-write' | 'danger-full-access';
|
|
14
|
+
changeMode?: boolean;
|
|
15
|
+
allowedTools?: string[];
|
|
16
|
+
cwd?: string;
|
|
17
|
+
approvalMode?: 'untrusted' | 'on-failure' | 'on-request' | 'never';
|
|
18
|
+
fullAuto?: boolean;
|
|
19
|
+
codexThreadId?: string;
|
|
20
|
+
reasoningEffort?: 'low' | 'medium' | 'high' | 'xhigh';
|
|
21
|
+
}
|
|
22
|
+
export interface BackendExecutor {
|
|
23
|
+
/** Backend identifier */
|
|
24
|
+
name: BackendType;
|
|
25
|
+
/**
|
|
26
|
+
* Execute a prompt using this backend
|
|
27
|
+
* @param prompt The prompt to send to the AI
|
|
28
|
+
* @param config Backend configuration options
|
|
29
|
+
* @param onProgress Optional callback for streaming progress
|
|
30
|
+
* @returns The execution result with response and optional metadata
|
|
31
|
+
*/
|
|
32
|
+
execute(prompt: string, config: BackendConfig, onProgress?: (output: string) => void): Promise<BackendResult>;
|
|
33
|
+
/**
|
|
34
|
+
* Check if this backend's CLI is available
|
|
35
|
+
* @returns True if the CLI is installed and accessible
|
|
36
|
+
*/
|
|
37
|
+
isAvailable(): Promise<boolean>;
|
|
38
|
+
/**
|
|
39
|
+
* Get the list of supported models for this backend
|
|
40
|
+
*/
|
|
41
|
+
getModels(): string[];
|
|
42
|
+
/**
|
|
43
|
+
* Whether this backend supports @file reference syntax
|
|
44
|
+
*/
|
|
45
|
+
supportsFileRefs(): boolean;
|
|
46
|
+
/**
|
|
47
|
+
* Get the file reference syntax (e.g., '@' for Gemini)
|
|
48
|
+
*/
|
|
49
|
+
getFileRefSyntax(): string;
|
|
50
|
+
}
|
|
51
|
+
export interface BackendResult {
|
|
52
|
+
/** The AI's response text */
|
|
53
|
+
response: string;
|
|
54
|
+
/** Which backend processed the request */
|
|
55
|
+
backend: BackendType;
|
|
56
|
+
/** Model used (if specified) */
|
|
57
|
+
model?: string;
|
|
58
|
+
/** Codex thread ID for native session resume (only set by Codex backend) */
|
|
59
|
+
codexThreadId?: string;
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/backends/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,WAAW,GAAG,QAAQ,GAAG,OAAO,CAAC;AAE7C,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB;;;OAGG;IACH,WAAW,CAAC,EAAE,WAAW,GAAG,iBAAiB,GAAG,oBAAoB,CAAC;IACrE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb,YAAY,CAAC,EAAE,WAAW,GAAG,YAAY,GAAG,YAAY,GAAG,OAAO,CAAC;IACnE,QAAQ,CAAC,EAAE,OAAO,CAAC;IAEnB,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,eAAe,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,CAAC;CACvD;AAED,MAAM,WAAW,eAAe;IAC9B,yBAAyB;IACzB,IAAI,EAAE,WAAW,CAAC;IAElB;;;;;;OAMG;IACH,OAAO,CACL,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,aAAa,EACrB,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,GACpC,OAAO,CAAC,aAAa,CAAC,CAAC;IAE1B;;;OAGG;IACH,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAEhC;;OAEG;IACH,SAAS,IAAI,MAAM,EAAE,CAAC;IAEtB;;OAEG;IACH,gBAAgB,IAAI,OAAO,CAAC;IAE5B;;OAEG;IACH,gBAAgB,IAAI,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,aAAa;IAC5B,6BAA6B;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,0CAA0C;IAC1C,OAAO,EAAE,WAAW,CAAC;IACrB,gCAAgC;IAChC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/backends/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
export declare const LOG_PREFIX = "[GMCPT]";
|
|
2
|
+
export declare const ERROR_MESSAGES: {
|
|
3
|
+
readonly QUOTA_EXCEEDED: "Quota exceeded for quota metric 'Gemini 2.5 Pro Requests'";
|
|
4
|
+
readonly QUOTA_EXCEEDED_SHORT: "⚠️ Gemini 2.5 Pro daily quota exceeded. Please retry with model: 'gemini-2.5-flash'";
|
|
5
|
+
readonly TOOL_NOT_FOUND: "not found in registry";
|
|
6
|
+
readonly NO_PROMPT_PROVIDED: "Please provide a prompt for analysis. Use @ syntax to include files (e.g., '@largefile.js explain what this does') or ask general questions";
|
|
7
|
+
readonly ACCESS_DENIED_PATH_TRAVERSAL: "[Access denied: path traversal not allowed]";
|
|
8
|
+
readonly ACCESS_DENIED_OUTSIDE_WORKSPACE: "[Access denied: path is outside workspace]";
|
|
9
|
+
readonly ACCESS_DENIED_SYMLINK_OUTSIDE_WORKSPACE: "[Access denied: symlink points outside workspace]";
|
|
10
|
+
readonly FILE_TOO_LARGE: "[File too large]";
|
|
11
|
+
readonly FILE_NOT_FOUND: "[File not found]";
|
|
12
|
+
readonly ERROR_READING_FILE: "[Error reading file]";
|
|
13
|
+
readonly INLINE_LIMIT_REACHED: "[Inline limit reached]";
|
|
14
|
+
};
|
|
15
|
+
export declare const STATUS_MESSAGES: {
|
|
16
|
+
readonly QUOTA_SWITCHING: "🚫 Gemini 2.5 Pro quota exceeded, switching to Flash model...";
|
|
17
|
+
readonly FLASH_RETRY: "⚡ Retrying with Gemini 2.5 Flash...";
|
|
18
|
+
readonly FLASH_SUCCESS: "✅ Flash model completed successfully";
|
|
19
|
+
readonly SANDBOX_EXECUTING: "🔒 Executing CLI command in sandbox mode...";
|
|
20
|
+
readonly PROCESSING_START: "🔍 Starting analysis (may take 5-15 minutes for large codebases)";
|
|
21
|
+
readonly PROCESSING_CONTINUE: "⏳ Still processing... Working on your request";
|
|
22
|
+
readonly PROCESSING_COMPLETE: "✅ Analysis completed successfully";
|
|
23
|
+
};
|
|
24
|
+
export declare const MODELS: {
|
|
25
|
+
readonly PRO_3: "gemini-3.1-pro";
|
|
26
|
+
readonly FLASH_3: "gemini-3-flash";
|
|
27
|
+
readonly PRO: "gemini-2.5-pro";
|
|
28
|
+
readonly FLASH: "gemini-2.5-flash";
|
|
29
|
+
};
|
|
30
|
+
export declare const GEMINI_MODEL_ALIASES: Record<string, string>;
|
|
31
|
+
export declare const PROTOCOL: {
|
|
32
|
+
readonly ROLES: {
|
|
33
|
+
readonly USER: "user";
|
|
34
|
+
readonly ASSISTANT: "assistant";
|
|
35
|
+
};
|
|
36
|
+
readonly CONTENT_TYPES: {
|
|
37
|
+
readonly TEXT: "text";
|
|
38
|
+
};
|
|
39
|
+
readonly STATUS: {
|
|
40
|
+
readonly SUCCESS: "success";
|
|
41
|
+
readonly ERROR: "error";
|
|
42
|
+
readonly FAILED: "failed";
|
|
43
|
+
readonly REPORT: "report";
|
|
44
|
+
};
|
|
45
|
+
readonly NOTIFICATIONS: {
|
|
46
|
+
readonly PROGRESS: "notifications/progress";
|
|
47
|
+
};
|
|
48
|
+
readonly KEEPALIVE_INTERVAL: 25000;
|
|
49
|
+
};
|
|
50
|
+
export declare const CLI: {
|
|
51
|
+
readonly COMMANDS: {
|
|
52
|
+
readonly GEMINI: "gemini";
|
|
53
|
+
readonly ECHO: "echo";
|
|
54
|
+
};
|
|
55
|
+
readonly FLAGS: {
|
|
56
|
+
readonly MODEL: "-m";
|
|
57
|
+
readonly SANDBOX: "-s";
|
|
58
|
+
readonly PROMPT: "-p";
|
|
59
|
+
readonly HELP: "-help";
|
|
60
|
+
readonly ALLOWED_TOOLS: "--allowed-tools";
|
|
61
|
+
};
|
|
62
|
+
readonly DEFAULTS: {
|
|
63
|
+
readonly MODEL: "gemini-3.1-pro";
|
|
64
|
+
readonly BOOLEAN_TRUE: "true";
|
|
65
|
+
readonly BOOLEAN_FALSE: "false";
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
export declare const BACKENDS: {
|
|
69
|
+
readonly GEMINI: "gemini";
|
|
70
|
+
readonly CODEX: "codex";
|
|
71
|
+
};
|
|
72
|
+
export declare const CODEX_CLI: {
|
|
73
|
+
readonly COMMANDS: {
|
|
74
|
+
readonly EXEC: "exec";
|
|
75
|
+
readonly RESUME: "resume";
|
|
76
|
+
};
|
|
77
|
+
readonly FLAGS: {
|
|
78
|
+
readonly CONFIG: "--config";
|
|
79
|
+
readonly MODEL: "-m";
|
|
80
|
+
readonly APPROVAL: "-a";
|
|
81
|
+
readonly SANDBOX: "-s";
|
|
82
|
+
readonly FULL_AUTO: "--full-auto";
|
|
83
|
+
readonly JSON: "--json";
|
|
84
|
+
readonly STDIN: "-";
|
|
85
|
+
};
|
|
86
|
+
readonly APPROVAL_MODES: {
|
|
87
|
+
readonly UNTRUSTED: "untrusted";
|
|
88
|
+
readonly ON_FAILURE: "on-failure";
|
|
89
|
+
readonly ON_REQUEST: "on-request";
|
|
90
|
+
readonly NEVER: "never";
|
|
91
|
+
};
|
|
92
|
+
readonly SANDBOX_MODES: {
|
|
93
|
+
readonly READ_ONLY: "read-only";
|
|
94
|
+
readonly WORKSPACE_WRITE: "workspace-write";
|
|
95
|
+
readonly FULL_ACCESS: "danger-full-access";
|
|
96
|
+
};
|
|
97
|
+
readonly REASONING_EFFORT: {
|
|
98
|
+
readonly LOW: "low";
|
|
99
|
+
readonly MEDIUM: "medium";
|
|
100
|
+
readonly HIGH: "high";
|
|
101
|
+
readonly XHIGH: "xhigh";
|
|
102
|
+
};
|
|
103
|
+
};
|
|
104
|
+
export declare const CODEX_FILE_REF: {
|
|
105
|
+
readonly MAX_FILE_BYTES: number;
|
|
106
|
+
readonly MAX_TOTAL_BYTES: number;
|
|
107
|
+
readonly MAX_DIR_ENTRIES: 200;
|
|
108
|
+
};
|
|
109
|
+
export declare const CODEX_OUTPUT: {
|
|
110
|
+
readonly MAX_OUTPUT_SIZE: number;
|
|
111
|
+
readonly MAX_JSONL_LINES: 10000;
|
|
112
|
+
};
|
|
113
|
+
export declare const CODEX_MODELS: {
|
|
114
|
+
readonly GPT_5_4: "gpt-5.4";
|
|
115
|
+
readonly GPT_5_4_MINI: "gpt-5.4-mini";
|
|
116
|
+
readonly GPT_5_3_CODEX: "gpt-5.3-codex";
|
|
117
|
+
readonly GPT_5_2_CODEX: "gpt-5.2-codex";
|
|
118
|
+
readonly GPT_5_2: "gpt-5.2";
|
|
119
|
+
readonly DEFAULT: "gpt-5.4";
|
|
120
|
+
};
|
|
121
|
+
export declare const SESSION: {
|
|
122
|
+
readonly BASE_DIR: ".ai-cli-mcp/sessions";
|
|
123
|
+
readonly DEFAULT_TTL: number;
|
|
124
|
+
readonly DEFAULT_MAX_SESSIONS: 20;
|
|
125
|
+
readonly DEFAULT_EVICTION_POLICY: "lru";
|
|
126
|
+
readonly TOOL_CONFIGS: {
|
|
127
|
+
readonly 'review-code': {
|
|
128
|
+
readonly TTL: number;
|
|
129
|
+
readonly MAX_SESSIONS: 20;
|
|
130
|
+
readonly EVICTION_POLICY: "lru";
|
|
131
|
+
};
|
|
132
|
+
readonly ask: {
|
|
133
|
+
readonly TTL: number;
|
|
134
|
+
readonly MAX_SESSIONS: 50;
|
|
135
|
+
readonly EVICTION_POLICY: "lru";
|
|
136
|
+
};
|
|
137
|
+
readonly 'ask-gemini': {
|
|
138
|
+
readonly TTL: number;
|
|
139
|
+
readonly MAX_SESSIONS: 50;
|
|
140
|
+
readonly EVICTION_POLICY: "lru";
|
|
141
|
+
};
|
|
142
|
+
readonly brainstorm: {
|
|
143
|
+
readonly TTL: number;
|
|
144
|
+
readonly MAX_SESSIONS: 30;
|
|
145
|
+
readonly EVICTION_POLICY: "lru";
|
|
146
|
+
};
|
|
147
|
+
};
|
|
148
|
+
};
|
|
149
|
+
export declare const REVIEW: {
|
|
150
|
+
readonly SESSION: {
|
|
151
|
+
readonly TTL: number;
|
|
152
|
+
readonly MAX_SESSIONS: 20;
|
|
153
|
+
readonly CACHE_DIR_NAME: "ai-cli-mcp-review-sessions";
|
|
154
|
+
};
|
|
155
|
+
readonly TYPES: {
|
|
156
|
+
readonly SECURITY: "security";
|
|
157
|
+
readonly PERFORMANCE: "performance";
|
|
158
|
+
readonly QUALITY: "quality";
|
|
159
|
+
readonly ARCHITECTURE: "architecture";
|
|
160
|
+
readonly GENERAL: "general";
|
|
161
|
+
};
|
|
162
|
+
readonly SEVERITY: {
|
|
163
|
+
readonly CRITICAL: "critical";
|
|
164
|
+
readonly IMPORTANT: "important";
|
|
165
|
+
readonly SUGGESTION: "suggestion";
|
|
166
|
+
readonly QUESTION: "question";
|
|
167
|
+
};
|
|
168
|
+
readonly STATUS: {
|
|
169
|
+
readonly PENDING: "pending";
|
|
170
|
+
readonly ACCEPTED: "accepted";
|
|
171
|
+
readonly REJECTED: "rejected";
|
|
172
|
+
readonly MODIFIED: "modified";
|
|
173
|
+
readonly DEFERRED: "deferred";
|
|
174
|
+
};
|
|
175
|
+
readonly SESSION_STATE: {
|
|
176
|
+
readonly ACTIVE: "active";
|
|
177
|
+
readonly PAUSED: "paused";
|
|
178
|
+
readonly COMPLETED: "completed";
|
|
179
|
+
};
|
|
180
|
+
readonly SCOPE: {
|
|
181
|
+
readonly FULL: "full";
|
|
182
|
+
readonly CHANGES_ONLY: "changes-only";
|
|
183
|
+
readonly FOCUSED: "focused";
|
|
184
|
+
};
|
|
185
|
+
readonly MAX_HISTORY_ROUNDS: 3;
|
|
186
|
+
readonly SEVERITY_EMOJI: {
|
|
187
|
+
readonly critical: "🔴";
|
|
188
|
+
readonly important: "🟠";
|
|
189
|
+
readonly suggestion: "🟡";
|
|
190
|
+
readonly question: "💬";
|
|
191
|
+
};
|
|
192
|
+
};
|
|
193
|
+
export interface ToolArguments {
|
|
194
|
+
prompt?: string;
|
|
195
|
+
model?: string;
|
|
196
|
+
sandbox?: boolean | string;
|
|
197
|
+
changeMode?: boolean | string;
|
|
198
|
+
chunkIndex?: number | string;
|
|
199
|
+
chunkCacheKey?: string;
|
|
200
|
+
message?: string;
|
|
201
|
+
backend?: 'gemini' | 'codex';
|
|
202
|
+
session?: string;
|
|
203
|
+
includeHistory?: boolean;
|
|
204
|
+
allowedTools?: string[];
|
|
205
|
+
methodology?: string;
|
|
206
|
+
domain?: string;
|
|
207
|
+
constraints?: string;
|
|
208
|
+
existingContext?: string;
|
|
209
|
+
ideaCount?: number;
|
|
210
|
+
includeAnalysis?: boolean;
|
|
211
|
+
files?: string[];
|
|
212
|
+
sessionId?: string;
|
|
213
|
+
forceNewSession?: boolean;
|
|
214
|
+
reviewType?: string;
|
|
215
|
+
severity?: string;
|
|
216
|
+
commentDecisions?: Array<{
|
|
217
|
+
commentId: string;
|
|
218
|
+
decision: string;
|
|
219
|
+
notes?: string;
|
|
220
|
+
}>;
|
|
221
|
+
[key: string]: string | boolean | number | undefined | string[] | Array<any>;
|
|
222
|
+
}
|
|
223
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU,YAAY,CAAC;AAGpC,eAAO,MAAM,cAAc;;;;;;;;;;;;CAajB,CAAC;AAGX,eAAO,MAAM,eAAe;;;;;;;;CASlB,CAAC;AAGX,eAAO,MAAM,MAAM;;;;;CAKT,CAAC;AAGX,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAGvD,CAAC;AAGF,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;CAuBX,CAAC;AAIX,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;;CAoBN,CAAC;AAGX,eAAO,MAAM,QAAQ;;;CAGX,CAAC;AAGX,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+BZ,CAAC;AAEX,eAAO,MAAM,cAAc;;;;CAIjB,CAAC;AAEX,eAAO,MAAM,YAAY;;;CAGf,CAAC;AAGX,eAAO,MAAM,YAAY;;;;;;;CASf,CAAC;AAGX,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6BV,CAAC;AAGX,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDT,CAAC;AAIX,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC3B,UAAU,CAAC,EAAE,OAAO,GAAG,MAAM,CAAC;IAC9B,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IAGjB,OAAO,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAG7B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,cAAc,CAAC,EAAE,OAAO,CAAC;IAGzB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAGxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAG1B,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,CAAC,EAAE,KAAK,CAAC;QACvB,SAAS,EAAE,MAAM,CAAC;QAClB,QAAQ,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC,CAAC;IAEH,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC;CAC9E"}
|