@gulibs/safe-coder 0.0.22 → 0.0.24

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"skill-generator.js","sourceRoot":"","sources":["../../src/documentation/skill-generator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"skill-generator.js","sourceRoot":"","sources":["../../src/documentation/skill-generator.ts"],"names":[],"mappings":"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"}
@@ -25,11 +25,23 @@ export interface WebDocumentationPage {
25
25
  language: string;
26
26
  }>;
27
27
  }
28
+ export interface SPADetectionResult {
29
+ isSPA: boolean;
30
+ confidence: 'high' | 'medium' | 'low';
31
+ indicators: string[];
32
+ suggestion?: string;
33
+ }
28
34
  export declare class WebDocumentationBrowser {
29
35
  private httpClient;
30
36
  private readonly DOCUMENTATION_INDICATORS;
31
37
  private readonly NON_DOCUMENTATION_INDICATORS;
38
+ private readonly SPA_INDICATORS;
32
39
  constructor(httpClient?: HttpClient);
40
+ /**
41
+ * Detect if a website is a Single Page Application (SPA)
42
+ * that requires JavaScript rendering
43
+ */
44
+ detectSPA(url: string, html?: string): Promise<SPADetectionResult>;
33
45
  /**
34
46
  * Check if a URL is likely a documentation page
35
47
  */
@@ -1 +1 @@
1
- {"version":3,"file":"web-doc-browser.d.ts","sourceRoot":"","sources":["../../src/documentation/web-doc-browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,KAAK,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,UAAU,EAAE,OAAO,CAAC;KACrB,CAAC,CAAC;IACH,QAAQ,EAAE,KAAK,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,CAAC,EAAE,MAAM,CAAC;KACb,CAAC,CAAC;IACH,WAAW,EAAE,KAAK,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;CACJ;AAED,qBAAa,uBAAuB;IAClC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAgBvC;IAEF,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAI3C;gBAEU,UAAU,CAAC,EAAE,UAAU;IAInC;;OAEG;IACG,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2CxD;;;OAGG;IACG,UAAU,CACd,GAAG,EAAE,MAAM,EACX,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,oBAAoB,CAAC;IAsFhC;;OAEG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAU9E;;OAEG;IACH,OAAO,CAAC,SAAS;IAgTjB;;OAEG;IACH,OAAO,CAAC,cAAc;CA6BvB"}
1
+ {"version":3,"file":"web-doc-browser.d.ts","sourceRoot":"","sources":["../../src/documentation/web-doc-browser.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,MAAM,WAAW,oBAAoB;IACnC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,OAAO,CAAC;IACzB,eAAe,EAAE,KAAK,CAAC;QACrB,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,UAAU,EAAE,OAAO,CAAC;KACrB,CAAC,CAAC;IACH,QAAQ,EAAE,KAAK,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IACH,iBAAiB,EAAE,MAAM,CAAC;IAC1B,QAAQ,EAAE,KAAK,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,CAAC,EAAE,MAAM,CAAC;KACb,CAAC,CAAC;IACH,WAAW,EAAE,KAAK,CAAC;QACjB,IAAI,EAAE,MAAM,CAAC;QACb,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC,CAAC;CACJ;AAED,MAAM,WAAW,kBAAkB;IACjC,KAAK,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IACtC,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,uBAAuB;IAClC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAgBvC;IAEF,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAI3C;IAGF,OAAO,CAAC,QAAQ,CAAC,cAAc,CAc7B;gBAEU,UAAU,CAAC,EAAE,UAAU;IAInC;;;OAGG;IACG,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAiFxE;;OAEG;IACG,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2CxD;;;OAGG;IACG,UAAU,CACd,GAAG,EAAE,MAAM,EACX,KAAK,CAAC,EAAE,MAAM,GACb,OAAO,CAAC,oBAAoB,CAAC;IAiGhC;;OAEG;IACG,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAU9E;;OAEG;IACH,OAAO,CAAC,SAAS;IAgTjB;;OAEG;IACH,OAAO,CAAC,cAAc;CA6BvB"}
@@ -24,9 +24,102 @@ export class WebDocumentationBrowser {
24
24
  /login|signup|register|checkout|cart|payment/i,
25
25
  /404|not found|error/i,
26
26
  ];
27
+ // SPA detection patterns
28
+ SPA_INDICATORS = [
29
+ // React/Vue/Angular indicators
30
+ /<div[^>]*id=["'](?:root|app|__next|gatsby-focus-wrapper|___gatsby)[^"']*["']/i,
31
+ /<div[^>]*id=["'][^"']*root[^"']*["']/i,
32
+ /react|vue|angular|svelte/i,
33
+ // Framework-specific patterns
34
+ /__NEXT_DATA__|gatsby|nuxt|next\.js/i,
35
+ /<script[^>]*src=["'][^"']*(?:react|vue|angular|svelte)[^"']*["']/i,
36
+ // Minimal HTML with script tags (typical SPA structure)
37
+ /<body[^>]*>[\s\S]{0,500}<script[^>]*src=["'][^"']*app[^"']*\.js["']/i,
38
+ // Empty or minimal content with scripts
39
+ /<body[^>]*>[\s\S]{0,1000}<script[^>]*type=["']module["']/i,
40
+ // Common SPA meta tags
41
+ /<meta[^>]*name=["']generator["'][^>]*content=["'][^"']*(?:gatsby|next|nuxt|vuepress)[^"']*["']/i,
42
+ ];
27
43
  constructor(httpClient) {
28
44
  this.httpClient = httpClient || new HttpClient();
29
45
  }
46
+ /**
47
+ * Detect if a website is a Single Page Application (SPA)
48
+ * that requires JavaScript rendering
49
+ */
50
+ async detectSPA(url, html) {
51
+ const indicators = [];
52
+ let confidence = 'low';
53
+ try {
54
+ // If HTML not provided, fetch a sample
55
+ if (!html) {
56
+ const response = await this.httpClient.get(url, {
57
+ timeout: 5000,
58
+ headers: {
59
+ 'User-Agent': 'Safe-Coder-MCP/1.0.0',
60
+ 'Accept': 'text/html',
61
+ },
62
+ maxContentLength: 100000, // 100KB for SPA detection
63
+ });
64
+ html = typeof response.data === 'string' ? response.data : String(response.data);
65
+ }
66
+ // Check for SPA indicators
67
+ for (const pattern of this.SPA_INDICATORS) {
68
+ if (pattern.test(html)) {
69
+ const match = html.match(pattern);
70
+ if (match) {
71
+ const indicator = match[0].substring(0, 100);
72
+ indicators.push(indicator);
73
+ }
74
+ }
75
+ }
76
+ // Check for minimal content with many script tags (SPA pattern)
77
+ const scriptCount = (html.match(/<script[^>]*>/gi) || []).length;
78
+ const bodyContent = html.match(/<body[^>]*>([\s\S]*?)<\/body>/i)?.[1] || '';
79
+ const bodyTextLength = bodyContent.replace(/<[^>]+>/g, '').trim().length;
80
+ if (scriptCount >= 3 && bodyTextLength < 500) {
81
+ indicators.push(`Minimal content (${bodyTextLength} chars) with ${scriptCount} script tags`);
82
+ confidence = 'high';
83
+ }
84
+ // Check for React/Vue/Angular specific patterns
85
+ if (/react|vue|angular|svelte/i.test(html)) {
86
+ indicators.push('Framework detected in HTML');
87
+ confidence = confidence === 'low' ? 'medium' : 'high';
88
+ }
89
+ // Check for Next.js/Gatsby specific patterns
90
+ if (/__NEXT_DATA__|gatsby|next\.js/i.test(html)) {
91
+ indicators.push('SSR/SSG framework detected');
92
+ confidence = 'high';
93
+ }
94
+ // Determine confidence level
95
+ if (indicators.length >= 3) {
96
+ confidence = 'high';
97
+ }
98
+ else if (indicators.length >= 2) {
99
+ confidence = 'medium';
100
+ }
101
+ const suggestion = confidence !== 'low'
102
+ ? 'This appears to be a Single Page Application (SPA) that requires JavaScript rendering. HTTP-only crawling may not capture all content. Consider using browser automation tools (like Cursor/Claude browser tools) to get fully rendered HTML before processing.'
103
+ : undefined;
104
+ return {
105
+ isSPA: confidence !== 'low',
106
+ confidence,
107
+ indicators: indicators.slice(0, 5), // Limit to 5 indicators
108
+ suggestion,
109
+ };
110
+ }
111
+ catch (error) {
112
+ logger.debug('SPA detection failed', {
113
+ url,
114
+ error: error instanceof Error ? error.message : String(error),
115
+ });
116
+ return {
117
+ isSPA: false,
118
+ confidence: 'low',
119
+ indicators: [],
120
+ };
121
+ }
122
+ }
30
123
  /**
31
124
  * Check if a URL is likely a documentation page
32
125
  */
@@ -98,6 +191,16 @@ export class WebDocumentationBrowser {
98
191
  if (!isDoc) {
99
192
  throw new Error('The provided URL does not appear to be a documentation page. Please provide a documentation URL (e.g., /docs/, /documentation/, /guide/, /api/, etc.)');
100
193
  }
194
+ // Detect SPA and warn if detected
195
+ const spaDetection = await this.detectSPA(fullUrl, html);
196
+ if (spaDetection.isSPA && spaDetection.confidence !== 'low') {
197
+ logger.warn('SPA detected - content may be incomplete', {
198
+ url: fullUrl,
199
+ confidence: spaDetection.confidence,
200
+ indicators: spaDetection.indicators,
201
+ suggestion: spaDetection.suggestion,
202
+ });
203
+ }
101
204
  // Parse HTML
102
205
  const parsed = this.parseHTML(html, baseUrl, fullUrl);
103
206
  // Filter content by query if provided
@@ -1 +1 @@
1
- {"version":3,"file":"web-doc-browser.js","sourceRoot":"","sources":["../../src/documentation/web-doc-browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"web-doc-browser.js","sourceRoot":"","sources":["../../src/documentation/web-doc-browser.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAiBA,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,aAAa,CAA0B;IAC/C,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,UAAU,CAAwB;;IAoC1C,OAAO,CAAC,UAAU;IAgjBlB,OAAO,CAAC,cAAc;IAqDhB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAO3B"}
1
+ {"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/server/mcp-server.ts"],"names":[],"mappings":"AAiBA,qBAAa,kBAAkB;IAC7B,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,oBAAoB,CAAuB;IACnD,OAAO,CAAC,aAAa,CAA0B;IAC/C,OAAO,CAAC,UAAU,CAAuB;IACzC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,cAAc,CAAwB;IAC9C,OAAO,CAAC,UAAU,CAAwB;;IAoC1C,OAAO,CAAC,UAAU;IA8tBlB,OAAO,CAAC,cAAc;IAqDhB,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;CAO3B"}
@@ -216,7 +216,7 @@ export class SafeCoderMCPServer {
216
216
  status: 'running',
217
217
  uptime: process.uptime(),
218
218
  version,
219
- tools: ['get_documentation', 'browse_documentation', 'crawl_documentation', 'detect_errors', 'validate_code', 'resolve_error', 'get_status', 'get_version'],
219
+ tools: ['get_documentation', 'browse_documentation', 'crawl_documentation', 'detect_errors', 'validate_code', 'resolve_error', 'get_status', 'get_version', 'detect_spa'],
220
220
  cacheSize: cache.size(),
221
221
  pid: process.pid,
222
222
  };
@@ -407,14 +407,17 @@ export class SafeCoderMCPServer {
407
407
  // Register crawl_documentation tool
408
408
  this.server.registerTool('crawl_documentation', {
409
409
  title: 'Crawl Documentation and Generate Agent Skill',
410
- description: 'Recursively crawl documentation websites starting from a root URL using HTTP client (axios). Follows documentation links, extracts content from multiple pages, and generates structured agent skill output in Claude skill format (SKILL.md with references/ directory). For SPA sites that require JavaScript rendering, use Cursor/Claude built-in browser tools (browser_navigate, browser_snapshot) to get rendered HTML first, then process it. The tool automatically detects documentation boundaries, follows links within the same domain and documentation paths, and generates Markdown-formatted skill output matching Skill_Seekers format. Trigger phrases (English): "crawl documentation", "generate skill from docs", "scrape documentation site", "create agent skill from", "crawl docs from". Trigger phrases (Chinese): "爬取文档", "生成技能", "抓取文档网站", "从文档生成技能", "递归抓取文档".',
410
+ description: 'Recursively crawl websites starting from a root URL using HTTP client (axios). Can crawl any website with extractable content, not just documentation. Follows links within the same domain, extracts content from multiple pages, and generates structured agent skill output in Claude skill format (SKILL.md with references/ directory). For SPA sites that require JavaScript rendering, set useBrowserAutomation=true to leverage Cursor/Claude built-in browser tools. The tool automatically detects content boundaries, follows links within the same domain, and generates Markdown-formatted skill output. Returns abandon flag if content is insufficient for skill generation. Trigger phrases (English): "crawl website", "generate skill from", "scrape site", "create agent skill from", "crawl from". Trigger phrases (Chinese): "爬取网站", "生成技能", "抓取网站", "从网站生成技能", "递归抓取".',
411
411
  inputSchema: {
412
- url: z.string().describe('Root documentation URL to start crawling from'),
412
+ url: z.string().describe('Root URL to start crawling from (any website with extractable content)'),
413
413
  maxDepth: z.number().optional().describe('Maximum crawl depth (default: 3)'),
414
414
  maxPages: z.number().optional().describe('Maximum number of pages to crawl (default: 50)'),
415
415
  includePaths: z.array(z.string()).optional().describe('Additional path patterns to include in crawl'),
416
416
  excludePaths: z.array(z.string()).optional().describe('Path patterns to exclude from crawl'),
417
417
  rateLimit: z.number().optional().describe('Delay in milliseconds between requests (default: 500)'),
418
+ maxRetries: z.number().optional().describe('Maximum number of retries for failed requests (default: 2)'),
419
+ retryDelay: z.number().optional().describe('Delay in milliseconds before retry (default: 1000)'),
420
+ useBrowserAutomation: z.boolean().optional().describe('Use agent\'s browser tools (browser_navigate, browser_snapshot, browser_eval) for SPA sites that require JavaScript rendering (default: false). When enabled, the agent will use its built-in browser automation capabilities.'),
418
421
  outputDir: z.string().optional().describe('Directory to save skill files (default: no file saved, only returns content)'),
419
422
  filename: z.string().optional().describe('Custom filename for skill file (without extension)'),
420
423
  },
@@ -436,10 +439,12 @@ export class SafeCoderMCPServer {
436
439
  url: z.string(),
437
440
  error: z.string(),
438
441
  })),
442
+ abandoned: z.boolean().optional(),
443
+ abandonReason: z.enum(['insufficient_content', 'media_only', 'empty_pages', 'no_structured_content']).optional(),
439
444
  linkDiscoveryStats: z.object({
440
445
  totalLinksFound: z.number(),
441
446
  linksFiltered: z.object({
442
- notDocumentation: z.number(),
447
+ notContent: z.number(), // Renamed from notDocumentation
443
448
  externalDomain: z.number(),
444
449
  alreadyVisited: z.number(),
445
450
  excludedPattern: z.number(),
@@ -459,18 +464,101 @@ export class SafeCoderMCPServer {
459
464
  }, async (args) => {
460
465
  const requestId = logger.generateRequestId();
461
466
  const startTime = Date.now();
462
- const { url, maxDepth, maxPages, includePaths, excludePaths, rateLimit, outputDir, filename } = args;
463
- logger.toolInvoked('crawl_documentation', requestId, { url, maxDepth, maxPages, outputDir });
467
+ const { url, maxDepth, maxPages, includePaths, excludePaths, rateLimit, maxRetries, retryDelay, useBrowserAutomation, outputDir, filename } = args;
468
+ logger.toolInvoked('crawl_documentation', requestId, { url, maxDepth, maxPages, maxRetries, outputDir });
464
469
  try {
465
- // Crawl documentation using HTTP-only mode
466
- // For SPA sites, AI should use Cursor/Claude browser tools first
470
+ // Crawl website (permissive - any website with extractable content)
471
+ // For SPA sites, use browser automation if requested
472
+ let browserAutomationNeeded = false;
473
+ let spaDetectionResult = null;
474
+ if (useBrowserAutomation) {
475
+ logger.info('Browser automation requested - checking if SPA detection is needed', { url });
476
+ // Detect SPA first to determine if browser automation is needed
477
+ try {
478
+ const spaDetection = await this.webDocBrowser.detectSPA(url);
479
+ spaDetectionResult = {
480
+ isSPA: spaDetection.isSPA,
481
+ confidence: spaDetection.confidence,
482
+ suggestion: spaDetection.suggestion,
483
+ };
484
+ if (spaDetection.isSPA && spaDetection.confidence !== 'low') {
485
+ browserAutomationNeeded = true;
486
+ logger.info('SPA detected - browser automation is required', {
487
+ url,
488
+ confidence: spaDetection.confidence,
489
+ indicators: spaDetection.indicators,
490
+ });
491
+ }
492
+ }
493
+ catch (error) {
494
+ logger.debug('SPA detection failed, will proceed with HTTP-only crawling', {
495
+ url,
496
+ error: error instanceof Error ? error.message : String(error),
497
+ });
498
+ }
499
+ }
467
500
  const crawlResult = await this.docCrawler.crawl(url, {
468
501
  maxDepth,
469
502
  maxPages,
470
503
  includePaths,
471
504
  excludePaths,
472
505
  rateLimit,
506
+ maxRetries,
507
+ retryDelay,
508
+ useBrowserAutomation: useBrowserAutomation || false,
473
509
  });
510
+ // If browser automation was requested and SPA detected, provide clear guidance
511
+ if (useBrowserAutomation && browserAutomationNeeded) {
512
+ logger.warn('Browser automation is required for this SPA site', {
513
+ url,
514
+ message: 'The agent needs to use browser tools (browser_navigate, browser_snapshot, browser_eval) to render JavaScript content before crawling',
515
+ });
516
+ }
517
+ // Check if content was abandoned (insufficient for skill generation)
518
+ if (crawlResult.abandoned) {
519
+ logger.warn('Crawl completed but content is insufficient for skill generation', {
520
+ reason: crawlResult.abandonReason,
521
+ pagesCrawled: crawlResult.totalPages,
522
+ });
523
+ // If browser automation was requested but not used, suggest it
524
+ let suggestion = `Consider crawling more pages or a different website.`;
525
+ if (useBrowserAutomation && browserAutomationNeeded && spaDetectionResult?.isSPA) {
526
+ suggestion = `This appears to be a SPA site. Please use browser tools (browser_navigate, browser_snapshot, browser_eval) to render the page content first, then try crawling again. Steps: 1) Use browser_navigate to load the page, 2) Use browser_snapshot to get rendered HTML, 3) Use browser_eval to click navigation elements and discover more content, 4) Then use crawl_documentation with the rendered content.`;
527
+ }
528
+ return {
529
+ content: [
530
+ {
531
+ type: 'text',
532
+ text: JSON.stringify({
533
+ abandoned: true,
534
+ abandonReason: crawlResult.abandonReason,
535
+ message: `Cannot generate skill: ${crawlResult.abandonReason}. Pages crawled: ${crawlResult.totalPages}, but content is insufficient. ${suggestion}`,
536
+ browserAutomationNeeded: browserAutomationNeeded || false,
537
+ spaDetected: spaDetectionResult?.isSPA || false,
538
+ crawlStats: {
539
+ totalPages: crawlResult.totalPages,
540
+ maxDepthReached: crawlResult.maxDepthReached,
541
+ errors: crawlResult.errors,
542
+ linkDiscoveryStats: crawlResult.linkDiscoveryStats,
543
+ },
544
+ }, null, 2),
545
+ },
546
+ ],
547
+ structuredContent: {
548
+ abandoned: true,
549
+ abandonReason: crawlResult.abandonReason,
550
+ message: `Cannot generate skill: ${crawlResult.abandonReason}. Pages crawled: ${crawlResult.totalPages}, but content is insufficient. ${suggestion}`,
551
+ browserAutomationNeeded: browserAutomationNeeded || false,
552
+ spaDetected: spaDetectionResult?.isSPA || false,
553
+ crawlStats: {
554
+ totalPages: crawlResult.totalPages,
555
+ maxDepthReached: crawlResult.maxDepthReached,
556
+ errors: crawlResult.errors,
557
+ linkDiscoveryStats: crawlResult.linkDiscoveryStats,
558
+ },
559
+ },
560
+ };
561
+ }
474
562
  // Generate skill (pass filename for skill name generation)
475
563
  const skill = this.skillGenerator.generateSkill(crawlResult, url, filename);
476
564
  // Save to file if outputDir is provided
@@ -500,11 +588,24 @@ export class SafeCoderMCPServer {
500
588
  }
501
589
  const duration = Date.now() - startTime;
502
590
  logger.toolCompleted('crawl_documentation', requestId, duration, true);
591
+ // Add browser automation guidance if needed
592
+ const responseMessage = [];
593
+ if (useBrowserAutomation && browserAutomationNeeded) {
594
+ responseMessage.push(`\n⚠️ Browser Automation Required:\n` +
595
+ `This site is a SPA (Single Page Application) that requires JavaScript rendering.\n` +
596
+ `To properly crawl this site, you need to:\n` +
597
+ `1. Use browser_navigate to load the page: ${url}\n` +
598
+ `2. Use browser_snapshot to get the fully rendered HTML after JavaScript executes\n` +
599
+ `3. Use browser_eval to interact with navigation elements (click menus, expand sections)\n` +
600
+ `4. Extract links from the rendered DOM\n` +
601
+ `5. Repeat for discovered links\n\n` +
602
+ `The current crawl used HTTP-only mode, which may have missed JavaScript-rendered content.\n`);
603
+ }
503
604
  return {
504
605
  content: [
505
606
  {
506
607
  type: 'text',
507
- text: JSON.stringify({
608
+ text: (responseMessage.join('') + JSON.stringify({
508
609
  skillMd: skill.skillMd,
509
610
  metadata: skill.metadata,
510
611
  crawlStats: {
@@ -512,10 +613,14 @@ export class SafeCoderMCPServer {
512
613
  maxDepthReached: crawlResult.maxDepthReached,
513
614
  errors: crawlResult.errors,
514
615
  linkDiscoveryStats: crawlResult.linkDiscoveryStats,
616
+ abandoned: crawlResult.abandoned || false,
617
+ abandonReason: crawlResult.abandonReason,
515
618
  },
619
+ browserAutomationNeeded: browserAutomationNeeded || false,
620
+ spaDetected: spaDetectionResult?.isSPA || false,
516
621
  files,
517
622
  saveError,
518
- }, null, 2),
623
+ }, null, 2)),
519
624
  },
520
625
  ],
521
626
  structuredContent: {
@@ -526,7 +631,21 @@ export class SafeCoderMCPServer {
526
631
  maxDepthReached: crawlResult.maxDepthReached,
527
632
  errors: crawlResult.errors,
528
633
  linkDiscoveryStats: crawlResult.linkDiscoveryStats,
634
+ abandoned: crawlResult.abandoned || false,
635
+ abandonReason: crawlResult.abandonReason,
529
636
  },
637
+ browserAutomationNeeded: browserAutomationNeeded || false,
638
+ spaDetected: spaDetectionResult?.isSPA || false,
639
+ browserAutomationGuidance: useBrowserAutomation && browserAutomationNeeded ? {
640
+ steps: [
641
+ 'Use browser_navigate to load the page',
642
+ 'Use browser_snapshot to get rendered HTML after JavaScript executes',
643
+ 'Use browser_eval to interact with navigation elements',
644
+ 'Extract links from rendered DOM',
645
+ 'Repeat for discovered links',
646
+ ],
647
+ note: 'HTTP-only crawling may miss JavaScript-rendered content for SPA sites',
648
+ } : undefined,
530
649
  files,
531
650
  saveError,
532
651
  },
@@ -538,6 +657,44 @@ export class SafeCoderMCPServer {
538
657
  throw error;
539
658
  }
540
659
  });
660
+ // Register detect_spa tool
661
+ this.server.registerTool('detect_spa', {
662
+ title: 'Detect Single Page Application',
663
+ description: 'Detect if a website is a Single Page Application (SPA) that requires JavaScript rendering. Use this to check if a documentation site needs browser automation before crawling. Keywords: "detect SPA", "check if SPA", "is this a SPA", "needs JavaScript rendering".',
664
+ inputSchema: {
665
+ url: z.string().describe('The URL to check for SPA characteristics'),
666
+ },
667
+ outputSchema: {
668
+ isSPA: z.boolean(),
669
+ confidence: z.enum(['high', 'medium', 'low']),
670
+ indicators: z.array(z.string()),
671
+ suggestion: z.string().optional(),
672
+ },
673
+ }, async (args) => {
674
+ const requestId = logger.generateRequestId();
675
+ const startTime = Date.now();
676
+ const { url } = args;
677
+ logger.toolInvoked('detect_spa', requestId, { url });
678
+ try {
679
+ const spaDetection = await this.webDocBrowser.detectSPA(url);
680
+ const duration = Date.now() - startTime;
681
+ logger.toolCompleted('detect_spa', requestId, duration, true);
682
+ return {
683
+ content: [
684
+ {
685
+ type: 'text',
686
+ text: JSON.stringify(spaDetection, null, 2),
687
+ },
688
+ ],
689
+ structuredContent: spaDetection,
690
+ };
691
+ }
692
+ catch (error) {
693
+ const duration = Date.now() - startTime;
694
+ logger.toolError('detect_spa', requestId, error instanceof Error ? error : new Error(String(error)), { url });
695
+ throw error;
696
+ }
697
+ });
541
698
  }
542
699
  setupResources() {
543
700
  // Register documentation resource