wiggum-cli 0.4.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.
Files changed (50) hide show
  1. package/dist/ai/agents/context-enricher.d.ts.map +1 -1
  2. package/dist/ai/agents/context-enricher.js +97 -36
  3. package/dist/ai/agents/context-enricher.js.map +1 -1
  4. package/dist/ai/agents/evaluator-optimizer.d.ts.map +1 -1
  5. package/dist/ai/agents/evaluator-optimizer.js +78 -11
  6. package/dist/ai/agents/evaluator-optimizer.js.map +1 -1
  7. package/dist/ai/agents/mcp-detector.d.ts +6 -0
  8. package/dist/ai/agents/mcp-detector.d.ts.map +1 -1
  9. package/dist/ai/agents/mcp-detector.js +11 -4
  10. package/dist/ai/agents/mcp-detector.js.map +1 -1
  11. package/dist/ai/agents/stack-researcher.d.ts.map +1 -1
  12. package/dist/ai/agents/stack-researcher.js +29 -12
  13. package/dist/ai/agents/stack-researcher.js.map +1 -1
  14. package/dist/ai/agents/synthesis-agent.d.ts.map +1 -1
  15. package/dist/ai/agents/synthesis-agent.js +17 -12
  16. package/dist/ai/agents/synthesis-agent.js.map +1 -1
  17. package/dist/ai/agents/tech-researcher.d.ts.map +1 -1
  18. package/dist/ai/agents/tech-researcher.js +29 -11
  19. package/dist/ai/agents/tech-researcher.js.map +1 -1
  20. package/dist/ai/enhancer.d.ts.map +1 -1
  21. package/dist/ai/enhancer.js +11 -1
  22. package/dist/ai/enhancer.js.map +1 -1
  23. package/dist/ai/index.d.ts +1 -1
  24. package/dist/ai/index.d.ts.map +1 -1
  25. package/dist/ai/index.js +1 -1
  26. package/dist/ai/index.js.map +1 -1
  27. package/dist/ai/tools/context7.d.ts +18 -24
  28. package/dist/ai/tools/context7.d.ts.map +1 -1
  29. package/dist/ai/tools/context7.js +14 -122
  30. package/dist/ai/tools/context7.js.map +1 -1
  31. package/dist/ai/tools/index.d.ts +1 -1
  32. package/dist/ai/tools/index.d.ts.map +1 -1
  33. package/dist/ai/tools/index.js +1 -1
  34. package/dist/ai/tools/index.js.map +1 -1
  35. package/dist/ai/tools/tavily.d.ts +1 -0
  36. package/dist/ai/tools/tavily.d.ts.map +1 -1
  37. package/dist/ai/tools/tavily.js +13 -8
  38. package/dist/ai/tools/tavily.js.map +1 -1
  39. package/package.json +2 -1
  40. package/src/ai/agents/context-enricher.ts +103 -37
  41. package/src/ai/agents/evaluator-optimizer.ts +83 -11
  42. package/src/ai/agents/mcp-detector.ts +11 -4
  43. package/src/ai/agents/stack-researcher.ts +30 -12
  44. package/src/ai/agents/synthesis-agent.ts +17 -12
  45. package/src/ai/agents/tech-researcher.ts +30 -11
  46. package/src/ai/enhancer.ts +9 -1
  47. package/src/ai/index.ts +1 -1
  48. package/src/ai/tools/context7.ts +17 -152
  49. package/src/ai/tools/index.ts +1 -3
  50. package/src/ai/tools/tavily.ts +13 -8
@@ -1 +1 @@
1
- {"version":3,"file":"context-enricher.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/context-enricher.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,IAAI,CAAC;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAoDxE;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,oBAAoB,EAC3B,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,eAAe,CAAC,CAoD1B"}
1
+ {"version":3,"file":"context-enricher.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/context-enricher.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,OAAO,EAAe,KAAK,aAAa,EAAE,MAAM,IAAI,CAAC;AACrD,OAAO,KAAK,EAAE,oBAAoB,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA8ExE;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,oBAAoB,EAC3B,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,eAAe,CAAC,CAoD1B"}
@@ -2,6 +2,8 @@
2
2
  * Context Enricher Worker (Phase 2)
