@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.
Files changed (192) hide show
  1. package/README.md +678 -994
  2. package/dist/cache/cache-manager.d.ts +71 -0
  3. package/dist/cache/cache-manager.d.ts.map +1 -0
  4. package/dist/cache/cache-manager.js +244 -0
  5. package/dist/cache/cache-manager.js.map +1 -0
  6. package/dist/executor/cli-executor.d.ts +106 -0
  7. package/dist/executor/cli-executor.d.ts.map +1 -0
  8. package/dist/executor/cli-executor.js +133 -0
  9. package/dist/executor/cli-executor.js.map +1 -0
  10. package/dist/executor/dependency-checker.d.ts +23 -0
  11. package/dist/executor/dependency-checker.d.ts.map +1 -0
  12. package/dist/executor/dependency-checker.js +62 -0
  13. package/dist/executor/dependency-checker.js.map +1 -0
  14. package/dist/index.js +3 -4
  15. package/dist/index.js.map +1 -1
  16. package/dist/processor/content-processor.d.ts +76 -0
  17. package/dist/processor/content-processor.d.ts.map +1 -0
  18. package/dist/processor/content-processor.js +182 -0
  19. package/dist/processor/content-processor.js.map +1 -0
  20. package/dist/processor/guide-generator.d.ts +68 -0
  21. package/dist/processor/guide-generator.d.ts.map +1 -0
  22. package/dist/processor/guide-generator.js +189 -0
  23. package/dist/processor/guide-generator.js.map +1 -0
  24. package/dist/server/safe-coder-mcp.d.ts +18 -0
  25. package/dist/server/safe-coder-mcp.d.ts.map +1 -0
  26. package/dist/server/safe-coder-mcp.js +164 -0
  27. package/dist/server/safe-coder-mcp.js.map +1 -0
  28. package/dist/tools/cache-tools.d.ts +42 -0
  29. package/dist/tools/cache-tools.d.ts.map +1 -0
  30. package/dist/tools/cache-tools.js +70 -0
  31. package/dist/tools/cache-tools.js.map +1 -0
  32. package/dist/tools/crawl-documentation.d.ts +57 -0
  33. package/dist/tools/crawl-documentation.d.ts.map +1 -0
  34. package/dist/tools/crawl-documentation.js +96 -0
  35. package/dist/tools/crawl-documentation.js.map +1 -0
  36. package/dist/tools/index.d.ts +4 -0
  37. package/dist/tools/index.d.ts.map +1 -0
  38. package/dist/tools/index.js +4 -0
  39. package/dist/tools/index.js.map +1 -0
  40. package/dist/tools/save-skill.d.ts +49 -0
  41. package/dist/tools/save-skill.d.ts.map +1 -0
  42. package/dist/tools/save-skill.js +207 -0
  43. package/dist/tools/save-skill.js.map +1 -0
  44. package/package.json +18 -28
  45. package/dist/documentation/browser-doc-browser.d.ts +0 -41
  46. package/dist/documentation/browser-doc-browser.d.ts.map +0 -1
  47. package/dist/documentation/browser-doc-browser.js +0 -357
  48. package/dist/documentation/browser-doc-browser.js.map +0 -1
  49. package/dist/documentation/browser-manager.d.ts +0 -51
  50. package/dist/documentation/browser-manager.d.ts.map +0 -1
  51. package/dist/documentation/browser-manager.js +0 -260
  52. package/dist/documentation/browser-manager.js.map +0 -1
  53. package/dist/documentation/cache.d.ts +0 -13
  54. package/dist/documentation/cache.d.ts.map +0 -1
  55. package/dist/documentation/cache.js +0 -48
  56. package/dist/documentation/cache.js.map +0 -1
  57. package/dist/documentation/checkpoint-manager.d.ts +0 -38
  58. package/dist/documentation/checkpoint-manager.d.ts.map +0 -1
  59. package/dist/documentation/checkpoint-manager.js +0 -101
  60. package/dist/documentation/checkpoint-manager.js.map +0 -1
  61. package/dist/documentation/doc-crawler.d.ts +0 -221
  62. package/dist/documentation/doc-crawler.d.ts.map +0 -1
  63. package/dist/documentation/doc-crawler.js +0 -1415
  64. package/dist/documentation/doc-crawler.js.map +0 -1
  65. package/dist/documentation/github-client.d.ts +0 -13
  66. package/dist/documentation/github-client.d.ts.map +0 -1
  67. package/dist/documentation/github-client.js +0 -90
  68. package/dist/documentation/github-client.js.map +0 -1
  69. package/dist/documentation/http-fetcher.d.ts +0 -8
  70. package/dist/documentation/http-fetcher.d.ts.map +0 -1
  71. package/dist/documentation/http-fetcher.js +0 -31
  72. package/dist/documentation/http-fetcher.js.map +0 -1
  73. package/dist/documentation/index.d.ts +0 -16
  74. package/dist/documentation/index.d.ts.map +0 -1
  75. package/dist/documentation/index.js +0 -159
  76. package/dist/documentation/index.js.map +0 -1
  77. package/dist/documentation/llms-txt/detector.d.ts +0 -31
  78. package/dist/documentation/llms-txt/detector.d.ts.map +0 -1
  79. package/dist/documentation/llms-txt/detector.js +0 -77
  80. package/dist/documentation/llms-txt/detector.js.map +0 -1
  81. package/dist/documentation/llms-txt/downloader.d.ts +0 -30
  82. package/dist/documentation/llms-txt/downloader.d.ts.map +0 -1
  83. package/dist/documentation/llms-txt/downloader.js +0 -84
  84. package/dist/documentation/llms-txt/downloader.js.map +0 -1
  85. package/dist/documentation/llms-txt/index.d.ts +0 -4
  86. package/dist/documentation/llms-txt/index.d.ts.map +0 -1
  87. package/dist/documentation/llms-txt/index.js +0 -4
  88. package/dist/documentation/llms-txt/index.js.map +0 -1
  89. package/dist/documentation/llms-txt/parser.d.ts +0 -43
  90. package/dist/documentation/llms-txt/parser.d.ts.map +0 -1
  91. package/dist/documentation/llms-txt/parser.js +0 -177
  92. package/dist/documentation/llms-txt/parser.js.map +0 -1
  93. package/dist/documentation/normalizer.d.ts +0 -6
  94. package/dist/documentation/normalizer.d.ts.map +0 -1
  95. package/dist/documentation/normalizer.js +0 -38
  96. package/dist/documentation/normalizer.js.map +0 -1
  97. package/dist/documentation/npm-client.d.ts +0 -19
  98. package/dist/documentation/npm-client.d.ts.map +0 -1
  99. package/dist/documentation/npm-client.js +0 -182
  100. package/dist/documentation/npm-client.js.map +0 -1
  101. package/dist/documentation/skill-generator.d.ts +0 -108
  102. package/dist/documentation/skill-generator.d.ts.map +0 -1
  103. package/dist/documentation/skill-generator.js +0 -642
  104. package/dist/documentation/skill-generator.js.map +0 -1
  105. package/dist/documentation/web-doc-browser.d.ts +0 -67
  106. package/dist/documentation/web-doc-browser.d.ts.map +0 -1
  107. package/dist/documentation/web-doc-browser.js +0 -555
  108. package/dist/documentation/web-doc-browser.js.map +0 -1
  109. package/dist/errors/api-validator.d.ts +0 -9
  110. package/dist/errors/api-validator.d.ts.map +0 -1
  111. package/dist/errors/api-validator.js +0 -57
  112. package/dist/errors/api-validator.js.map +0 -1
  113. package/dist/errors/contextual-analysis.d.ts +0 -14
  114. package/dist/errors/contextual-analysis.d.ts.map +0 -1
  115. package/dist/errors/contextual-analysis.js +0 -173
  116. package/dist/errors/contextual-analysis.js.map +0 -1
  117. package/dist/errors/cross-file-analyzer.d.ts +0 -16
  118. package/dist/errors/cross-file-analyzer.d.ts.map +0 -1
  119. package/dist/errors/cross-file-analyzer.js +0 -172
  120. package/dist/errors/cross-file-analyzer.js.map +0 -1
  121. package/dist/errors/eslint-integration.d.ts +0 -9
  122. package/dist/errors/eslint-integration.d.ts.map +0 -1
  123. package/dist/errors/eslint-integration.js +0 -131
  124. package/dist/errors/eslint-integration.js.map +0 -1
  125. package/dist/errors/framework-detector.d.ts +0 -10
  126. package/dist/errors/framework-detector.d.ts.map +0 -1
  127. package/dist/errors/framework-detector.js +0 -126
  128. package/dist/errors/framework-detector.js.map +0 -1
  129. package/dist/errors/index.d.ts +0 -18
  130. package/dist/errors/index.d.ts.map +0 -1
  131. package/dist/errors/index.js +0 -134
  132. package/dist/errors/index.js.map +0 -1
  133. package/dist/errors/pattern-matcher.d.ts +0 -25
  134. package/dist/errors/pattern-matcher.d.ts.map +0 -1
  135. package/dist/errors/pattern-matcher.js +0 -44
  136. package/dist/errors/pattern-matcher.js.map +0 -1
  137. package/dist/errors/patterns.d.ts +0 -11
  138. package/dist/errors/patterns.d.ts.map +0 -1
  139. package/dist/errors/patterns.js +0 -351
  140. package/dist/errors/patterns.js.map +0 -1
  141. package/dist/errors/performance-detector.d.ts +0 -11
  142. package/dist/errors/performance-detector.d.ts.map +0 -1
  143. package/dist/errors/performance-detector.js +0 -119
  144. package/dist/errors/performance-detector.js.map +0 -1
  145. package/dist/errors/runtime-detector.d.ts +0 -7
  146. package/dist/errors/runtime-detector.d.ts.map +0 -1
  147. package/dist/errors/runtime-detector.js +0 -86
  148. package/dist/errors/runtime-detector.js.map +0 -1
  149. package/dist/errors/security-detector.d.ts +0 -6
  150. package/dist/errors/security-detector.d.ts.map +0 -1
  151. package/dist/errors/security-detector.js +0 -75
  152. package/dist/errors/security-detector.js.map +0 -1
  153. package/dist/errors/typescript-integration.d.ts +0 -6
  154. package/dist/errors/typescript-integration.d.ts.map +0 -1
  155. package/dist/errors/typescript-integration.js +0 -46
  156. package/dist/errors/typescript-integration.js.map +0 -1
  157. package/dist/server/mcp-server.d.ts +0 -14
  158. package/dist/server/mcp-server.d.ts.map +0 -1
  159. package/dist/server/mcp-server.js +0 -793
  160. package/dist/server/mcp-server.js.map +0 -1
  161. package/dist/types/documentation.d.ts +0 -26
  162. package/dist/types/documentation.d.ts.map +0 -1
  163. package/dist/types/documentation.js +0 -2
  164. package/dist/types/documentation.js.map +0 -1
  165. package/dist/utils/config.d.ts +0 -21
  166. package/dist/utils/config.d.ts.map +0 -1
  167. package/dist/utils/config.js +0 -34
  168. package/dist/utils/config.js.map +0 -1
  169. package/dist/utils/http-client.d.ts +0 -17
  170. package/dist/utils/http-client.d.ts.map +0 -1
  171. package/dist/utils/http-client.js +0 -62
  172. package/dist/utils/http-client.js.map +0 -1
  173. package/dist/utils/logger.d.ts +0 -36
  174. package/dist/utils/logger.d.ts.map +0 -1
  175. package/dist/utils/logger.js +0 -128
  176. package/dist/utils/logger.js.map +0 -1
  177. package/dist/utils/rate-limiter.d.ts +0 -9
  178. package/dist/utils/rate-limiter.d.ts.map +0 -1
  179. package/dist/utils/rate-limiter.js +0 -26
  180. package/dist/utils/rate-limiter.js.map +0 -1
  181. package/dist/validation/auto-fix.d.ts +0 -15
  182. package/dist/validation/auto-fix.d.ts.map +0 -1
  183. package/dist/validation/auto-fix.js +0 -49
  184. package/dist/validation/auto-fix.js.map +0 -1
  185. package/dist/validation/index.d.ts +0 -21
  186. package/dist/validation/index.d.ts.map +0 -1
  187. package/dist/validation/index.js +0 -45
  188. package/dist/validation/index.js.map +0 -1
  189. package/dist/validation/resolution-db.d.ts +0 -15
  190. package/dist/validation/resolution-db.d.ts.map +0 -1
  191. package/dist/validation/resolution-db.js +0 -62
  192. package/dist/validation/resolution-db.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"doc-crawler.js","sourceRoot":"","sources":["../../src/documentation/doc-crawler.ts"],"names":[],"mappings":"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"}
