@brutalist/mcp 0.1.1 → 0.4.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.
@@ -1 +1 @@
1
- {"version":3,"file":"brutalist-server.js","sourceRoot":"","sources":["../src/brutalist-server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brutalist-server.js","sourceRoot":"","sources":["../src/brutalist-server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,57 @@
1
+ import { CLIAgentResponse } from './types/brutalist.js';
2
+ export type BrutalistPromptType = 'code' | 'codebase' | 'architecture' | 'idea' | 'research' | 'data' | 'security' | 'product' | 'infrastructure' | 'debate' | 'dependencies' | 'fileStructure' | 'gitHistory' | 'testCoverage';
3
+ export declare const AVAILABLE_MODELS: {
4
+ readonly claude: {
5
+ readonly default: undefined;
6
+ readonly aliases: readonly ["opus", "sonnet", "haiku"];
7
+ readonly full: readonly ["claude-opus-4-1-20250805", "claude-sonnet-4-20250514"];
8
+ };
9
+ readonly codex: {
10
+ readonly default: "gpt-5";
11
+ readonly models: readonly ["gpt-5", "gpt-5-codex", "o3", "o3-mini", "o3-pro", "o4-mini"];
12
+ };
13
+ readonly gemini: {
14
+ readonly default: "gemini-2.5-flash";
15
+ readonly models: readonly ["gemini-2.5-flash", "gemini-2.5-pro", "gemini-2.5-flash-lite"];
16
+ };
17
+ };
18
+ export interface CLIAgentOptions {
19
+ workingDirectory?: string;
20
+ timeout?: number;
21
+ sandbox?: boolean;
22
+ preferredCLI?: 'claude' | 'codex' | 'gemini';
23
+ analysisType?: BrutalistPromptType;
24
+ models?: {
25
+ claude?: string;
26
+ codex?: string;
27
+ gemini?: string;
28
+ };
29
+ }
30
+ export interface CLIContext {
31
+ currentCLI?: 'claude' | 'codex' | 'gemini';
32
+ availableCLIs: ('claude' | 'codex' | 'gemini')[];
33
+ }
34
+ export declare class CLIAgentOrchestrator {
35
+ private defaultTimeout;
36
+ private defaultWorkingDir;
37
+ private cliContext;
38
+ private cliContextCached;
39
+ private cliContextCacheTime;
40
+ private readonly CLI_CACHE_TTL;
41
+ private runningCLIs;
42
+ private readonly MAX_CONCURRENT_CLIS;
43
+ constructor();
44
+ detectCLIContext(): Promise<CLIContext>;
45
+ private detectCurrentCLI;
46
+ selectSingleCLI(preferredCLI?: 'claude' | 'codex' | 'gemini', analysisType?: BrutalistPromptType): 'claude' | 'codex' | 'gemini';
47
+ private _executeCLI;
48
+ executeClaudeCode(userPrompt: string, systemPromptSpec: string, options?: CLIAgentOptions): Promise<CLIAgentResponse>;
49
+ executeCodex(userPrompt: string, systemPromptSpec: string, options?: CLIAgentOptions): Promise<CLIAgentResponse>;
50
+ executeGemini(userPrompt: string, systemPromptSpec: string, options?: CLIAgentOptions): Promise<CLIAgentResponse>;
51
+ executeSingleCLI(cli: 'claude' | 'codex' | 'gemini', userPrompt: string, systemPromptSpec: string, options?: CLIAgentOptions): Promise<CLIAgentResponse>;
52
+ private waitForAvailableSlot;
53
+ executeBrutalistAnalysis(analysisType: BrutalistPromptType, targetPath: string, systemPromptSpec: string, context?: string, options?: CLIAgentOptions): Promise<CLIAgentResponse[]>;
54
+ synthesizeBrutalistFeedback(responses: CLIAgentResponse[], analysisType: string): string;
55
+ private constructUserPrompt;
56
+ }
57
+ //# sourceMappingURL=cli-agents.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli-agents.d.ts","sourceRoot":"","sources":["../src/cli-agents.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAQxD,MAAM,MAAM,mBAAmB,GAC3B,MAAM,GACN,UAAU,GACV,cAAc,GACd,MAAM,GACN,UAAU,GACV,MAAM,GACN,UAAU,GACV,SAAS,GACT,gBAAgB,GAChB,QAAQ,GACR,cAAc,GACd,eAAe,GACf,YAAY,GACZ,cAAc,CAAC;AASnB,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;CAcnB,CAAC;AA0GX,MAAM,WAAW,eAAe;IAC9B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,YAAY,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC7C,YAAY,CAAC,EAAE,mBAAmB,CAAC;IACnC,MAAM,CAAC,EAAE;QACP,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,MAAM,WAAW,UAAU;IACzB,UAAU,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC;IAC3C,aAAa,EAAE,CAAC,QAAQ,GAAG,OAAO,GAAG,QAAQ,CAAC,EAAE,CAAC;CAClD;AAED,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,cAAc,CAAW;IACjC,OAAO,CAAC,iBAAiB,CAAiB;IAC1C,OAAO,CAAC,UAAU,CAAqC;IACvD,OAAO,CAAC,gBAAgB,CAAS;IACjC,OAAO,CAAC,mBAAmB,CAAK;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAU;IACxC,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,QAAQ,CAAC,mBAAmB,CAAuB;;IAerD,gBAAgB,IAAI,OAAO,CAAC,UAAU,CAAC;IA4C7C,OAAO,CAAC,gBAAgB;IA2BxB,eAAe,CACb,YAAY,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,EAC5C,YAAY,CAAC,EAAE,mBAAmB,GACjC,QAAQ,GAAG,OAAO,GAAG,QAAQ;YAgDlB,WAAW;IAsFnB,iBAAiB,CACrB,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IAoBtB,YAAY,CAChB,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IAyBtB,aAAa,CACjB,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;IAgCtB,gBAAgB,CACpB,GAAG,EAAE,QAAQ,GAAG,OAAO,GAAG,QAAQ,EAClC,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,gBAAgB,CAAC;YA2Bd,oBAAoB;IAS5B,wBAAwB,CAC5B,YAAY,EAAE,mBAAmB,EACjC,UAAU,EAAE,MAAM,EAClB,gBAAgB,EAAE,MAAM,EACxB,OAAO,CAAC,EAAE,MAAM,EAChB,OAAO,GAAE,eAAoB,GAC5B,OAAO,CAAC,gBAAgB,EAAE,CAAC;IA2E9B,2BAA2B,CAAC,SAAS,EAAE,gBAAgB,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IA6BxF,OAAO,CAAC,mBAAmB;CA8B5B"}
@@ -0,0 +1,497 @@
1
+ import { spawn } from 'child_process';
2
+ import { logger } from './logger.js';
3
+ // Configurable timeouts and limits
4
+ const DEFAULT_TIMEOUT = parseInt(process.env.BRUTALIST_TIMEOUT || '300000', 10); // 5 minutes default
5
+ const CLI_CHECK_TIMEOUT = parseInt(process.env.BRUTALIST_CLI_CHECK_TIMEOUT || '5000', 10); // 5 seconds for CLI checks
6
+ const MAX_BUFFER_SIZE = parseInt(process.env.BRUTALIST_MAX_BUFFER || String(10 * 1024 * 1024), 10); // 10MB default
7
+ const MAX_CONCURRENT_CLIS = parseInt(process.env.BRUTALIST_MAX_CONCURRENT || '3', 10); // 3 concurrent CLIs
8
+ // Available models for each CLI
9
+ export const AVAILABLE_MODELS = {
10
+ claude: {
11
+ default: undefined, // Uses user's configured model
12
+ aliases: ['opus', 'sonnet', 'haiku'],
13
+ full: ['claude-opus-4-1-20250805', 'claude-sonnet-4-20250514']
14
+ },
15
+ codex: {
16
+ default: 'gpt-5', // Fast default reasoning
17
+ models: ['gpt-5', 'gpt-5-codex', 'o3', 'o3-mini', 'o3-pro', 'o4-mini']
18
+ },
19
+ gemini: {
20
+ default: 'gemini-2.5-flash', // Best price/performance
21
+ models: ['gemini-2.5-flash', 'gemini-2.5-pro', 'gemini-2.5-flash-lite']
22
+ }
23
+ };
24
+ // Safe command execution helper using spawn instead of exec to prevent command injection
25
+ async function spawnAsync(command, args, options = {}) {
26
+ return new Promise((resolve, reject) => {
27
+ // Use working directory as-is - let CLI tools handle their own sandboxing
28
+ const cwd = options.cwd || process.cwd();
29
+ const child = spawn(command, args, {
30
+ cwd: cwd,
31
+ stdio: ['pipe', 'pipe', 'pipe'],
32
+ shell: false, // CRITICAL: disable shell to prevent injection
33
+ detached: command !== 'gemini', // Disable detached for Gemini CLI to fix macOS sandbox issue
34
+ env: options.env || process.env
35
+ });
36
+ let stdout = '';
37
+ let stderr = '';
38
+ let timedOut = false;
39
+ let killed = false;
40
+ // Set up timeout with SIGKILL escalation
41
+ const timeoutMs = options.timeout || DEFAULT_TIMEOUT;
42
+ const timer = setTimeout(() => {
43
+ timedOut = true;
44
+ // First try SIGTERM
45
+ child.kill('SIGTERM');
46
+ // If still running after 5 seconds, escalate to SIGKILL
47
+ setTimeout(() => {
48
+ if (!killed) {
49
+ try {
50
+ if (command === 'gemini' || process.platform === 'win32') {
51
+ // Gemini runs non-detached, and Windows doesn't support process groups
52
+ child.kill('SIGKILL');
53
+ }
54
+ else {
55
+ // Other CLIs on Unix-like systems: kill process group
56
+ process.kill(-child.pid, 'SIGKILL');
57
+ }
58
+ }
59
+ catch (e) {
60
+ // Process may have already exited
61
+ }
62
+ }
63
+ }, 5000);
64
+ reject(new Error(`Command timed out after ${timeoutMs}ms: ${command} ${args.join(' ')}`));
65
+ }, timeoutMs);
66
+ // Collect output
67
+ // NOTE: maxBuffer (default 10MB) can lead to high memory usage if CLI agents produce large outputs.
68
+ // Consider making this configurable or dynamically adjusting based on expected output size.
69
+ child.stdout?.on('data', (data) => {
70
+ stdout += data.toString();
71
+ if (options.maxBuffer && stdout.length > options.maxBuffer) {
72
+ child.kill('SIGTERM');
73
+ reject(new Error(`stdout exceeded maxBuffer size: ${options.maxBuffer}`));
74
+ }
75
+ });
76
+ child.stderr?.on('data', (data) => {
77
+ stderr += data.toString();
78
+ // Apply same buffer limit to stderr to prevent DoS
79
+ if (options.maxBuffer && stderr.length > options.maxBuffer) {
80
+ child.kill('SIGTERM');
81
+ reject(new Error(`stderr exceeded maxBuffer size: ${options.maxBuffer}`));
82
+ }
83
+ });
84
+ // Handle completion
85
+ child.on('close', (code) => {
86
+ killed = true;
87
+ clearTimeout(timer);
88
+ if (!timedOut) {
89
+ if (code === 0) {
90
+ resolve({ stdout, stderr });
91
+ }
92
+ else {
93
+ const error = new Error(`Command failed with exit code ${code}: ${command} ${args.join(' ')}`);
94
+ error.code = code || undefined;
95
+ error.stdout = stdout;
96
+ error.stderr = stderr;
97
+ reject(error);
98
+ }
99
+ }
100
+ });
101
+ child.on('error', (error) => {
102
+ clearTimeout(timer);
103
+ reject(error);
104
+ });
105
+ // Send input if provided
106
+ if (options.input) {
107
+ child.stdin?.write(options.input);
108
+ child.stdin?.end();
109
+ }
110
+ });
111
+ }
112
+ export class CLIAgentOrchestrator {
113
+ defaultTimeout = 1500000; // 25 minutes - thorough analysis takes time
114
+ defaultWorkingDir = process.cwd();
115
+ cliContext = { availableCLIs: [] };
116
+ cliContextCached = false;
117
+ cliContextCacheTime = 0;
118
+ CLI_CACHE_TTL = 300000; // 5 minutes cache
119
+ runningCLIs = 0; // Track concurrent CLI executions
120
+ MAX_CONCURRENT_CLIS = MAX_CONCURRENT_CLIS; // Configurable concurrency limit
121
+ constructor() {
122
+ // Log configuration at startup
123
+ logger.info(`šŸ”§ Brutalist MCP Configuration:`);
124
+ logger.info(` - Default timeout: ${DEFAULT_TIMEOUT}ms`);
125
+ logger.info(` - CLI check timeout: ${CLI_CHECK_TIMEOUT}ms`);
126
+ logger.info(` - Max buffer size: ${MAX_BUFFER_SIZE} bytes`);
127
+ logger.info(` - Max concurrent CLIs: ${MAX_CONCURRENT_CLIS}`);
128
+ // Detect CLI context at startup and cache it
129
+ this.detectCLIContext().catch(error => {
130
+ logger.error("Failed to detect CLI context at startup:", error);
131
+ });
132
+ }
133
+ async detectCLIContext() {
134
+ // Return cached context if still valid
135
+ if (this.cliContextCached && Date.now() - this.cliContextCacheTime < this.CLI_CACHE_TTL) {
136
+ logger.debug('Using cached CLI context');
137
+ return this.cliContext;
138
+ }
139
+ const availableCLIs = [];
140
+ let currentCLI;
141
+ // Check for available CLIs
142
+ const cliChecks = [
143
+ { name: 'claude', command: 'claude --version' },
144
+ { name: 'codex', command: 'codex --version' },
145
+ { name: 'gemini', command: 'gemini --version' }
146
+ ];
147
+ const results = await Promise.allSettled(cliChecks.map(async (check) => {
148
+ try {
149
+ await spawnAsync(check.name, ['--version'], { timeout: CLI_CHECK_TIMEOUT });
150
+ logger.debug(`CLI available: ${check.name}`);
151
+ return check.name;
152
+ }
153
+ catch (error) {
154
+ logger.debug(`CLI not available: ${check.name}`);
155
+ return null;
156
+ }
157
+ }));
158
+ const detectedCLIs = results
159
+ .filter(result => result.status === 'fulfilled' && result.value !== null)
160
+ .map(result => result.value);
161
+ availableCLIs.push(...detectedCLIs);
162
+ // Detect current CLI context from environment or process
163
+ currentCLI = this.detectCurrentCLI();
164
+ this.cliContext = { currentCLI, availableCLIs };
165
+ this.cliContextCached = true;
166
+ this.cliContextCacheTime = Date.now();
167
+ return this.cliContext;
168
+ }
169
+ detectCurrentCLI() {
170
+ // Check environment variables that might indicate current CLI
171
+ if (process.env.CLAUDE_CODE_SESSION || process.env.CLAUDE_CONFIG_DIR) {
172
+ return 'claude';
173
+ }
174
+ if (process.env.CODEX_SESSION || process.env.OPENAI_CODEX_SESSION) {
175
+ return 'codex';
176
+ }
177
+ if (process.env.GEMINI_SESSION || process.env.GEMINI_API_KEY) {
178
+ return 'gemini';
179
+ }
180
+ // Check process parent/ancestry for CLI indicators
181
+ try {
182
+ const processInfo = process.env._;
183
+ if (processInfo?.includes('claude'))
184
+ return 'claude';
185
+ if (processInfo?.includes('codex'))
186
+ return 'codex';
187
+ if (processInfo?.includes('gemini'))
188
+ return 'gemini';
189
+ }
190
+ catch (error) {
191
+ logger.debug('Could not detect current CLI from process info');
192
+ }
193
+ return undefined;
194
+ }
195
+ selectSingleCLI(preferredCLI, analysisType) {
196
+ // 1. Honor explicit preference if available (allow even if current CLI to avoid blocking)
197
+ if (preferredCLI && this.cliContext.availableCLIs.includes(preferredCLI)) {
198
+ logger.info(`āœ… Using preferred CLI: ${preferredCLI}`);
199
+ return preferredCLI;
200
+ }
201
+ // 2. Smart selection based on analysis type
202
+ const selectionRules = {
203
+ 'code': ['claude', 'codex', 'gemini'],
204
+ 'architecture': ['gemini', 'claude', 'codex'],
205
+ 'research': ['claude', 'gemini', 'codex'],
206
+ 'security': ['codex', 'claude', 'gemini'],
207
+ 'data': ['gemini', 'claude', 'codex'],
208
+ 'product': ['claude', 'gemini', 'codex'],
209
+ 'infrastructure': ['gemini', 'codex', 'claude'],
210
+ 'idea': ['claude', 'gemini', 'codex'],
211
+ 'debate': ['claude', 'gemini', 'codex'],
212
+ 'default': ['claude', 'gemini', 'codex']
213
+ };
214
+ const priority = selectionRules[analysisType || 'default'] || selectionRules.default;
215
+ // 3. Filter available CLIs, exclude current CLI only for auto-selection to prevent recursion
216
+ const currentCLI = this.cliContext.currentCLI;
217
+ const candidates = this.cliContext.availableCLIs.filter(cli => cli !== currentCLI);
218
+ // If no candidates after filtering, fall back to available CLIs (allow recursion if necessary)
219
+ const finalCandidates = candidates.length > 0 ? candidates : this.cliContext.availableCLIs;
220
+ if (finalCandidates.length === 0) {
221
+ throw new Error('No CLI agents available');
222
+ }
223
+ // 4. Select by priority
224
+ for (const cli of priority) {
225
+ if (finalCandidates.includes(cli)) {
226
+ const recursionWarning = candidates.length === 0 ? ' (allowing recursion)' : '';
227
+ logger.info(`šŸŽÆ Auto-selected ${cli} for ${analysisType || 'general'} analysis${recursionWarning}`);
228
+ return cli;
229
+ }
230
+ }
231
+ // Fallback to first available
232
+ logger.warn(`āš ļø Using fallback CLI: ${finalCandidates[0]}`);
233
+ return finalCandidates[0];
234
+ }
235
+ async _executeCLI(cliName, userPrompt, systemPromptSpec, options = {}, commandBuilder) {
236
+ const startTime = Date.now();
237
+ const workingDir = options.workingDirectory || this.defaultWorkingDir;
238
+ const timeout = options.timeout || this.defaultTimeout;
239
+ try {
240
+ logger.info(`šŸ¤– Executing ${cliName.toUpperCase()} CLI`);
241
+ logger.debug(`${cliName.toUpperCase()} prompt`, { prompt: userPrompt.substring(0, 100) });
242
+ // WARNING: Claude CLI does not have a native --sandbox flag.
243
+ // If options.sandbox is true, it is assumed that the environment
244
+ // running this Brutalist MCP server provides the sandboxing (e.g., Docker, VM).
245
+ // Running Claude without external sandboxing can be a security risk.
246
+ if (cliName === 'claude' && options.sandbox) {
247
+ logger.warn("āš ļø Claude CLI requested with sandbox: true, but Claude CLI does not support native sandboxing. Ensure external sandboxing is in place.");
248
+ }
249
+ const { command, args, env, input } = commandBuilder(userPrompt, systemPromptSpec, options);
250
+ logger.info(`šŸ“‹ Command: ${command} ${args.join(' ')}`);
251
+ logger.info(`šŸ“ Working directory: ${workingDir}`);
252
+ logger.info(`ā±ļø Timeout: ${timeout}ms`);
253
+ if (input) {
254
+ logger.info(`šŸ“ Using stdin for prompt (${input.length} characters)`);
255
+ }
256
+ const { stdout, stderr } = await spawnAsync(command, args, {
257
+ cwd: workingDir,
258
+ timeout: timeout,
259
+ maxBuffer: MAX_BUFFER_SIZE, // Configurable buffer for model outputs
260
+ env: env,
261
+ input: input
262
+ });
263
+ logger.info(`āœ… ${cliName.toUpperCase()} completed (${Date.now() - startTime}ms)`);
264
+ return {
265
+ agent: cliName,
266
+ success: true,
267
+ output: stdout,
268
+ error: stderr || undefined,
269
+ executionTime: Date.now() - startTime,
270
+ command: `${command} ${args.join(' ')}`,
271
+ workingDirectory: workingDir,
272
+ exitCode: 0
273
+ };
274
+ }
275
+ catch (error) {
276
+ const execError = error;
277
+ const exitCode = execError.code || -1;
278
+ // Detect rate limiting errors for Gemini
279
+ const isRateLimit = cliName === 'gemini' && (execError.stderr?.includes('429') ||
280
+ execError.message?.includes('rateLimitExceeded') ||
281
+ execError.stderr?.includes('rate limit'));
282
+ if (isRateLimit) {
283
+ logger.warn(`ā±ļø ${cliName.toUpperCase()} CLI hit rate limit (${Date.now() - startTime}ms)`);
284
+ }
285
+ else {
286
+ logger.error(`āŒ ${cliName.toUpperCase()} execution failed (${Date.now() - startTime}ms)`, {
287
+ error: "Redacted: See internal logs for full error details.",
288
+ exitCode,
289
+ stderr: "Redacted: See internal logs for full stderr output."
290
+ });
291
+ }
292
+ return {
293
+ agent: cliName,
294
+ success: false,
295
+ output: '',
296
+ error: error instanceof Error ? error.message : String(error),
297
+ executionTime: Date.now() - startTime,
298
+ command: `(redacted command for ${cliName})`,
299
+ workingDirectory: workingDir,
300
+ exitCode
301
+ };
302
+ }
303
+ }
304
+ async executeClaudeCode(userPrompt, systemPromptSpec, options = {}) {
305
+ return this._executeCLI('claude', userPrompt, systemPromptSpec, options, (userPrompt, systemPromptSpec, options) => {
306
+ const combinedPrompt = `${systemPromptSpec}\n\n${userPrompt}`;
307
+ const args = ['--print'];
308
+ // Use provided model or let Claude use its default
309
+ const model = options.models?.claude || AVAILABLE_MODELS.claude.default;
310
+ if (model) {
311
+ args.push('--model', model);
312
+ }
313
+ args.push(combinedPrompt);
314
+ return { command: 'claude', args };
315
+ });
316
+ }
317
+ async executeCodex(userPrompt, systemPromptSpec, options = {}) {
318
+ return this._executeCLI('codex', userPrompt, systemPromptSpec, { ...options, sandbox: true }, // Ensure sandbox is always true for Codex
319
+ (userPrompt, systemPromptSpec, options) => {
320
+ const combinedPrompt = `CONTEXT AND INSTRUCTIONS:\n${systemPromptSpec}\n\nANALYZE:\n${userPrompt}`;
321
+ const args = ['exec'];
322
+ // Use provided model or default to gpt-5
323
+ const model = options.models?.codex || AVAILABLE_MODELS.codex.default;
324
+ args.push('--model', model);
325
+ if (options.sandbox) {
326
+ args.push('--sandbox', 'read-only');
327
+ }
328
+ // Use stdin for the prompt instead of argv to avoid ARG_MAX limits
329
+ return {
330
+ command: 'codex',
331
+ args,
332
+ input: combinedPrompt
333
+ };
334
+ });
335
+ }
336
+ async executeGemini(userPrompt, systemPromptSpec, options = {}) {
337
+ return this._executeCLI('gemini', userPrompt, systemPromptSpec, { ...options, sandbox: true }, // Ensure sandbox is always true for Gemini
338
+ (userPrompt, systemPromptSpec, options) => {
339
+ const args = [];
340
+ // Use provided model or default to gemini-2.5-flash
341
+ const modelName = options.models?.gemini || AVAILABLE_MODELS.gemini.default;
342
+ args.push('--model', modelName);
343
+ if (options.sandbox) {
344
+ args.push('--sandbox');
345
+ }
346
+ const combinedPrompt = `${systemPromptSpec}\n\n${userPrompt}`;
347
+ args.push(combinedPrompt);
348
+ return {
349
+ command: 'gemini',
350
+ args: args,
351
+ env: {
352
+ ...process.env,
353
+ TERM: 'dumb',
354
+ NO_COLOR: '1',
355
+ CI: 'true'
356
+ }
357
+ };
358
+ });
359
+ }
360
+ async executeSingleCLI(cli, userPrompt, systemPromptSpec, options = {}) {
361
+ // Wait for available slot to prevent resource exhaustion
362
+ await this.waitForAvailableSlot();
363
+ this.runningCLIs++;
364
+ logger.info(`šŸŽÆ Executing ${cli} (${this.runningCLIs}/${this.MAX_CONCURRENT_CLIS} slots used)`);
365
+ try {
366
+ switch (cli) {
367
+ case 'claude':
368
+ return await this.executeClaudeCode(userPrompt, systemPromptSpec, options);
369
+ case 'codex':
370
+ return await this.executeCodex(userPrompt, systemPromptSpec, { ...options, sandbox: true });
371
+ case 'gemini':
372
+ return await this.executeGemini(userPrompt, systemPromptSpec, { ...options, sandbox: true });
373
+ default:
374
+ throw new Error(`Unknown CLI: ${cli}`);
375
+ }
376
+ }
377
+ finally {
378
+ this.runningCLIs--;
379
+ logger.info(`āœ… Released CLI slot (${this.runningCLIs}/${this.MAX_CONCURRENT_CLIS} slots used)`);
380
+ }
381
+ }
382
+ async waitForAvailableSlot() {
383
+ let waitTime = 100; // Start with 100ms wait time
384
+ while (this.runningCLIs >= this.MAX_CONCURRENT_CLIS) {
385
+ logger.info(`ā³ Waiting for available CLI slot (${this.runningCLIs}/${this.MAX_CONCURRENT_CLIS} in use). Next check in ${waitTime}ms...`);
386
+ await new Promise(resolve => setTimeout(resolve, waitTime));
387
+ waitTime = Math.min(waitTime * 2, 5000); // Exponential backoff, max 5 seconds
388
+ }
389
+ }
390
+ async executeBrutalistAnalysis(analysisType, targetPath, systemPromptSpec, context, options = {}) {
391
+ const userPrompt = this.constructUserPrompt(analysisType, targetPath, context);
392
+ // If preferred CLI is specified, use single CLI mode
393
+ if (options.preferredCLI) {
394
+ const selectedCLI = this.selectSingleCLI(options.preferredCLI, options.analysisType);
395
+ logger.info(`āœ… Using preferred CLI: ${selectedCLI}`);
396
+ const response = await this.executeSingleCLI(selectedCLI, userPrompt, systemPromptSpec, options);
397
+ return [{
398
+ ...response,
399
+ selectionMethod: 'user-specified',
400
+ analysisType
401
+ }];
402
+ }
403
+ // Multi-CLI execution (default behavior)
404
+ logger.info(`šŸš€ Executing multi-CLI analysis`);
405
+ // Only exclude current CLI if we have other options
406
+ let availableCLIs = [...this.cliContext.availableCLIs];
407
+ if (this.cliContext.currentCLI && this.cliContext.availableCLIs.length > 1) {
408
+ // Exclude current CLI to prevent recursion, but only if we have alternatives
409
+ availableCLIs = availableCLIs.filter(cli => cli !== this.cliContext.currentCLI);
410
+ logger.info(`šŸ”„ Excluding current CLI (${this.cliContext.currentCLI}) to prevent recursion`);
411
+ }
412
+ else if (this.cliContext.currentCLI && this.cliContext.availableCLIs.length === 1) {
413
+ logger.warn(`āš ļø Only current CLI (${this.cliContext.currentCLI}) available - allowing with recursion guard`);
414
+ }
415
+ if (availableCLIs.length === 0) {
416
+ throw new Error('No CLI agents available for analysis');
417
+ }
418
+ logger.info(`šŸ“Š Available CLIs: ${availableCLIs.join(', ')}`);
419
+ // Execute all available CLIs in parallel with allSettled for better error handling
420
+ const promises = availableCLIs.map(async (cli) => {
421
+ try {
422
+ const response = await this.executeSingleCLI(cli, userPrompt, systemPromptSpec, options);
423
+ return {
424
+ ...response,
425
+ selectionMethod: 'multi-cli',
426
+ analysisType
427
+ };
428
+ }
429
+ catch (error) {
430
+ logger.error(`āŒ ${cli} execution failed:`, error);
431
+ return {
432
+ agent: cli,
433
+ success: false,
434
+ output: '',
435
+ error: error instanceof Error ? error.message : String(error),
436
+ executionTime: 0,
437
+ selectionMethod: 'multi-cli',
438
+ analysisType
439
+ };
440
+ }
441
+ });
442
+ // Use allSettled to handle partial failures gracefully
443
+ const results = await Promise.allSettled(promises);
444
+ const responses = results
445
+ .filter(result => result.status === 'fulfilled')
446
+ .map(result => result.value);
447
+ logger.info(`āœ… Multi-CLI analysis complete: ${responses.filter(r => r.success).length}/${responses.length} successful`);
448
+ return responses;
449
+ }
450
+ synthesizeBrutalistFeedback(responses, analysisType) {
451
+ const successfulResponses = responses.filter(r => r.success);
452
+ const failedResponses = responses.filter(r => !r.success);
453
+ if (successfulResponses.length === 0) {
454
+ return `# Brutalist Analysis Failed\n\nāŒ All CLI agents failed to analyze\n${failedResponses.map(r => `- ${r.agent.toUpperCase()}: ${r.error}`).join('\n')}`;
455
+ }
456
+ let synthesis = `${successfulResponses.length} AI critics have systematically demolished your work.\n\n`;
457
+ successfulResponses.forEach((response, index) => {
458
+ synthesis += `## Critic ${index + 1}: ${response.agent.toUpperCase()}\n`;
459
+ synthesis += `*Execution time: ${response.executionTime}ms*\n\n`;
460
+ synthesis += response.output;
461
+ synthesis += '\n\n---\n\n';
462
+ });
463
+ if (failedResponses.length > 0) {
464
+ synthesis += `## Failed Critics\n`;
465
+ synthesis += `${failedResponses.length} critics failed to complete their destruction:\n`;
466
+ failedResponses.forEach(r => {
467
+ synthesis += `- **${r.agent.toUpperCase()}**: ${r.error}\n`;
468
+ });
469
+ synthesis += '\n';
470
+ }
471
+ return synthesis.trim();
472
+ }
473
+ constructUserPrompt(analysisType, targetPath, context) {
474
+ // Trust CLI tools to handle their own security
475
+ const sanitizedTargetPath = targetPath;
476
+ const sanitizedContext = context || 'No additional context provided';
477
+ const prompts = {
478
+ code: `Analyze the codebase at ${sanitizedTargetPath} for issues. Context: ${sanitizedContext}`,
479
+ codebase: `Analyze the codebase directory at ${sanitizedTargetPath} for security vulnerabilities, performance issues, and architectural problems. Context: ${sanitizedContext}`,
480
+ architecture: `Review the architecture: ${sanitizedTargetPath}. Find every scaling failure and cost explosion.`,
481
+ idea: `Analyze this idea: ${sanitizedTargetPath}. Find where imagination fails to become reality.`,
482
+ research: `Review this research: ${sanitizedTargetPath}. Find every methodological flaw and reproducibility issue.`,
483
+ data: `Analyze this data/model: ${sanitizedTargetPath}. Find every overfitting issue, bias, and correlation fallacy.`,
484
+ security: `Security audit of: ${sanitizedTargetPath}. Find every attack vector and vulnerability.`,
485
+ product: `Product review: ${sanitizedTargetPath}. Find every UX disaster and adoption barrier.`,
486
+ infrastructure: `Infrastructure review: ${sanitizedTargetPath}. Find every single point of failure.`,
487
+ debate: `Debate topic: ${sanitizedTargetPath}. Take opposing positions and argue until truth emerges.`,
488
+ fileStructure: `Analyze the directory structure at ${sanitizedTargetPath}. Find organizational disasters and naming failures.`,
489
+ dependencies: `Analyze dependencies at ${sanitizedTargetPath}. Find version conflicts and security vulnerabilities.`,
490
+ gitHistory: `Analyze git history at ${sanitizedTargetPath}. Find commit disasters and workflow failures.`,
491
+ testCoverage: `Analyze test coverage at ${sanitizedTargetPath}. Find testing gaps and quality issues.`
492
+ };
493
+ const specificPrompt = prompts[analysisType] || `Analyze ${sanitizedTargetPath} for ${analysisType} issues.`;
494
+ return `${specificPrompt} ${context ? `Context: ${sanitizedContext}` : ''}`;
495
+ }
496
+ }
497
+ //# sourceMappingURL=cli-agents.js.map