3
3
  * Explores the codebase to gather enriched context based on the analysis plan
4
4
  */
5
+ import { existsSync, readFileSync } from 'node:fs';
6
+ import { join } from 'node:path';
5
7
  import { stepCountIs } from 'ai';
6
8
  import { createExplorationTools } from '../tools.js';
7
9
  import { isReasoningModel } from '../providers.js';
@@ -12,7 +14,7 @@ import { detectProjectType } from './stack-utils.js';
12
14
  /**
13
15
  * System prompt for the Context Enricher worker
14
16
  */
15
- const CONTEXT_ENRICHER_SYSTEM_PROMPT = `You are a Context Enricher worker. Your job is to explore specific areas of a codebase and answer specific questions.
17
+ const CONTEXT_ENRICHER_SYSTEM_PROMPT = `You are a Context Enricher worker. Your job is to explore specific areas of a codebase and discover ACTUAL file paths and structures.
16
18
 
17
19
  ## Your Mission
18
20
  Based on the analysis plan, explore the codebase to:
@@ -22,35 +24,61 @@ Based on the analysis plan, explore the codebase to:
22
24
  4. Find available commands (from package.json)
23
25
  5. Answer the specific questions provided
24
26
 
27
+ ## IMPORTANT: Token Efficiency
28
+ - Make at most 4-5 tool calls total, then produce output
29
+ - Priority: package.json → root listing → one key directory
30
+ - Don't explore every subdirectory - sample enough to understand structure
31
+ - ALWAYS produce JSON output even with partial information
32
+
25
33
  ## Tools Available
26
34
  - searchCode: Search using ripgrep patterns
27
35
  - readFile: Read file contents
28
36
  - listDirectory: List directory structure
29
- - getPackageInfo: Get package.json info
37
+ - getPackageInfo: Get package.json info (use specific fields like "bin", "main", "scripts")
30
38
 
31
39
  ## Exploration Strategy
