@schemyx/mcp 0.1.5 → 0.1.7

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,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.prepareTask = prepareTask;
3
4
  exports.scanLocalCodebase = scanLocalCodebase;
4
5
  exports.listCodebaseRecipes = listCodebaseRecipes;
5
6
  exports.searchCodebase = searchCodebase;
@@ -17,6 +18,173 @@ const files_1 = require("./files");
17
18
  const recipes_1 = require("./recipes");
18
19
  const storage_1 = require("./storage");
19
20
  const utils_1 = require("./utils");
21
+ async function prepareTask(args = {}) {
22
+ const task = (0, utils_1.requiredStringArg)(args.task, 'task');
23
+ const rootPath = (0, utils_1.resolveRootPath)(args.rootPath);
24
+ const outputDirArg = (0, utils_1.stringArg)(args.outputDir) ?? constants_1.defaultOutputDir;
25
+ const outputDir = (0, utils_1.resolveOutputDir)(rootPath, outputDirArg);
26
+ const outputRelPath = (0, utils_1.stripLeadingDot)((0, utils_1.toPosixPath)(path.relative(rootPath, outputDir)));
27
+ const scopeArgs = {
28
+ rootPath,
29
+ outputDir: outputRelPath || constants_1.defaultOutputDir,
30
+ };
31
+ const projectType = optionalProjectType(args.projectType) ?? inferProjectTypeForTask(task);
32
+ const autoScan = args.autoScan !== false;
33
+ const includeSourceReads = args.includeSourceReads !== false;
34
+ const depth = (0, recipes_1.normalizeDepth)(args.depth ?? 'standard');
35
+ const maxItems = (0, utils_1.numberArg)(args.maxItems, 12, 1, 50);
36
+ const maxSourceFiles = (0, utils_1.numberArg)(args.maxSourceFiles, 5, 0, 10);
37
+ const tokenBudget = (0, utils_1.numberArg)(args.tokenBudget, 3000, 250, 20_000);
38
+ let scan;
39
+ let freshness = null;
40
+ try {
41
+ const bundle = await (0, storage_1.readGeneratedBundle)(scopeArgs);
42
+ scan = { ran: false, reason: 'existing-config', scanId: bundle.manifest.scanId };
43
+ try {
44
+ freshness = await checkContextFreshness({ ...scopeArgs, limit: 50 });
45
+ if (autoScan && freshness.status === 'stale') {
46
+ const result = await scanLocalCodebase({
47
+ ...scopeArgs,
48
+ projectType,
49
+ includePaths: args.includePaths,
50
+ excludePaths: args.excludePaths,
51
+ maxFiles: args.maxFiles,
52
+ });
53
+ scan = { ran: true, reason: 'stale-config', result };
54
+ freshness = await checkContextFreshness({ ...scopeArgs, limit: 50 });
55
+ }
56
+ }
57
+ catch {
58
+ freshness = null;
59
+ }
60
+ }
61
+ catch (error) {
62
+ if (!autoScan) {
63
+ scan = { ran: false, reason: 'auto-scan-disabled' };
64
+ }
65
+ else if (isMissingGeneratedConfigError(error)) {
66
+ const result = await scanLocalCodebase({
67
+ ...scopeArgs,
68
+ projectType,
69
+ includePaths: args.includePaths,
70
+ excludePaths: args.excludePaths,
71
+ maxFiles: args.maxFiles,
72
+ });
73
+ scan = { ran: true, reason: 'missing-config', result };
74
+ freshness = await checkContextFreshness({ ...scopeArgs, limit: 50 });
75
+ }
76
+ else {
77
+ throw error;
78
+ }
79
+ }
80
+ const contextPack = await getContextPack({
81
+ ...scopeArgs,
82
+ task,
83
+ depth,
84
+ maxItems,
85
+ tokenBudget,
86
+ });
87
+ const requiredReads = selectSourceReadSteps(contextPack, maxSourceFiles);
88
+ const sourceReads = includeSourceReads && requiredReads.length
89
+ ? await Promise.all(requiredReads.map(async (step) => ({
90
+ tool: step.tool,
91
+ arguments: step.arguments,
92
+ result: await readCodebaseFile(step.arguments),
93
+ })))
94
+ : [];
95
+ return {
96
+ ok: true,
97
+ schema: 'scx.tool.prepare.result.1',
98
+ task,
99
+ rootPath,
100
+ outputDir: scopeArgs.outputDir,
101
+ projectType,
102
+ scan,
103
+ freshness,
104
+ policy: {
105
+ startHere: 'This response is the Schemyx-grounded starting point for the task. Use it before writing code.',
106
+ grounding: 'Do not invent product sections, component structures, classes, routes, APIs, data behavior, copy, or visual patterns that are not present in Schemyx context.',
107
+ toolUse: 'Use Schemyx local codebase tools and the included sourceReads for grounding. If required context is missing, call the returned next tools with the same rootPath/outputDir or stop and report what is missing.',
108
+ rawRepoReads: 'Do not bypass Schemyx by manually reading arbitrary repo files. Only read source through schemyx_read_codebase_file when Schemyx returns that source fallback.',
109
+ },
110
+ contextPack,
111
+ requiredReads,
112
+ sourceReads,
113
+ next: contextPack.next ?? [],
114
+ instructions: [
115
+ 'Use contextPack.items as the keyed lookup layer for patterns, routes, components, styles, APIs, and relationships.',
116
+ 'Use sourceReads as exact source-backed fallback for page/component composition before generating code.',
117
+ 'If contextPack.status is needs_review or required context is absent, do not guess; ask for review or run a narrower Schemyx lookup.',
118
+ 'Keep rootPath/outputDir on every follow-up Schemyx MCP call so local scans cannot bleed across projects.',
119
+ ],
120
+ };
121
+ }
122
+ function optionalProjectType(value) {
123
+ const projectType = (0, utils_1.stringArg)(value);
124
+ if (projectType === 'frontend' ||
125
+ projectType === 'backend' ||
126
+ projectType === 'full' ||
127
+ projectType === 'custom') {
128
+ return projectType;
129
+ }
130
+ return undefined;
131
+ }
132
+ function inferProjectTypeForTask(task) {
133
+ const terms = new Set(task
134
+ .toLowerCase()
135
+ .split(/[^a-z0-9_-]+/)
136
+ .filter(Boolean));
137
+ const hasAny = (...values) => values.some((value) => terms.has(value));
138
+ const wantsFrontend = hasAny('page', 'pages', 'landing', 'homepage', 'home', 'ui', 'component', 'components', 'button', 'buttons', 'form', 'forms', 'style', 'styles', 'theme', 'layout', 'hero', 'card', 'cards');
139
+ const wantsBackend = hasAny('api', 'apis', 'endpoint', 'endpoints', 'route', 'routes', 'backend', 'service', 'services', 'controller', 'controllers', 'auth', 'email', 'webhook', 'job', 'queue');
140
+ const wantsData = hasAny('database', 'db', 'model', 'models', 'schema', 'table', 'tables', 'migration', 'migrations', 'prisma', 'sql', 'data');
141
+ if (wantsFrontend && !wantsBackend && !wantsData) {
142
+ return 'frontend';
143
+ }
144
+ if ((wantsBackend || wantsData) && !wantsFrontend) {
145
+ return wantsData && !wantsBackend ? 'full' : 'backend';
146
+ }
147
+ return 'full';
148
+ }
149
+ function isMissingGeneratedConfigError(error) {
150
+ if (!error || typeof error !== 'object') {
151
+ return false;
152
+ }
153
+ const record = error;
154
+ const message = typeof record.message === 'string' ? record.message : '';
155
+ return /Generated codebase config not found/.test(message) || record.code === 'ENOENT';
156
+ }
157
+ function selectSourceReadSteps(contextPack, maxSourceFiles) {
158
+ if (!maxSourceFiles || !Array.isArray(contextPack.next)) {
159
+ return [];
160
+ }
161
+ const steps = [];
162
+ const seen = new Set();
163
+ for (const step of contextPack.next) {
164
+ if (!step || typeof step !== 'object') {
165
+ continue;
166
+ }
167
+ const record = step;
168
+ if (record.tool !== 'schemyx_read_codebase_file') {
169
+ continue;
170
+ }
171
+ const stepArgs = record.arguments;
172
+ if (!stepArgs || typeof stepArgs !== 'object' || Array.isArray(stepArgs)) {
173
+ continue;
174
+ }
175
+ const readArgs = stepArgs;
176
+ const pathKey = String(readArgs.path ?? readArgs.key ?? '');
177
+ if (!pathKey || seen.has(pathKey)) {
178
+ continue;
179
+ }
180
+ seen.add(pathKey);
181
+ steps.push({ tool: 'schemyx_read_codebase_file', arguments: readArgs });
182
+ if (steps.length >= maxSourceFiles) {
183
+ break;
184
+ }
185
+ }
186
+ return steps;
187
+ }
20
188
  async function scanLocalCodebase(args = {}) {
21
189
  const projectType = (0, utils_1.requiredProjectType)(args.projectType);
22
190
  const rootPath = (0, utils_1.resolveRootPath)(args.rootPath);
@@ -24,6 +192,10 @@ async function scanLocalCodebase(args = {}) {
24
192
  const excludePaths = (0, utils_1.stringArrayArg)(args.excludePaths);
25
193
  const outputDir = (0, utils_1.resolveOutputDir)(rootPath, (0, utils_1.stringArg)(args.outputDir) ?? constants_1.defaultOutputDir);
26
194
  const outputRelPath = (0, utils_1.stripLeadingDot)((0, utils_1.toPosixPath)(path.relative(rootPath, outputDir)));
195
+ const nextScopeArgs = {
196
+ rootPath,
197
+ outputDir: outputRelPath || constants_1.defaultOutputDir,
198
+ };
27
199
  const effectiveExcludePaths = (0, utils_1.unique)([
28
200
  ...excludePaths,
29
201
  ...(outputRelPath && outputRelPath !== '.' ? [outputRelPath] : []),
@@ -73,11 +245,11 @@ async function scanLocalCodebase(args = {}) {
73
245
  next: [
74
246
  {
75
247
  tool: 'schemyx_search_codebase',
76
- arguments: { query: 'button styles', limit: 5 },
248
+ arguments: { ...nextScopeArgs, query: 'button styles', limit: 5 },
77
249
  },
78
250
  {
79
251
  tool: 'schemyx_list_review_items',
80
- arguments: { status: 'open', limit: 10 },
252
+ arguments: { ...nextScopeArgs, status: 'open', limit: 10 },
81
253
  },
82
254
  ],
83
255
  };
@@ -97,6 +269,7 @@ async function searchCodebase(args = {}) {
97
269
  const offset = (0, utils_1.cursorToOffset)(args.cursor);
98
270
  const normalizedQuery = query?.toLowerCase();
99
271
  const terms = normalizedQuery?.split(/[^a-zA-Z0-9_-]+/).filter(Boolean) ?? [];
272
+ const scopeArgs = scopedToolArgs(args);
100
273
  let matches = recipes
101
274
  .filter((recipe) => !exactKey || recipe.k === exactKey)
102
275
  .filter((recipe) => !group || recipe.g === group)
@@ -133,6 +306,7 @@ async function searchCodebase(args = {}) {
133
306
  {
134
307
  tool: 'schemyx_get_context_pack',
135
308
  arguments: {
309
+ ...scopeArgs,
136
310
  key: resolved.resolvedKey,
137
311
  depth: (0, recipes_1.normalizeDepth)(args.depth),
138
312
  },
@@ -178,21 +352,30 @@ async function getCodebaseRecipe(args = {}) {
178
352
  };
179
353
  }
180
354
  async function getContextPack(args = {}) {
181
- const { manifest, recipesByKey, reviewItems } = await (0, storage_1.readGeneratedBundle)(args);
355
+ const { manifest, recipesByKey, edges, reviewItems } = await (0, storage_1.readGeneratedBundle)(args);
182
356
  const depth = (0, recipes_1.normalizeDepth)(args.depth);
183
357
  const maxItems = (0, utils_1.numberArg)(args.maxItems, 12, 1, 50);
184
358
  const tokenBudget = (0, utils_1.numberArg)(args.tokenBudget, 3000, 250, 20_000);
185
359
  const explicitKey = (0, utils_1.stringArg)(args.key);
186
360
  const task = (0, utils_1.stringArg)(args.task);
361
+ const terms = task
362
+ ?.toLowerCase()
363
+ .split(/[^a-zA-Z0-9_-]+/)
364
+ .filter(Boolean) ?? [];
365
+ const wantsPageContext = (0, recipes_1.wantsPageLevelContext)(terms);
366
+ const wantsPrimitiveContext = (0, recipes_1.wantsPrimitiveUiContext)(terms);
187
367
  const searchResult = explicitKey
188
368
  ? null
189
369
  : await searchCodebase({
190
370
  ...args,
191
371
  query: task,
192
- limit: 5,
372
+ limit: 12,
193
373
  depth,
194
374
  });
195
- const key = explicitKey ?? searchResult?.resolvedKey ?? searchResult?.matches[0]?.k;
375
+ const key = explicitKey ??
376
+ selectContextRootKey(searchResult?.matches.map((match) => match.k) ?? [], recipesByKey, terms) ??
377
+ searchResult?.resolvedKey ??
378
+ searchResult?.matches[0]?.k;
196
379
  if (!key) {
197
380
  return {
198
381
  ok: true,
@@ -216,12 +399,13 @@ async function getContextPack(args = {}) {
216
399
  }
217
400
  const selected = new Map();
218
401
  (0, recipes_1.addPackRecipe)(selected, rootRecipe, explicitKey ? 'requested key' : 'resolved lookup target');
219
- for (const dependencyKey of rootRecipe.d) {
220
- const dependency = recipesByKey.get(dependencyKey);
221
- if (dependency) {
222
- (0, recipes_1.addPackRecipe)(selected, dependency, 'direct dependency');
223
- }
402
+ if (wantsPageContext && !wantsPrimitiveContext) {
403
+ addGraphContext(selected, recipesByKey, edges, rootRecipe.k);
404
+ addCompositionDependencies(selected, recipesByKey, 'page composition dependency', terms);
405
+ addGraphContextForSelected(selected, recipesByKey, edges);
406
+ addCompositionDependencies(selected, recipesByKey, 'page composition dependency', terms);
224
407
  }
408
+ addRecipeDependencies(selected, recipesByKey, rootRecipe, 'direct dependency', terms);
225
409
  if (rootRecipe.g === 'cluster' && Array.isArray(rootRecipe.v.members)) {
226
410
  for (const memberKey of rootRecipe.v.members.filter((item) => typeof item === 'string')) {
227
411
  const member = recipesByKey.get(memberKey);
@@ -236,9 +420,12 @@ async function getContextPack(args = {}) {
236
420
  (0, recipes_1.addPackRecipe)(selected, usedBy, 'used-by context');
237
421
  }
238
422
  }
239
- const items = Array.from(selected.values())
240
- .slice(0, maxItems)
241
- .map((item) => ({
423
+ const selectedValues = Array.from(selected.values());
424
+ const orderedValues = wantsPageContext && !wantsPrimitiveContext
425
+ ? orderPackItems(selectedValues, rootRecipe.k, terms)
426
+ : selectedValues;
427
+ const packItems = orderedValues.slice(0, maxItems);
428
+ const items = packItems.map((item) => ({
242
429
  k: item.recipe.k,
243
430
  why: item.why,
244
431
  recipe: (0, recipes_1.trimRecipeForDepth)(item.recipe, depth),
@@ -250,6 +437,19 @@ async function getContextPack(args = {}) {
250
437
  key: `pack.${key}.${depth}`,
251
438
  status: rootRecipe.status === 'needs_review' ? 'needs_review' : 'resolved',
252
439
  depth,
440
+ policy: {
441
+ grounding: 'Do not invent product sections, component structures, styles, or route behavior from this pack. If the needed page or component contract is not present, call the suggested next tools before generating code.',
442
+ rootKind: String(rootRecipe.v.kind ?? rootRecipe.g),
443
+ ...(wantsPageContext && !wantsPrimitiveContext
444
+ ? {
445
+ pageBuild: true,
446
+ requiredRoot: rootRecipe.g === 'route' || (0, recipes_1.isPageCompositionRecipe)(rootRecipe)
447
+ ? 'route-or-page-composition'
448
+ : 'supporting-recipe',
449
+ sourceFallback: 'For exact page or component generation, use the suggested schemyx_read_codebase_file calls before inventing any missing structure, copy, classes, or component composition.',
450
+ }
451
+ : {}),
452
+ },
253
453
  budget: {
254
454
  targetTokens: tokenBudget,
255
455
  estimatedTokens: (0, utils_1.estimateTokens)(items),
@@ -257,8 +457,239 @@ async function getContextPack(args = {}) {
257
457
  },
258
458
  items,
259
459
  review: reviewItems.filter((item) => item.candidates.includes(key)),
460
+ next: contextPackNextSteps(args, rootRecipe, packItems.map((item) => item.recipe), wantsPageContext),
461
+ };
462
+ }
463
+ function scopedToolArgs(args) {
464
+ const rootPath = (0, utils_1.stringArg)(args.rootPath);
465
+ const outputDir = (0, utils_1.stringArg)(args.outputDir) ?? constants_1.defaultOutputDir;
466
+ return {
467
+ ...(rootPath ? { rootPath } : {}),
468
+ outputDir,
260
469
  };
261
470
  }
471
+ function selectContextRootKey(candidateKeys, recipesByKey, terms) {
472
+ if (!candidateKeys.length) {
473
+ return undefined;
474
+ }
475
+ if (!(0, recipes_1.wantsPageLevelContext)(terms) || (0, recipes_1.wantsPrimitiveUiContext)(terms)) {
476
+ return candidateKeys[0];
477
+ }
478
+ const candidates = candidateKeys
479
+ .map((key) => recipesByKey.get(key))
480
+ .filter((recipe) => Boolean(recipe));
481
+ const exactRoute = candidates.find((recipe) => recipe.g === 'route' && (0, recipes_1.exactRouteTermsMatch)(recipe, terms));
482
+ if (exactRoute) {
483
+ return exactRoute.k;
484
+ }
485
+ const pageComposition = candidates.find(recipes_1.isPageCompositionRecipe);
486
+ if (pageComposition) {
487
+ return pageComposition.k;
488
+ }
489
+ const route = candidates.find((recipe) => recipe.g === 'route');
490
+ if (route) {
491
+ return route.k;
492
+ }
493
+ return candidateKeys[0];
494
+ }
495
+ function addGraphContext(selected, recipesByKey, edges, rootKey) {
496
+ const allowedEdgeTypes = new Set([
497
+ 'renders',
498
+ 'uses_ui_composition',
499
+ 'uses_style',
500
+ 'contains',
501
+ 'exports',
502
+ ]);
503
+ const queue = [{ key: rootKey, depth: 0 }];
504
+ const visited = new Set([rootKey]);
505
+ while (queue.length) {
506
+ const current = queue.shift();
507
+ if (!current || current.depth >= 3) {
508
+ continue;
509
+ }
510
+ const outgoing = edges
511
+ .filter((edge) => edge.from === current.key && allowedEdgeTypes.has(edge.type))
512
+ .sort((a, b) => graphEdgePriority(a) - graphEdgePriority(b));
513
+ for (const edge of outgoing) {
514
+ if (visited.has(edge.to)) {
515
+ continue;
516
+ }
517
+ visited.add(edge.to);
518
+ const recipe = recipesByKey.get(edge.to);
519
+ if (recipe) {
520
+ (0, recipes_1.addPackRecipe)(selected, recipe, `graph ${edge.type}`);
521
+ }
522
+ queue.push({ key: edge.to, depth: current.depth + 1 });
523
+ }
524
+ }
525
+ }
526
+ function graphEdgePriority(edge) {
527
+ switch (edge.type) {
528
+ case 'renders':
529
+ return 0;
530
+ case 'uses_ui_composition':
531
+ return 1;
532
+ case 'uses_style':
533
+ return 2;
534
+ case 'contains':
535
+ return 3;
536
+ case 'exports':
537
+ return 4;
538
+ default:
539
+ return 10;
540
+ }
541
+ }
542
+ function addCompositionDependencies(selected, recipesByKey, why, terms) {
543
+ const compositions = Array.from(selected.values())
544
+ .map((item) => item.recipe)
545
+ .filter(recipes_1.isPageCompositionRecipe);
546
+ for (const composition of compositions) {
547
+ addRecipeDependencies(selected, recipesByKey, composition, why, terms);
548
+ }
549
+ }
550
+ function addRecipeDependencies(selected, recipesByKey, recipe, why, terms = []) {
551
+ for (const dependencyKey of orderDependencyKeys(recipe.d, terms)) {
552
+ const dependency = recipesByKey.get(dependencyKey);
553
+ if (dependency) {
554
+ (0, recipes_1.addPackRecipe)(selected, dependency, why);
555
+ }
556
+ }
557
+ }
558
+ function addGraphContextForSelected(selected, recipesByKey, edges) {
559
+ const seeds = Array.from(selected.keys()).filter((key) => /^(route\.|component\.(SitePage|HomePage|PageHero))/.test(key));
560
+ for (const key of seeds) {
561
+ addGraphContext(selected, recipesByKey, edges, key);
562
+ }
563
+ }
564
+ function orderDependencyKeys(keys, terms = []) {
565
+ return [...keys].sort((a, b) => dependencyPriority(a, terms) - dependencyPriority(b, terms) || a.localeCompare(b));
566
+ }
567
+ function dependencyPriority(key, terms = []) {
568
+ const keyTerms = key
569
+ .toLowerCase()
570
+ .split(/[^a-z0-9]+/)
571
+ .filter(Boolean);
572
+ const termSet = new Set(terms);
573
+ const requestedHits = keyTerms.filter((term) => termSet.has(term)).length;
574
+ if (requestedHits)
575
+ return -requestedHits;
576
+ if (/component\.(HomePage|SitePage)$/.test(key))
577
+ return 0;
578
+ if (/route\.(en|root|SitePage)$/.test(key))
579
+ return 1;
580
+ if (/component\.(HeroVisual|HeroSignal|PageHero)$/.test(key))
581
+ return 2;
582
+ if (/rule\.ui\.composition/.test(key))
583
+ return 2;
584
+ if (/rule\.ui\.(section|layout|badge|heading|button|card)/.test(key))
585
+ return 3;
586
+ if (/component\.(Header|SiteFrame|SectionIntro|ServiceCard)/.test(key))
587
+ return 4;
588
+ if (/component\.(ContactPage|MediaPage|NetworkPage|SolutionsPage)$/.test(key))
589
+ return 12;
590
+ if (/component\./.test(key))
591
+ return 5;
592
+ if (/style\./.test(key))
593
+ return 8;
594
+ if (/file\./.test(key))
595
+ return 9;
596
+ return 6;
597
+ }
598
+ function orderPackItems(values, rootKey, terms) {
599
+ return [...values].sort((a, b) => packItemPriority(a.recipe, rootKey, terms) - packItemPriority(b.recipe, rootKey, terms) ||
600
+ a.recipe.k.localeCompare(b.recipe.k));
601
+ }
602
+ function packItemPriority(recipe, rootKey, terms) {
603
+ const key = recipe.k;
604
+ if (key === rootKey)
605
+ return 0;
606
+ if (recipe.g === 'route' && (0, recipes_1.exactRouteTermsMatch)(recipe, terms))
607
+ return 1;
608
+ if ((0, recipes_1.isPageCompositionRecipe)(recipe))
609
+ return 2;
610
+ if (/component\.HomePage$/.test(key))
611
+ return 3;
612
+ if (/component\.(HeroVisual|HeroSignal|PageHero)$/.test(key))
613
+ return 4;
614
+ if (/component\.(SitePage|SiteFrame|Header)$/.test(key))
615
+ return 5;
616
+ if (/rule\.ui\.(section|layout|badge|heading|button|card)/.test(key))
617
+ return 6;
618
+ if (/component\.(SectionIntro|ServiceCard|PillarCard|CtaSection)$/.test(key))
619
+ return 7;
620
+ if (/route\./.test(key))
621
+ return 8;
622
+ if (/component\.(ContactPage|MediaPage|NetworkPage|SolutionsPage)$/.test(key))
623
+ return 30;
624
+ if (/component\./.test(key))
625
+ return 12;
626
+ if (/style\./.test(key))
627
+ return 35;
628
+ if (/file\./.test(key))
629
+ return 36;
630
+ if (/cluster\./.test(key))
631
+ return 45;
632
+ return 20;
633
+ }
634
+ function contextPackNextSteps(args, rootRecipe, itemRecipes, wantsPageContext) {
635
+ const scopeArgs = scopedToolArgs(args);
636
+ const sourceRecipes = uniqueRecipesByPath([rootRecipe, ...itemRecipes])
637
+ .filter((recipe) => recipe.p)
638
+ .slice(0, wantsPageContext ? 8 : 3);
639
+ const exactKeys = (0, utils_1.unique)([
640
+ rootRecipe.k,
641
+ ...itemRecipes
642
+ .map((recipe) => recipe.k)
643
+ .filter((key) => /^rule\.ui\.composition|^component\.|^route\./.test(key))
644
+ .slice(0, 6),
645
+ ]);
646
+ return [
647
+ ...(wantsPageContext
648
+ ? sourceRecipes.map((recipe) => ({
649
+ tool: 'schemyx_read_codebase_file',
650
+ arguments: {
651
+ ...scopeArgs,
652
+ path: recipe.p,
653
+ maxBytes: 200000,
654
+ },
655
+ }))
656
+ : []),
657
+ ...exactKeys.map((key) => ({
658
+ tool: 'schemyx_get_codebase_recipe',
659
+ arguments: {
660
+ ...scopeArgs,
661
+ key,
662
+ depth: wantsPageContext ? 'deep' : 'standard',
663
+ includeDeps: true,
664
+ maxRelated: 20,
665
+ },
666
+ })),
667
+ ...(!wantsPageContext && rootRecipe.p
668
+ ? [
669
+ {
670
+ tool: 'schemyx_read_codebase_file',
671
+ arguments: {
672
+ ...scopeArgs,
673
+ path: rootRecipe.p,
674
+ maxBytes: 120000,
675
+ },
676
+ },
677
+ ]
678
+ : []),
679
+ ];
680
+ }
681
+ function uniqueRecipesByPath(recipes) {
682
+ const seen = new Set();
683
+ const uniqueRecipes = [];
684
+ for (const recipe of recipes) {
685
+ if (!recipe.p || seen.has(recipe.p)) {
686
+ continue;
687
+ }
688
+ seen.add(recipe.p);
689
+ uniqueRecipes.push(recipe);
690
+ }
691
+ return uniqueRecipes;
692
+ }
262
693
  async function getCodebaseGraph(args = {}) {
263
694
  const { manifest, nodes, edges } = await (0, storage_1.readGeneratedBundle)(args);
264
695
  const key = (0, utils_1.stringArg)(args.key);
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/codebase-scanner/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/codebase-scanner/index.ts"],"names":[],"mappings":"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"}