@gulibs/safe-coder 0.0.26 → 0.0.27
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/README.md +678 -994
- package/dist/cache/cache-manager.d.ts +71 -0
- package/dist/cache/cache-manager.d.ts.map +1 -0
- package/dist/cache/cache-manager.js +244 -0
- package/dist/cache/cache-manager.js.map +1 -0
- package/dist/executor/cli-executor.d.ts +106 -0
- package/dist/executor/cli-executor.d.ts.map +1 -0
- package/dist/executor/cli-executor.js +133 -0
- package/dist/executor/cli-executor.js.map +1 -0
- package/dist/executor/dependency-checker.d.ts +23 -0
- package/dist/executor/dependency-checker.d.ts.map +1 -0
- package/dist/executor/dependency-checker.js +62 -0
- package/dist/executor/dependency-checker.js.map +1 -0
- package/dist/index.js +3 -4
- package/dist/index.js.map +1 -1
- package/dist/processor/content-processor.d.ts +76 -0
- package/dist/processor/content-processor.d.ts.map +1 -0
- package/dist/processor/content-processor.js +182 -0
- package/dist/processor/content-processor.js.map +1 -0
- package/dist/processor/guide-generator.d.ts +68 -0
- package/dist/processor/guide-generator.d.ts.map +1 -0
- package/dist/processor/guide-generator.js +189 -0
- package/dist/processor/guide-generator.js.map +1 -0
- package/dist/server/safe-coder-mcp.d.ts +18 -0
- package/dist/server/safe-coder-mcp.d.ts.map +1 -0
- package/dist/server/safe-coder-mcp.js +164 -0
- package/dist/server/safe-coder-mcp.js.map +1 -0
- package/dist/tools/cache-tools.d.ts +42 -0
- package/dist/tools/cache-tools.d.ts.map +1 -0
- package/dist/tools/cache-tools.js +70 -0
- package/dist/tools/cache-tools.js.map +1 -0
- package/dist/tools/crawl-documentation.d.ts +57 -0
- package/dist/tools/crawl-documentation.d.ts.map +1 -0
- package/dist/tools/crawl-documentation.js +96 -0
- package/dist/tools/crawl-documentation.js.map +1 -0
- package/dist/tools/index.d.ts +4 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +4 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/save-skill.d.ts +49 -0
- package/dist/tools/save-skill.d.ts.map +1 -0
- package/dist/tools/save-skill.js +207 -0
- package/dist/tools/save-skill.js.map +1 -0
- package/package.json +18 -28
- package/dist/documentation/browser-doc-browser.d.ts +0 -41
- package/dist/documentation/browser-doc-browser.d.ts.map +0 -1
- package/dist/documentation/browser-doc-browser.js +0 -357
- package/dist/documentation/browser-doc-browser.js.map +0 -1
- package/dist/documentation/browser-manager.d.ts +0 -51
- package/dist/documentation/browser-manager.d.ts.map +0 -1
- package/dist/documentation/browser-manager.js +0 -260
- package/dist/documentation/browser-manager.js.map +0 -1
- package/dist/documentation/cache.d.ts +0 -13
- package/dist/documentation/cache.d.ts.map +0 -1
- package/dist/documentation/cache.js +0 -48
- package/dist/documentation/cache.js.map +0 -1
- package/dist/documentation/checkpoint-manager.d.ts +0 -38
- package/dist/documentation/checkpoint-manager.d.ts.map +0 -1
- package/dist/documentation/checkpoint-manager.js +0 -101
- package/dist/documentation/checkpoint-manager.js.map +0 -1
- package/dist/documentation/doc-crawler.d.ts +0 -221
- package/dist/documentation/doc-crawler.d.ts.map +0 -1
- package/dist/documentation/doc-crawler.js +0 -1415
- package/dist/documentation/doc-crawler.js.map +0 -1
- package/dist/documentation/github-client.d.ts +0 -13
- package/dist/documentation/github-client.d.ts.map +0 -1
- package/dist/documentation/github-client.js +0 -90
- package/dist/documentation/github-client.js.map +0 -1
- package/dist/documentation/http-fetcher.d.ts +0 -8
- package/dist/documentation/http-fetcher.d.ts.map +0 -1
- package/dist/documentation/http-fetcher.js +0 -31
- package/dist/documentation/http-fetcher.js.map +0 -1
- package/dist/documentation/index.d.ts +0 -16
- package/dist/documentation/index.d.ts.map +0 -1
- package/dist/documentation/index.js +0 -159
- package/dist/documentation/index.js.map +0 -1
- package/dist/documentation/llms-txt/detector.d.ts +0 -31
- package/dist/documentation/llms-txt/detector.d.ts.map +0 -1
- package/dist/documentation/llms-txt/detector.js +0 -77
- package/dist/documentation/llms-txt/detector.js.map +0 -1
- package/dist/documentation/llms-txt/downloader.d.ts +0 -30
- package/dist/documentation/llms-txt/downloader.d.ts.map +0 -1
- package/dist/documentation/llms-txt/downloader.js +0 -84
- package/dist/documentation/llms-txt/downloader.js.map +0 -1
- package/dist/documentation/llms-txt/index.d.ts +0 -4
- package/dist/documentation/llms-txt/index.d.ts.map +0 -1
- package/dist/documentation/llms-txt/index.js +0 -4
- package/dist/documentation/llms-txt/index.js.map +0 -1
- package/dist/documentation/llms-txt/parser.d.ts +0 -43
- package/dist/documentation/llms-txt/parser.d.ts.map +0 -1
- package/dist/documentation/llms-txt/parser.js +0 -177
- package/dist/documentation/llms-txt/parser.js.map +0 -1
- package/dist/documentation/normalizer.d.ts +0 -6
- package/dist/documentation/normalizer.d.ts.map +0 -1
- package/dist/documentation/normalizer.js +0 -38
- package/dist/documentation/normalizer.js.map +0 -1
- package/dist/documentation/npm-client.d.ts +0 -19
- package/dist/documentation/npm-client.d.ts.map +0 -1
- package/dist/documentation/npm-client.js +0 -182
- package/dist/documentation/npm-client.js.map +0 -1
- package/dist/documentation/skill-generator.d.ts +0 -108
- package/dist/documentation/skill-generator.d.ts.map +0 -1
- package/dist/documentation/skill-generator.js +0 -642
- package/dist/documentation/skill-generator.js.map +0 -1
- package/dist/documentation/web-doc-browser.d.ts +0 -67
- package/dist/documentation/web-doc-browser.d.ts.map +0 -1
- package/dist/documentation/web-doc-browser.js +0 -555
- package/dist/documentation/web-doc-browser.js.map +0 -1
- package/dist/errors/api-validator.d.ts +0 -9
- package/dist/errors/api-validator.d.ts.map +0 -1
- package/dist/errors/api-validator.js +0 -57
- package/dist/errors/api-validator.js.map +0 -1
- package/dist/errors/contextual-analysis.d.ts +0 -14
- package/dist/errors/contextual-analysis.d.ts.map +0 -1
- package/dist/errors/contextual-analysis.js +0 -173
- package/dist/errors/contextual-analysis.js.map +0 -1
- package/dist/errors/cross-file-analyzer.d.ts +0 -16
- package/dist/errors/cross-file-analyzer.d.ts.map +0 -1
- package/dist/errors/cross-file-analyzer.js +0 -172
- package/dist/errors/cross-file-analyzer.js.map +0 -1
- package/dist/errors/eslint-integration.d.ts +0 -9
- package/dist/errors/eslint-integration.d.ts.map +0 -1
- package/dist/errors/eslint-integration.js +0 -131
- package/dist/errors/eslint-integration.js.map +0 -1
- package/dist/errors/framework-detector.d.ts +0 -10
- package/dist/errors/framework-detector.d.ts.map +0 -1
- package/dist/errors/framework-detector.js +0 -126
- package/dist/errors/framework-detector.js.map +0 -1
- package/dist/errors/index.d.ts +0 -18
- package/dist/errors/index.d.ts.map +0 -1
- package/dist/errors/index.js +0 -134
- package/dist/errors/index.js.map +0 -1
- package/dist/errors/pattern-matcher.d.ts +0 -25
- package/dist/errors/pattern-matcher.d.ts.map +0 -1
- package/dist/errors/pattern-matcher.js +0 -44
- package/dist/errors/pattern-matcher.js.map +0 -1
- package/dist/errors/patterns.d.ts +0 -11
- package/dist/errors/patterns.d.ts.map +0 -1
- package/dist/errors/patterns.js +0 -351
- package/dist/errors/patterns.js.map +0 -1
- package/dist/errors/performance-detector.d.ts +0 -11
- package/dist/errors/performance-detector.d.ts.map +0 -1
- package/dist/errors/performance-detector.js +0 -119
- package/dist/errors/performance-detector.js.map +0 -1
- package/dist/errors/runtime-detector.d.ts +0 -7
- package/dist/errors/runtime-detector.d.ts.map +0 -1
- package/dist/errors/runtime-detector.js +0 -86
- package/dist/errors/runtime-detector.js.map +0 -1
- package/dist/errors/security-detector.d.ts +0 -6
- package/dist/errors/security-detector.d.ts.map +0 -1
- package/dist/errors/security-detector.js +0 -75
- package/dist/errors/security-detector.js.map +0 -1
- package/dist/errors/typescript-integration.d.ts +0 -6
- package/dist/errors/typescript-integration.d.ts.map +0 -1
- package/dist/errors/typescript-integration.js +0 -46
- package/dist/errors/typescript-integration.js.map +0 -1
- package/dist/server/mcp-server.d.ts +0 -14
- package/dist/server/mcp-server.d.ts.map +0 -1
- package/dist/server/mcp-server.js +0 -793
- package/dist/server/mcp-server.js.map +0 -1
- package/dist/types/documentation.d.ts +0 -26
- package/dist/types/documentation.d.ts.map +0 -1
- package/dist/types/documentation.js +0 -2
- package/dist/types/documentation.js.map +0 -1
- package/dist/utils/config.d.ts +0 -21
- package/dist/utils/config.d.ts.map +0 -1
- package/dist/utils/config.js +0 -34
- package/dist/utils/config.js.map +0 -1
- package/dist/utils/http-client.d.ts +0 -17
- package/dist/utils/http-client.d.ts.map +0 -1
- package/dist/utils/http-client.js +0 -62
- package/dist/utils/http-client.js.map +0 -1
- package/dist/utils/logger.d.ts +0 -36
- package/dist/utils/logger.d.ts.map +0 -1
- package/dist/utils/logger.js +0 -128
- package/dist/utils/logger.js.map +0 -1
- package/dist/utils/rate-limiter.d.ts +0 -9
- package/dist/utils/rate-limiter.d.ts.map +0 -1
- package/dist/utils/rate-limiter.js +0 -26
- package/dist/utils/rate-limiter.js.map +0 -1
- package/dist/validation/auto-fix.d.ts +0 -15
- package/dist/validation/auto-fix.d.ts.map +0 -1
- package/dist/validation/auto-fix.js +0 -49
- package/dist/validation/auto-fix.js.map +0 -1
- package/dist/validation/index.d.ts +0 -21
- package/dist/validation/index.d.ts.map +0 -1
- package/dist/validation/index.js +0 -45
- package/dist/validation/index.js.map +0 -1
- package/dist/validation/resolution-db.d.ts +0 -15
- package/dist/validation/resolution-db.d.ts.map +0 -1
- package/dist/validation/resolution-db.js +0 -62
- package/dist/validation/resolution-db.js.map +0 -1
|
@@ -1,221 +0,0 @@
|
|
|
1
|
-
import { HttpClient } from '../utils/http-client.js';
|
|
2
|
-
export interface CrawlOptions {
|
|
3
|
-
crawlStrategy?: 'bfs' | 'dfs';
|
|
4
|
-
maxDepth?: number;
|
|
5
|
-
maxPages?: number;
|
|
6
|
-
includePaths?: string[];
|
|
7
|
-
excludePaths?: string[];
|
|
8
|
-
rateLimit?: number;
|
|
9
|
-
maxRetries?: number;
|
|
10
|
-
retryDelay?: number;
|
|
11
|
-
useBrowserAutomation?: boolean;
|
|
12
|
-
skipLlmsTxt?: boolean;
|
|
13
|
-
workers?: number;
|
|
14
|
-
checkpoint?: {
|
|
15
|
-
enabled: boolean;
|
|
16
|
-
interval: number;
|
|
17
|
-
file?: string;
|
|
18
|
-
};
|
|
19
|
-
resume?: boolean;
|
|
20
|
-
spaStrategy?: 'smart' | 'auto' | 'manual';
|
|
21
|
-
spaFallback?: 'warn' | 'skip' | 'error';
|
|
22
|
-
browserConfig?: {
|
|
23
|
-
executablePath?: string;
|
|
24
|
-
waitForTimeout?: number;
|
|
25
|
-
networkIdleTimeout?: number;
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
export interface CrawledPage {
|
|
29
|
-
url: string;
|
|
30
|
-
title: string;
|
|
31
|
-
content: string;
|
|
32
|
-
depth: number;
|
|
33
|
-
sections: Array<{
|
|
34
|
-
title: string;
|
|
35
|
-
content: string;
|
|
36
|
-
anchor?: string;
|
|
37
|
-
}>;
|
|
38
|
-
navigationLinks: Array<{
|
|
39
|
-
text: string;
|
|
40
|
-
url: string;
|
|
41
|
-
isInternal: boolean;
|
|
42
|
-
}>;
|
|
43
|
-
headings: Array<{
|
|
44
|
-
level: string;
|
|
45
|
-
text: string;
|
|
46
|
-
id?: string;
|
|
47
|
-
}>;
|
|
48
|
-
codeSamples: Array<{
|
|
49
|
-
code: string;
|
|
50
|
-
language: string;
|
|
51
|
-
}>;
|
|
52
|
-
}
|
|
53
|
-
export interface LinkDiscoveryStats {
|
|
54
|
-
totalLinksFound: number;
|
|
55
|
-
linksFiltered: {
|
|
56
|
-
notContent: number;
|
|
57
|
-
externalDomain: number;
|
|
58
|
-
alreadyVisited: number;
|
|
59
|
-
excludedPattern: number;
|
|
60
|
-
depthLimit: number;
|
|
61
|
-
};
|
|
62
|
-
linksQueued: number;
|
|
63
|
-
pagesDiscovered: number;
|
|
64
|
-
pagesCrawled: number;
|
|
65
|
-
}
|
|
66
|
-
export type AbandonReason = 'insufficient_content' | 'media_only' | 'empty_pages' | 'no_structured_content';
|
|
67
|
-
export interface CrawlResult {
|
|
68
|
-
pages: CrawledPage[];
|
|
69
|
-
totalPages: number;
|
|
70
|
-
maxDepthReached: number;
|
|
71
|
-
errors: Array<{
|
|
72
|
-
url: string;
|
|
73
|
-
error: string;
|
|
74
|
-
}>;
|
|
75
|
-
linkDiscoveryStats: LinkDiscoveryStats;
|
|
76
|
-
abandoned?: boolean;
|
|
77
|
-
abandonReason?: AbandonReason;
|
|
78
|
-
}
|
|
79
|
-
export declare class DocumentationCrawler {
|
|
80
|
-
private browser;
|
|
81
|
-
private browserManager?;
|
|
82
|
-
private visitedUrls;
|
|
83
|
-
private urlQueue;
|
|
84
|
-
private crawledPages;
|
|
85
|
-
private errors;
|
|
86
|
-
private options;
|
|
87
|
-
private baseUrl;
|
|
88
|
-
private linkDiscoveryStats;
|
|
89
|
-
private checkpointManager?;
|
|
90
|
-
private pagesSinceLastCheckpoint;
|
|
91
|
-
private readonly DOCUMENTATION_PATTERNS;
|
|
92
|
-
private readonly EXCLUDED_PATTERNS;
|
|
93
|
-
constructor(httpClient?: HttpClient);
|
|
94
|
-
/**
|
|
95
|
-
* Crawl documentation starting from a root URL
|
|
96
|
-
* Uses HTTP client (axios) exclusively - no browser automation
|
|
97
|
-
* For SPA sites that require JavaScript rendering, use Cursor/Claude's built-in browser tools
|
|
98
|
-
* Supports both BFS (breadth-first) and DFS (depth-first) crawl strategies
|
|
99
|
-
*/
|
|
100
|
-
crawl(rootUrl: string, options?: CrawlOptions): Promise<CrawlResult>;
|
|
101
|
-
/**
|
|
102
|
-
* Sequential crawling (single-threaded)
|
|
103
|
-
*/
|
|
104
|
-
private crawlSequential;
|
|
105
|
-
/**
|
|
106
|
-
* Parallel crawling with multiple workers
|
|
107
|
-
*/
|
|
108
|
-
private crawlWithWorkers;
|
|
109
|
-
/**
|
|
110
|
-
* Process a single page (shared by both sequential and parallel crawling)
|
|
111
|
-
*/
|
|
112
|
-
private processPage;
|
|
113
|
-
/**
|
|
114
|
-
* Discover documentation links from a crawled page
|
|
115
|
-
*/
|
|
116
|
-
private discoverDocumentationLinks;
|
|
117
|
-
/**
|
|
118
|
-
* Check if a path should be crawled (permissive - only exclude clearly non-content paths)
|
|
119
|
-
*/
|
|
120
|
-
private isDocumentationPath;
|
|
121
|
-
/**
|
|
122
|
-
* Check if a path should be excluded
|
|
123
|
-
*/
|
|
124
|
-
private shouldExclude;
|
|
125
|
-
/**
|
|
126
|
-
* Check if crawled content is sufficient for skill generation
|
|
127
|
-
* Enhanced with multi-dimensional quality metrics
|
|
128
|
-
*/
|
|
129
|
-
private canGenerateSkill;
|
|
130
|
-
/**
|
|
131
|
-
* Evaluate content quality with multi-dimensional metrics
|
|
132
|
-
*/
|
|
133
|
-
private evaluateContentQuality;
|
|
134
|
-
/**
|
|
135
|
-
* Check if should continue crawling based on content quality
|
|
136
|
-
*/
|
|
137
|
-
private shouldContinueCrawling;
|
|
138
|
-
/**
|
|
139
|
-
* Fetch a page with retry logic
|
|
140
|
-
* Supports HTML pages, Markdown files, and SPA rendering
|
|
141
|
-
*/
|
|
142
|
-
private fetchPageWithRetry;
|
|
143
|
-
/**
|
|
144
|
-
* Extract content from Markdown file
|
|
145
|
-
* Converts Markdown structure to WebDocumentationPage format
|
|
146
|
-
*/
|
|
147
|
-
private extractMarkdownContent;
|
|
148
|
-
/**
|
|
149
|
-
* Parse Markdown content into structured data
|
|
150
|
-
*/
|
|
151
|
-
private parseMarkdown;
|
|
152
|
-
/**
|
|
153
|
-
* Classify error type for better error messages
|
|
154
|
-
*/
|
|
155
|
-
private classifyError;
|
|
156
|
-
/**
|
|
157
|
-
* Check if an error is retryable
|
|
158
|
-
*/
|
|
159
|
-
private isRetryableError;
|
|
160
|
-
/**
|
|
161
|
-
* Get error breakdown by type
|
|
162
|
-
*/
|
|
163
|
-
private getErrorBreakdown;
|
|
164
|
-
/**
|
|
165
|
-
* Try to detect and use llms.txt for optimized crawling
|
|
166
|
-
*/
|
|
167
|
-
private tryLlmsTxt;
|
|
168
|
-
/**
|
|
169
|
-
* Check if a URL is valid for crawling
|
|
170
|
-
*/
|
|
171
|
-
private isValidUrl;
|
|
172
|
-
/**
|
|
173
|
-
* Save checkpoint
|
|
174
|
-
*/
|
|
175
|
-
private saveCheckpoint;
|
|
176
|
-
/**
|
|
177
|
-
* Load checkpoint and restore state
|
|
178
|
-
*/
|
|
179
|
-
private loadCheckpoint;
|
|
180
|
-
/**
|
|
181
|
-
* Clear checkpoint after successful crawl
|
|
182
|
-
*/
|
|
183
|
-
private clearCheckpoint;
|
|
184
|
-
/**
|
|
185
|
-
* Sanitize filename for checkpoint
|
|
186
|
-
*/
|
|
187
|
-
private sanitizeFilename;
|
|
188
|
-
/**
|
|
189
|
-
* Check if browser rendering is needed
|
|
190
|
-
*/
|
|
191
|
-
private shouldUseBrowser;
|
|
192
|
-
/**
|
|
193
|
-
* Fetch page using browser rendering
|
|
194
|
-
*/
|
|
195
|
-
private fetchWithBrowser;
|
|
196
|
-
/**
|
|
197
|
-
* Parse browser-rendered HTML into WebDocumentationPage
|
|
198
|
-
*/
|
|
199
|
-
private parseRenderedPage;
|
|
200
|
-
/**
|
|
201
|
-
* Handle browser rendering failure based on fallback strategy
|
|
202
|
-
*/
|
|
203
|
-
private handleBrowserFailure;
|
|
204
|
-
/**
|
|
205
|
-
* Create empty page placeholder
|
|
206
|
-
*/
|
|
207
|
-
private createEmptyPage;
|
|
208
|
-
/**
|
|
209
|
-
* Create page with browser installation guide
|
|
210
|
-
*/
|
|
211
|
-
private createPageWithGuide;
|
|
212
|
-
/**
|
|
213
|
-
* Cleanup resources (browser, checkpoint, etc.)
|
|
214
|
-
*/
|
|
215
|
-
cleanup(): Promise<void>;
|
|
216
|
-
/**
|
|
217
|
-
* Delay helper for rate limiting
|
|
218
|
-
*/
|
|
219
|
-
private delay;
|
|
220
|
-
}
|
|
221
|
-
//# sourceMappingURL=doc-crawler.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"doc-crawler.d.ts","sourceRoot":"","sources":["../../src/documentation/doc-crawler.ts"],"names":[],"mappings":"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"}
|