32
- 1. List the areas specified in the plan
33
- 2. Read package.json to understand scripts and dependencies
34
- 3. Search for patterns to answer the specific questions
35
- 4. Identify the project type based on structure
40
+ 1. Read package.json FIRST for main/bin entries - these are authoritative entry points
41
+ 2. List root directory to discover actual structure (src/, app/, pages/, lib/, cmd/, etc.)
42
+ 3. Explore ONE key directory to understand its purpose
43
+ 4. Produce output - don't exhaustively explore
44
+
45
+ ## Project Types & Entry Point Patterns
46
+ - MCP Server: Has @modelcontextprotocol deps → main field or src/index.ts
47
+ - REST API: Express/Fastify/Hono → main field, app.ts, server.ts, or src/
48
+ - Next.js App: next in deps → app/page.tsx, pages/index.tsx, or pages/_app.tsx
49
+ - CLI Tool: Has bin entry in package.json → use the bin paths directly
50
+ - Library: main/module fields → use those paths
51
+ - Python: main.py, app.py, or __main__.py at root
52
+ - Go: main.go or cmd/*/main.go
36
53
 
37
- ## Project Types
38
- - MCP Server: Has @modelcontextprotocol dependencies
39
- - REST API: Express/Fastify/Hono with route handlers
40
- - React SPA: React with components, no server-side rendering
41
- - Next.js App: Next.js with app or pages directory
42
- - CLI Tool: Has bin entry in package.json
43
- - Library: Published package without app entry
54
+ ## CRITICAL: Output Requirements
55
+ - entryPoints: ONLY actual file paths you discovered
56
+ - NEVER output instructions like "Check package.json..."
57
+ - NEVER output suggestions like "If exists, use..."
58
+ - Priority order for discovery:
59
+ 1. package.json "bin" field paths (for CLI tools)
60
+ 2. package.json "main" or "module" field paths
61
+ 3. Framework conventions (app/page.tsx, pages/index.tsx)
62
+ 4. Common patterns you find (index.ts, main.ts, app.ts)
63
+ - If truly nothing found, use empty array [] - don't guess
64
+ - keyDirectories: ONLY directories that actually exist with their discovered purpose
65
+ - First list root to find actual directories (don't assume src/ exists)
66
+ - Map each real directory to its purpose based on file contents
67
+ - Example: {"src/commands": "CLI commands", "app": "Next.js app router"}
44
68
 
45
69
  ## Output Format
46
- After exploration, output ONLY valid JSON:
70
+ Output ONLY valid JSON with discovered facts, not exploration instructions:
47
71
  {
48
- "entryPoints": ["src/index.ts"],
49
- "keyDirectories": {"src/routes": "API routes", "src/components": "UI components"},
72
+ "entryPoints": ["bin/cli.js", "dist/index.js"],
73
+ "keyDirectories": {
74
+ "src": "TypeScript source code",
75
+ "bin": "CLI entry scripts",
76
+ "lib": "Compiled output"
77
+ },
50
78
  "namingConventions": "camelCase files, PascalCase components",
51
79
  "commands": {"test": "npm test", "build": "npm run build"},
52
80
  "answeredQuestions": {"What is the auth strategy?": "NextAuth with JWT"},
53
- "projectType": "Next.js App"
81
+ "projectType": "CLI Tool"
54
82
  }`;
55
83
  /**
56
84
  * Run the Context Enricher worker
@@ -75,7 +103,7 @@ Start by exploring the specified areas, then answer the questions and produce yo
75
103
  system: CONTEXT_ENRICHER_SYSTEM_PROMPT,
76
104
  prompt,
77
105
  tools,
78
- stopWhen: stepCountIs(5),
106
+ stopWhen: stepCountIs(5), // Reduced from 8 to leave tokens for JSON output
79
107
  maxOutputTokens: 3000,
80
108
  ...(isReasoningModel(modelId) ? {} : { temperature: 0.3 }),
81
109
  experimental_telemetry: {
@@ -88,8 +116,8 @@ Start by exploring the specified areas, then answer the questions and produce yo
88
116
  },
89
117
  },
90
118
  });
91
- // Parse the response
92
- const context = parseEnrichedContext(result.text, result.steps, verbose);
119
+ // Parse the response (pass input for fallback derivation)
120
+ const context = parseEnrichedContext(result.text, result.steps, verbose, input);
93
121
  if (verbose) {
94
122
  logger.info(`Context Enricher: Found ${context.entryPoints.length} entry points, answered ${Object.keys(context.answeredQuestions).length} questions`);
95
123
  }
@@ -105,7 +133,7 @@ Start by exploring the specified areas, then answer the questions and produce yo
105
133
  /**
106
134
  * Parse the enriched context from agent response
107
135
  */