@@ -1,13 +0,0 @@
1
- import type { Documentation, DocumentationSource } from '../types/documentation.js';
2
- import { HttpClient } from '../utils/http-client.js';
3
- export declare class GitHubClient implements DocumentationSource {
4
- private readonly apiUrl;
5
- private readonly token?;
6
- private httpClient;
7
- constructor(token?: string, httpClient?: HttpClient);
8
- fetch(packageName: string, version?: string): Promise<Documentation>;
9
- private parseRepository;
10
- private fetchReadme;
11
- private fetchDocs;
12
- }
13
- //# sourceMappingURL=github-client.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-client.d.ts","sourceRoot":"","sources":["../../src/documentation/github-client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,qBAAa,YAAa,YAAW,mBAAmB;IACtD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4B;IACnD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAS;IAChC,OAAO,CAAC,UAAU,CAAa;gBAEnB,KAAK,CAAC,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,UAAU;IAK7C,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IA8B1E,OAAO,CAAC,eAAe;YAST,WAAW;YAoBX,SAAS;CAqCxB"}
@@ -1,90 +0,0 @@
1
- import { HttpClient } from '../utils/http-client.js';
2
- export class GitHubClient {
3
- apiUrl = 'https://api.github.com';
4
- token;
5
- httpClient;
6
- constructor(token, httpClient) {
7
- this.token = token || process.env.GITHUB_TOKEN;
8
- this.httpClient = httpClient || new HttpClient();
9
- }
10
- async fetch(packageName, version) {
11
- try {
12
- // Parse packageName as owner/repo or extract from npm package
13
- const [owner, repo] = this.parseRepository(packageName);
14
- if (!owner || !repo) {
15
- throw new Error(`Invalid GitHub repository format: ${packageName}`);
16
- }
17
- // Fetch README
18
- const readme = await this.fetchReadme(owner, repo, version);
19
- // Try to fetch docs directory if it exists
20
- const docs = await this.fetchDocs(owner, repo, version);
21
- const content = [readme, docs].filter(Boolean).join('\n\n---\n\n');
22
- return {
23
- name: `${owner}/${repo}`,
24
- version,
25
- content: content || `No documentation found for ${owner}/${repo}`,
26
- source: 'github',
27
- url: `https://github.com/${owner}/${repo}`,
28
- lastUpdated: new Date(),
29
- };
30
- }
31
- catch (error) {
32
- throw new Error(`Failed to fetch GitHub documentation: ${error instanceof Error ? error.message : 'Unknown error'}`);
33
- }
34
- }
35
- parseRepository(packageName) {
36
- // Check if it's already in owner/repo format
37
- if (packageName.includes('/')) {
38
- const parts = packageName.split('/');
39
- return [parts[0], parts[1]];
40
- }
41
- return [null, null];
42
- }
43
- async fetchReadme(owner, repo, ref) {
44
- try {
45
- const refParam = ref ? `?ref=${ref}` : '';
46
- const url = `${this.apiUrl}/repos/${owner}/${repo}/readme${refParam}`;
47
- const headers = {
48
- 'Accept': 'application/vnd.github.v3.raw',
49
- };
50
- if (this.token) {
51
- headers['Authorization'] = `token ${this.token}`;
52
- }
53
- const response = await this.httpClient.get(url, { headers });
54
- return response.data;
55
- }
56
- catch (error) {
57
- // README might not exist, return empty
58
- return '';
59
- }
60
- }
61
- async fetchDocs(owner, repo, ref) {
62
- try {
63
- const refParam = ref ? `?ref=${ref}` : '';
64
- const url = `${this.apiUrl}/repos/${owner}/${repo}/contents/docs${refParam}`;
65
- const headers = {};
66
- if (this.token) {
67
- headers['Authorization'] = `token ${this.token}`;
68
- }
69
- const response = await this.httpClient.get(url, { headers });
70
- // If docs is a directory, fetch all markdown files
71
- if (Array.isArray(response.data)) {
72
- const markdownFiles = response.data.filter((file) => file.type === 'file' && file.name.endsWith('.md'));
73
- const contents = await Promise.all(markdownFiles.map(async (file) => {
74
- const fileUrl = `${this.apiUrl}/repos/${owner}/${repo}/contents/${file.path}${refParam}`;
75
- const fileResponse = await this.httpClient.get(fileUrl, {
76
- headers: { ...headers, 'Accept': 'application/vnd.github.v3.raw' }
77
- });
78
- return `## ${file.name}\n\n${fileResponse.data}`;
79
- }));
80
- return contents.join('\n\n');
81
- }
82
- return '';
83
- }
84
- catch (error) {
85
- // Docs directory might not exist
86
- return '';
87
- }
88
- }
89
- }
90
- //# sourceMappingURL=github-client.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"github-client.js","sourceRoot":"","sources":["../../src/documentation/github-client.ts"],"names":[],"mappings":"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"}
@@ -1,8 +0,0 @@
1
- import type { Documentation, DocumentationSource } from '../types/documentation.js';
2
- import { HttpClient } from '../utils/http-client.js';
3
- export declare class HttpFetcher implements DocumentationSource {
4
- private httpClient;
5
- constructor(httpClient?: HttpClient);
6
- fetch(packageName: string, version?: string): Promise<Documentation>;
7
- }
8
- //# sourceMappingURL=http-fetcher.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"http-fetcher.d.ts","sourceRoot":"","sources":["../../src/documentation/http-fetcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AACpF,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,qBAAa,WAAY,YAAW,mBAAmB;IACrD,OAAO,CAAC,UAAU,CAAa;gBAEnB,UAAU,CAAC,EAAE,UAAU;IAI7B,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;CAwB3E"}
@@ -1,31 +0,0 @@
1
- import { HttpClient } from '../utils/http-client.js';
2
- export class HttpFetcher {
3
- httpClient;
4
- constructor(httpClient) {
5
- this.httpClient = httpClient || new HttpClient();
6
- }
7
- async fetch(packageName, version) {
8
- try {
9
- // packageName should be a URL for HTTP fetcher
10
- const url = packageName.startsWith('http') ? packageName : `https://${packageName}`;
11
- const response = await this.httpClient.get(url, {
12
- timeout: 10000,
13
- headers: {
14
- 'User-Agent': 'Safe-Coder-MCP/1.0.0',
15
- },
16
- });
17
- return {
18
- name: new URL(url).hostname,
19
- version,
20
- content: response.data,
21
- source: 'http',
22
- url,
23
- lastUpdated: new Date(),
24
- };
25
- }
26
- catch (error) {
27
- throw new Error(`Failed to fetch HTTP documentation: ${error instanceof Error ? error.message : 'Unknown error'}`);
28
- }
29
- }
30
- }
31
- //# sourceMappingURL=http-fetcher.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"http-fetcher.js","sourceRoot":"","sources":["../../src/documentation/http-fetcher.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,OAAO,WAAW;IACd,UAAU,CAAa;IAE/B,YAAY,UAAuB;QACjC,IAAI,CAAC,UAAU,GAAG,UAAU,IAAI,IAAI,UAAU,EAAE,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,KAAK,CAAC,WAAmB,EAAE,OAAgB;QAC/C,IAAI,CAAC;YACH,+CAA+C;YAC/C,MAAM,GAAG,GAAG,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,WAAW,EAAE,CAAC;YAEpF,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE;gBAC9C,OAAO,EAAE,KAAK;gBACd,OAAO,EAAE;oBACP,YAAY,EAAE,sBAAsB;iBACrC;aACF,CAAC,CAAC;YAEH,OAAO;gBACL,IAAI,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ;gBAC3B,OAAO;gBACP,OAAO,EAAE,QAAQ,CAAC,IAAI;gBACtB,MAAM,EAAE,MAAM;gBACd,GAAG;gBACH,WAAW,EAAE,IAAI,IAAI,EAAE;aACxB,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CAAC,uCAAuC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC;QACrH,CAAC;IACH,CAAC;CACF"}
@@ -1,16 +0,0 @@
1
- import { DocumentationCache } from './cache.js';
2
- import type { Documentation } from '../types/documentation.js';
3
- import type { ProxyConfig } from '../utils/http-client.js';
4
- export declare class DocumentationService {
5
- private cache;
6
- private npmClient;
7
- private githubClient;
8
- private httpFetcher;
9
- private normalizer;
10
- constructor(cacheTTLMinutes?: number, githubToken?: string, proxyConfig?: ProxyConfig);
11
- getDocumentation(packageName: string, version?: string, source?: 'npm' | 'github' | 'http', forceRefresh?: boolean): Promise<Documentation>;
12
- refreshDocumentation(packageName: string, version?: string): Promise<Documentation>;
13
- checkForUpdates(packageName: string, version?: string): Promise<boolean>;
14
- getCache(): DocumentationCache;
15
- }
16
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/documentation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAKhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAE/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,KAAK,CAAqB;IAClC,OAAO,CAAC,SAAS,CAAoB;IACrC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,UAAU,CAA0B;gBAEhC,eAAe,GAAE,MAAW,EAAE,WAAW,CAAC,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,WAAW;IASnF,gBAAgB,CACpB,WAAW,EAAE,MAAM,EACnB,OAAO,CAAC,EAAE,MAAM,EAChB,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,EAClC,YAAY,GAAE,OAAe,GAC5B,OAAO,CAAC,aAAa,CAAC;IA+GnB,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAKnF,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAyB9E,QAAQ,IAAI,kBAAkB;CAG/B"}
@@ -1,159 +0,0 @@
1
- import { DocumentationCache } from './cache.js';
2
- import { NpmRegistryClient } from './npm-client.js';
3
- import { GitHubClient } from './github-client.js';
4
- import { HttpFetcher } from './http-fetcher.js';
5
- import { DocumentationNormalizer } from './normalizer.js';
6
- import { HttpClient } from '../utils/http-client.js';
7
- export class DocumentationService {
8
- cache;
9
- npmClient;
10
- githubClient;
11
- httpFetcher;
12
- normalizer;
13
- constructor(cacheTTLMinutes = 60, githubToken, proxyConfig) {
14
- this.cache = new DocumentationCache(cacheTTLMinutes);
15
- const httpClient = proxyConfig ? new HttpClient(proxyConfig) : new HttpClient();
16
- this.npmClient = new NpmRegistryClient(httpClient);
17
- this.githubClient = new GitHubClient(githubToken, httpClient);
18
- this.httpFetcher = new HttpFetcher(httpClient);
19
- this.normalizer = new DocumentationNormalizer();
20
- }
21
- async getDocumentation(packageName, version, source, forceRefresh = false) {
22
- const cacheKey = this.cache.generateKey(packageName, version);
23
- // Check cache first (unless force refresh)
24
- if (!forceRefresh) {
25
- const cached = this.cache.get(cacheKey);
26
- if (cached) {
27
- return cached;
28
- }
29
- }
30
- // Determine source if not specified
31
- let actualSource = source;
32
- if (!actualSource) {
33
- if (packageName.startsWith('http')) {
34
- actualSource = 'http';
35
- }
36
- else if (packageName.includes('/')) {
37
- actualSource = 'github';
38
- }
39
- else {
40
- actualSource = 'npm';
41
- }
42
- }
43
- // Fetch documentation with fallback strategy
44
- let documentation;
45
- let lastError = null;
46
- try {
47
- switch (actualSource) {
48
- case 'npm':
49
- documentation = await this.npmClient.fetch(packageName, version);
50
- // If npm returns minimal content (fallback message), try GitHub as backup
51
- if (documentation.content.includes('⚠️ No documentation found') && !version) {
52
- try {
53
- // Try to extract GitHub repo from npm metadata
54
- const npmData = await this.npmClient.getPackageMetadata(packageName);
55
- if (npmData?.repository?.url) {
56
- const githubMatch = npmData.repository.url.match(/github\.com[\/:]([^\/]+)\/([^\/]+?)(?:\.git)?$/);
57
- if (githubMatch) {
58
- const [, owner, repo] = githubMatch;
59
- try {
60
- const githubDoc = await this.githubClient.fetch(`${owner}/${repo}`, version);
61
- if (githubDoc.content && !githubDoc.content.includes('No documentation found')) {
62
- documentation = githubDoc;
63
- documentation.name = packageName; // Keep original package name
64
- }
65
- }
66
- catch (githubError) {
67
- // GitHub also failed, keep npm result
68
- }
69
- }
70
- }
71
- }
72
- catch (fallbackError) {
73
- // Fallback failed, keep npm result
74
- }
75
- }
76
- break;
77
- case 'github':
78
- documentation = await this.githubClient.fetch(packageName, version);
79
- break;
80
- case 'http':
81
- documentation = await this.httpFetcher.fetch(packageName, version);
82
- break;
83
- default:
84
- throw new Error(`Unknown source: ${actualSource}`);
85
- }
86
- // Normalize documentation
87
- const normalized = this.normalizer.normalize(documentation.content, actualSource);
88
- documentation = { ...documentation, sections: normalized.sections };
89
- // Cache the result (even if it's a fallback message)
90
- this.cache.set(cacheKey, documentation);
91
- return documentation;
92
- }
93
- catch (error) {
94
- lastError = error instanceof Error ? error : new Error(String(error));
95
- // If primary source failed and we haven't tried fallback, try fallback
96
- if (actualSource === 'npm' && !version) {
97
- try {
98
- // Try GitHub as fallback
99
- const npmData = await this.npmClient.getPackageMetadata(packageName);
100
- if (npmData?.repository?.url) {
101
- const githubMatch = npmData.repository.url.match(/github\.com[\/:]([^\/]+)\/([^\/]+?)(?:\.git)?$/);
102
- if (githubMatch) {
103
- const [, owner, repo] = githubMatch;
104
- try {
105
- const githubDoc = await this.githubClient.fetch(`${owner}/${repo}`, version);
106
- if (githubDoc.content && !githubDoc.content.includes('No documentation found')) {
107
- documentation = githubDoc;
108
- documentation.name = packageName;
109
- const normalized = this.normalizer.normalize(documentation.content, 'github');
110
- documentation = { ...documentation, sections: normalized.sections };
111
- this.cache.set(cacheKey, documentation);
112
- return documentation;
113
- }
114
- }
115
- catch (githubError) {
116
- // GitHub also failed
117
- }
118
- }
119
- }
120
- }
121
- catch (fallbackError) {
122
- // Fallback failed
123
- }
124
- }
125
- throw new Error(`Failed to fetch documentation: ${lastError.message}`);
126
- }
127
- }
128
- // Force refresh documentation (bypass cache)
129
- async refreshDocumentation(packageName, version) {
130
- return this.getDocumentation(packageName, version, undefined, true);
131
- }
132
- // Check if cached documentation is still up-to-date
133
- async checkForUpdates(packageName, version) {
134
- const cacheKey = this.cache.generateKey(packageName, version);
135
- const cached = this.cache.get(cacheKey);
136
- if (!cached) {
137
- return true; // No cache, needs update
138
- }
139
- // For npm packages, check if newer version exists
140
- if (cached.source === 'npm') {
141
- try {
142
- const fresh = await this.npmClient.fetch(packageName, version);
143
- // Compare publish times
144
- if (fresh.lastUpdated > cached.lastUpdated) {
145
- return true; // Newer version available
146
- }
147
- }
148
- catch (error) {
149
- // If check fails, assume cached is still valid
150
- return false;
151
- }
152
- }
153
- return false; // Cached version is still latest
154
- }
155
- getCache() {
156
- return this.cache;
157
- }
158
- }
159
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/documentation/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAE1D,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAGrD,MAAM,OAAO,oBAAoB;IACvB,KAAK,CAAqB;IAC1B,SAAS,CAAoB;IAC7B,YAAY,CAAe;IAC3B,WAAW,CAAc;IACzB,UAAU,CAA0B;IAE5C,YAAY,kBAA0B,EAAE,EAAE,WAAoB,EAAE,WAAyB;QACvF,IAAI,CAAC,KAAK,GAAG,IAAI,kBAAkB,CAAC,eAAe,CAAC,CAAC;QACrD,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE,CAAC;QAChF,IAAI,CAAC,SAAS,GAAG,IAAI,iBAAiB,CAAC,UAAU,CAAC,CAAC;QACnD,IAAI,CAAC,YAAY,GAAG,IAAI,YAAY,CAAC,WAAW,EAAE,UAAU,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,GAAG,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAuB,EAAE,CAAC;IAClD,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,WAAmB,EACnB,OAAgB,EAChB,MAAkC,EAClC,eAAwB,KAAK;QAE7B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAE9D,2CAA2C;QAC3C,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YACxC,IAAI,MAAM,EAAE,CAAC;gBACX,OAAO,MAAM,CAAC;YAChB,CAAC;QACH,CAAC;QAED,oCAAoC;QACpC,IAAI,YAAY,GAAG,MAAM,CAAC;QAC1B,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,IAAI,WAAW,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;gBACnC,YAAY,GAAG,MAAM,CAAC;YACxB,CAAC;iBAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBACrC,YAAY,GAAG,QAAQ,CAAC;YAC1B,CAAC;iBAAM,CAAC;gBACN,YAAY,GAAG,KAAK,CAAC;YACvB,CAAC;QACH,CAAC;QAED,6CAA6C;QAC7C,IAAI,aAA4B,CAAC;QACjC,IAAI,SAAS,GAAiB,IAAI,CAAC;QAEnC,IAAI,CAAC;YACH,QAAQ,YAAY,EAAE,CAAC;gBACrB,KAAK,KAAK;oBACR,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;oBACjE,0EAA0E;oBAC1E,IAAI,aAAa,CAAC,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;wBAC5E,IAAI,CAAC;4BACH,+CAA+C;4BAC/C,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;4BACrE,IAAI,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;gCAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;gCACnG,IAAI,WAAW,EAAE,CAAC;oCAChB,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,WAAW,CAAC;oCACpC,IAAI,CAAC;wCACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;wCAC7E,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;4CAC/E,aAAa,GAAG,SAAS,CAAC;4CAC1B,aAAa,CAAC,IAAI,GAAG,WAAW,CAAC,CAAC,6BAA6B;wCACjE,CAAC;oCACH,CAAC;oCAAC,OAAO,WAAW,EAAE,CAAC;wCACrB,sCAAsC;oCACxC,CAAC;gCACH,CAAC;4BACH,CAAC;wBACH,CAAC;wBAAC,OAAO,aAAa,EAAE,CAAC;4BACvB,mCAAmC;wBACrC,CAAC;oBACH,CAAC;oBACD,MAAM;gBACR,KAAK,QAAQ;oBACX,aAAa,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;oBACpE,MAAM;gBACR,KAAK,MAAM;oBACT,aAAa,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;oBACnE,MAAM;gBACR;oBACE,MAAM,IAAI,KAAK,CAAC,mBAAmB,YAAY,EAAE,CAAC,CAAC;YACvD,CAAC;YAED,0BAA0B;YAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YAClF,aAAa,GAAG,EAAE,GAAG,aAAa,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC;YAEpE,qDAAqD;YACrD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;YAExC,OAAO,aAAa,CAAC;QACvB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,SAAS,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;YAEtE,uEAAuE;YACvE,IAAI,YAAY,KAAK,KAAK,IAAI,CAAC,OAAO,EAAE,CAAC;gBACvC,IAAI,CAAC;oBACH,yBAAyB;oBACzB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;oBACrE,IAAI,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC;wBAC7B,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,gDAAgD,CAAC,CAAC;wBACnG,IAAI,WAAW,EAAE,CAAC;4BAChB,MAAM,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,GAAG,WAAW,CAAC;4BACpC,IAAI,CAAC;gCACH,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,IAAI,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;gCAC7E,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,QAAQ,CAAC,wBAAwB,CAAC,EAAE,CAAC;oCAC/E,aAAa,GAAG,SAAS,CAAC;oCAC1B,aAAa,CAAC,IAAI,GAAG,WAAW,CAAC;oCACjC,MAAM,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,aAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;oCAC9E,aAAa,GAAG,EAAE,GAAG,aAAa,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC;oCACpE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;oCACxC,OAAO,aAAa,CAAC;gCACvB,CAAC;4BACH,CAAC;4BAAC,OAAO,WAAW,EAAE,CAAC;gCACrB,qBAAqB;4BACvB,CAAC;wBACH,CAAC;oBACH,CAAC;gBACH,CAAC;gBAAC,OAAO,aAAa,EAAE,CAAC;oBACvB,kBAAkB;gBACpB,CAAC;YACH,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,kCAAkC,SAAS,CAAC,OAAO,EAAE,CAAC,CAAC;QACzE,CAAC;IACH,CAAC;IAED,6CAA6C;IAC7C,KAAK,CAAC,oBAAoB,CAAC,WAAmB,EAAE,OAAgB;QAC9D,OAAO,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACtE,CAAC;IAED,oDAAoD;IACpD,KAAK,CAAC,eAAe,CAAC,WAAmB,EAAE,OAAgB;QACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAExC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,CAAC,yBAAyB;QACxC,CAAC;QAED,kDAAkD;QAClD,IAAI,MAAM,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YAC5B,IAAI,CAAC;gBACH,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;gBAC/D,wBAAwB;gBACxB,IAAI,KAAK,CAAC,WAAW,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;oBAC3C,OAAO,IAAI,CAAC,CAAC,0BAA0B;gBACzC,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,+CAA+C;gBAC/C,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,CAAC,iCAAiC;IACjD,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;CACF"}
@@ -1,31 +0,0 @@
1
- import { HttpClient } from '../../utils/http-client.js';
2
- export interface LlmsTxtVariant {
3
- url: string;
4
- variant: string;
5
- exists: boolean;
6
- }
7
- /**
8
- * Detector for llms.txt files and their variants
9
- * Based on Skill_Seekers implementation
10
- */
11
- export declare class LlmsTxtDetector {
12
- private baseUrl;
13
- private httpClient;
14
- private readonly VARIANTS;
15
- constructor(baseUrl: string, httpClient?: HttpClient);
16
- /**
17
- * Detect all available llms.txt variants
18
- * Returns array of variants that exist
19
- */
20
- detectAll(): Promise<LlmsTxtVariant[]>;
21
- /**
22
- * Check if a specific llms.txt file exists
23
- * Uses GET with Range header since HttpClient doesn't have HEAD method
24
- */
25
- private checkExists;
26
- /**
27
- * Detect if ANY llms.txt variant exists
28
- */
29
- detectAny(): Promise<LlmsTxtVariant | null>;
30
- }
31
- //# sourceMappingURL=detector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"detector.d.ts","sourceRoot":"","sources":["../../../src/documentation/llms-txt/detector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAGxD,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;;GAGG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,UAAU,CAAa;IAG/B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAKvB;gBAEU,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,EAAE,UAAU;IAKpD;;;OAGG;IACG,SAAS,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;IA6B5C;;;OAGG;YACW,WAAW;IAiBzB;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;CAIlD"}
@@ -1,77 +0,0 @@
1
- import { HttpClient } from '../../utils/http-client.js';
2
- import { logger } from '../../utils/logger.js';
3
- /**
4
- * Detector for llms.txt files and their variants
5
- * Based on Skill_Seekers implementation
6
- */
7
- export class LlmsTxtDetector {
8
- baseUrl;
9
- httpClient;
10
- // Common llms.txt file variants
11
- VARIANTS = [
12
- 'llms.txt',
13
- 'llms-full.txt',
14
- 'llms-ctx.txt',
15
- 'llms-docs.txt',
16
- ];
17
- constructor(baseUrl, httpClient) {
18
- this.baseUrl = baseUrl.endsWith('/') ? baseUrl : `${baseUrl}/`;
19
- this.httpClient = httpClient || new HttpClient();
20
- }
21
- /**
22
- * Detect all available llms.txt variants
23
- * Returns array of variants that exist
24
- */
25
- async detectAll() {
26
- logger.info('Detecting llms.txt variants', { baseUrl: this.baseUrl });
27
- const results = [];
28
- for (const variant of this.VARIANTS) {
29
- const url = new URL(variant, this.baseUrl).href;
30
- const exists = await this.checkExists(url);
31
- results.push({
32
- url,
33
- variant,
34
- exists,
35
- });
36
- if (exists) {
37
- logger.info('Found llms.txt variant', { variant, url });
38
- }
39
- }
40
- const foundCount = results.filter(r => r.exists).length;
41
- logger.info('llms.txt detection complete', {
42
- baseUrl: this.baseUrl,
43
- foundVariants: foundCount,
44
- totalChecked: this.VARIANTS.length,
45
- });
46
- return results.filter(r => r.exists);
47
- }
48
- /**
49
- * Check if a specific llms.txt file exists
50
- * Uses GET with Range header since HttpClient doesn't have HEAD method
51
- */
52
- async checkExists(url) {
53
- try {
54
- // Use GET with Range header to check existence without downloading full content
55
- const response = await this.httpClient.get(url, {
56
- headers: {
57
- 'Range': 'bytes=0-100',
58
- },
59
- validateStatus: (status) => status === 200 || status === 206 || status === 416,
60
- timeout: 5000, // Quick timeout for existence check
61
- });
62
- return response.status === 200 || response.status === 206;
63
- }
64
- catch (error) {
65
- logger.debug('llms.txt file not found', { url });
66
- return false;
67
- }
68
- }
69
- /**
70
- * Detect if ANY llms.txt variant exists
71
- */
72
- async detectAny() {
73
- const variants = await this.detectAll();
74
- return variants.length > 0 ? variants[0] : null;
75
- }
76
- }
77
- //# sourceMappingURL=detector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"detector.js","sourceRoot":"","sources":["../../../src/documentation/llms-txt/detector.ts"],"names":[],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- import { HttpClient } from '../../utils/http-client.js';
2
- import type { LlmsTxtVariant } from './detector.js';
3
- export interface DownloadedContent {
4
- url: string;
5
- variant: string;
6
- content: string;
7
- size: number;
8
- }
9
- /**
10
- * Downloader for llms.txt files
11
- * Based on Skill_Seekers implementation
12
- */
13
- export declare class LlmsTxtDownloader {
14
- private httpClient;
15
- constructor(httpClient?: HttpClient);
16
- /**
17
- * Download a single llms.txt file
18
- */
19
- download(url: string): Promise<string>;
20
- /**
21
- * Download multiple llms.txt variants
22
- */
23
- downloadAll(variants: LlmsTxtVariant[]): Promise<DownloadedContent[]>;
24
- /**
25
- * Get proper filename for saving content
26
- * Ensures .md extension for proper markdown rendering
27
- */
28
- getProperFilename(url: string): string;
29
- }
30
- //# sourceMappingURL=downloader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"downloader.d.ts","sourceRoot":"","sources":["../../../src/documentation/llms-txt/downloader.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAExD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;GAGG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,UAAU,CAAa;gBAEnB,UAAU,CAAC,EAAE,UAAU;IAInC;;OAEG;IACG,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IA0B5C;;OAEG;IACG,WAAW,CAAC,QAAQ,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAiC3E;;;OAGG;IACH,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;CAWvC"}