@defai.digital/provider-adapters 13.0.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/LICENSE +214 -0
- package/dist/cli-adapter.d.ts +23 -0
- package/dist/cli-adapter.d.ts.map +1 -0
- package/dist/cli-adapter.js +151 -0
- package/dist/cli-adapter.js.map +1 -0
- package/dist/error-classifier.d.ts +34 -0
- package/dist/error-classifier.d.ts.map +1 -0
- package/dist/error-classifier.js +257 -0
- package/dist/error-classifier.js.map +1 -0
- package/dist/index.d.ts +19 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +25 -0
- package/dist/index.js.map +1 -0
- package/dist/output-parser.d.ts +37 -0
- package/dist/output-parser.d.ts.map +1 -0
- package/dist/output-parser.js +251 -0
- package/dist/output-parser.js.map +1 -0
- package/dist/process-manager.d.ts +43 -0
- package/dist/process-manager.d.ts.map +1 -0
- package/dist/process-manager.js +184 -0
- package/dist/process-manager.js.map +1 -0
- package/dist/providers/claude.d.ts +18 -0
- package/dist/providers/claude.d.ts.map +1 -0
- package/dist/providers/claude.js +39 -0
- package/dist/providers/claude.js.map +1 -0
- package/dist/providers/codex.d.ts +18 -0
- package/dist/providers/codex.d.ts.map +1 -0
- package/dist/providers/codex.js +39 -0
- package/dist/providers/codex.js.map +1 -0
- package/dist/providers/gemini.d.ts +18 -0
- package/dist/providers/gemini.d.ts.map +1 -0
- package/dist/providers/gemini.js +39 -0
- package/dist/providers/gemini.js.map +1 -0
- package/dist/providers/glm.d.ts +18 -0
- package/dist/providers/glm.d.ts.map +1 -0
- package/dist/providers/glm.js +40 -0
- package/dist/providers/glm.js.map +1 -0
- package/dist/providers/grok.d.ts +18 -0
- package/dist/providers/grok.d.ts.map +1 -0
- package/dist/providers/grok.js +40 -0
- package/dist/providers/grok.js.map +1 -0
- package/dist/providers/index.d.ts +32 -0
- package/dist/providers/index.d.ts.map +1 -0
- package/dist/providers/index.js +49 -0
- package/dist/providers/index.js.map +1 -0
- package/dist/providers/qwen.d.ts +18 -0
- package/dist/providers/qwen.d.ts.map +1 -0
- package/dist/providers/qwen.js +39 -0
- package/dist/providers/qwen.js.map +1 -0
- package/dist/registry.d.ts +73 -0
- package/dist/registry.d.ts.map +1 -0
- package/dist/registry.js +145 -0
- package/dist/registry.js.map +1 -0
- package/dist/resilient-registry.d.ts +134 -0
- package/dist/resilient-registry.d.ts.map +1 -0
- package/dist/resilient-registry.js +296 -0
- package/dist/resilient-registry.js.map +1 -0
- package/dist/types.d.ts +238 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +14 -0
- package/dist/types.js.map +1 -0
- package/package.json +43 -0
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Process manager for spawning CLI processes
|
|
3
|
+
*
|
|
4
|
+
* Handles:
|
|
5
|
+
* - Process spawning with stdin/stdout
|
|
6
|
+
* - Timeout handling with graceful shutdown
|
|
7
|
+
* - Command availability checking
|
|
8
|
+
*/
|
|
9
|
+
import { spawn, exec } from 'node:child_process';
|
|
10
|
+
import { promisify } from 'node:util';
|
|
11
|
+
import { TIMEOUT_GRACEFUL_SHUTDOWN } from '@defai.digital/contracts';
|
|
12
|
+
const execAsync = promisify(exec);
|
|
13
|
+
/**
|
|
14
|
+
* Default grace period before SIGKILL
|
|
15
|
+
*/
|
|
16
|
+
const SIGKILL_GRACE_PERIOD = TIMEOUT_GRACEFUL_SHUTDOWN;
|
|
17
|
+
/**
|
|
18
|
+
* Validates a command name to prevent command injection
|
|
19
|
+
* Only allows alphanumeric characters, hyphens, underscores, and dots
|
|
20
|
+
*
|
|
21
|
+
* @param command - The command to validate
|
|
22
|
+
* @returns true if the command is safe, false otherwise
|
|
23
|
+
*/
|
|
24
|
+
function isValidCommandName(command) {
|
|
25
|
+
// Must be non-empty and contain only safe characters
|
|
26
|
+
// Allows: letters, numbers, hyphens, underscores, dots (for extensions like .exe)
|
|
27
|
+
return /^[a-zA-Z0-9_.-]+$/.test(command);
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Spawns a CLI process and returns the result
|
|
31
|
+
*
|
|
32
|
+
* @param options - Spawn options including command, args, stdin, env, timeout
|
|
33
|
+
* @returns Promise resolving to spawn result with stdout, stderr, exitCode
|
|
34
|
+
*/
|
|
35
|
+
export async function spawnCLI(options) {
|
|
36
|
+
return new Promise((resolve, reject) => {
|
|
37
|
+
// Validate command name to prevent injection
|
|
38
|
+
if (!isValidCommandName(options.command)) {
|
|
39
|
+
reject(new Error(`Invalid command name: ${options.command}`));
|
|
40
|
+
return;
|
|
41
|
+
}
|
|
42
|
+
const child = spawn(options.command, [...options.args], {
|
|
43
|
+
env: { ...process.env, ...options.env },
|
|
44
|
+
stdio: ['pipe', 'pipe', 'pipe'],
|
|
45
|
+
cwd: options.cwd,
|
|
46
|
+
});
|
|
47
|
+
let stdout = '';
|
|
48
|
+
let stderr = '';
|
|
49
|
+
let timedOut = false;
|
|
50
|
+
let killed = false;
|
|
51
|
+
let killTimeoutId;
|
|
52
|
+
// Timeout handling with graceful shutdown
|
|
53
|
+
const timeoutId = setTimeout(() => {
|
|
54
|
+
timedOut = true;
|
|
55
|
+
killed = true;
|
|
56
|
+
// First, try SIGTERM for graceful shutdown
|
|
57
|
+
child.kill('SIGTERM');
|
|
58
|
+
// If still running after grace period, force kill
|
|
59
|
+
killTimeoutId = setTimeout(() => {
|
|
60
|
+
if (!child.killed) {
|
|
61
|
+
child.kill('SIGKILL');
|
|
62
|
+
}
|
|
63
|
+
}, SIGKILL_GRACE_PERIOD);
|
|
64
|
+
}, options.timeout);
|
|
65
|
+
// Collect stdout
|
|
66
|
+
child.stdout.on('data', (data) => {
|
|
67
|
+
stdout += data.toString();
|
|
68
|
+
});
|
|
69
|
+
// Collect stderr
|
|
70
|
+
child.stderr.on('data', (data) => {
|
|
71
|
+
stderr += data.toString();
|
|
72
|
+
});
|
|
73
|
+
// Handle stdin errors (e.g., EPIPE if process exits immediately)
|
|
74
|
+
child.stdin.on('error', (err) => {
|
|
75
|
+
// EPIPE is expected if the child process exits before reading all input
|
|
76
|
+
// We ignore it since the 'close' event will still fire
|
|
77
|
+
if (err.code !== 'EPIPE') {
|
|
78
|
+
stderr += `stdin error: ${err.message}\n`;
|
|
79
|
+
}
|
|
80
|
+
});
|
|
81
|
+
// Write prompt to stdin and close
|
|
82
|
+
if (options.stdin.length > 0) {
|
|
83
|
+
child.stdin.write(options.stdin);
|
|
84
|
+
}
|
|
85
|
+
child.stdin.end();
|
|
86
|
+
// Handle process completion
|
|
87
|
+
child.on('close', (code) => {
|
|
88
|
+
clearTimeout(timeoutId);
|
|
89
|
+
if (killTimeoutId !== undefined) {
|
|
90
|
+
clearTimeout(killTimeoutId);
|
|
91
|
+
}
|
|
92
|
+
resolve({
|
|
93
|
+
stdout,
|
|
94
|
+
stderr,
|
|
95
|
+
exitCode: code ?? (killed ? 137 : 1),
|
|
96
|
+
timedOut,
|
|
97
|
+
});
|
|
98
|
+
});
|
|
99
|
+
// Handle spawn errors (command not found, etc.)
|
|
100
|
+
child.on('error', (error) => {
|
|
101
|
+
clearTimeout(timeoutId);
|
|
102
|
+
if (killTimeoutId !== undefined) {
|
|
103
|
+
clearTimeout(killTimeoutId);
|
|
104
|
+
}
|
|
105
|
+
reject(error);
|
|
106
|
+
});
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Checks if a CLI command is available on the system PATH
|
|
111
|
+
*
|
|
112
|
+
* @param command - The command to check
|
|
113
|
+
* @returns Promise resolving to true if available, false otherwise
|
|
114
|
+
*/
|
|
115
|
+
export async function isCommandAvailable(command) {
|
|
116
|
+
// Validate command to prevent command injection
|
|
117
|
+
if (!isValidCommandName(command)) {
|
|
118
|
+
return false;
|
|
119
|
+
}
|
|
120
|
+
try {
|
|
121
|
+
// Use 'which' on Unix, 'where' on Windows
|
|
122
|
+
const whichCommand = process.platform === 'win32' ? 'where' : 'which';
|
|
123
|
+
await execAsync(`${whichCommand} ${command}`);
|
|
124
|
+
return true;
|
|
125
|
+
}
|
|
126
|
+
catch {
|
|
127
|
+
return false;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
/**
|
|
131
|
+
* Gets the version of a CLI command if available
|
|
132
|
+
*
|
|
133
|
+
* @param command - The command to check
|
|
134
|
+
* @param versionFlag - The flag to get version (default: --version)
|
|
135
|
+
* @returns Promise resolving to version string or undefined
|
|
136
|
+
*/
|
|
137
|
+
export async function getCommandVersion(command, versionFlag = '--version') {
|
|
138
|
+
// Validate command to prevent command injection
|
|
139
|
+
if (!isValidCommandName(command)) {
|
|
140
|
+
return undefined;
|
|
141
|
+
}
|
|
142
|
+
// Validate versionFlag - only allow flags starting with - and containing safe chars
|
|
143
|
+
if (!/^--?[a-zA-Z0-9_-]+$/.test(versionFlag)) {
|
|
144
|
+
return undefined;
|
|
145
|
+
}
|
|
146
|
+
try {
|
|
147
|
+
const { stdout } = await execAsync(`${command} ${versionFlag}`);
|
|
148
|
+
// Extract version number from output (common patterns)
|
|
149
|
+
const versionMatch = /(\d+\.\d+\.\d+)/.exec(stdout);
|
|
150
|
+
return versionMatch?.[1];
|
|
151
|
+
}
|
|
152
|
+
catch {
|
|
153
|
+
return undefined;
|
|
154
|
+
}
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Builds a prompt string from messages for CLI input
|
|
158
|
+
*
|
|
159
|
+
* @param messages - Array of messages
|
|
160
|
+
* @param systemPrompt - Optional system prompt
|
|
161
|
+
* @returns Formatted prompt string
|
|
162
|
+
*/
|
|
163
|
+
export function buildPromptFromMessages(messages, systemPrompt) {
|
|
164
|
+
const parts = [];
|
|
165
|
+
// Add system prompt if provided
|
|
166
|
+
if (systemPrompt !== undefined && systemPrompt.length > 0) {
|
|
167
|
+
parts.push(`[System]\n${systemPrompt}\n`);
|
|
168
|
+
}
|
|
169
|
+
// Add messages
|
|
170
|
+
for (const msg of messages) {
|
|
171
|
+
if (msg.role === 'user') {
|
|
172
|
+
parts.push(msg.content);
|
|
173
|
+
}
|
|
174
|
+
else if (msg.role === 'assistant') {
|
|
175
|
+
parts.push(`[Assistant]\n${msg.content}\n`);
|
|
176
|
+
}
|
|
177
|
+
else if (msg.role === 'system' && systemPrompt === undefined) {
|
|
178
|
+
// Include system messages if no explicit system prompt
|
|
179
|
+
parts.push(`[System]\n${msg.content}\n`);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
return parts.join('\n');
|
|
183
|
+
}
|
|
184
|
+
//# sourceMappingURL=process-manager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"process-manager.js","sourceRoot":"","sources":["../src/process-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Claude CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: claude
|
|
5
|
+
* Auth: Handled entirely by Claude CLI (~/.claude/ config)
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/anthropics/claude-code
|
|
9
|
+
*/
|
|
10
|
+
import type { CLIProviderConfig } from '../types.js';
|
|
11
|
+
/**
|
|
12
|
+
* Claude provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The Claude CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export declare const claudeConfig: CLIProviderConfig;
|
|
18
|
+
//# sourceMappingURL=claude.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude.d.ts","sourceRoot":"","sources":["../../src/providers/claude.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,iBAqB1B,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Claude CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: claude
|
|
5
|
+
* Auth: Handled entirely by Claude CLI (~/.claude/ config)
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/anthropics/claude-code
|
|
9
|
+
*/
|
|
10
|
+
import { TIMEOUT_PROVIDER_DEFAULT } from '@defai.digital/contracts';
|
|
11
|
+
/**
|
|
12
|
+
* Claude provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The Claude CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export const claudeConfig = {
|
|
18
|
+
providerId: 'claude',
|
|
19
|
+
command: 'claude',
|
|
20
|
+
args: ['--print', '--output-format', 'stream-json', '--verbose'],
|
|
21
|
+
env: {
|
|
22
|
+
// Non-interactive mode flags
|
|
23
|
+
TERM: 'dumb',
|
|
24
|
+
NO_COLOR: '1',
|
|
25
|
+
CI: 'true',
|
|
26
|
+
},
|
|
27
|
+
outputFormat: 'stream-json',
|
|
28
|
+
timeout: TIMEOUT_PROVIDER_DEFAULT,
|
|
29
|
+
models: [
|
|
30
|
+
{
|
|
31
|
+
modelId: 'default',
|
|
32
|
+
name: 'Claude Default',
|
|
33
|
+
contextWindow: 200000,
|
|
34
|
+
capabilities: ['text', 'code', 'vision'],
|
|
35
|
+
isDefault: true,
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=claude.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/providers/claude.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAGpE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAsB;IAC7C,UAAU,EAAE,QAAQ;IACpB,OAAO,EAAE,QAAQ;IACjB,IAAI,EAAE,CAAC,SAAS,EAAE,iBAAiB,EAAE,aAAa,EAAE,WAAW,CAAC;IAChE,GAAG,EAAE;QACH,6BAA6B;QAC7B,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,GAAG;QACb,EAAE,EAAE,MAAM;KACX;IACD,YAAY,EAAE,aAAa;IAC3B,OAAO,EAAE,wBAAwB;IACjC,MAAM,EAAE;QACN;YACE,OAAO,EAAE,SAAS;YAClB,IAAI,EAAE,gBAAgB;YACtB,aAAa,EAAE,MAAM;YACrB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC;YACxC,SAAS,EAAE,IAAI;SAChB;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Codex (OpenAI) CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: codex
|
|
5
|
+
* Auth: Handled entirely by Codex CLI (OpenAI auth)
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/openai/codex
|
|
9
|
+
*/
|
|
10
|
+
import type { CLIProviderConfig } from '../types.js';
|
|
11
|
+
/**
|
|
12
|
+
* Codex provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The Codex CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export declare const codexConfig: CLIProviderConfig;
|
|
18
|
+
//# sourceMappingURL=codex.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../src/providers/codex.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,WAAW,EAAE,iBAqBzB,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Codex (OpenAI) CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: codex
|
|
5
|
+
* Auth: Handled entirely by Codex CLI (OpenAI auth)
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/openai/codex
|
|
9
|
+
*/
|
|
10
|
+
import { TIMEOUT_PROVIDER_DEFAULT } from '@defai.digital/contracts';
|
|
11
|
+
/**
|
|
12
|
+
* Codex provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The Codex CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export const codexConfig = {
|
|
18
|
+
providerId: 'codex',
|
|
19
|
+
command: 'codex',
|
|
20
|
+
args: ['exec', '--json', '--skip-git-repo-check'],
|
|
21
|
+
env: {
|
|
22
|
+
// Non-interactive mode flags
|
|
23
|
+
TERM: 'dumb',
|
|
24
|
+
NO_COLOR: '1',
|
|
25
|
+
CI: 'true',
|
|
26
|
+
},
|
|
27
|
+
outputFormat: 'stream-json',
|
|
28
|
+
timeout: TIMEOUT_PROVIDER_DEFAULT,
|
|
29
|
+
models: [
|
|
30
|
+
{
|
|
31
|
+
modelId: 'default',
|
|
32
|
+
name: 'Codex Default',
|
|
33
|
+
contextWindow: 128000,
|
|
34
|
+
capabilities: ['text', 'code', 'vision'],
|
|
35
|
+
isDefault: true,
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=codex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex.js","sourceRoot":"","sources":["../../src/providers/codex.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAGpE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,WAAW,GAAsB;IAC5C,UAAU,EAAE,OAAO;IACnB,OAAO,EAAE,OAAO;IAChB,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,uBAAuB,CAAC;IACjD,GAAG,EAAE;QACH,6BAA6B;QAC7B,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,GAAG;QACb,EAAE,EAAE,MAAM;KACX;IACD,YAAY,EAAE,aAAa;IAC3B,OAAO,EAAE,wBAAwB;IACjC,MAAM,EAAE;QACN;YACE,OAAO,EAAE,SAAS;YAClB,IAAI,EAAE,eAAe;YACrB,aAAa,EAAE,MAAM;YACrB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC;YACxC,SAAS,EAAE,IAAI;SAChB;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gemini CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: gemini
|
|
5
|
+
* Auth: Handled entirely by Gemini CLI (Google Cloud auth)
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/google-gemini/gemini-cli
|
|
9
|
+
*/
|
|
10
|
+
import type { CLIProviderConfig } from '../types.js';
|
|
11
|
+
/**
|
|
12
|
+
* Gemini provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The Gemini CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export declare const geminiConfig: CLIProviderConfig;
|
|
18
|
+
//# sourceMappingURL=gemini.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gemini.d.ts","sourceRoot":"","sources":["../../src/providers/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,YAAY,EAAE,iBAqB1B,CAAC"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gemini CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: gemini
|
|
5
|
+
* Auth: Handled entirely by Gemini CLI (Google Cloud auth)
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/google-gemini/gemini-cli
|
|
9
|
+
*/
|
|
10
|
+
import { TIMEOUT_PROVIDER_DEFAULT } from '@defai.digital/contracts';
|
|
11
|
+
/**
|
|
12
|
+
* Gemini provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The Gemini CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export const geminiConfig = {
|
|
18
|
+
providerId: 'gemini',
|
|
19
|
+
command: 'gemini',
|
|
20
|
+
args: ['--approval-mode', 'auto_edit', '--output-format', 'stream-json'],
|
|
21
|
+
env: {
|
|
22
|
+
// Non-interactive mode flags
|
|
23
|
+
TERM: 'dumb',
|
|
24
|
+
NO_COLOR: '1',
|
|
25
|
+
CI: 'true',
|
|
26
|
+
},
|
|
27
|
+
outputFormat: 'stream-json',
|
|
28
|
+
timeout: TIMEOUT_PROVIDER_DEFAULT,
|
|
29
|
+
models: [
|
|
30
|
+
{
|
|
31
|
+
modelId: 'default',
|
|
32
|
+
name: 'Gemini Default',
|
|
33
|
+
contextWindow: 1000000,
|
|
34
|
+
capabilities: ['text', 'code', 'vision'],
|
|
35
|
+
isDefault: true,
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
};
|
|
39
|
+
//# sourceMappingURL=gemini.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gemini.js","sourceRoot":"","sources":["../../src/providers/gemini.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,wBAAwB,EAAE,MAAM,0BAA0B,CAAC;AAGpE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,YAAY,GAAsB;IAC7C,UAAU,EAAE,QAAQ;IACpB,OAAO,EAAE,QAAQ;IACjB,IAAI,EAAE,CAAC,iBAAiB,EAAE,WAAW,EAAE,iBAAiB,EAAE,aAAa,CAAC;IACxE,GAAG,EAAE;QACH,6BAA6B;QAC7B,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,GAAG;QACb,EAAE,EAAE,MAAM;KACX;IACD,YAAY,EAAE,aAAa;IAC3B,OAAO,EAAE,wBAAwB;IACjC,MAAM,EAAE;QACN;YACE,OAAO,EAAE,SAAS;YAClB,IAAI,EAAE,gBAAgB;YACtB,aAAa,EAAE,OAAO;YACtB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC;YACxC,SAAS,EAAE,IAAI;SAChB;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GLM CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: ax-glm
|
|
5
|
+
* Auth: Handled entirely by ax-glm CLI
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/anthropics/ax-cli
|
|
9
|
+
*/
|
|
10
|
+
import type { CLIProviderConfig } from '../types.js';
|
|
11
|
+
/**
|
|
12
|
+
* GLM provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The ax-glm CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export declare const glmConfig: CLIProviderConfig;
|
|
18
|
+
//# sourceMappingURL=glm.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glm.d.ts","sourceRoot":"","sources":["../../src/providers/glm.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,SAAS,EAAE,iBAsBvB,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* GLM CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: ax-glm
|
|
5
|
+
* Auth: Handled entirely by ax-glm CLI
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/anthropics/ax-cli
|
|
9
|
+
*/
|
|
10
|
+
import { TIMEOUT_PROVIDER_SHORT } from '@defai.digital/contracts';
|
|
11
|
+
/**
|
|
12
|
+
* GLM provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The ax-glm CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export const glmConfig = {
|
|
18
|
+
providerId: 'glm',
|
|
19
|
+
command: 'ax-glm',
|
|
20
|
+
args: ['--prompt'], // Prompt text will be appended as next argument
|
|
21
|
+
promptStyle: 'arg', // Pass prompt as command-line argument (not stdin)
|
|
22
|
+
env: {
|
|
23
|
+
// Non-interactive mode flags
|
|
24
|
+
TERM: 'dumb',
|
|
25
|
+
NO_COLOR: '1',
|
|
26
|
+
CI: 'true',
|
|
27
|
+
},
|
|
28
|
+
outputFormat: 'stream-json', // ax-glm outputs JSON Lines: {"role":"assistant","content":"..."}
|
|
29
|
+
timeout: TIMEOUT_PROVIDER_SHORT, // ax-glm has shutdown hang issue, timeout kills it
|
|
30
|
+
models: [
|
|
31
|
+
{
|
|
32
|
+
modelId: 'default',
|
|
33
|
+
name: 'GLM Default',
|
|
34
|
+
contextWindow: 128000,
|
|
35
|
+
capabilities: ['text', 'code'],
|
|
36
|
+
isDefault: true,
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=glm.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glm.js","sourceRoot":"","sources":["../../src/providers/glm.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,SAAS,GAAsB;IAC1C,UAAU,EAAE,KAAK;IACjB,OAAO,EAAE,QAAQ;IACjB,IAAI,EAAE,CAAC,UAAU,CAAC,EAAG,gDAAgD;IACrE,WAAW,EAAE,KAAK,EAAG,mDAAmD;IACxE,GAAG,EAAE;QACH,6BAA6B;QAC7B,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,GAAG;QACb,EAAE,EAAE,MAAM;KACX;IACD,YAAY,EAAE,aAAa,EAAG,kEAAkE;IAChG,OAAO,EAAE,sBAAsB,EAAE,mDAAmD;IACpF,MAAM,EAAE;QACN;YACE,OAAO,EAAE,SAAS;YAClB,IAAI,EAAE,aAAa;YACnB,aAAa,EAAE,MAAM;YACrB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;YAC9B,SAAS,EAAE,IAAI;SAChB;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grok CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: ax-grok
|
|
5
|
+
* Auth: Handled entirely by ax-grok CLI
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/anthropics/ax-cli
|
|
9
|
+
*/
|
|
10
|
+
import type { CLIProviderConfig } from '../types.js';
|
|
11
|
+
/**
|
|
12
|
+
* Grok provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The ax-grok CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export declare const grokConfig: CLIProviderConfig;
|
|
18
|
+
//# sourceMappingURL=grok.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grok.d.ts","sourceRoot":"","sources":["../../src/providers/grok.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,EAAE,iBAsBxB,CAAC"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grok CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: ax-grok
|
|
5
|
+
* Auth: Handled entirely by ax-grok CLI
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/anthropics/ax-cli
|
|
9
|
+
*/
|
|
10
|
+
import { TIMEOUT_PROVIDER_SHORT } from '@defai.digital/contracts';
|
|
11
|
+
/**
|
|
12
|
+
* Grok provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The ax-grok CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export const grokConfig = {
|
|
18
|
+
providerId: 'grok',
|
|
19
|
+
command: 'ax-grok',
|
|
20
|
+
args: ['--prompt'], // Prompt text will be appended as next argument
|
|
21
|
+
promptStyle: 'arg', // Pass prompt as command-line argument (not stdin)
|
|
22
|
+
env: {
|
|
23
|
+
// Non-interactive mode flags
|
|
24
|
+
TERM: 'dumb',
|
|
25
|
+
NO_COLOR: '1',
|
|
26
|
+
CI: 'true',
|
|
27
|
+
},
|
|
28
|
+
outputFormat: 'stream-json', // ax-grok outputs JSON Lines: {"role":"assistant","content":"..."}
|
|
29
|
+
timeout: TIMEOUT_PROVIDER_SHORT, // ax-grok has shutdown hang issue, timeout kills it
|
|
30
|
+
models: [
|
|
31
|
+
{
|
|
32
|
+
modelId: 'default',
|
|
33
|
+
name: 'Grok Default',
|
|
34
|
+
contextWindow: 131000,
|
|
35
|
+
capabilities: ['text', 'code'],
|
|
36
|
+
isDefault: true,
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
};
|
|
40
|
+
//# sourceMappingURL=grok.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"grok.js","sourceRoot":"","sources":["../../src/providers/grok.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAGlE;;;;;GAKG;AACH,MAAM,CAAC,MAAM,UAAU,GAAsB;IAC3C,UAAU,EAAE,MAAM;IAClB,OAAO,EAAE,SAAS;IAClB,IAAI,EAAE,CAAC,UAAU,CAAC,EAAG,gDAAgD;IACrE,WAAW,EAAE,KAAK,EAAG,mDAAmD;IACxE,GAAG,EAAE;QACH,6BAA6B;QAC7B,IAAI,EAAE,MAAM;QACZ,QAAQ,EAAE,GAAG;QACb,EAAE,EAAE,MAAM;KACX;IACD,YAAY,EAAE,aAAa,EAAG,mEAAmE;IACjG,OAAO,EAAE,sBAAsB,EAAE,oDAAoD;IACrF,MAAM,EAAE;QACN;YACE,OAAO,EAAE,SAAS;YAClB,IAAI,EAAE,cAAc;YACpB,aAAa,EAAE,MAAM;YACrB,YAAY,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;YAC9B,SAAS,EAAE,IAAI;SAChB;KACF;CACF,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Provider configurations
|
|
3
|
+
*
|
|
4
|
+
* Each provider config specifies:
|
|
5
|
+
* - CLI command and arguments
|
|
6
|
+
* - Environment variables (non-secret)
|
|
7
|
+
* - Output format
|
|
8
|
+
* - Timeout
|
|
9
|
+
* - Available models
|
|
10
|
+
*
|
|
11
|
+
* NO API KEYS - CLIs handle their own authentication
|
|
12
|
+
*/
|
|
13
|
+
import type { CLIProviderConfig } from '../types.js';
|
|
14
|
+
export { claudeConfig } from './claude.js';
|
|
15
|
+
export { geminiConfig } from './gemini.js';
|
|
16
|
+
export { codexConfig } from './codex.js';
|
|
17
|
+
export { qwenConfig } from './qwen.js';
|
|
18
|
+
export { glmConfig } from './glm.js';
|
|
19
|
+
export { grokConfig } from './grok.js';
|
|
20
|
+
/**
|
|
21
|
+
* All registered provider configurations
|
|
22
|
+
*/
|
|
23
|
+
export declare const ALL_PROVIDER_CONFIGS: readonly CLIProviderConfig[];
|
|
24
|
+
/**
|
|
25
|
+
* Gets a provider config by ID
|
|
26
|
+
*/
|
|
27
|
+
export declare function getProviderConfig(providerId: string): CLIProviderConfig | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* Gets all provider IDs
|
|
30
|
+
*/
|
|
31
|
+
export declare function getAllProviderIds(): readonly string[];
|
|
32
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AASrD,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,iBAAiB,EAO5D,CAAC;AAEF;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAEnF;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,SAAS,MAAM,EAAE,CAErD"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Provider configurations
|
|
3
|
+
*
|
|
4
|
+
* Each provider config specifies:
|
|
5
|
+
* - CLI command and arguments
|
|
6
|
+
* - Environment variables (non-secret)
|
|
7
|
+
* - Output format
|
|
8
|
+
* - Timeout
|
|
9
|
+
* - Available models
|
|
10
|
+
*
|
|
11
|
+
* NO API KEYS - CLIs handle their own authentication
|
|
12
|
+
*/
|
|
13
|
+
import { claudeConfig } from './claude.js';
|
|
14
|
+
import { geminiConfig } from './gemini.js';
|
|
15
|
+
import { codexConfig } from './codex.js';
|
|
16
|
+
import { qwenConfig } from './qwen.js';
|
|
17
|
+
import { glmConfig } from './glm.js';
|
|
18
|
+
import { grokConfig } from './grok.js';
|
|
19
|
+
// Re-export individual configs
|
|
20
|
+
export { claudeConfig } from './claude.js';
|
|
21
|
+
export { geminiConfig } from './gemini.js';
|
|
22
|
+
export { codexConfig } from './codex.js';
|
|
23
|
+
export { qwenConfig } from './qwen.js';
|
|
24
|
+
export { glmConfig } from './glm.js';
|
|
25
|
+
export { grokConfig } from './grok.js';
|
|
26
|
+
/**
|
|
27
|
+
* All registered provider configurations
|
|
28
|
+
*/
|
|
29
|
+
export const ALL_PROVIDER_CONFIGS = [
|
|
30
|
+
claudeConfig,
|
|
31
|
+
geminiConfig,
|
|
32
|
+
codexConfig,
|
|
33
|
+
qwenConfig,
|
|
34
|
+
glmConfig,
|
|
35
|
+
grokConfig,
|
|
36
|
+
];
|
|
37
|
+
/**
|
|
38
|
+
* Gets a provider config by ID
|
|
39
|
+
*/
|
|
40
|
+
export function getProviderConfig(providerId) {
|
|
41
|
+
return ALL_PROVIDER_CONFIGS.find((config) => config.providerId === providerId);
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* Gets all provider IDs
|
|
45
|
+
*/
|
|
46
|
+
export function getAllProviderIds() {
|
|
47
|
+
return ALL_PROVIDER_CONFIGS.map((config) => config.providerId);
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAGH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,+BAA+B;AAC/B,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAiC;IAChE,YAAY;IACZ,YAAY;IACZ,WAAW;IACX,UAAU;IACV,SAAS;IACT,UAAU;CACX,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,KAAK,UAAU,CAAC,CAAC;AACjF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,iBAAiB;IAC/B,OAAO,oBAAoB,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;AACjE,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Qwen CLI provider configuration
|
|
3
|
+
*
|
|
4
|
+
* CLI: qwen
|
|
5
|
+
* Auth: Handled entirely by Qwen CLI (DashScope auth)
|
|
6
|
+
* Model: Uses CLI's default model (we don't specify)
|
|
7
|
+
*
|
|
8
|
+
* @see https://github.com/QwenLM/qwen-code
|
|
9
|
+
*/
|
|
10
|
+
import type { CLIProviderConfig } from '../types.js';
|
|
11
|
+
/**
|
|
12
|
+
* Qwen provider configuration
|
|
13
|
+
*
|
|
14
|
+
* Design: AutomatosX does NOT manage credentials or model selection.
|
|
15
|
+
* The Qwen CLI handles all authentication and uses its configured default model.
|
|
16
|
+
*/
|
|
17
|
+
export declare const qwenConfig: CLIProviderConfig;
|
|
18
|
+
//# sourceMappingURL=qwen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"qwen.d.ts","sourceRoot":"","sources":["../../src/providers/qwen.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAErD;;;;;GAKG;AACH,eAAO,MAAM,UAAU,EAAE,iBAqBxB,CAAC"}
|