@brutalist/mcp 0.6.10 → 0.6.12
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/dist/brutalist-server.d.ts.map +1 -1
- package/dist/brutalist-server.js +33 -17
- package/dist/brutalist-server.js.map +1 -1
- package/dist/cli-agents.d.ts +0 -2
- package/dist/cli-agents.d.ts.map +1 -1
- package/dist/cli-agents.js +47 -82
- package/dist/cli-agents.js.map +1 -1
- package/dist/tool-definitions.js +5 -5
- package/dist/tool-definitions.js.map +1 -1
- package/dist/utils/pagination.d.ts +9 -3
- package/dist/utils/pagination.d.ts.map +1 -1
- package/dist/utils/pagination.js +39 -20
- package/dist/utils/pagination.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"brutalist-server.d.ts","sourceRoot":"","sources":["../src/brutalist-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAWpE,OAAO,EACL,qBAAqB,EAKtB,MAAM,sBAAsB,CAAC;AAc9B,qBAAa,eAAe;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,qBAAqB,CAAC;IACrC,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,aAAa,CAAC,CAAgC;IACtD,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAC,CAAa;IAErC,OAAO,CAAC,cAAc,CAIjB;gBAEO,MAAM,GAAE,qBAA0B;IA0C9C,OAAO,CAAC,oBAAoB,CAkE1B;IAEF,OAAO,CAAC,oBAAoB,CAsC1B;IAEI,KAAK;YAeG,gBAAgB;YAMhB,eAAe;IAmItB,aAAa,IAAI,MAAM,GAAG,SAAS;IAKnC,OAAO,IAAI,IAAI;IAOtB,OAAO,CAAC,aAAa;IAoBrB,OAAO,CAAC,oBAAoB;
|
|
1
|
+
{"version":3,"file":"brutalist-server.d.ts","sourceRoot":"","sources":["../src/brutalist-server.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAWpE,OAAO,EACL,qBAAqB,EAKtB,MAAM,sBAAsB,CAAC;AAc9B,qBAAa,eAAe;IACnB,MAAM,EAAE,SAAS,CAAC;IAClB,MAAM,EAAE,qBAAqB,CAAC;IACrC,OAAO,CAAC,eAAe,CAAuB;IAC9C,OAAO,CAAC,aAAa,CAAC,CAAgC;IACtD,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,UAAU,CAAC,CAAS;IAC5B,OAAO,CAAC,eAAe,CAAC,CAAa;IAErC,OAAO,CAAC,cAAc,CAIjB;gBAEO,MAAM,GAAE,qBAA0B;IA0C9C,OAAO,CAAC,oBAAoB,CAkE1B;IAEF,OAAO,CAAC,oBAAoB,CAsC1B;IAEI,KAAK;YAeG,gBAAgB;YAMhB,eAAe;IAmItB,aAAa,IAAI,MAAM,GAAG,SAAS;IAKnC,OAAO,IAAI,IAAI;IAOtB,OAAO,CAAC,aAAa;IAoBrB,OAAO,CAAC,oBAAoB;IAoG5B;;OAEG;YACW,eAAe;YAuLf,gBAAgB;IAkK9B,OAAO,CAAC,gBAAgB;YA0FV,wBAAwB;IA0FtC;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAwB1B,OAAO,CAAC,kBAAkB;IA6F1B,OAAO,CAAC,uBAAuB;IAuH/B,OAAO,CAAC,mBAAmB;YA8Bb,mBAAmB;CAUlC"}
|
package/dist/brutalist-server.js
CHANGED
|
@@ -26,7 +26,7 @@ export class BrutalistServer {
|
|
|
26
26
|
constructor(config = {}) {
|
|
27
27
|
this.config = {
|
|
28
28
|
workingDirectory: process.cwd(),
|
|
29
|
-
defaultTimeout:
|
|
29
|
+
defaultTimeout: 120000, // 2 minutes for testing (configurable via BRUTALIST_TIMEOUT env)
|
|
30
30
|
transport: 'stdio', // Default to stdio for backward compatibility
|
|
31
31
|
httpPort: 3000,
|
|
32
32
|
...config
|
|
@@ -369,9 +369,7 @@ export class BrutalistServer {
|
|
|
369
369
|
// Add CLI context information
|
|
370
370
|
const cliContext = await this.cliOrchestrator.detectCLIContext();
|
|
371
371
|
roster += "## Current CLI Context\n";
|
|
372
|
-
roster += `**Available CLIs:** ${cliContext.availableCLIs.join(', ') || 'None detected'}\n`;
|
|
373
|
-
roster += `**Current CLI:** ${cliContext.currentCLI || 'Unknown'}\n`;
|
|
374
|
-
roster += `**Smart Routing:** ${cliContext.currentCLI ? `Excludes ${cliContext.currentCLI} for analysis` : 'Uses all available CLIs'}\n\n`;
|
|
372
|
+
roster += `**Available CLIs:** ${cliContext.availableCLIs.join(', ') || 'None detected'}\n\n`;
|
|
375
373
|
roster += "## Pagination Support (NEW in v0.5.2)\n";
|
|
376
374
|
roster += "**All tools now support intelligent pagination:**\n";
|
|
377
375
|
roster += "- Analysis results are cached with 2-hour TTL\n";
|
|
@@ -838,25 +836,41 @@ Remember: You are ${currentAgent.toUpperCase()}, passionate advocate for ${assig
|
|
|
838
836
|
const estimatedTokens = estimateTokenCount(primaryContent);
|
|
839
837
|
const maxTokensWithoutPagination = 25000;
|
|
840
838
|
const needsAutoPagination = estimatedTokens > maxTokensWithoutPagination;
|
|
841
|
-
//
|
|
842
|
-
//
|
|
843
|
-
|
|
844
|
-
if ((explicitPaginationRequested || needsAutoPagination) && paginationParams && primaryContent) {
|
|
839
|
+
// CRITICAL: Always apply pagination if content is too large, even if not explicitly requested
|
|
840
|
+
// This prevents MCP protocol errors when response exceeds client token limits
|
|
841
|
+
if (needsAutoPagination || explicitPaginationRequested) {
|
|
845
842
|
if (needsAutoPagination && !explicitPaginationRequested) {
|
|
846
|
-
logger.info(`🔧
|
|
843
|
+
logger.info(`🔧 AUTO-PAGINATING: ${estimatedTokens} tokens exceeds ${maxTokensWithoutPagination} limit - forcing first page`);
|
|
844
|
+
// Force pagination params to show first chunk (use token-based limit)
|
|
845
|
+
const forcedParams = {
|
|
846
|
+
offset: 0,
|
|
847
|
+
limit: PAGINATION_DEFAULTS.DEFAULT_LIMIT_TOKENS // Use token-based limit
|
|
848
|
+
};
|
|
849
|
+
return this.formatPaginatedResponse(primaryContent, forcedParams, result, verbose, analysisId);
|
|
847
850
|
}
|
|
848
|
-
else {
|
|
851
|
+
else if (paginationParams) {
|
|
849
852
|
logger.info(`🔧 DEBUG: Applying pagination (explicitly requested)`);
|
|
853
|
+
return this.formatPaginatedResponse(primaryContent, paginationParams, result, verbose, analysisId);
|
|
850
854
|
}
|
|
851
|
-
return this.formatPaginatedResponse(primaryContent, paginationParams, result, verbose, analysisId);
|
|
852
855
|
}
|
|
853
856
|
// Non-paginated response (only for content that fits within token limit)
|
|
854
857
|
if (primaryContent) {
|
|
855
858
|
logger.info(`🔧 DEBUG: Returning full response (${estimatedTokens} tokens < ${maxTokensWithoutPagination} limit)`);
|
|
859
|
+
// Include analysis_id even for non-paginated responses (for future pagination/caching)
|
|
860
|
+
let responseText = '';
|
|
861
|
+
if (analysisId) {
|
|
862
|
+
responseText += `# Brutalist Analysis Results\n\n`;
|
|
863
|
+
responseText += `**🔑 Analysis ID:** ${analysisId}\n\n`;
|
|
864
|
+
responseText += `---\n\n`;
|
|
865
|
+
responseText += primaryContent;
|
|
866
|
+
}
|
|
867
|
+
else {
|
|
868
|
+
responseText = primaryContent;
|
|
869
|
+
}
|
|
856
870
|
return {
|
|
857
871
|
content: [{
|
|
858
872
|
type: "text",
|
|
859
|
-
text:
|
|
873
|
+
text: responseText
|
|
860
874
|
}]
|
|
861
875
|
};
|
|
862
876
|
}
|
|
@@ -885,10 +899,12 @@ Remember: You are ${currentAgent.toUpperCase()}, passionate advocate for ${assig
|
|
|
885
899
|
formatPaginatedResponse(content, paginationParams, result, verbose, analysisId) {
|
|
886
900
|
// Using imported pagination utilities
|
|
887
901
|
const offset = paginationParams.offset || 0;
|
|
888
|
-
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
|
|
902
|
+
// Convert character-based limit to token-based limit (1 token ≈ 4 chars)
|
|
903
|
+
const limitChars = paginationParams.limit || PAGINATION_DEFAULTS.DEFAULT_LIMIT;
|
|
904
|
+
const limitTokens = Math.ceil(limitChars / 4); // Convert chars to tokens
|
|
905
|
+
logger.info(`🔧 DEBUG: Paginating content - offset: ${offset}, limitChars: ${limitChars}, limitTokens: ${limitTokens}, total: ${content.length} chars`);
|
|
906
|
+
// Use ResponseChunker for intelligent boundary detection (TOKEN-BASED)
|
|
907
|
+
const chunker = new ResponseChunker(limitTokens, PAGINATION_DEFAULTS.CHUNK_OVERLAP_TOKENS);
|
|
892
908
|
const chunks = chunker.chunkText(content);
|
|
893
909
|
// Find the appropriate chunk based on offset
|
|
894
910
|
let targetChunk = chunks[0]; // Default to first chunk
|
|
@@ -907,7 +923,7 @@ Remember: You are ${currentAgent.toUpperCase()}, passionate advocate for ${assig
|
|
|
907
923
|
const actualOffset = targetChunk.startOffset;
|
|
908
924
|
const endOffset = targetChunk.endOffset;
|
|
909
925
|
// Create pagination metadata using actual chunk boundaries
|
|
910
|
-
const pagination = createPaginationMetadata(content.length, paginationParams,
|
|
926
|
+
const pagination = createPaginationMetadata(content.length, paginationParams, limitTokens, chunks, targetChunkIndex);
|
|
911
927
|
const statusLine = formatPaginationStatus(pagination);
|
|
912
928
|
// Estimate token usage for user awareness
|
|
913
929
|
const chunkTokens = estimateTokenCount(chunkContent);
|
|
@@ -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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"}
|
package/dist/cli-agents.d.ts
CHANGED
|
@@ -43,7 +43,6 @@ export interface StreamingEvent {
|
|
|
43
43
|
metadata?: Record<string, any>;
|
|
44
44
|
}
|
|
45
45
|
export interface CLIContext {
|
|
46
|
-
currentCLI?: 'claude' | 'codex' | 'gemini';
|
|
47
46
|
availableCLIs: ('claude' | 'codex' | 'gemini')[];
|
|
48
47
|
}
|
|
49
48
|
export declare class CLIAgentOrchestrator {
|
|
@@ -64,7 +63,6 @@ export declare class CLIAgentOrchestrator {
|
|
|
64
63
|
private extractCodexAgentMessage;
|
|
65
64
|
private emitThrottledStreamingEvent;
|
|
66
65
|
detectCLIContext(): Promise<CLIContext>;
|
|
67
|
-
private detectCurrentCLI;
|
|
68
66
|
selectSingleCLI(preferredCLI?: 'claude' | 'codex' | 'gemini', analysisType?: BrutalistPromptType): 'claude' | 'codex' | 'gemini';
|
|
69
67
|
private _executeCLI;
|
|
70
68
|
executeClaudeCode(userPrompt: string, systemPromptSpec: string, options?: CLIAgentOptions): Promise<CLIAgentResponse>;
|
package/dist/cli-agents.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-agents.d.ts","sourceRoot":"","sources":["../src/cli-agents.ts"],"names":[],"mappings":"AAKA,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;AAiBnB,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;CAiBnB,CAAC;
|
|
1
|
+
{"version":3,"file":"cli-agents.d.ts","sourceRoot":"","sources":["../src/cli-agents.ts"],"names":[],"mappings":"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"}
|
package/dist/cli-agents.js
CHANGED
|
@@ -33,17 +33,13 @@ export const AVAILABLE_MODELS = {
|
|
|
33
33
|
}
|
|
34
34
|
};
|
|
35
35
|
// Security utilities for CLI execution
|
|
36
|
-
const MAX_ARG_LENGTH = 4096; // Maximum argument length
|
|
37
36
|
const MAX_PATH_DEPTH = 10; // Maximum directory depth for paths
|
|
38
37
|
// Validate and sanitize CLI arguments
|
|
39
38
|
// Note: We use spawn() with shell:false and array args, so we don't need to block
|
|
40
|
-
// punctuation characters. Only block truly dangerous patterns (null bytes
|
|
39
|
+
// punctuation characters. Only block truly dangerous patterns (null bytes).
|
|
40
|
+
// We use stdin for large content, so no arg length limit needed (OS limit is ~1MB anyway).
|
|
41
41
|
function validateArguments(args) {
|
|
42
42
|
for (const arg of args) {
|
|
43
|
-
// Check argument length (DoS prevention)
|
|
44
|
-
if (arg.length > MAX_ARG_LENGTH) {
|
|
45
|
-
throw new Error(`Argument too long: ${arg.length} > ${MAX_ARG_LENGTH} characters`);
|
|
46
|
-
}
|
|
47
43
|
// Check for null bytes (can terminate strings prematurely)
|
|
48
44
|
if (arg.includes('\0')) {
|
|
49
45
|
throw new Error('Argument contains null byte');
|
|
@@ -169,7 +165,7 @@ async function spawnAsync(command, args, options = {}) {
|
|
|
169
165
|
cwd: cwd,
|
|
170
166
|
stdio: ['pipe', 'pipe', 'pipe'],
|
|
171
167
|
shell: false, // CRITICAL: disable shell to prevent injection
|
|
172
|
-
detached:
|
|
168
|
+
detached: false, // Run all CLIs non-detached for consistent behavior
|
|
173
169
|
env: secureEnv,
|
|
174
170
|
// Additional security options
|
|
175
171
|
uid: process.getuid ? process.getuid() : undefined, // Maintain current user ID
|
|
@@ -233,14 +229,8 @@ async function spawnAsync(command, args, options = {}) {
|
|
|
233
229
|
killTimer = setTimeout(() => {
|
|
234
230
|
if (!killed) {
|
|
235
231
|
try {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
child.kill('SIGKILL');
|
|
239
|
-
}
|
|
240
|
-
else {
|
|
241
|
-
// Other CLIs on Unix-like systems: kill process group
|
|
242
|
-
process.kill(-child.pid, 'SIGKILL');
|
|
243
|
-
}
|
|
232
|
+
// All CLIs run non-detached now, so just kill the process directly
|
|
233
|
+
child.kill('SIGKILL');
|
|
244
234
|
}
|
|
245
235
|
catch (e) {
|
|
246
236
|
// Process may have already exited
|
|
@@ -317,10 +307,16 @@ async function spawnAsync(command, args, options = {}) {
|
|
|
317
307
|
// Send input if provided, then close stdin
|
|
318
308
|
if (options.input) {
|
|
319
309
|
child.stdin?.write(options.input);
|
|
310
|
+
child.stdin?.end();
|
|
311
|
+
}
|
|
312
|
+
else {
|
|
313
|
+
// CRITICAL: For Claude CLI specifically, close stdin immediately even without input
|
|
314
|
+
// Claude --print waits for stdin EOF before processing the prompt argument
|
|
315
|
+
if (command === 'claude') {
|
|
316
|
+
child.stdin?.end();
|
|
317
|
+
}
|
|
318
|
+
// Other CLIs (Codex, Gemini) work fine with stdin left open
|
|
320
319
|
}
|
|
321
|
-
// CRITICAL: Always close stdin, even if no input provided
|
|
322
|
-
// CLI tools like Claude wait for stdin to close before processing
|
|
323
|
-
child.stdin?.end();
|
|
324
320
|
});
|
|
325
321
|
}
|
|
326
322
|
export class CLIAgentOrchestrator {
|
|
@@ -510,7 +506,6 @@ export class CLIAgentOrchestrator {
|
|
|
510
506
|
return this.cliContext;
|
|
511
507
|
}
|
|
512
508
|
const availableCLIs = [];
|
|
513
|
-
let currentCLI;
|
|
514
509
|
// Check for available CLIs
|
|
515
510
|
const cliChecks = [
|
|
516
511
|
{ name: 'claude', command: 'claude --version' },
|
|
@@ -532,46 +527,18 @@ export class CLIAgentOrchestrator {
|
|
|
532
527
|
.filter(result => result.status === 'fulfilled' && result.value !== null)
|
|
533
528
|
.map(result => result.value);
|
|
534
529
|
availableCLIs.push(...detectedCLIs);
|
|
535
|
-
|
|
536
|
-
currentCLI = this.detectCurrentCLI();
|
|
537
|
-
this.cliContext = { currentCLI, availableCLIs };
|
|
530
|
+
this.cliContext = { availableCLIs };
|
|
538
531
|
this.cliContextCached = true;
|
|
539
532
|
this.cliContextCacheTime = Date.now();
|
|
540
533
|
return this.cliContext;
|
|
541
534
|
}
|
|
542
|
-
detectCurrentCLI() {
|
|
543
|
-
// Check environment variables that might indicate current CLI
|
|
544
|
-
if (process.env.CLAUDE_CODE_SESSION || process.env.CLAUDE_CONFIG_DIR || process.env.CLAUDE_CODE_ENTRYPOINT || process.env.CLAUDECODE) {
|
|
545
|
-
return 'claude';
|
|
546
|
-
}
|
|
547
|
-
if (process.env.CODEX_SESSION || process.env.OPENAI_CODEX_SESSION) {
|
|
548
|
-
return 'codex';
|
|
549
|
-
}
|
|
550
|
-
if (process.env.GEMINI_SESSION || process.env.GEMINI_API_KEY) {
|
|
551
|
-
return 'gemini';
|
|
552
|
-
}
|
|
553
|
-
// Check process parent/ancestry for CLI indicators
|
|
554
|
-
try {
|
|
555
|
-
const processInfo = process.env._;
|
|
556
|
-
if (processInfo?.includes('claude'))
|
|
557
|
-
return 'claude';
|
|
558
|
-
if (processInfo?.includes('codex'))
|
|
559
|
-
return 'codex';
|
|
560
|
-
if (processInfo?.includes('gemini'))
|
|
561
|
-
return 'gemini';
|
|
562
|
-
}
|
|
563
|
-
catch (error) {
|
|
564
|
-
logger.debug('Could not detect current CLI from process info');
|
|
565
|
-
}
|
|
566
|
-
return undefined;
|
|
567
|
-
}
|
|
568
535
|
selectSingleCLI(preferredCLI, analysisType) {
|
|
569
|
-
// 1. Honor explicit preference if available
|
|
536
|
+
// 1. Honor explicit preference if available
|
|
570
537
|
if (preferredCLI && this.cliContext.availableCLIs.includes(preferredCLI)) {
|
|
571
538
|
logger.info(`✅ Using preferred CLI: ${preferredCLI}`);
|
|
572
539
|
return preferredCLI;
|
|
573
540
|
}
|
|
574
|
-
// 2. Smart selection based on analysis type
|
|
541
|
+
// 2. Smart selection based on analysis type
|
|
575
542
|
const selectionRules = {
|
|
576
543
|
'code': ['claude', 'codex', 'gemini'],
|
|
577
544
|
'architecture': ['gemini', 'claude', 'codex'],
|
|
@@ -585,25 +552,19 @@ export class CLIAgentOrchestrator {
|
|
|
585
552
|
'default': ['claude', 'gemini', 'codex']
|
|
586
553
|
};
|
|
587
554
|
const priority = selectionRules[analysisType || 'default'] || selectionRules.default;
|
|
588
|
-
// 3.
|
|
589
|
-
const currentCLI = this.cliContext.currentCLI;
|
|
590
|
-
const candidates = this.cliContext.availableCLIs.filter(cli => cli !== currentCLI);
|
|
591
|
-
// If no candidates after filtering, fall back to available CLIs (allow recursion if necessary)
|
|
592
|
-
const finalCandidates = candidates.length > 0 ? candidates : this.cliContext.availableCLIs;
|
|
593
|
-
if (finalCandidates.length === 0) {
|
|
594
|
-
throw new Error('No CLI agents available');
|
|
595
|
-
}
|
|
596
|
-
// 4. Select by priority
|
|
555
|
+
// 3. Select by priority from available CLIs
|
|
597
556
|
for (const cli of priority) {
|
|
598
|
-
if (
|
|
599
|
-
|
|
600
|
-
logger.info(`🎯 Auto-selected ${cli} for ${analysisType || 'general'} analysis${recursionWarning}`);
|
|
557
|
+
if (this.cliContext.availableCLIs.includes(cli)) {
|
|
558
|
+
logger.info(`🎯 Auto-selected ${cli} for ${analysisType || 'general'} analysis`);
|
|
601
559
|
return cli;
|
|
602
560
|
}
|
|
603
561
|
}
|
|
604
562
|
// Fallback to first available
|
|
605
|
-
|
|
606
|
-
|
|
563
|
+
if (this.cliContext.availableCLIs.length === 0) {
|
|
564
|
+
throw new Error('No CLI agents available');
|
|
565
|
+
}
|
|
566
|
+
logger.warn(`⚠️ Using fallback CLI: ${this.cliContext.availableCLIs[0]}`);
|
|
567
|
+
return this.cliContext.availableCLIs[0];
|
|
607
568
|
}
|
|
608
569
|
async _executeCLI(cliName, userPrompt, systemPromptSpec, options = {}, commandBuilder) {
|
|
609
570
|
const startTime = Date.now();
|
|
@@ -735,8 +696,7 @@ export class CLIAgentOrchestrator {
|
|
|
735
696
|
async executeClaudeCode(userPrompt, systemPromptSpec, options = {}) {
|
|
736
697
|
return this._executeCLI('claude', userPrompt, systemPromptSpec, options, (userPrompt, systemPromptSpec, options) => {
|
|
737
698
|
const combinedPrompt = `${systemPromptSpec}\n\n${userPrompt}`;
|
|
738
|
-
const args = [];
|
|
739
|
-
args.push('--print');
|
|
699
|
+
const args = ['--print'];
|
|
740
700
|
// Enable streaming for real-time progress if progress notifications are enabled
|
|
741
701
|
if (options.progressToken) {
|
|
742
702
|
args.push('--output-format', 'stream-json', '--verbose');
|
|
@@ -746,17 +706,15 @@ export class CLIAgentOrchestrator {
|
|
|
746
706
|
if (model) {
|
|
747
707
|
args.push('--model', model);
|
|
748
708
|
}
|
|
749
|
-
//
|
|
750
|
-
|
|
751
|
-
//
|
|
752
|
-
|
|
753
|
-
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
BRUTALIST_SUBPROCESS: '1' // Mark this as a brutalist-spawned subprocess
|
|
709
|
+
// Use stdin to avoid MAX_ARG_LENGTH limit (4096 chars)
|
|
710
|
+
// Claude --print can read from stdin when no positional argument is provided
|
|
711
|
+
// Inherit full environment - same as direct invocation
|
|
712
|
+
return {
|
|
713
|
+
command: 'claude',
|
|
714
|
+
args,
|
|
715
|
+
input: combinedPrompt,
|
|
716
|
+
env: process.env
|
|
758
717
|
};
|
|
759
|
-
return { command: 'claude', args, env };
|
|
760
718
|
});
|
|
761
719
|
}
|
|
762
720
|
async executeCodex(userPrompt, systemPromptSpec, options = {}) {
|
|
@@ -767,10 +725,12 @@ export class CLIAgentOrchestrator {
|
|
|
767
725
|
// Use provided model or default to gpt-5-codex
|
|
768
726
|
const model = options.models?.codex || AVAILABLE_MODELS.codex.default;
|
|
769
727
|
args.push('--model', model);
|
|
770
|
-
//
|
|
771
|
-
args.push('--
|
|
772
|
-
//
|
|
773
|
-
|
|
728
|
+
// SECURITY: Use read-only sandbox to prevent filesystem modifications
|
|
729
|
+
args.push('--sandbox', 'read-only');
|
|
730
|
+
// OPTIONAL: Use --json flag to get structured output (can be disabled for compatibility)
|
|
731
|
+
if (process.env.CODEX_USE_JSON !== 'false') {
|
|
732
|
+
args.push('--json');
|
|
733
|
+
}
|
|
774
734
|
// DEFENSIVE: Disable MCP if Codex supports it (currently no known MCP support)
|
|
775
735
|
// This prevents potential stdio deadlock if Codex adds MCP in the future
|
|
776
736
|
// Note: Codex CLI doesn't currently have documented MCP config flags
|
|
@@ -796,11 +756,14 @@ export class CLIAgentOrchestrator {
|
|
|
796
756
|
// Use provided model or default to gemini-2.5-pro
|
|
797
757
|
const modelName = options.models?.gemini || AVAILABLE_MODELS.gemini.default;
|
|
798
758
|
args.push('--model', modelName);
|
|
759
|
+
// SECURITY: Enable sandbox to restrict filesystem access
|
|
760
|
+
args.push('--sandbox');
|
|
799
761
|
// DEFENSIVE: Disable MCP if Gemini supports it (currently no known MCP support)
|
|
800
762
|
// This prevents potential stdio deadlock if Gemini adds MCP in the future
|
|
801
763
|
// Note: Gemini CLI doesn't currently have documented MCP config flags
|
|
802
764
|
const combinedPrompt = `${systemPromptSpec}\n\n${userPrompt}`;
|
|
803
|
-
|
|
765
|
+
// Use stdin to avoid MAX_ARG_LENGTH limit (4096 chars)
|
|
766
|
+
// Gemini CLI can read from stdin instead of positional argument
|
|
804
767
|
// Create clean environment without MCP-related variables
|
|
805
768
|
const cleanEnv = { ...process.env };
|
|
806
769
|
delete cleanEnv.GEMINI_MCP_CONFIG;
|
|
@@ -808,6 +771,7 @@ export class CLIAgentOrchestrator {
|
|
|
808
771
|
return {
|
|
809
772
|
command: 'gemini',
|
|
810
773
|
args: args,
|
|
774
|
+
input: combinedPrompt, // Pass prompt via stdin instead of args
|
|
811
775
|
env: {
|
|
812
776
|
...cleanEnv,
|
|
813
777
|
TERM: 'dumb',
|
|
@@ -920,7 +884,8 @@ export class CLIAgentOrchestrator {
|
|
|
920
884
|
const userPrompt = this.constructUserPrompt(analysisType, primaryContent, context);
|
|
921
885
|
// If preferred CLI is specified, use single CLI mode
|
|
922
886
|
if (options.preferredCLI) {
|
|
923
|
-
const selectedCLI = this.selectSingleCLI(options.preferredCLI, options.analysisType
|
|
887
|
+
const selectedCLI = this.selectSingleCLI(options.preferredCLI, analysisType // Use the direct parameter, not options.analysisType
|
|
888
|
+
);
|
|
924
889
|
logger.info(`✅ Using preferred CLI: ${selectedCLI}`);
|
|
925
890
|
const response = await this.executeSingleCLI(selectedCLI, userPrompt, systemPromptSpec, options);
|
|
926
891
|
return [{
|
package/dist/cli-agents.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli-agents.js","sourceRoot":"","sources":["../src/cli-agents.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cli-agents.js","sourceRoot":"","sources":["../src/cli-agents.ts"],"names":[],"mappings":"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"}
|
package/dist/tool-definitions.js
CHANGED
|
@@ -7,7 +7,7 @@ export const TOOL_CONFIGS = [
|
|
|
7
7
|
name: "roast_codebase",
|
|
8
8
|
description: "Deploy brutal AI critics to systematically destroy your entire codebase. These AI agents will navigate your directories, read your actual files, and find every architectural disaster, security vulnerability, and maintainability nightmare lurking in your project. They treat this like code that will kill people if it fails.",
|
|
9
9
|
analysisType: "codebase",
|
|
10
|
-
systemPrompt: "You are a battle-scarred principal engineer who has debugged production disasters for 15 years. Find security holes, performance bottlenecks, and maintainability nightmares
|
|
10
|
+
systemPrompt: "You are a battle-scarred principal engineer who has debugged production disasters for 15 years. IMPORTANT: You have READ-ONLY filesystem access. You can read and analyze files but MUST NOT write, modify, delete, or execute any code. Find security holes, performance bottlenecks, and maintainability nightmares by reading this codebase. Be brutal about what's broken but specific about what would actually work. Treat this like code that will kill people if it fails.",
|
|
11
11
|
schemaExtensions: {
|
|
12
12
|
targetPath: z.string().describe("Directory path to your codebase (NOT a single file - analyze the entire project)")
|
|
13
13
|
},
|
|
@@ -18,7 +18,7 @@ export const TOOL_CONFIGS = [
|
|
|
18
18
|
name: "roast_file_structure",
|
|
19
19
|
description: "Deploy brutal AI critics to systematically destroy your file organization. These agents will navigate your actual directory structure and expose every organizational disaster, naming convention failure, and structural nightmare that makes your codebase unmaintainable.",
|
|
20
20
|
analysisType: "fileStructure",
|
|
21
|
-
systemPrompt: "You are a brutal file organization critic. Every poorly named file, every misplaced module, every violation of separation of concerns is a personal insult. Find the chaos in this file structure and explain why it will cause maintenance nightmares.",
|
|
21
|
+
systemPrompt: "You are a brutal file organization critic. IMPORTANT: You have READ-ONLY access to the filesystem. You can read directory structures and file names but MUST NOT modify, move, rename, or delete anything. Every poorly named file, every misplaced module, every violation of separation of concerns is a personal insult. Find the chaos in this file structure and explain why it will cause maintenance nightmares.",
|
|
22
22
|
schemaExtensions: {
|
|
23
23
|
targetPath: z.string().describe("Directory path to analyze"),
|
|
24
24
|
depth: z.number().optional().describe("Maximum directory depth to analyze (default: 3)")
|
|
@@ -31,7 +31,7 @@ export const TOOL_CONFIGS = [
|
|
|
31
31
|
name: "roast_dependencies",
|
|
32
32
|
description: "Deploy brutal AI critics to systematically destroy your dependency management. These agents will read your actual package files, analyze version conflicts, and expose every security vulnerability and compatibility nightmare in your dependency tree.",
|
|
33
33
|
analysisType: "dependencies",
|
|
34
|
-
systemPrompt: "You are a dependency management nightmare detector. Find every security vulnerability, version conflict, unmaintained package, and bloated dependency. Explain why this dependency tree will collapse in production.",
|
|
34
|
+
systemPrompt: "You are a dependency management nightmare detector. IMPORTANT: You have READ-ONLY filesystem access. You can read package files and analyze dependencies but MUST NOT modify, install, or update any packages. Find every security vulnerability, version conflict, unmaintained package, and bloated dependency. Explain why this dependency tree will collapse in production.",
|
|
35
35
|
schemaExtensions: {
|
|
36
36
|
targetPath: z.string().describe("Path to package file (package.json, requirements.txt, Cargo.toml, etc.)"),
|
|
37
37
|
includeDevDeps: z.boolean().optional().describe("Include development dependencies in analysis (default: true)")
|
|
@@ -44,7 +44,7 @@ export const TOOL_CONFIGS = [
|
|
|
44
44
|
name: "roast_git_history",
|
|
45
45
|
description: "Deploy brutal AI critics to systematically destroy your git history and development practices. These agents will analyze your actual commit history, branching strategy, and code evolution to expose every workflow disaster and collaboration nightmare.",
|
|
46
46
|
analysisType: "gitHistory",
|
|
47
|
-
systemPrompt: "You are a git history forensics expert who has seen every version control disaster. Find the terrible commit messages, the force pushes, the merge conflicts, the development workflow failures. Explain why this git history shows a team in chaos.",
|
|
47
|
+
systemPrompt: "You are a git history forensics expert who has seen every version control disaster. IMPORTANT: You have READ-ONLY access to the git repository. You can read commit history, branches, and logs but MUST NOT commit, push, merge, or modify the repository. Find the terrible commit messages, the force pushes, the merge conflicts, the development workflow failures. Explain why this git history shows a team in chaos.",
|
|
48
48
|
schemaExtensions: {
|
|
49
49
|
targetPath: z.string().describe("Git repository path to analyze"),
|
|
50
50
|
commitRange: z.string().optional().describe("Commit range to analyze (e.g., 'HEAD~10..HEAD', default: last 20 commits)")
|
|
@@ -57,7 +57,7 @@ export const TOOL_CONFIGS = [
|
|
|
57
57
|
name: "roast_test_coverage",
|
|
58
58
|
description: "Deploy brutal AI critics to systematically destroy your testing strategy. These agents will analyze your actual test files, run coverage reports, and expose every testing gap and quality assurance nightmare that will let bugs slip into production.",
|
|
59
59
|
analysisType: "testCoverage",
|
|
60
|
-
systemPrompt: "You are a QA engineer who has seen production disasters caused by inadequate testing. Find the untested code paths, the missing edge cases, the brittle tests, the false confidence. Explain why this testing strategy guarantees production failures.",
|
|
60
|
+
systemPrompt: "You are a QA engineer who has seen production disasters caused by inadequate testing. IMPORTANT: You have READ-ONLY filesystem access. You can read test files and analyze coverage but MUST NOT run tests, modify test files, or execute any code. Find the untested code paths, the missing edge cases, the brittle tests, the false confidence. Explain why this testing strategy guarantees production failures.",
|
|
61
61
|
schemaExtensions: {
|
|
62
62
|
targetPath: z.string().describe("Path to test directory or test configuration file"),
|
|
63
63
|
runCoverage: z.boolean().optional().describe("Attempt to run coverage analysis (default: true)")
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tool-definitions.js","sourceRoot":"","sources":["../src/tool-definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,qUAAqU;QAClV,YAAY,EAAE,UAAU;QACxB,YAAY,EAAE,
|
|
1
|
+
{"version":3,"file":"tool-definitions.js","sourceRoot":"","sources":["../src/tool-definitions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAiB;IACxC;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,qUAAqU;QAClV,YAAY,EAAE,UAAU;QACxB,YAAY,EAAE,odAAod;QACle,gBAAgB,EAAE;YAChB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kFAAkF,CAAC;SACpH;QACD,cAAc,EAAE,CAAC,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,cAAc,CAAC;QACnE,eAAe,EAAE,YAAY;KAC9B;IAED;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,8QAA8Q;QAC3R,YAAY,EAAE,eAAe;QAC7B,YAAY,EAAE,yZAAyZ;QACva,gBAAgB,EAAE;YAChB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YAC5D,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iDAAiD,CAAC;SACzF;QACD,cAAc,EAAE,CAAC,YAAY,EAAE,OAAO,EAAE,SAAS,CAAC;QAClD,eAAe,EAAE,YAAY;QAC7B,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,sCAAsC,IAAI,CAAC,KAAK,IAAI,CAAC,MAAM,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE;KAC/G;IAED;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,0PAA0P;QACvQ,YAAY,EAAE,cAAc;QAC5B,YAAY,EAAE,iXAAiX;QAC/X,gBAAgB,EAAE;YAChB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yEAAyE,CAAC;YAC1G,cAAc,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;SAChH;QACD,cAAc,EAAE,CAAC,YAAY,EAAE,gBAAgB,EAAE,SAAS,CAAC;QAC3D,eAAe,EAAE,YAAY;QAC7B,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,sBAAsB,IAAI,CAAC,cAAc,KAAK,KAAK,CAAC,CAAC,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE;KACxI;IAED;QACE,IAAI,EAAE,mBAAmB;QACzB,WAAW,EAAE,4PAA4P;QACzQ,YAAY,EAAE,YAAY;QAC1B,YAAY,EAAE,8ZAA8Z;QAC5a,gBAAgB,EAAE;YAChB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC;YACjE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2EAA2E,CAAC;SACzH;QACD,cAAc,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,SAAS,CAAC;QACxD,eAAe,EAAE,YAAY;QAC7B,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,uBAAuB,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,oBAAoB,KAAK,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE;KACpJ;IAED;QACE,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,yPAAyP;QACtQ,YAAY,EAAE,cAAc;QAC5B,YAAY,EAAE,sZAAsZ;QACpa,gBAAgB,EAAE;YAChB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;YACpF,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC;SACjG;QACD,cAAc,EAAE,CAAC,YAAY,EAAE,aAAa,EAAE,SAAS,CAAC;QACxD,eAAe,EAAE,YAAY;QAC7B,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE,CAAC,yBAAyB,IAAI,CAAC,WAAW,KAAK,KAAK,CAAC,CAAC,CAAC,yBAAyB,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,OAAO,IAAI,EAAE,EAAE;KAC7I;IAED;QACE,IAAI,EAAE,YAAY;QAClB,WAAW,EAAE,sUAAsU;QACnV,YAAY,EAAE,MAAM;QACpB,YAAY,EAAE,mTAAmT;QACjU,gBAAgB,EAAE;YAChB,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gFAAgF,CAAC;YAC3G,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;YACzG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kDAAkD,CAAC;YAC7F,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;SAC1E;QACD,cAAc,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC;QAC1E,eAAe,EAAE,MAAM;QACvB,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE;YAC5B,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,SAAS;gBAAE,GAAG,IAAI,eAAe,IAAI,CAAC,SAAS,GAAG,CAAC;YAC5D,IAAI,IAAI,CAAC,QAAQ;gBAAE,GAAG,IAAI,cAAc,IAAI,CAAC,QAAQ,GAAG,CAAC;YACzD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;KACF;IAED;QACE,IAAI,EAAE,oBAAoB;QAC1B,WAAW,EAAE,+SAA+S;QAC5T,YAAY,EAAE,cAAc;QAC5B,YAAY,EAAE,qPAAqP;QACnQ,gBAAgB,EAAE;YAChB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;YAC1F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;YACzG,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;YACpF,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;YACzF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qCAAqC,CAAC;SAClF;QACD,cAAc,EAAE,CAAC,cAAc,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,CAAC;QAC/F,eAAe,EAAE,cAAc;QAC/B,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE;YAC5B,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,KAAK;gBAAE,GAAG,IAAI,WAAW,IAAI,CAAC,KAAK,GAAG,CAAC;YAChD,IAAI,IAAI,CAAC,WAAW;gBAAE,GAAG,IAAI,iBAAiB,IAAI,CAAC,WAAW,GAAG,CAAC;YAClE,IAAI,IAAI,CAAC,UAAU;gBAAE,GAAG,IAAI,gBAAgB,IAAI,CAAC,UAAU,GAAG,CAAC;YAC/D,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;KACF;IAED;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,wSAAwS;QACrT,YAAY,EAAE,UAAU;QACxB,YAAY,EAAE,2RAA2R;QACzS,gBAAgB,EAAE;YAChB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mDAAmD,CAAC;YAClF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;YACzG,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;YACnF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YACtE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+CAA+C,CAAC;SACtF;QACD,cAAc,EAAE,CAAC,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;QAChF,eAAe,EAAE,UAAU;QAC3B,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE;YAC5B,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,KAAK;gBAAE,GAAG,IAAI,WAAW,IAAI,CAAC,KAAK,GAAG,CAAC;YAChD,IAAI,IAAI,CAAC,MAAM;gBAAE,GAAG,IAAI,YAAY,IAAI,CAAC,MAAM,GAAG,CAAC;YACnD,IAAI,IAAI,CAAC,IAAI;gBAAE,GAAG,IAAI,UAAU,IAAI,CAAC,IAAI,GAAG,CAAC;YAC7C,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;KACF;IAED;QACE,IAAI,EAAE,gBAAgB;QACtB,WAAW,EAAE,kSAAkS;QAC/S,YAAY,EAAE,UAAU;QACxB,YAAY,EAAE,0PAA0P;QACxQ,gBAAgB,EAAE;YAChB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC;YACjF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;YACzG,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YAC5E,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;YAC1F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;SAC1F;QACD,cAAc,EAAE,CAAC,QAAQ,EAAE,YAAY,EAAE,QAAQ,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,CAAC;QAC1F,eAAe,EAAE,QAAQ;QACzB,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE;YAC5B,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,MAAM;gBAAE,GAAG,IAAI,YAAY,IAAI,CAAC,MAAM,GAAG,CAAC;YACnD,IAAI,IAAI,CAAC,WAAW;gBAAE,GAAG,IAAI,aAAa,IAAI,CAAC,WAAW,GAAG,CAAC;YAC9D,IAAI,IAAI,CAAC,UAAU;gBAAE,GAAG,IAAI,gBAAgB,IAAI,CAAC,UAAU,GAAG,CAAC;YAC/D,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;KACF;IAED;QACE,IAAI,EAAE,eAAe;QACrB,WAAW,EAAE,gRAAgR;QAC7R,YAAY,EAAE,SAAS;QACvB,YAAY,EAAE,iPAAiP;QAC/P,gBAAgB,EAAE;YAChB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8DAA8D,CAAC;YAC5F,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;YACzG,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,+BAA+B,CAAC;YACtE,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uCAAuC,CAAC;YACpF,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC;SACnE;QACD,cAAc,EAAE,CAAC,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,CAAC;QACvF,eAAe,EAAE,SAAS;QAC1B,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE;YAC5B,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,KAAK;gBAAE,GAAG,IAAI,WAAW,IAAI,CAAC,KAAK,GAAG,CAAC;YAChD,IAAI,IAAI,CAAC,WAAW;gBAAE,GAAG,IAAI,iBAAiB,IAAI,CAAC,WAAW,GAAG,CAAC;YAClE,IAAI,IAAI,CAAC,OAAO;gBAAE,GAAG,IAAI,aAAa,IAAI,CAAC,OAAO,GAAG,CAAC;YACtD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;KACF;IAED;QACE,IAAI,EAAE,sBAAsB;QAC5B,WAAW,EAAE,mRAAmR;QAChS,YAAY,EAAE,gBAAgB;QAC9B,YAAY,EAAE,uOAAuO;QACrP,gBAAgB,EAAE;YAChB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,+DAA+D,CAAC;YACpG,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wEAAwE,CAAC;YACzG,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;YACzE,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,oCAAoC,CAAC;YACzE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;SACpF;QACD,cAAc,EAAE,CAAC,gBAAgB,EAAE,YAAY,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,CAAC;QACrF,eAAe,EAAE,gBAAgB;QACjC,cAAc,EAAE,CAAC,IAAS,EAAE,EAAE;YAC5B,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,KAAK;gBAAE,GAAG,IAAI,WAAW,IAAI,CAAC,KAAK,GAAG,CAAC;YAChD,IAAI,IAAI,CAAC,GAAG;gBAAE,GAAG,IAAI,SAAS,IAAI,CAAC,GAAG,GAAG,CAAC;YAC1C,IAAI,IAAI,CAAC,MAAM;gBAAE,GAAG,IAAI,YAAY,IAAI,CAAC,MAAM,GAAG,CAAC;YACnD,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;QACpB,CAAC;KACF;CACF,CAAC"}
|
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import { PaginationParams, PaginationMetadata, ResponseChunk, PaginatedResponse } from '../types/brutalist.js';
|
|
2
2
|
export declare const PAGINATION_DEFAULTS: {
|
|
3
|
+
readonly DEFAULT_LIMIT_TOKENS: 22000;
|
|
4
|
+
readonly MAX_LIMIT_TOKENS: 90000;
|
|
5
|
+
readonly MIN_LIMIT_TOKENS: 1000;
|
|
6
|
+
readonly CHUNK_OVERLAP_TOKENS: 50;
|
|
3
7
|
readonly DEFAULT_LIMIT: 90000;
|
|
4
8
|
readonly MAX_LIMIT: 100000;
|
|
5
9
|
readonly MIN_LIMIT: 1000;
|
|
@@ -11,13 +15,15 @@ export declare const PAGINATION_DEFAULTS: {
|
|
|
11
15
|
export declare function estimateTokenCount(text: string): number;
|
|
12
16
|
/**
|
|
13
17
|
* Smart text chunking that preserves sentence boundaries and adds overlap
|
|
18
|
+
* NOW WORKS WITH TOKEN LIMITS, not character limits
|
|
14
19
|
*/
|
|
15
20
|
export declare class ResponseChunker {
|
|
16
|
-
private readonly
|
|
17
|
-
private readonly
|
|
18
|
-
constructor(
|
|
21
|
+
private readonly chunkSizeTokens;
|
|
22
|
+
private readonly overlapTokens;
|
|
23
|
+
constructor(chunkSizeTokens?: number, overlapTokens?: number);
|
|
19
24
|
/**
|
|
20
25
|
* Split text into chunks with smart boundary detection
|
|
26
|
+
* Works with TOKEN limits, not character limits
|
|
21
27
|
*/
|
|
22
28
|
chunkText(text: string): ResponseChunk[];
|
|
23
29
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../src/utils/pagination.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAG/B,eAAO,MAAM,mBAAmB
|
|
1
|
+
{"version":3,"file":"pagination.d.ts","sourceRoot":"","sources":["../../src/utils/pagination.ts"],"names":[],"mappings":"AACA,OAAO,EACL,gBAAgB,EAChB,kBAAkB,EAClB,aAAa,EACb,iBAAiB,EAClB,MAAM,uBAAuB,CAAC;AAG/B,eAAO,MAAM,mBAAmB;;;;;;;;;CAUtB,CAAC;AAEX;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAEvD;AAED;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAS;IACzC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;gBAE3B,eAAe,GAAE,MAAiD,EAAE,aAAa,GAAE,MAAiD;IAKhJ;;;OAGG;IACI,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,aAAa,EAAE;IA6D/C;;OAEG;IACH,OAAO,CAAC,mBAAmB;CA4B5B;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,gBAAgB,EACxB,SAAS,GAAE,MAA0C,EACrD,MAAM,CAAC,EAAE,aAAa,EAAE,EACxB,iBAAiB,CAAC,EAAE,MAAM,GACzB,kBAAkB,CAmCpB;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CAQvF;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAmBrE;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CAAC,CAAC,GAAG,MAAM,EAChD,IAAI,EAAE,CAAC,EACP,UAAU,EAAE,kBAAkB,EAC9B,OAAO,CAAC,EAAE,MAAM,GACf,iBAAiB,CAAC,CAAC,CAAC,CAMtB;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,UAAU,EAAE,kBAAkB,GAAG,MAAM,CAa7E"}
|
package/dist/utils/pagination.js
CHANGED
|
@@ -1,10 +1,15 @@
|
|
|
1
1
|
import { logger } from '../logger.js';
|
|
2
|
-
// Default pagination configuration
|
|
2
|
+
// Default pagination configuration - WORKING IN TOKENS NOW, not characters
|
|
3
3
|
export const PAGINATION_DEFAULTS = {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
4
|
+
DEFAULT_LIMIT_TOKENS: 22000, // 22K tokens - safe margin below Claude Code's 25K limit
|
|
5
|
+
MAX_LIMIT_TOKENS: 90000, // 90K tokens - reasonable upper bound for large responses
|
|
6
|
+
MIN_LIMIT_TOKENS: 1000, // 1K tokens - minimum meaningful chunk
|
|
7
|
+
CHUNK_OVERLAP_TOKENS: 50, // 50 token overlap between chunks for context
|
|
8
|
+
// Legacy character-based defaults (for backward compatibility with existing tool args)
|
|
9
|
+
DEFAULT_LIMIT: 90000, // ~22.5K tokens worth of characters (kept at 90K for back-compat)
|
|
10
|
+
MAX_LIMIT: 100000, // ~25K tokens worth of characters (hard limit for tool args)
|
|
11
|
+
MIN_LIMIT: 1000, // ~250 tokens worth of characters
|
|
12
|
+
CHUNK_OVERLAP: 200 // Character overlap between chunks
|
|
8
13
|
};
|
|
9
14
|
/**
|
|
10
15
|
* Calculates token count approximation (rough estimate: 1 token ≈ 4 characters)
|
|
@@ -14,19 +19,23 @@ export function estimateTokenCount(text) {
|
|
|
14
19
|
}
|
|
15
20
|
/**
|
|
16
21
|
* Smart text chunking that preserves sentence boundaries and adds overlap
|
|
22
|
+
* NOW WORKS WITH TOKEN LIMITS, not character limits
|
|
17
23
|
*/
|
|
18
24
|
export class ResponseChunker {
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
constructor(
|
|
22
|
-
this.
|
|
23
|
-
this.
|
|
25
|
+
chunkSizeTokens;
|
|
26
|
+
overlapTokens;
|
|
27
|
+
constructor(chunkSizeTokens = PAGINATION_DEFAULTS.DEFAULT_LIMIT_TOKENS, overlapTokens = PAGINATION_DEFAULTS.CHUNK_OVERLAP_TOKENS) {
|
|
28
|
+
this.chunkSizeTokens = Math.max(chunkSizeTokens, PAGINATION_DEFAULTS.MIN_LIMIT_TOKENS);
|
|
29
|
+
this.overlapTokens = Math.min(overlapTokens, Math.floor(chunkSizeTokens * 0.1)); // Max 10% overlap
|
|
24
30
|
}
|
|
25
31
|
/**
|
|
26
32
|
* Split text into chunks with smart boundary detection
|
|
33
|
+
* Works with TOKEN limits, not character limits
|
|
27
34
|
*/
|
|
28
35
|
chunkText(text) {
|
|
29
|
-
|
|
36
|
+
const totalTokens = estimateTokenCount(text);
|
|
37
|
+
// If content fits in one chunk, return as-is
|
|
38
|
+
if (totalTokens <= this.chunkSizeTokens) {
|
|
30
39
|
return [{
|
|
31
40
|
content: text,
|
|
32
41
|
startOffset: 0,
|
|
@@ -41,15 +50,24 @@ export class ResponseChunker {
|
|
|
41
50
|
const chunks = [];
|
|
42
51
|
let currentOffset = 0;
|
|
43
52
|
while (currentOffset < text.length) {
|
|
44
|
-
|
|
53
|
+
// Convert token limit to approximate character offset
|
|
54
|
+
const chunkSizeChars = this.chunkSizeTokens * 4; // ~4 chars per token
|
|
55
|
+
const endOffset = Math.min(currentOffset + chunkSizeChars, text.length);
|
|
45
56
|
let chunkEnd = endOffset;
|
|
46
57
|
// Smart boundary detection - prefer paragraph, then sentence, then word breaks
|
|
47
58
|
if (endOffset < text.length) {
|
|
48
|
-
chunkEnd = this.findSmartBreakpoint(text, currentOffset, endOffset);
|
|
59
|
+
chunkEnd = this.findSmartBreakpoint(text, currentOffset, endOffset, chunkSizeChars);
|
|
49
60
|
}
|
|
50
61
|
const chunkContent = text.substring(currentOffset, chunkEnd);
|
|
62
|
+
const chunkTokens = estimateTokenCount(chunkContent);
|
|
63
|
+
// If chunk is too large (rare due to smart breakpoint), force split
|
|
64
|
+
if (chunkTokens > this.chunkSizeTokens * 1.1) { // 10% tolerance
|
|
65
|
+
logger.warn(`Chunk ${chunks.length + 1} is ${chunkTokens} tokens (target: ${this.chunkSizeTokens}) - forcing split`);
|
|
66
|
+
// Recalculate with tighter bound
|
|
67
|
+
chunkEnd = currentOffset + Math.floor(this.chunkSizeTokens * 3.8); // Conservative estimate
|
|
68
|
+
}
|
|
51
69
|
chunks.push({
|
|
52
|
-
content:
|
|
70
|
+
content: text.substring(currentOffset, chunkEnd),
|
|
53
71
|
startOffset: currentOffset,
|
|
54
72
|
endOffset: chunkEnd,
|
|
55
73
|
metadata: {
|
|
@@ -58,18 +76,19 @@ export class ResponseChunker {
|
|
|
58
76
|
originalLength: text.length
|
|
59
77
|
}
|
|
60
78
|
});
|
|
61
|
-
// Move to next chunk with overlap (except for last chunk)
|
|
62
|
-
|
|
79
|
+
// Move to next chunk with token-based overlap (except for last chunk)
|
|
80
|
+
const overlapChars = this.overlapTokens * 4; // ~4 chars per token
|
|
81
|
+
currentOffset = chunkEnd - (chunkEnd === text.length ? 0 : overlapChars);
|
|
63
82
|
}
|
|
64
|
-
logger.debug(`Chunked ${text.length} chars into ${chunks.length} chunks (
|
|
83
|
+
logger.debug(`Chunked ${text.length} chars (~${totalTokens} tokens) into ${chunks.length} chunks (target: ${this.chunkSizeTokens} tokens/chunk, overlap: ${this.overlapTokens} tokens)`);
|
|
65
84
|
return chunks;
|
|
66
85
|
}
|
|
67
86
|
/**
|
|
68
87
|
* Find intelligent breakpoint that preserves readability
|
|
69
88
|
*/
|
|
70
|
-
findSmartBreakpoint(text, start, idealEnd) {
|
|
71
|
-
const searchRange = Math.min(500, Math.floor(
|
|
72
|
-
const minEnd = Math.max(start +
|
|
89
|
+
findSmartBreakpoint(text, start, idealEnd, chunkSizeChars) {
|
|
90
|
+
const searchRange = Math.min(500, Math.floor(chunkSizeChars * 0.1)); // Search within 10% of chunk size
|
|
91
|
+
const minEnd = Math.max(start + chunkSizeChars - searchRange, idealEnd - searchRange);
|
|
73
92
|
// Try to find paragraph break (double newline)
|
|
74
93
|
for (let i = idealEnd; i >= minEnd; i--) {
|
|
75
94
|
if (text.substring(i - 2, i) === '\n\n') {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../src/utils/pagination.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAQtC,
|
|
1
|
+
{"version":3,"file":"pagination.js","sourceRoot":"","sources":["../../src/utils/pagination.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@brutalist/mcp",
|
|
3
|
-
"version": "0.6.
|
|
3
|
+
"version": "0.6.12",
|
|
4
4
|
"description": "Deploy Claude, Codex & Gemini CLI agents to demolish your work before users do. Real file analysis. Brutal honesty. Now with intelligent pagination.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|