@codemieai/code 0.0.5 → 0.0.6
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/README.md +248 -25
- package/bin/agent-executor.js +43 -0
- package/dist/agents/codemie-code/agent.d.ts.map +1 -1
- package/dist/agents/codemie-code/agent.js +5 -3
- package/dist/agents/codemie-code/agent.js.map +1 -1
- package/dist/agents/codemie-code/tokenUtils.d.ts +2 -2
- package/dist/agents/codemie-code/tokenUtils.js +2 -2
- package/dist/agents/codemie-code/tokenUtils.js.map +1 -1
- package/dist/agents/codemie-code/ui.d.ts.map +1 -1
- package/dist/agents/codemie-code/ui.js +0 -7
- package/dist/agents/codemie-code/ui.js.map +1 -1
- package/dist/agents/core/AgentCLI.d.ts +44 -0
- package/dist/agents/core/AgentCLI.d.ts.map +1 -0
- package/dist/agents/core/AgentCLI.js +223 -0
- package/dist/agents/core/AgentCLI.js.map +1 -0
- package/dist/agents/core/BaseAgentAdapter.d.ts +48 -0
- package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -0
- package/dist/agents/core/BaseAgentAdapter.js +224 -0
- package/dist/agents/core/BaseAgentAdapter.js.map +1 -0
- package/dist/agents/core/types.d.ts +64 -0
- package/dist/agents/core/types.d.ts.map +1 -0
- package/dist/agents/core/types.js +5 -0
- package/dist/agents/core/types.js.map +1 -0
- package/dist/agents/plugins/claude.plugin.d.ts +13 -0
- package/dist/agents/plugins/claude.plugin.d.ts.map +1 -0
- package/dist/agents/plugins/claude.plugin.js +35 -0
- package/dist/agents/plugins/claude.plugin.js.map +1 -0
- package/dist/agents/plugins/codemie-code.plugin.d.ts +20 -0
- package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -0
- package/dist/agents/plugins/codemie-code.plugin.js +137 -0
- package/dist/agents/plugins/codemie-code.plugin.js.map +1 -0
- package/dist/agents/plugins/codex.plugin.d.ts +13 -0
- package/dist/agents/plugins/codex.plugin.d.ts.map +1 -0
- package/dist/agents/plugins/codex.plugin.js +43 -0
- package/dist/agents/plugins/codex.plugin.js.map +1 -0
- package/dist/agents/plugins/gemini.plugin.d.ts +13 -0
- package/dist/agents/plugins/gemini.plugin.d.ts.map +1 -0
- package/dist/agents/plugins/gemini.plugin.js +43 -0
- package/dist/agents/plugins/gemini.plugin.js.map +1 -0
- package/dist/agents/registry.d.ts +6 -10
- package/dist/agents/registry.d.ts.map +1 -1
- package/dist/agents/registry.js +13 -7
- package/dist/agents/registry.js.map +1 -1
- package/dist/cli/commands/config.d.ts.map +1 -1
- package/dist/cli/commands/config.js +14 -180
- package/dist/cli/commands/config.js.map +1 -1
- package/dist/cli/commands/profile.d.ts +3 -0
- package/dist/cli/commands/profile.d.ts.map +1 -0
- package/dist/cli/commands/profile.js +167 -0
- package/dist/cli/commands/profile.js.map +1 -0
- package/dist/cli/commands/setup.d.ts.map +1 -1
- package/dist/cli/commands/setup.js +226 -35
- package/dist/cli/commands/setup.js.map +1 -1
- package/dist/cli/index.js +2 -2
- package/dist/cli/index.js.map +1 -1
- package/dist/env/types.d.ts +79 -0
- package/dist/env/types.d.ts.map +1 -0
- package/dist/env/types.js +16 -0
- package/dist/env/types.js.map +1 -0
- package/dist/utils/config-loader.d.ts +57 -34
- package/dist/utils/config-loader.d.ts.map +1 -1
- package/dist/utils/config-loader.js +200 -27
- package/dist/utils/config-loader.js.map +1 -1
- package/dist/utils/model-fetcher.d.ts.map +1 -1
- package/dist/utils/model-fetcher.js +1 -3
- package/dist/utils/model-fetcher.js.map +1 -1
- package/package.json +6 -4
- package/bin/codemie-claude.js +0 -145
- package/bin/codemie-code.js +0 -136
- package/bin/codemie-codex.js +0 -137
- package/dist/agents/adapters/claude-code.d.ts +0 -17
- package/dist/agents/adapters/claude-code.d.ts.map +0 -1
- package/dist/agents/adapters/claude-code.js +0 -134
- package/dist/agents/adapters/claude-code.js.map +0 -1
- package/dist/agents/adapters/codemie-code.d.ts +0 -21
- package/dist/agents/adapters/codemie-code.d.ts.map +0 -1
- package/dist/agents/adapters/codemie-code.js +0 -110
- package/dist/agents/adapters/codemie-code.js.map +0 -1
- package/dist/agents/adapters/codex.d.ts +0 -17
- package/dist/agents/adapters/codex.d.ts.map +0 -1
- package/dist/agents/adapters/codex.js +0 -145
- package/dist/agents/adapters/codex.js.map +0 -1
- package/dist/cli/commands/run.d.ts +0 -3
- package/dist/cli/commands/run.d.ts.map +0 -1
- package/dist/cli/commands/run.js +0 -333
- package/dist/cli/commands/run.js.map +0 -1
- package/dist/utils/agent-compatibility.d.ts +0 -32
- package/dist/utils/agent-compatibility.d.ts.map +0 -1
- package/dist/utils/agent-compatibility.js +0 -140
- package/dist/utils/agent-compatibility.js.map +0 -1
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
import { exec } from '../../utils/exec.js';
|
|
2
|
+
import { logger } from '../../utils/logger.js';
|
|
3
|
+
import { spawn } from 'child_process';
|
|
4
|
+
import { SSOGateway } from '../../utils/sso-gateway.js';
|
|
5
|
+
/**
|
|
6
|
+
* Base class for all agent adapters
|
|
7
|
+
* Implements common logic shared by external agents
|
|
8
|
+
*/
|
|
9
|
+
export class BaseAgentAdapter {
|
|
10
|
+
metadata;
|
|
11
|
+
ssoGateway = null;
|
|
12
|
+
constructor(metadata) {
|
|
13
|
+
this.metadata = metadata;
|
|
14
|
+
}
|
|
15
|
+
get name() {
|
|
16
|
+
return this.metadata.name;
|
|
17
|
+
}
|
|
18
|
+
get displayName() {
|
|
19
|
+
return this.metadata.displayName;
|
|
20
|
+
}
|
|
21
|
+
get description() {
|
|
22
|
+
return this.metadata.description;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Install agent via npm
|
|
26
|
+
*/
|
|
27
|
+
async install() {
|
|
28
|
+
if (!this.metadata.npmPackage) {
|
|
29
|
+
throw new Error(`${this.displayName} is built-in and cannot be installed`);
|
|
30
|
+
}
|
|
31
|
+
logger.info(`Installing ${this.displayName}...`);
|
|
32
|
+
try {
|
|
33
|
+
await exec('npm', ['install', '-g', this.metadata.npmPackage], { timeout: 120000 });
|
|
34
|
+
logger.success(`${this.displayName} installed successfully`);
|
|
35
|
+
}
|
|
36
|
+
catch (error) {
|
|
37
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
38
|
+
throw new Error(`Failed to install ${this.displayName}: ${errorMessage}`);
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Uninstall agent via npm
|
|
43
|
+
*/
|
|
44
|
+
async uninstall() {
|
|
45
|
+
if (!this.metadata.npmPackage) {
|
|
46
|
+
throw new Error(`${this.displayName} is built-in and cannot be uninstalled`);
|
|
47
|
+
}
|
|
48
|
+
logger.info(`Uninstalling ${this.displayName}...`);
|
|
49
|
+
try {
|
|
50
|
+
await exec('npm', ['uninstall', '-g', this.metadata.npmPackage]);
|
|
51
|
+
logger.success(`${this.displayName} uninstalled successfully`);
|
|
52
|
+
}
|
|
53
|
+
catch (error) {
|
|
54
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
55
|
+
throw new Error(`Failed to uninstall ${this.displayName}: ${errorMessage}`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
/**
|
|
59
|
+
* Check if agent is installed via which command
|
|
60
|
+
*/
|
|
61
|
+
async isInstalled() {
|
|
62
|
+
if (!this.metadata.cliCommand) {
|
|
63
|
+
return true; // Built-in agents are always "installed"
|
|
64
|
+
}
|
|
65
|
+
try {
|
|
66
|
+
const result = await exec('which', [this.metadata.cliCommand]);
|
|
67
|
+
return result.code === 0;
|
|
68
|
+
}
|
|
69
|
+
catch {
|
|
70
|
+
return false;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Get agent version
|
|
75
|
+
*/
|
|
76
|
+
async getVersion() {
|
|
77
|
+
if (!this.metadata.cliCommand) {
|
|
78
|
+
return null;
|
|
79
|
+
}
|
|
80
|
+
try {
|
|
81
|
+
const result = await exec(this.metadata.cliCommand, ['--version']);
|
|
82
|
+
return result.stdout.trim();
|
|
83
|
+
}
|
|
84
|
+
catch {
|
|
85
|
+
return null;
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
/**
|
|
89
|
+
* Run the agent
|
|
90
|
+
*/
|
|
91
|
+
async run(args, envOverrides) {
|
|
92
|
+
logger.info(`Starting ${this.displayName}...`);
|
|
93
|
+
// Merge environment variables
|
|
94
|
+
const env = {
|
|
95
|
+
...process.env,
|
|
96
|
+
...envOverrides
|
|
97
|
+
};
|
|
98
|
+
// Setup SSO gateway if needed
|
|
99
|
+
await this.setupSSOGateway(env);
|
|
100
|
+
// Apply argument transformations
|
|
101
|
+
const transformedArgs = this.metadata.argumentTransform
|
|
102
|
+
? this.metadata.argumentTransform(args, this.extractConfig(env))
|
|
103
|
+
: args;
|
|
104
|
+
// Run lifecycle hook
|
|
105
|
+
if (this.metadata.lifecycle?.beforeRun) {
|
|
106
|
+
await this.metadata.lifecycle.beforeRun(env, this.extractConfig(env));
|
|
107
|
+
}
|
|
108
|
+
if (!this.metadata.cliCommand) {
|
|
109
|
+
throw new Error(`${this.displayName} has no CLI command configured`);
|
|
110
|
+
}
|
|
111
|
+
try {
|
|
112
|
+
// Spawn the CLI command
|
|
113
|
+
const child = spawn(this.metadata.cliCommand, transformedArgs, {
|
|
114
|
+
stdio: 'inherit',
|
|
115
|
+
env
|
|
116
|
+
});
|
|
117
|
+
return new Promise((resolve, reject) => {
|
|
118
|
+
child.on('error', (error) => {
|
|
119
|
+
reject(new Error(`Failed to start ${this.displayName}: ${error.message}`));
|
|
120
|
+
});
|
|
121
|
+
child.on('exit', async (code) => {
|
|
122
|
+
// Clean up gateway
|
|
123
|
+
if (this.ssoGateway) {
|
|
124
|
+
await this.ssoGateway.stop();
|
|
125
|
+
this.ssoGateway = null;
|
|
126
|
+
}
|
|
127
|
+
// Run afterRun hook
|
|
128
|
+
if (this.metadata.lifecycle?.afterRun && code !== null) {
|
|
129
|
+
await this.metadata.lifecycle.afterRun(code);
|
|
130
|
+
}
|
|
131
|
+
if (code === 0) {
|
|
132
|
+
resolve();
|
|
133
|
+
}
|
|
134
|
+
else {
|
|
135
|
+
reject(new Error(`${this.displayName} exited with code ${code}`));
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
});
|
|
139
|
+
}
|
|
140
|
+
catch (error) {
|
|
141
|
+
// Clean up gateway on error
|
|
142
|
+
if (this.ssoGateway) {
|
|
143
|
+
await this.ssoGateway.stop();
|
|
144
|
+
this.ssoGateway = null;
|
|
145
|
+
}
|
|
146
|
+
throw error;
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
/**
|
|
150
|
+
* Centralized SSO gateway setup
|
|
151
|
+
* Works for ALL agents based on their metadata
|
|
152
|
+
*/
|
|
153
|
+
async setupSSOGateway(env) {
|
|
154
|
+
// Only activate for ai-run-sso provider
|
|
155
|
+
const isSSOProvider = env.CODEMIE_PROVIDER === 'ai-run-sso';
|
|
156
|
+
if (!isSSOProvider || !this.metadata.ssoConfig?.enabled) {
|
|
157
|
+
return; // No SSO needed
|
|
158
|
+
}
|
|
159
|
+
try {
|
|
160
|
+
// Get the target API URL
|
|
161
|
+
const targetApiUrl = env.CODEMIE_BASE_URL || env.OPENAI_BASE_URL;
|
|
162
|
+
if (!targetApiUrl) {
|
|
163
|
+
throw new Error('No API URL found for SSO authentication');
|
|
164
|
+
}
|
|
165
|
+
// Create and start the SSO gateway
|
|
166
|
+
this.ssoGateway = new SSOGateway({
|
|
167
|
+
targetApiUrl,
|
|
168
|
+
debug: !!(env.DEBUG || env.CODEMIE_DEBUG),
|
|
169
|
+
clientType: this.metadata.ssoConfig.clientType
|
|
170
|
+
});
|
|
171
|
+
const { url } = await this.ssoGateway.start();
|
|
172
|
+
// Override env vars based on agent's ssoConfig.envOverrides
|
|
173
|
+
const { baseUrl, apiKey } = this.metadata.ssoConfig.envOverrides;
|
|
174
|
+
env[baseUrl] = url; // Point to local gateway
|
|
175
|
+
env[apiKey] = 'gateway-handled'; // Placeholder
|
|
176
|
+
if (env.DEBUG || env.CODEMIE_DEBUG) {
|
|
177
|
+
logger.info(`[DEBUG] SSO Gateway started for ${this.displayName}`);
|
|
178
|
+
logger.info(`[DEBUG] Gateway URL: ${url}`);
|
|
179
|
+
logger.info(`[DEBUG] Target API: ${targetApiUrl}`);
|
|
180
|
+
}
|
|
181
|
+
}
|
|
182
|
+
catch (error) {
|
|
183
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
184
|
+
throw new Error(`SSO gateway setup failed: ${errorMessage}`);
|
|
185
|
+
}
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Apply environment variable mappings from metadata
|
|
189
|
+
*/
|
|
190
|
+
applyEnvMappings(config, env) {
|
|
191
|
+
const { envMapping } = this.metadata;
|
|
192
|
+
// Map base URL
|
|
193
|
+
if (config.baseUrl && envMapping.baseUrl) {
|
|
194
|
+
for (const envVar of envMapping.baseUrl) {
|
|
195
|
+
env[envVar] = config.baseUrl;
|
|
196
|
+
}
|
|
197
|
+
}
|
|
198
|
+
// Map API key
|
|
199
|
+
if (config.apiKey && envMapping.apiKey) {
|
|
200
|
+
for (const envVar of envMapping.apiKey) {
|
|
201
|
+
env[envVar] = config.apiKey;
|
|
202
|
+
}
|
|
203
|
+
}
|
|
204
|
+
// Map model
|
|
205
|
+
if (config.model && envMapping.model) {
|
|
206
|
+
for (const envVar of envMapping.model) {
|
|
207
|
+
env[envVar] = config.model;
|
|
208
|
+
}
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Extract agent config from environment
|
|
213
|
+
*/
|
|
214
|
+
extractConfig(env) {
|
|
215
|
+
return {
|
|
216
|
+
provider: env.CODEMIE_PROVIDER,
|
|
217
|
+
model: env.CODEMIE_MODEL,
|
|
218
|
+
baseUrl: env.CODEMIE_BASE_URL,
|
|
219
|
+
apiKey: env.CODEMIE_API_KEY,
|
|
220
|
+
timeout: env.CODEMIE_TIMEOUT ? parseInt(env.CODEMIE_TIMEOUT, 10) : undefined
|
|
221
|
+
};
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
//# sourceMappingURL=BaseAgentAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseAgentAdapter.js","sourceRoot":"","sources":["../../../src/agents/core/BaseAgentAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Core types for the plugin-based agent architecture
|
|
3
|
+
*/
|
|
4
|
+
/**
|
|
5
|
+
* Agent metadata schema - declarative configuration for agents
|
|
6
|
+
*/
|
|
7
|
+
export interface AgentMetadata {
|
|
8
|
+
name: string;
|
|
9
|
+
displayName: string;
|
|
10
|
+
description: string;
|
|
11
|
+
npmPackage: string | null;
|
|
12
|
+
cliCommand: string | null;
|
|
13
|
+
envMapping: {
|
|
14
|
+
baseUrl?: string[];
|
|
15
|
+
apiKey?: string[];
|
|
16
|
+
model?: string[];
|
|
17
|
+
};
|
|
18
|
+
supportedProviders: string[];
|
|
19
|
+
blockedModelPatterns?: RegExp[];
|
|
20
|
+
ssoConfig?: {
|
|
21
|
+
enabled: boolean;
|
|
22
|
+
clientType: string;
|
|
23
|
+
envOverrides: {
|
|
24
|
+
baseUrl: string;
|
|
25
|
+
apiKey: string;
|
|
26
|
+
};
|
|
27
|
+
};
|
|
28
|
+
customOptions?: Array<{
|
|
29
|
+
flags: string;
|
|
30
|
+
description: string;
|
|
31
|
+
}>;
|
|
32
|
+
argumentTransform?: (args: string[], config: AgentConfig) => string[];
|
|
33
|
+
lifecycle?: {
|
|
34
|
+
beforeRun?: (env: NodeJS.ProcessEnv, config: AgentConfig) => Promise<NodeJS.ProcessEnv>;
|
|
35
|
+
afterRun?: (exitCode: number) => Promise<void>;
|
|
36
|
+
};
|
|
37
|
+
isBuiltIn?: boolean;
|
|
38
|
+
customRunHandler?: (args: string[], options: Record<string, unknown>, config: AgentConfig) => Promise<void>;
|
|
39
|
+
customHealthCheck?: () => Promise<boolean>;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Agent configuration passed to runtime handlers
|
|
43
|
+
*/
|
|
44
|
+
export interface AgentConfig {
|
|
45
|
+
provider?: string;
|
|
46
|
+
model?: string;
|
|
47
|
+
baseUrl?: string;
|
|
48
|
+
apiKey?: string;
|
|
49
|
+
timeout?: number;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Agent adapter interface - implemented by BaseAgentAdapter
|
|
53
|
+
*/
|
|
54
|
+
export interface AgentAdapter {
|
|
55
|
+
name: string;
|
|
56
|
+
displayName: string;
|
|
57
|
+
description: string;
|
|
58
|
+
install(): Promise<void>;
|
|
59
|
+
uninstall(): Promise<void>;
|
|
60
|
+
isInstalled(): Promise<boolean>;
|
|
61
|
+
run(args: string[], env?: Record<string, string>): Promise<void>;
|
|
62
|
+
getVersion(): Promise<string | null>;
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/agents/core/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAE5B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IAGpB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAG1B,UAAU,EAAE;QACV,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QACnB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;KAClB,CAAC;IAGF,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,oBAAoB,CAAC,EAAE,MAAM,EAAE,CAAC;IAGhC,SAAS,CAAC,EAAE;QACV,OAAO,EAAE,OAAO,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;QACnB,YAAY,EAAE;YACZ,OAAO,EAAE,MAAM,CAAC;YAChB,MAAM,EAAE,MAAM,CAAC;SAChB,CAAC;KACH,CAAC;IAGF,aAAa,CAAC,EAAE,KAAK,CAAC;QACpB,KAAK,EAAE,MAAM,CAAC;QACd,WAAW,EAAE,MAAM,CAAC;KACrB,CAAC,CAAC;IAGH,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,WAAW,KAAK,MAAM,EAAE,CAAC;IAEtE,SAAS,CAAC,EAAE;QACV,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACxF,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;KAChD,CAAC;IAGF,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5G,iBAAiB,CAAC,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IACzB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAChC,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjE,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CACtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/agents/core/types.ts"],"names":[],"mappings":"AAAA;;GAEG"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AgentMetadata } from '../core/types.js';
|
|
2
|
+
import { BaseAgentAdapter } from '../core/BaseAgentAdapter.js';
|
|
3
|
+
/**
|
|
4
|
+
* Claude Code Plugin Metadata
|
|
5
|
+
*/
|
|
6
|
+
export declare const ClaudePluginMetadata: AgentMetadata;
|
|
7
|
+
/**
|
|
8
|
+
* Claude Code Adapter
|
|
9
|
+
*/
|
|
10
|
+
export declare class ClaudePlugin extends BaseAgentAdapter {
|
|
11
|
+
constructor();
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=claude.plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude.plugin.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/claude.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,aAyBlC,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAa,SAAQ,gBAAgB;;CAIjD"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { BaseAgentAdapter } from '../core/BaseAgentAdapter.js';
|
|
2
|
+
/**
|
|
3
|
+
* Claude Code Plugin Metadata
|
|
4
|
+
*/
|
|
5
|
+
export const ClaudePluginMetadata = {
|
|
6
|
+
name: 'claude',
|
|
7
|
+
displayName: 'Claude Code',
|
|
8
|
+
description: 'Claude Code - official Anthropic CLI tool',
|
|
9
|
+
npmPackage: '@anthropic-ai/claude-code',
|
|
10
|
+
cliCommand: 'claude',
|
|
11
|
+
envMapping: {
|
|
12
|
+
baseUrl: ['ANTHROPIC_BASE_URL'],
|
|
13
|
+
apiKey: ['ANTHROPIC_AUTH_TOKEN'],
|
|
14
|
+
model: ['ANTHROPIC_MODEL']
|
|
15
|
+
},
|
|
16
|
+
supportedProviders: ['bedrock', 'openai', 'azure', 'litellm', 'ai-run-sso'],
|
|
17
|
+
blockedModelPatterns: [], // Accepts both Claude and GPT models
|
|
18
|
+
ssoConfig: {
|
|
19
|
+
enabled: true,
|
|
20
|
+
clientType: 'codemie-claude',
|
|
21
|
+
envOverrides: {
|
|
22
|
+
baseUrl: 'ANTHROPIC_BASE_URL',
|
|
23
|
+
apiKey: 'ANTHROPIC_AUTH_TOKEN'
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* Claude Code Adapter
|
|
29
|
+
*/
|
|
30
|
+
export class ClaudePlugin extends BaseAgentAdapter {
|
|
31
|
+
constructor() {
|
|
32
|
+
super(ClaudePluginMetadata);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=claude.plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"claude.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/claude.plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D;;GAEG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAkB;IACjD,IAAI,EAAE,QAAQ;IACd,WAAW,EAAE,aAAa;IAC1B,WAAW,EAAE,2CAA2C;IAExD,UAAU,EAAE,2BAA2B;IACvC,UAAU,EAAE,QAAQ;IAEpB,UAAU,EAAE;QACV,OAAO,EAAE,CAAC,oBAAoB,CAAC;QAC/B,MAAM,EAAE,CAAC,sBAAsB,CAAC;QAChC,KAAK,EAAE,CAAC,iBAAiB,CAAC;KAC3B;IAED,kBAAkB,EAAE,CAAC,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC;IAC3E,oBAAoB,EAAE,EAAE,EAAE,qCAAqC;IAE/D,SAAS,EAAE;QACT,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,gBAAgB;QAC5B,YAAY,EAAE;YACZ,OAAO,EAAE,oBAAoB;YAC7B,MAAM,EAAE,sBAAsB;SAC/B;KACF;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,YAAa,SAAQ,gBAAgB;IAChD;QACE,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAC9B,CAAC;CACF"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { AgentMetadata, AgentAdapter } from '../core/types.js';
|
|
2
|
+
/**
|
|
3
|
+
* CodeMie-Code Plugin Metadata
|
|
4
|
+
*/
|
|
5
|
+
export declare const CodeMieCodePluginMetadata: AgentMetadata;
|
|
6
|
+
/**
|
|
7
|
+
* CodeMie-Code Adapter
|
|
8
|
+
* Custom implementation for built-in agent
|
|
9
|
+
*/
|
|
10
|
+
export declare class CodeMieCodePlugin implements AgentAdapter {
|
|
11
|
+
name: string;
|
|
12
|
+
displayName: string;
|
|
13
|
+
description: string;
|
|
14
|
+
install(): Promise<void>;
|
|
15
|
+
uninstall(): Promise<void>;
|
|
16
|
+
isInstalled(): Promise<boolean>;
|
|
17
|
+
run(args: string[], envOverrides?: Record<string, string>): Promise<void>;
|
|
18
|
+
getVersion(): Promise<string | null>;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=codemie-code.plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codemie-code.plugin.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/codemie-code.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAQ/D;;GAEG;AACH,eAAO,MAAM,yBAAyB,EAAE,aA0EvC,CAAC;AAEF;;;GAGG;AACH,qBAAa,iBAAkB,YAAW,YAAY;IACpD,IAAI,SAAkB;IACtB,WAAW,SAAoB;IAC/B,WAAW,SAAsE;IAE3E,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAIxB,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1B,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAI/B,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IA+BzE,UAAU,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;CAU3C"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
import { logger } from '../../utils/logger.js';
|
|
2
|
+
import { CodeMieCode } from '../codemie-code/index.js';
|
|
3
|
+
import { loadCodeMieConfig } from '../codemie-code/config.js';
|
|
4
|
+
import { join } from 'path';
|
|
5
|
+
import { readFileSync } from 'fs';
|
|
6
|
+
import { getDirname } from '../../utils/dirname.js';
|
|
7
|
+
/**
|
|
8
|
+
* CodeMie-Code Plugin Metadata
|
|
9
|
+
*/
|
|
10
|
+
export const CodeMieCodePluginMetadata = {
|
|
11
|
+
name: 'codemie-code',
|
|
12
|
+
displayName: 'CodeMie Native',
|
|
13
|
+
description: 'Built-in LangGraph-based coding assistant',
|
|
14
|
+
npmPackage: null, // Built-in
|
|
15
|
+
cliCommand: null, // No external CLI
|
|
16
|
+
envMapping: {},
|
|
17
|
+
supportedProviders: ['bedrock', 'openai', 'azure', 'litellm', 'ai-run-sso'],
|
|
18
|
+
blockedModelPatterns: [],
|
|
19
|
+
// Built-in agent doesn't use SSO gateway (handles auth internally)
|
|
20
|
+
ssoConfig: undefined,
|
|
21
|
+
customOptions: [
|
|
22
|
+
{ flags: '--task <task>', description: 'Execute a single task and exit' },
|
|
23
|
+
{ flags: '--debug', description: 'Enable debug logging' },
|
|
24
|
+
{ flags: '--plan', description: 'Enable planning mode' },
|
|
25
|
+
{ flags: '--plan-only', description: 'Plan without execution' }
|
|
26
|
+
],
|
|
27
|
+
isBuiltIn: true,
|
|
28
|
+
// Custom handler for built-in agent
|
|
29
|
+
customRunHandler: async (args, options) => {
|
|
30
|
+
logger.info('Starting CodeMie Native Agent...');
|
|
31
|
+
try {
|
|
32
|
+
// Check if we have a valid configuration first
|
|
33
|
+
const workingDir = process.cwd();
|
|
34
|
+
try {
|
|
35
|
+
await loadCodeMieConfig(workingDir);
|
|
36
|
+
}
|
|
37
|
+
catch {
|
|
38
|
+
throw new Error('CodeMie configuration required. Please run: codemie setup');
|
|
39
|
+
}
|
|
40
|
+
const codeMie = new CodeMieCode(workingDir);
|
|
41
|
+
await codeMie.initialize({ debug: options.debug });
|
|
42
|
+
if (options.task) {
|
|
43
|
+
await codeMie.executeTaskWithUI(options.task, {
|
|
44
|
+
planMode: (options.plan || options.planOnly),
|
|
45
|
+
planOnly: options.planOnly
|
|
46
|
+
});
|
|
47
|
+
}
|
|
48
|
+
else if (args.length > 0) {
|
|
49
|
+
await codeMie.executeTaskWithUI(args.join(' '));
|
|
50
|
+
if (!options.planOnly) {
|
|
51
|
+
await codeMie.startInteractive();
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
await codeMie.startInteractive();
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
catch (error) {
|
|
59
|
+
const errorMessage = error instanceof Error ? error.message : String(error);
|
|
60
|
+
throw new Error(`Failed to run CodeMie Native: ${errorMessage}`);
|
|
61
|
+
}
|
|
62
|
+
},
|
|
63
|
+
customHealthCheck: async () => {
|
|
64
|
+
const result = await CodeMieCode.testConnection(process.cwd());
|
|
65
|
+
if (result.success) {
|
|
66
|
+
logger.success('CodeMie Native is healthy');
|
|
67
|
+
console.log(`Provider: ${result.provider || 'unknown'}`);
|
|
68
|
+
console.log(`Model: ${result.model || 'unknown'}`);
|
|
69
|
+
return true;
|
|
70
|
+
}
|
|
71
|
+
else {
|
|
72
|
+
logger.error('Health check failed:', result.error);
|
|
73
|
+
return false;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
/**
|
|
78
|
+
* CodeMie-Code Adapter
|
|
79
|
+
* Custom implementation for built-in agent
|
|
80
|
+
*/
|
|
81
|
+
export class CodeMieCodePlugin {
|
|
82
|
+
name = 'codemie-code';
|
|
83
|
+
displayName = 'CodeMie Native';
|
|
84
|
+
description = 'CodeMie Native Agent - Built-in LangGraph-based coding assistant';
|
|
85
|
+
async install() {
|
|
86
|
+
logger.info('CodeMie Native is built-in and already available');
|
|
87
|
+
}
|
|
88
|
+
async uninstall() {
|
|
89
|
+
logger.info('CodeMie Native is built-in and cannot be uninstalled');
|
|
90
|
+
}
|
|
91
|
+
async isInstalled() {
|
|
92
|
+
return true;
|
|
93
|
+
}
|
|
94
|
+
async run(args, envOverrides) {
|
|
95
|
+
// Set environment variables if provided
|
|
96
|
+
if (envOverrides) {
|
|
97
|
+
Object.assign(process.env, envOverrides);
|
|
98
|
+
}
|
|
99
|
+
// Parse options from args
|
|
100
|
+
const options = {};
|
|
101
|
+
const filteredArgs = [];
|
|
102
|
+
for (let i = 0; i < args.length; i++) {
|
|
103
|
+
const arg = args[i];
|
|
104
|
+
if (arg === '--task' && args[i + 1]) {
|
|
105
|
+
options.task = args[i + 1];
|
|
106
|
+
i++; // Skip next arg
|
|
107
|
+
}
|
|
108
|
+
else if (arg === '--debug') {
|
|
109
|
+
options.debug = true;
|
|
110
|
+
}
|
|
111
|
+
else if (arg === '--plan') {
|
|
112
|
+
options.plan = true;
|
|
113
|
+
}
|
|
114
|
+
else if (arg === '--plan-only') {
|
|
115
|
+
options.planOnly = true;
|
|
116
|
+
}
|
|
117
|
+
else {
|
|
118
|
+
filteredArgs.push(arg);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
if (CodeMieCodePluginMetadata.customRunHandler) {
|
|
122
|
+
await CodeMieCodePluginMetadata.customRunHandler(filteredArgs, options, {});
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
async getVersion() {
|
|
126
|
+
try {
|
|
127
|
+
const packageJsonPath = join(getDirname(import.meta.url), '../../../package.json');
|
|
128
|
+
const packageJsonContent = readFileSync(packageJsonPath, 'utf-8');
|
|
129
|
+
const packageJson = JSON.parse(packageJsonContent);
|
|
130
|
+
return `v${packageJson.version} (built-in)`;
|
|
131
|
+
}
|
|
132
|
+
catch {
|
|
133
|
+
return 'unknown (built-in)';
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=codemie-code.plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codemie-code.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/codemie-code.plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AgentMetadata } from '../core/types.js';
|
|
2
|
+
import { BaseAgentAdapter } from '../core/BaseAgentAdapter.js';
|
|
3
|
+
/**
|
|
4
|
+
* Codex Plugin Metadata
|
|
5
|
+
*/
|
|
6
|
+
export declare const CodexPluginMetadata: AgentMetadata;
|
|
7
|
+
/**
|
|
8
|
+
* Codex Adapter
|
|
9
|
+
*/
|
|
10
|
+
export declare class CodexPlugin extends BaseAgentAdapter {
|
|
11
|
+
constructor();
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=codex.plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex.plugin.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/codex.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,aAsCjC,CAAC;AAEF;;GAEG;AACH,qBAAa,WAAY,SAAQ,gBAAgB;;CAIhD"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { BaseAgentAdapter } from '../core/BaseAgentAdapter.js';
|
|
2
|
+
/**
|
|
3
|
+
* Codex Plugin Metadata
|
|
4
|
+
*/
|
|
5
|
+
export const CodexPluginMetadata = {
|
|
6
|
+
name: 'codex',
|
|
7
|
+
displayName: 'Codex',
|
|
8
|
+
description: 'OpenAI Codex - AI coding assistant',
|
|
9
|
+
npmPackage: '@openai/codex',
|
|
10
|
+
cliCommand: 'codex',
|
|
11
|
+
envMapping: {
|
|
12
|
+
baseUrl: ['OPENAI_API_BASE', 'OPENAI_BASE_URL'],
|
|
13
|
+
apiKey: ['OPENAI_API_KEY'],
|
|
14
|
+
model: ['OPENAI_MODEL', 'CODEX_MODEL']
|
|
15
|
+
},
|
|
16
|
+
supportedProviders: ['openai', 'azure', 'litellm', 'ai-run-sso'],
|
|
17
|
+
blockedModelPatterns: [/^claude/i, /bedrock.*claude/i],
|
|
18
|
+
ssoConfig: {
|
|
19
|
+
enabled: true,
|
|
20
|
+
clientType: 'codex-cli',
|
|
21
|
+
envOverrides: {
|
|
22
|
+
baseUrl: 'OPENAI_API_BASE',
|
|
23
|
+
apiKey: 'OPENAI_API_KEY'
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
// Codex needs model injected as argument
|
|
27
|
+
argumentTransform: (args, config) => {
|
|
28
|
+
const hasModelArg = args.some((arg, idx) => (arg === '-m' || arg === '--model') && idx < args.length - 1);
|
|
29
|
+
if (!hasModelArg && config.model) {
|
|
30
|
+
return ['--model', config.model, ...args];
|
|
31
|
+
}
|
|
32
|
+
return args;
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* Codex Adapter
|
|
37
|
+
*/
|
|
38
|
+
export class CodexPlugin extends BaseAgentAdapter {
|
|
39
|
+
constructor() {
|
|
40
|
+
super(CodexPluginMetadata);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=codex.plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex.plugin.js","sourceRoot":"","sources":["../../../src/agents/plugins/codex.plugin.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D;;GAEG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAkB;IAChD,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,OAAO;IACpB,WAAW,EAAE,oCAAoC;IAEjD,UAAU,EAAE,eAAe;IAC3B,UAAU,EAAE,OAAO;IAEnB,UAAU,EAAE;QACV,OAAO,EAAE,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;QAC/C,MAAM,EAAE,CAAC,gBAAgB,CAAC;QAC1B,KAAK,EAAE,CAAC,cAAc,EAAE,aAAa,CAAC;KACvC;IAED,kBAAkB,EAAE,CAAC,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,YAAY,CAAC;IAChE,oBAAoB,EAAE,CAAC,UAAU,EAAE,kBAAkB,CAAC;IAEtD,SAAS,EAAE;QACT,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,WAAW;QACvB,YAAY,EAAE;YACZ,OAAO,EAAE,iBAAiB;YAC1B,MAAM,EAAE,gBAAgB;SACzB;KACF;IAED,yCAAyC;IACzC,iBAAiB,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE,CACzC,CAAC,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,SAAS,CAAC,IAAI,GAAG,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,CAC7D,CAAC;QAEF,IAAI,CAAC,WAAW,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;YACjC,OAAO,CAAC,SAAS,EAAE,MAAM,CAAC,KAAK,EAAE,GAAG,IAAI,CAAC,CAAC;QAC5C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,gBAAgB;IAC/C;QACE,KAAK,CAAC,mBAAmB,CAAC,CAAC;IAC7B,CAAC;CACF"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { AgentMetadata } from '../core/types.js';
|
|
2
|
+
import { BaseAgentAdapter } from '../core/BaseAgentAdapter.js';
|
|
3
|
+
/**
|
|
4
|
+
* Gemini CLI Plugin Metadata
|
|
5
|
+
*/
|
|
6
|
+
export declare const GeminiPluginMetadata: AgentMetadata;
|
|
7
|
+
/**
|
|
8
|
+
* Gemini CLI Adapter
|
|
9
|
+
*/
|
|
10
|
+
export declare class GeminiPlugin extends BaseAgentAdapter {
|
|
11
|
+
constructor();
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=gemini.plugin.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gemini.plugin.d.ts","sourceRoot":"","sources":["../../../src/agents/plugins/gemini.plugin.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAE/D;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,aAsClC,CAAC;AAEF;;GAEG;AACH,qBAAa,YAAa,SAAQ,gBAAgB;;CAIjD"}
|