108
- function parseEnrichedContext(text, steps, verbose) {
136
+ function parseEnrichedContext(text, steps, verbose, input) {
109
137
  // Try to get text from the result or steps
110
138
  let textToParse = text;
111
139
  if (!textToParse || textToParse.trim() === '') {
@@ -122,7 +150,7 @@ function parseEnrichedContext(text, steps, verbose) {
122
150
  if (verbose) {
123
151
  logger.warn('Context Enricher: No text output found');
124
152
  }
125
- return getDefaultEnrichedContext();
153
+ return getDefaultEnrichedContext(input);
126
154
  }
127
155
  // Use safe JSON parser with repair capabilities
128
156
  const parsed = parseJsonSafe(textToParse);
@@ -130,32 +158,65 @@ function parseEnrichedContext(text, steps, verbose) {
130
158
  if (verbose) {
131
159
  logger.warn('Context Enricher: Failed to parse JSON response');
132
160
  }
133
- return getDefaultEnrichedContext();
161
+ return getDefaultEnrichedContext(input);
134
162
  }
135
- // Build result with defaults for missing fields
163
+ // Build result with empty defaults for missing fields (don't guess)
136
164
  return {
137
- entryPoints: parsed.entryPoints || ['src/index.ts'],
138
- keyDirectories: parsed.keyDirectories || { src: 'Source code' },
139
- namingConventions: parsed.namingConventions || 'camelCase',
140
- commands: parsed.commands || { build: 'npm run build' },
165
+ entryPoints: parsed.entryPoints || [], // Empty = not found, not guessed
166
+ keyDirectories: parsed.keyDirectories || {}, // Empty = not found
167
+ namingConventions: parsed.namingConventions || 'unknown',
168
+ commands: parsed.commands || {},
141
169
  answeredQuestions: parsed.answeredQuestions || {},
142
170
  projectType: parsed.projectType || 'Unknown',
143
171
  };
144
172
  }
173
+ /**
174
+ * Derive entry points from package.json when AI fails to discover them
175
+ */
176
+ function deriveEntryPointsFromPackageJson(projectRoot) {
177
+ const entryPoints = [];
178
+ const packageJsonPath = join(projectRoot, 'package.json');
179
+ if (!existsSync(packageJsonPath)) {
180
+ return entryPoints;
181
+ }
182
+ try {
183
+ const content = readFileSync(packageJsonPath, 'utf-8');
184
+ const pkg = JSON.parse(content);
185
+ // CLI tools: use bin field
186
+ if (pkg.bin) {
187
+ if (typeof pkg.bin === 'string') {
188
+ entryPoints.push(pkg.bin);
189
+ }
190
+ else if (typeof pkg.bin === 'object' && pkg.bin !== null) {
191
+ entryPoints.push(...Object.values(pkg.bin));
192
+ }
193
+ }
194
+ // Libraries: use main/module fields
195
+ if (typeof pkg.main === 'string') {
196
+ entryPoints.push(pkg.main);
197
+ }
198
+ if (typeof pkg.module === 'string') {
199
+ entryPoints.push(pkg.module);
200
+ }
201
+ // Filter out compiled output (dist/) and dedupe
202
+ return [...new Set(entryPoints.filter(ep => ep && !ep.startsWith('dist/')))];
203
+ }
204
+ catch {
205
+ return entryPoints;
206
+ }
207
+ }
145
208
  /**
146
209
  * Get default enriched context when parsing fails
210
+ * Returns empty arrays instead of guesses, but derives entry points from package.json
147
211
  */
148
212
  function getDefaultEnrichedContext(input) {
149
213
  const projectType = detectProjectType(input?.scanResult.stack);
214
+ const entryPoints = input ? deriveEntryPointsFromPackageJson(input.scanResult.projectRoot) : [];
150
215
  return {
151
- entryPoints: ['src/index.ts'],
152
- keyDirectories: { src: 'Source code' },
153
- namingConventions: 'camelCase',
154
- commands: {
155
- test: 'npm test',
156
- build: 'npm run build',
157
- dev: 'npm run dev',
158
- },
216
+ entryPoints, // Derived from package.json, not guessed
217
+ keyDirectories: {}, // Empty = not discovered
218
+ namingConventions: 'unknown',
219
+ commands: {}, // Empty = not discovered
159
220
  answeredQuestions: {},
160
221
  projectType,
161
222
  };
@@ -1 +1 @@
1
- {"version":3,"file":"context-enricher.js","sourceRoot":"","sources":["../../../src/ai/agents/context-enricher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"context-enricher.js","sourceRoot":"","sources":["../../../src/ai/agents/context-enricher.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"evaluator-optimizer.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/evaluator-optimizer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,IAAI,CAAC;AAExC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,YAAY,CAAC;AA2EvE;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,UAAU,EACtB,aAAa,GAAE,MAAU,EACzB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,kBAAkB,CAAC,CAqC7B"}
1
+ {"version":3,"file":"evaluator-optimizer.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/evaluator-optimizer.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,IAAI,CAAC;AAExC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAoB,MAAM,YAAY,CAAC;AA6IvE;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,UAAU,EACtB,aAAa,GAAE,MAAU,EACzB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,kBAAkB,CAAC,CAsC7B"}
@@ -31,6 +31,55 @@ const optimizerOutputSchema = z.object({
31
31
  additionalEntryPoints: z.array(z.string()).describe('Additional entry points to add (empty array if none)'),
32
32
  additionalMcpServers: z.array(z.string()).describe('Additional MCP servers to recommend (empty array if none)'),
33
33
  });
34
+ /**
35
+ * Patterns that indicate an entry point is an instruction, not a real path
36
+ */
37
+ const INVALID_ENTRY_POINT_PATTERNS = [
38
+ /^check /i,
39
+ /^if /i,
40
+ /^open /i,
41
+ /^look /i,
42
+ /^search /i,
43
+ /^find /i,
44
+ /^inspect /i,
45
+ /^run /i,
46
+ /^see /i,
47
+ /^review /i,
48
+ ];
49
+ /**
50
+ * Check if a single entry point looks like an actual file path (not an instruction)
51
+ */
52
+ function isValidEntryPoint(ep) {
53
+ // Has a known file extension (ts, js, tsx, jsx, mjs, cjs, py, go, rs)
54
+ const hasExtension = /\.(ts|js|tsx|jsx|mjs|cjs|py|go|rs)$/.test(ep);
55
+ // Looks like a path with directory separator (e.g., bin/cli, src/index)
56
+ const hasPathSeparator = ep.includes('/');
57
+ // Must not start with instruction words
58
+ const isNotInstruction = !INVALID_ENTRY_POINT_PATTERNS.some(pattern => pattern.test(ep));
59
+ // Valid if: (has extension) OR (has path separator for extensionless like bin/wiggum)
60
+ // AND doesn't look like an instruction
61
+ return (hasExtension || hasPathSeparator) && isNotInstruction;
62
+ }
63
+ /**
64
+ * Check if entry points look like actual file paths (not instructions)
65
+ */
66
+ function hasValidEntryPoints(entryPoints) {
67
+ if (entryPoints.length === 0)
68
+ return false;
69
+ return entryPoints.every(isValidEntryPoint);
70
+ }
71
+ /**
72
+ * Filter entry points to only include valid file paths
73
+ */
74
+ function filterValidEntryPoints(entryPoints) {
75
+ return entryPoints.filter(isValidEntryPoint);
76
+ }
77
+ /**
78
+ * Normalize MCP names (strip parenthetical explanations)
79
+ */
80
+ function normalizeMcpName(name) {
81
+ return name.split('(')[0].trim().toLowerCase();
82
+ }
34
83
  /**
35
84
  * System prompt for the Evaluator
36
85
  */
@@ -50,10 +99,16 @@ Evaluate the analysis result for:
50
99
  - 3-4: Incomplete, vague, or partially incorrect
51
100
  - 1-2: Poor, missing critical information
52
101
 
53
- ## Quality Checks
54
- - Entry points should identify actual files, not just "src/"
55
- - Guidelines should be specific (e.g., "Run npm test" not "Test your code")
56
- - MCP servers should match the detected database and deployment
102
+ ## Quality Checks - IMPORTANT
103
+ - Entry points MUST be actual file paths (e.g., "src/index.ts", "src/cli.ts")
104
+ - FAIL if they contain instructions like "Check", "If", "Open", "Look"
105
+ - FAIL if they don't look like file paths (no / or . characters)
106
+ - Key directories MUST map actual directories to their purposes
107
+ - FAIL if only generic entries like {"src": "Source code"}
108
+ - Guidelines MUST be actionable commands, not exploration tasks
109
+ - Good: "Run npm test", "Check API routes in src/routes"
110
+ - Bad: "Investigate the codebase", "Look for patterns"
111
+ - MCP servers MUST be single-word identifiers only (no parenthetical explanations)
57
112
 
58
113
  Be constructive but honest. If it's good, say so. If it needs work, explain why.`;
59
114
  /**
@@ -71,7 +126,13 @@ Based on the evaluation feedback, improve:
71
126
  - Keep guidelines to 5-10 words
72
127
  - Start with action verbs
73
128
  - Be specific to the detected stack
74
- - Don't remove good content, only add or improve`;
129
+ - Don't remove good content, only add or improve
130
+
131
+ ## MCP Server Names
132
+ - Use ONLY single-word identifiers: "playwright", "supabase", "postgres"
133
+ - NEVER add explanations in parentheses
134
+ - NEVER add descriptions after the name
135
+ - If unsure, omit rather than guess`;
75
136
  /**
76
137
  * Run the Evaluator-Optimizer QA loop
77
138
  */
@@ -87,9 +148,10 @@ export async function runEvaluatorOptimizer(model, modelId, result, scanResult,
87
148
  logger.info(`Issues: ${evaluation.specificIssues.join(', ')}`);
88
149
  }
89
150
  }
90
- // Check if quality meets threshold
151
+ // Check if quality meets threshold (including valid entry point paths)
91
152
  if (evaluation.qualityScore >= QUALITY_THRESHOLD &&
92
153
  evaluation.hasEntryPoints &&
154
+ hasValidEntryPoints(currentResult.codebaseAnalysis.projectContext.entryPoints) &&
93
155
  evaluation.hasImplementationGuidelines) {
94
156
  if (verbose) {
95
157
  logger.info('Evaluator: Quality threshold met, skipping optimization');
@@ -203,16 +265,21 @@ Provide improved guidelines and any additional entry points or MCP servers.`;
203
265
  : result.codebaseAnalysis.implementationGuidelines,
204
266
  projectContext: {
205
267
  ...result.codebaseAnalysis.projectContext,
206
- entryPoints: improvements.additionalEntryPoints.length > 0
207
- ? [...new Set([...result.codebaseAnalysis.projectContext.entryPoints, ...improvements.additionalEntryPoints])]
208
- : result.codebaseAnalysis.projectContext.entryPoints,
268
+ // Filter invalid entry points (instructions) and merge with new ones
269
+ entryPoints: filterValidEntryPoints([
270
+ ...result.codebaseAnalysis.projectContext.entryPoints,
271
+ ...improvements.additionalEntryPoints,
272
+ ]).filter((ep, i, arr) => arr.indexOf(ep) === i), // dedupe
209
273
  },
210
274
  },
211
275
  mcpServers: {
212
276
  ...result.mcpServers,
213
277
  recommended: improvements.additionalMcpServers.length > 0
214
- ? [...new Set([...result.mcpServers.recommended, ...improvements.additionalMcpServers])]
215
- : result.mcpServers.recommended,
278
+ ? [...new Set([
279
+ ...result.mcpServers.recommended.map(normalizeMcpName),
280
+ ...improvements.additionalMcpServers.map(normalizeMcpName)
281
+ ])]
282
+ : result.mcpServers.recommended.map(normalizeMcpName),
216
283
  },
217
284
  };
218
285
  if (verbose) {
@@ -1 +1 @@
1
- {"version":3,"file":"evaluator-optimizer.js","sourceRoot":"","sources":["../../../src/ai/agents/evaluator-optimizer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"evaluator-optimizer.js","sourceRoot":"","sources":["../../../src/ai/agents/evaluator-optimizer.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,12 @@ export declare function detectRalphMcpServers(stack: DetectedStack): RalphMcpSer
18
18
  /**
19
19
  * Convert RalphMcpServers to the legacy McpRecommendations format
20
20
  * for backward compatibility with existing code
21
+ *
22
+ * Ralph loop essentials only:
23
+ * - Playwright for E2E testing (always)
24
+ * - Database MCP if detected (Supabase, Convex, Postgres, etc.)
25
+ *
26
+ * Note: filesystem and git are assumed available in Claude Code
21
27
  */
22
28
  export declare function convertToLegacyMcpRecommendations(ralphMcp: RalphMcpServers): {
23
29
  essential: string[];
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-detector.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/mcp-detector.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAwDlD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,aAAa,GAAG,eAAe,CAsG3E;AAED;;;GAGG;AACH,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,eAAe,GAAG;IAC5E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAiBA"}
1
+ {"version":3,"file":"mcp-detector.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/mcp-detector.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AAwDlD;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,aAAa,GAAG,eAAe,CAsG3E;AAED;;;;;;;;;GASG;AACH,wBAAgB,iCAAiC,CAAC,QAAQ,EAAE,eAAe,GAAG;IAC5E,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB,CAkBA"}
@@ -159,20 +159,27 @@ export function detectRalphMcpServers(stack) {
159
159
  /**
160
160
  * Convert RalphMcpServers to the legacy McpRecommendations format
161
161
  * for backward compatibility with existing code
162
+ *
163
+ * Ralph loop essentials only:
164
+ * - Playwright for E2E testing (always)
165
+ * - Database MCP if detected (Supabase, Convex, Postgres, etc.)
166
+ *
167
+ * Note: filesystem and git are assumed available in Claude Code
162
168
  */
163
169
  export function convertToLegacyMcpRecommendations(ralphMcp) {
164
- const essential = ['filesystem', 'git'];
165
- // Add E2E testing as essential for ralph
170
+ const essential = [];
171
+ // Ralph loop essentials only
172
+ // 1. Playwright for E2E testing (always)
166
173
  if (ralphMcp.e2eTesting) {
167
174
  essential.push(ralphMcp.e2eTesting);
168
175
  }
169
- // Add database as essential if detected
176
+ // 2. Database MCP if detected (Supabase, Convex, Postgres, etc.)
170
177
  if (ralphMcp.database) {
171
178
  essential.push(ralphMcp.database);
172
179
  }
173
180
  return {
174
181
  essential,
175
- recommended: ralphMcp.additional,
182
+ recommended: [], // No optional MCPs - keep focused on Ralph loop
176
183
  };
177
184
  }
178
185
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-detector.js","sourceRoot":"","sources":["../../../src/ai/agents/mcp-detector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-detector.js","sourceRoot":"","sources":["../../../src/ai/agents/mcp-detector.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"stack-researcher.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/stack-researcher.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAe,KAAK,aAAa,EAAa,MAAM,IAAI,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAqB,MAAM,YAAY,CAAC;AAmKzF;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE,EAC3D,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAiD/B"}
1
+ {"version":3,"file":"stack-researcher.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/stack-researcher.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAe,KAAK,aAAa,EAAa,MAAM,IAAI,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,oBAAoB,EAAqB,MAAM,YAAY,CAAC;AAmLzF;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,oBAAoB,EAC3B,OAAO,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,cAAc,CAAC,EAAE,MAAM,CAAA;CAAE,EAC3D,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC,CAmD/B"}
@@ -8,33 +8,47 @@
8
8
  */
9
9
  import { stepCountIs } from 'ai';
10
10
  import { createTavilySearchTool } from '../tools/tavily.js';
11
- import { createContext7Tool } from '../tools/context7.js';
11
+ import { createContext7Tools } from '../tools/context7.js';
12
12
  import { isReasoningModel } from '../providers.js';
13
13
  import { logger } from '../../utils/logger.js';
14
14
  import { parseJsonSafe } from '../../utils/json-repair.js';
15
15
  import { getTracedAI } from '../../utils/tracing.js';
16
16
  /**
17
- * System prompt for Stack Researcher with tools
17
+ * Get the current year for dynamic prompt generation
18
18
  */
19
- const STACK_RESEARCHER_WITH_TOOLS_PROMPT = `You are a Stack Researcher agent with access to web search and documentation lookup tools.
19
+ function getCurrentYear() {
20
+ return new Date().getFullYear();
21
+ }
22
+ /**
23
+ * Generate system prompt for Stack Researcher with tools
24
+ */
25
+ function getStackResearcherWithToolsPrompt() {
26
+ const year = getCurrentYear();
27
+ return `You are a Stack Researcher agent with access to web search and documentation lookup tools.
20
28
 
21
29
  ## Your Mission
22
30
  Research the detected technology stack to find:
23
- 1. Current best practices
31
+ 1. Current best practices (${year}+)
24
32
  2. Common anti-patterns to avoid
25
33
  3. Testing tools and patterns
26
34
  4. Debugging approaches
27
35
  5. Useful documentation links
28
36
 
29
37
  ## Tools Available
30
- - tavilySearch: Search the web for current best practices and patterns
31
- - context7Lookup: Look up library documentation
38
+ - tavilySearch: Search the web (use timeRange for recent results)
39
+ - resolveLibraryId: Find the Context7 library ID for a package
40
+ - queryDocs: Query documentation using the resolved library ID
32
41
 
33
42
  ## Research Strategy
34
- 1. Search for "[technology] best practices 2024"
35
- 2. Search for "[project type] testing patterns"
36
- 3. Look up documentation for key dependencies
37
- 4. Search for "[framework] anti-patterns"
43
+ 1. Use tavilySearch with timeRange: "year" for current practices
44
+ 2. For library docs: First call resolveLibraryId, then queryDocs with SPECIFIC queries
45
+ 3. Break research into focused queries, not broad searches
46
+
47
+ ## Good vs Bad Queries
48
+ - Tavily Good: "React testing patterns vitest"
49
+ - Tavily Bad: "React Vitest Playwright best practices ${year}"
50
+ - Context7 Good: resolveLibraryId("vitest") → queryDocs("test setup configuration")
51
+ - Context7 Bad: queryDocs("best practices production testing documentation")
38
52
 
39
53
  ## Output Format
40
54
  After research, output ONLY valid JSON with this structure:
@@ -63,6 +77,7 @@ After research, output ONLY valid JSON with this structure:
63
77
  }
64
78
 
65
79
  Keep each item concise (5-15 words max). Max 5 items per array.`;
80
+ }
66
81
  /**
67
82
  * System prompt for Stack Researcher without tools (knowledge-only)
68
83
  */
@@ -180,7 +195,9 @@ export async function runStackResearcher(model, modelId, input, options, verbose
180
195
  tools.tavilySearch = createTavilySearchTool(options.tavilyApiKey);
181
196
  }
182
197
  if (options.context7ApiKey) {
183
- tools.context7Lookup = createContext7Tool(options.context7ApiKey);
198
+ const c7Tools = createContext7Tools(options.context7ApiKey);
199
+ tools.resolveLibraryId = c7Tools.resolveLibraryId;
200
+ tools.queryDocs = c7Tools.queryDocs;
184
201
  }
185
202
  const hasTools = Object.keys(tools).length > 0;
186
203
  const researchMode = getResearchMode(input.capabilities);
@@ -188,7 +205,7 @@ export async function runStackResearcher(model, modelId, input, options, verbose
188
205
  logger.info(`Stack Researcher running in ${researchMode} mode`);
189
206
  }
190
207
  const systemPrompt = hasTools
191
- ? STACK_RESEARCHER_WITH_TOOLS_PROMPT
208
+ ? getStackResearcherWithToolsPrompt()
192
209
  : STACK_RESEARCHER_KNOWLEDGE_ONLY_PROMPT;
193
210
  const prompt = createResearchPrompt(input.stack, input.projectType, hasTools);
194
211
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"stack-researcher.js","sourceRoot":"","sources":["../../../src/ai/agents/stack-researcher.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stack-researcher.js","sourceRoot":"","sources":["../../../src/ai/agents/stack-researcher.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"synthesis-agent.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/synthesis-agent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,IAAI,CAAC;AAExC,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAInB,MAAM,YAAY,CAAC;AA4CpB;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,cAAc,EACrB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,kBAAkB,CAAC,CA8D7B"}
1
+ {"version":3,"file":"synthesis-agent.d.ts","sourceRoot":"","sources":["../../../src/ai/agents/synthesis-agent.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,IAAI,CAAC;AAExC,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAInB,MAAM,YAAY,CAAC;AAiDpB;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,cAAc,EACrB,OAAO,GAAE,OAAe,GACvB,OAAO,CAAC,kBAAkB,CAAC,CA8D7B"}