@pleaseai/ask 0.1.0 → 0.1.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (101) hide show
  1. package/dist/agents.d.ts +2 -0
  2. package/dist/agents.d.ts.map +1 -0
  3. package/dist/agents.js +73 -0
  4. package/dist/agents.js.map +1 -0
  5. package/dist/concurrency.d.ts +12 -0
  6. package/dist/concurrency.d.ts.map +1 -0
  7. package/dist/concurrency.js +33 -0
  8. package/dist/concurrency.js.map +1 -0
  9. package/dist/config.d.ts +8 -0
  10. package/dist/config.d.ts.map +1 -0
  11. package/dist/config.js +28 -0
  12. package/dist/config.js.map +1 -0
  13. package/dist/ignore-files.d.ts +59 -0
  14. package/dist/ignore-files.d.ts.map +1 -0
  15. package/dist/ignore-files.js +205 -0
  16. package/dist/ignore-files.js.map +1 -0
  17. package/dist/index.d.ts +76 -0
  18. package/dist/index.d.ts.map +1 -0
  19. package/dist/index.js +485 -0
  20. package/dist/index.js.map +1 -0
  21. package/dist/io.d.ts +55 -0
  22. package/dist/io.d.ts.map +1 -0
  23. package/dist/io.js +159 -0
  24. package/dist/io.js.map +1 -0
  25. package/dist/manifest/index.d.ts +26 -0
  26. package/dist/manifest/index.d.ts.map +1 -0
  27. package/dist/manifest/index.js +25 -0
  28. package/dist/manifest/index.js.map +1 -0
  29. package/dist/manifest/npm.d.ts +18 -0
  30. package/dist/manifest/npm.d.ts.map +1 -0
  31. package/dist/manifest/npm.js +155 -0
  32. package/dist/manifest/npm.js.map +1 -0
  33. package/dist/markers.d.ts +34 -0
  34. package/dist/markers.d.ts.map +1 -0
  35. package/dist/markers.js +82 -0
  36. package/dist/markers.js.map +1 -0
  37. package/dist/migrate-legacy.d.ts +24 -0
  38. package/dist/migrate-legacy.d.ts.map +1 -0
  39. package/dist/migrate-legacy.js +85 -0
  40. package/dist/migrate-legacy.js.map +1 -0
  41. package/dist/registry.d.ts +71 -0
  42. package/dist/registry.d.ts.map +1 -0
  43. package/dist/registry.js +201 -0
  44. package/dist/registry.js.map +1 -0
  45. package/dist/resolvers/index.d.ts +32 -0
  46. package/dist/resolvers/index.d.ts.map +1 -0
  47. package/dist/resolvers/index.js +17 -0
  48. package/dist/resolvers/index.js.map +1 -0
  49. package/dist/resolvers/maven.d.ts +33 -0
  50. package/dist/resolvers/maven.d.ts.map +1 -0
  51. package/dist/resolvers/maven.js +187 -0
  52. package/dist/resolvers/maven.js.map +1 -0
  53. package/dist/resolvers/npm.d.ts +13 -0
  54. package/dist/resolvers/npm.d.ts.map +1 -0
  55. package/dist/resolvers/npm.js +67 -0
  56. package/dist/resolvers/npm.js.map +1 -0
  57. package/dist/resolvers/pub.d.ts +13 -0
  58. package/dist/resolvers/pub.d.ts.map +1 -0
  59. package/dist/resolvers/pub.js +50 -0
  60. package/dist/resolvers/pub.js.map +1 -0
  61. package/dist/resolvers/pypi.d.ts +12 -0
  62. package/dist/resolvers/pypi.d.ts.map +1 -0
  63. package/dist/resolvers/pypi.js +60 -0
  64. package/dist/resolvers/pypi.js.map +1 -0
  65. package/dist/resolvers/utils.d.ts +15 -0
  66. package/dist/resolvers/utils.d.ts.map +1 -0
  67. package/dist/resolvers/utils.js +26 -0
  68. package/dist/resolvers/utils.js.map +1 -0
  69. package/dist/schemas.d.ts +490 -0
  70. package/dist/schemas.d.ts.map +1 -0
  71. package/dist/schemas.js +91 -0
  72. package/dist/schemas.js.map +1 -0
  73. package/dist/skill.d.ts +4 -0
  74. package/dist/skill.d.ts.map +1 -0
  75. package/dist/skill.js +53 -0
  76. package/dist/skill.js.map +1 -0
  77. package/dist/sources/github.d.ts +14 -0
  78. package/dist/sources/github.d.ts.map +1 -0
  79. package/dist/sources/github.js +114 -0
  80. package/dist/sources/github.js.map +1 -0
  81. package/dist/sources/index.d.ts +41 -0
  82. package/dist/sources/index.d.ts.map +1 -0
  83. package/dist/sources/index.js +14 -0
  84. package/dist/sources/index.js.map +1 -0
  85. package/dist/sources/llms-txt.d.ts +5 -0
  86. package/dist/sources/llms-txt.d.ts.map +1 -0
  87. package/dist/sources/llms-txt.js +33 -0
  88. package/dist/sources/llms-txt.js.map +1 -0
  89. package/dist/sources/npm.d.ts +14 -0
  90. package/dist/sources/npm.d.ts.map +1 -0
  91. package/dist/sources/npm.js +113 -0
  92. package/dist/sources/npm.js.map +1 -0
  93. package/dist/sources/web.d.ts +13 -0
  94. package/dist/sources/web.d.ts.map +1 -0
  95. package/dist/sources/web.js +143 -0
  96. package/dist/sources/web.js.map +1 -0
  97. package/dist/storage.d.ts +11 -0
  98. package/dist/storage.d.ts.map +1 -0
  99. package/dist/storage.js +76 -0
  100. package/dist/storage.js.map +1 -0
  101. package/package.json +9 -8
@@ -0,0 +1,490 @@
1
+ import { z } from 'zod';
2
+ export declare const SourceConfigSchema: z.ZodDiscriminatedUnion<"source", [z.ZodObject<{
3
+ source: z.ZodLiteral<"github">;
4
+ name: z.ZodString;
5
+ version: z.ZodString;
6
+ repo: z.ZodString;
7
+ branch: z.ZodOptional<z.ZodString>;
8
+ tag: z.ZodOptional<z.ZodString>;
9
+ docsPath: z.ZodOptional<z.ZodString>;
10
+ }, "strip", z.ZodTypeAny, {
11
+ source: "github";
12
+ name: string;
13
+ version: string;
14
+ repo: string;
15
+ branch?: string | undefined;
16
+ tag?: string | undefined;
17
+ docsPath?: string | undefined;
18
+ }, {
19
+ source: "github";
20
+ name: string;
21
+ version: string;
22
+ repo: string;
23
+ branch?: string | undefined;
24
+ tag?: string | undefined;
25
+ docsPath?: string | undefined;
26
+ }>, z.ZodObject<{
27
+ source: z.ZodLiteral<"npm">;
28
+ name: z.ZodString;
29
+ version: z.ZodString;
30
+ package: z.ZodOptional<z.ZodString>;
31
+ docsPath: z.ZodOptional<z.ZodString>;
32
+ }, "strip", z.ZodTypeAny, {
33
+ source: "npm";
34
+ name: string;
35
+ version: string;
36
+ docsPath?: string | undefined;
37
+ package?: string | undefined;
38
+ }, {
39
+ source: "npm";
40
+ name: string;
41
+ version: string;
42
+ docsPath?: string | undefined;
43
+ package?: string | undefined;
44
+ }>, z.ZodObject<{
45
+ source: z.ZodLiteral<"web">;
46
+ name: z.ZodString;
47
+ version: z.ZodString;
48
+ urls: z.ZodArray<z.ZodString, "many">;
49
+ maxDepth: z.ZodOptional<z.ZodNumber>;
50
+ allowedPathPrefix: z.ZodOptional<z.ZodString>;
51
+ }, "strip", z.ZodTypeAny, {
52
+ source: "web";
53
+ name: string;
54
+ version: string;
55
+ urls: string[];
56
+ maxDepth?: number | undefined;
57
+ allowedPathPrefix?: string | undefined;
58
+ }, {
59
+ source: "web";
60
+ name: string;
61
+ version: string;
62
+ urls: string[];
63
+ maxDepth?: number | undefined;
64
+ allowedPathPrefix?: string | undefined;
65
+ }>, z.ZodObject<{
66
+ source: z.ZodLiteral<"llms-txt">;
67
+ name: z.ZodString;
68
+ version: z.ZodString;
69
+ url: z.ZodString;
70
+ }, "strip", z.ZodTypeAny, {
71
+ source: "llms-txt";
72
+ name: string;
73
+ version: string;
74
+ url: string;
75
+ }, {
76
+ source: "llms-txt";
77
+ name: string;
78
+ version: string;
79
+ url: string;
80
+ }>]>;
81
+ export type SourceConfig = z.infer<typeof SourceConfigSchema>;
82
+ export declare const ConfigSchema: z.ZodObject<{
83
+ schemaVersion: z.ZodLiteral<1>;
84
+ docs: z.ZodArray<z.ZodDiscriminatedUnion<"source", [z.ZodObject<{
85
+ source: z.ZodLiteral<"github">;
86
+ name: z.ZodString;
87
+ version: z.ZodString;
88
+ repo: z.ZodString;
89
+ branch: z.ZodOptional<z.ZodString>;
90
+ tag: z.ZodOptional<z.ZodString>;
91
+ docsPath: z.ZodOptional<z.ZodString>;
92
+ }, "strip", z.ZodTypeAny, {
93
+ source: "github";
94
+ name: string;
95
+ version: string;
96
+ repo: string;
97
+ branch?: string | undefined;
98
+ tag?: string | undefined;
99
+ docsPath?: string | undefined;
100
+ }, {
101
+ source: "github";
102
+ name: string;
103
+ version: string;
104
+ repo: string;
105
+ branch?: string | undefined;
106
+ tag?: string | undefined;
107
+ docsPath?: string | undefined;
108
+ }>, z.ZodObject<{
109
+ source: z.ZodLiteral<"npm">;
110
+ name: z.ZodString;
111
+ version: z.ZodString;
112
+ package: z.ZodOptional<z.ZodString>;
113
+ docsPath: z.ZodOptional<z.ZodString>;
114
+ }, "strip", z.ZodTypeAny, {
115
+ source: "npm";
116
+ name: string;
117
+ version: string;
118
+ docsPath?: string | undefined;
119
+ package?: string | undefined;
120
+ }, {
121
+ source: "npm";
122
+ name: string;
123
+ version: string;
124
+ docsPath?: string | undefined;
125
+ package?: string | undefined;
126
+ }>, z.ZodObject<{
127
+ source: z.ZodLiteral<"web">;
128
+ name: z.ZodString;
129
+ version: z.ZodString;
130
+ urls: z.ZodArray<z.ZodString, "many">;
131
+ maxDepth: z.ZodOptional<z.ZodNumber>;
132
+ allowedPathPrefix: z.ZodOptional<z.ZodString>;
133
+ }, "strip", z.ZodTypeAny, {
134
+ source: "web";
135
+ name: string;
136
+ version: string;
137
+ urls: string[];
138
+ maxDepth?: number | undefined;
139
+ allowedPathPrefix?: string | undefined;
140
+ }, {
141
+ source: "web";
142
+ name: string;
143
+ version: string;
144
+ urls: string[];
145
+ maxDepth?: number | undefined;
146
+ allowedPathPrefix?: string | undefined;
147
+ }>, z.ZodObject<{
148
+ source: z.ZodLiteral<"llms-txt">;
149
+ name: z.ZodString;
150
+ version: z.ZodString;
151
+ url: z.ZodString;
152
+ }, "strip", z.ZodTypeAny, {
153
+ source: "llms-txt";
154
+ name: string;
155
+ version: string;
156
+ url: string;
157
+ }, {
158
+ source: "llms-txt";
159
+ name: string;
160
+ version: string;
161
+ url: string;
162
+ }>]>, "many">;
163
+ manageIgnores: z.ZodOptional<z.ZodBoolean>;
164
+ }, "strip", z.ZodTypeAny, {
165
+ schemaVersion: 1;
166
+ docs: ({
167
+ source: "github";
168
+ name: string;
169
+ version: string;
170
+ repo: string;
171
+ branch?: string | undefined;
172
+ tag?: string | undefined;
173
+ docsPath?: string | undefined;
174
+ } | {
175
+ source: "npm";
176
+ name: string;
177
+ version: string;
178
+ docsPath?: string | undefined;
179
+ package?: string | undefined;
180
+ } | {
181
+ source: "web";
182
+ name: string;
183
+ version: string;
184
+ urls: string[];
185
+ maxDepth?: number | undefined;
186
+ allowedPathPrefix?: string | undefined;
187
+ } | {
188
+ source: "llms-txt";
189
+ name: string;
190
+ version: string;
191
+ url: string;
192
+ })[];
193
+ manageIgnores?: boolean | undefined;
194
+ }, {
195
+ schemaVersion: 1;
196
+ docs: ({
197
+ source: "github";
198
+ name: string;
199
+ version: string;
200
+ repo: string;
201
+ branch?: string | undefined;
202
+ tag?: string | undefined;
203
+ docsPath?: string | undefined;
204
+ } | {
205
+ source: "npm";
206
+ name: string;
207
+ version: string;
208
+ docsPath?: string | undefined;
209
+ package?: string | undefined;
210
+ } | {
211
+ source: "web";
212
+ name: string;
213
+ version: string;
214
+ urls: string[];
215
+ maxDepth?: number | undefined;
216
+ allowedPathPrefix?: string | undefined;
217
+ } | {
218
+ source: "llms-txt";
219
+ name: string;
220
+ version: string;
221
+ url: string;
222
+ })[];
223
+ manageIgnores?: boolean | undefined;
224
+ }>;
225
+ export type Config = z.infer<typeof ConfigSchema>;
226
+ export declare const LockEntrySchema: z.ZodDiscriminatedUnion<"source", [z.ZodObject<{
227
+ source: z.ZodLiteral<"github">;
228
+ repo: z.ZodString;
229
+ ref: z.ZodString;
230
+ commit: z.ZodOptional<z.ZodString>;
231
+ version: z.ZodString;
232
+ fetchedAt: z.ZodString;
233
+ fileCount: z.ZodNumber;
234
+ contentHash: z.ZodString;
235
+ }, "strip", z.ZodTypeAny, {
236
+ source: "github";
237
+ version: string;
238
+ repo: string;
239
+ ref: string;
240
+ fetchedAt: string;
241
+ fileCount: number;
242
+ contentHash: string;
243
+ commit?: string | undefined;
244
+ }, {
245
+ source: "github";
246
+ version: string;
247
+ repo: string;
248
+ ref: string;
249
+ fetchedAt: string;
250
+ fileCount: number;
251
+ contentHash: string;
252
+ commit?: string | undefined;
253
+ }>, z.ZodObject<{
254
+ source: z.ZodLiteral<"npm">;
255
+ tarball: z.ZodString;
256
+ integrity: z.ZodOptional<z.ZodString>;
257
+ version: z.ZodString;
258
+ fetchedAt: z.ZodString;
259
+ fileCount: z.ZodNumber;
260
+ contentHash: z.ZodString;
261
+ }, "strip", z.ZodTypeAny, {
262
+ source: "npm";
263
+ version: string;
264
+ fetchedAt: string;
265
+ fileCount: number;
266
+ contentHash: string;
267
+ tarball: string;
268
+ integrity?: string | undefined;
269
+ }, {
270
+ source: "npm";
271
+ version: string;
272
+ fetchedAt: string;
273
+ fileCount: number;
274
+ contentHash: string;
275
+ tarball: string;
276
+ integrity?: string | undefined;
277
+ }>, z.ZodObject<{
278
+ source: z.ZodLiteral<"web">;
279
+ urls: z.ZodArray<z.ZodString, "many">;
280
+ version: z.ZodString;
281
+ fetchedAt: z.ZodString;
282
+ fileCount: z.ZodNumber;
283
+ contentHash: z.ZodString;
284
+ }, "strip", z.ZodTypeAny, {
285
+ source: "web";
286
+ version: string;
287
+ urls: string[];
288
+ fetchedAt: string;
289
+ fileCount: number;
290
+ contentHash: string;
291
+ }, {
292
+ source: "web";
293
+ version: string;
294
+ urls: string[];
295
+ fetchedAt: string;
296
+ fileCount: number;
297
+ contentHash: string;
298
+ }>, z.ZodObject<{
299
+ source: z.ZodLiteral<"llms-txt">;
300
+ url: z.ZodString;
301
+ version: z.ZodString;
302
+ fetchedAt: z.ZodString;
303
+ fileCount: z.ZodNumber;
304
+ contentHash: z.ZodString;
305
+ }, "strip", z.ZodTypeAny, {
306
+ source: "llms-txt";
307
+ version: string;
308
+ url: string;
309
+ fetchedAt: string;
310
+ fileCount: number;
311
+ contentHash: string;
312
+ }, {
313
+ source: "llms-txt";
314
+ version: string;
315
+ url: string;
316
+ fetchedAt: string;
317
+ fileCount: number;
318
+ contentHash: string;
319
+ }>]>;
320
+ export type LockEntry = z.infer<typeof LockEntrySchema>;
321
+ export declare const LockSchema: z.ZodObject<{
322
+ lockfileVersion: z.ZodLiteral<1>;
323
+ generatedAt: z.ZodString;
324
+ entries: z.ZodRecord<z.ZodString, z.ZodDiscriminatedUnion<"source", [z.ZodObject<{
325
+ source: z.ZodLiteral<"github">;
326
+ repo: z.ZodString;
327
+ ref: z.ZodString;
328
+ commit: z.ZodOptional<z.ZodString>;
329
+ version: z.ZodString;
330
+ fetchedAt: z.ZodString;
331
+ fileCount: z.ZodNumber;
332
+ contentHash: z.ZodString;
333
+ }, "strip", z.ZodTypeAny, {
334
+ source: "github";
335
+ version: string;
336
+ repo: string;
337
+ ref: string;
338
+ fetchedAt: string;
339
+ fileCount: number;
340
+ contentHash: string;
341
+ commit?: string | undefined;
342
+ }, {
343
+ source: "github";
344
+ version: string;
345
+ repo: string;
346
+ ref: string;
347
+ fetchedAt: string;
348
+ fileCount: number;
349
+ contentHash: string;
350
+ commit?: string | undefined;
351
+ }>, z.ZodObject<{
352
+ source: z.ZodLiteral<"npm">;
353
+ tarball: z.ZodString;
354
+ integrity: z.ZodOptional<z.ZodString>;
355
+ version: z.ZodString;
356
+ fetchedAt: z.ZodString;
357
+ fileCount: z.ZodNumber;
358
+ contentHash: z.ZodString;
359
+ }, "strip", z.ZodTypeAny, {
360
+ source: "npm";
361
+ version: string;
362
+ fetchedAt: string;
363
+ fileCount: number;
364
+ contentHash: string;
365
+ tarball: string;
366
+ integrity?: string | undefined;
367
+ }, {
368
+ source: "npm";
369
+ version: string;
370
+ fetchedAt: string;
371
+ fileCount: number;
372
+ contentHash: string;
373
+ tarball: string;
374
+ integrity?: string | undefined;
375
+ }>, z.ZodObject<{
376
+ source: z.ZodLiteral<"web">;
377
+ urls: z.ZodArray<z.ZodString, "many">;
378
+ version: z.ZodString;
379
+ fetchedAt: z.ZodString;
380
+ fileCount: z.ZodNumber;
381
+ contentHash: z.ZodString;
382
+ }, "strip", z.ZodTypeAny, {
383
+ source: "web";
384
+ version: string;
385
+ urls: string[];
386
+ fetchedAt: string;
387
+ fileCount: number;
388
+ contentHash: string;
389
+ }, {
390
+ source: "web";
391
+ version: string;
392
+ urls: string[];
393
+ fetchedAt: string;
394
+ fileCount: number;
395
+ contentHash: string;
396
+ }>, z.ZodObject<{
397
+ source: z.ZodLiteral<"llms-txt">;
398
+ url: z.ZodString;
399
+ version: z.ZodString;
400
+ fetchedAt: z.ZodString;
401
+ fileCount: z.ZodNumber;
402
+ contentHash: z.ZodString;
403
+ }, "strip", z.ZodTypeAny, {
404
+ source: "llms-txt";
405
+ version: string;
406
+ url: string;
407
+ fetchedAt: string;
408
+ fileCount: number;
409
+ contentHash: string;
410
+ }, {
411
+ source: "llms-txt";
412
+ version: string;
413
+ url: string;
414
+ fetchedAt: string;
415
+ fileCount: number;
416
+ contentHash: string;
417
+ }>]>>;
418
+ }, "strip", z.ZodTypeAny, {
419
+ entries: Record<string, {
420
+ source: "github";
421
+ version: string;
422
+ repo: string;
423
+ ref: string;
424
+ fetchedAt: string;
425
+ fileCount: number;
426
+ contentHash: string;
427
+ commit?: string | undefined;
428
+ } | {
429
+ source: "npm";
430
+ version: string;
431
+ fetchedAt: string;
432
+ fileCount: number;
433
+ contentHash: string;
434
+ tarball: string;
435
+ integrity?: string | undefined;
436
+ } | {
437
+ source: "web";
438
+ version: string;
439
+ urls: string[];
440
+ fetchedAt: string;
441
+ fileCount: number;
442
+ contentHash: string;
443
+ } | {
444
+ source: "llms-txt";
445
+ version: string;
446
+ url: string;
447
+ fetchedAt: string;
448
+ fileCount: number;
449
+ contentHash: string;
450
+ }>;
451
+ lockfileVersion: 1;
452
+ generatedAt: string;
453
+ }, {
454
+ entries: Record<string, {
455
+ source: "github";
456
+ version: string;
457
+ repo: string;
458
+ ref: string;
459
+ fetchedAt: string;
460
+ fileCount: number;
461
+ contentHash: string;
462
+ commit?: string | undefined;
463
+ } | {
464
+ source: "npm";
465
+ version: string;
466
+ fetchedAt: string;
467
+ fileCount: number;
468
+ contentHash: string;
469
+ tarball: string;
470
+ integrity?: string | undefined;
471
+ } | {
472
+ source: "web";
473
+ version: string;
474
+ urls: string[];
475
+ fetchedAt: string;
476
+ fileCount: number;
477
+ contentHash: string;
478
+ } | {
479
+ source: "llms-txt";
480
+ version: string;
481
+ url: string;
482
+ fetchedAt: string;
483
+ fileCount: number;
484
+ contentHash: string;
485
+ }>;
486
+ lockfileVersion: 1;
487
+ generatedAt: string;
488
+ }>;
489
+ export type Lock = z.infer<typeof LockSchema>;
490
+ //# sourceMappingURL=schemas.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AA+CvB,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAK7B,CAAA;AAEF,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAA;AAE7D,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIvB,CAAA;AAEF,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAA;AA8CjD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAK1B,CAAA;AAEF,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAA;AAEvD,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIrB,CAAA;AAEF,MAAM,MAAM,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,UAAU,CAAC,CAAA"}
@@ -0,0 +1,91 @@
1
+ import { z } from 'zod';
2
+ const NameField = z.string().min(1);
3
+ const VersionField = z.string().min(1);
4
+ // Git ref names must match a conservative subset to prevent shell-injection or
5
+ // path-traversal style mischief — git itself permits broader characters but
6
+ // the ASK lockfile only needs alphanumerics, dot, slash, underscore, hyphen.
7
+ const GitRefField = z.string().regex(/^[\w./-]+$/, 'git ref must contain only [A-Za-z0-9 _ . / -]');
8
+ const GithubSourceConfig = z.object({
9
+ source: z.literal('github'),
10
+ name: NameField,
11
+ version: VersionField,
12
+ repo: z.string().regex(/^[^/]+\/[^/]+$/, 'repo must be in "owner/name" form'),
13
+ branch: GitRefField.optional(),
14
+ tag: GitRefField.optional(),
15
+ docsPath: z.string().optional(),
16
+ });
17
+ const NpmSourceConfig = z.object({
18
+ source: z.literal('npm'),
19
+ name: NameField,
20
+ version: VersionField,
21
+ package: z.string().optional(),
22
+ docsPath: z.string().optional(),
23
+ });
24
+ const WebSourceConfig = z.object({
25
+ source: z.literal('web'),
26
+ name: NameField,
27
+ version: VersionField,
28
+ urls: z.array(z.string().url()).min(1),
29
+ maxDepth: z.number().int().min(0).optional(),
30
+ allowedPathPrefix: z.string().optional(),
31
+ });
32
+ const LlmsTxtSourceConfig = z.object({
33
+ source: z.literal('llms-txt'),
34
+ name: NameField,
35
+ version: VersionField,
36
+ url: z.string().url(),
37
+ });
38
+ export const SourceConfigSchema = z.discriminatedUnion('source', [
39
+ GithubSourceConfig,
40
+ NpmSourceConfig,
41
+ WebSourceConfig,
42
+ LlmsTxtSourceConfig,
43
+ ]);
44
+ export const ConfigSchema = z.object({
45
+ schemaVersion: z.literal(1),
46
+ docs: z.array(SourceConfigSchema),
47
+ manageIgnores: z.boolean().optional(),
48
+ });
49
+ const ContentHashField = z.string().regex(/^sha256-[0-9a-f]{64}$/, 'contentHash must be sha256-<64 hex chars>');
50
+ const IsoDateTimeField = z.string().datetime({ offset: true });
51
+ const LockEntryBase = {
52
+ version: VersionField,
53
+ fetchedAt: IsoDateTimeField,
54
+ fileCount: z.number().int().nonnegative(),
55
+ contentHash: ContentHashField,
56
+ };
57
+ const GithubLockEntry = z.object({
58
+ ...LockEntryBase,
59
+ source: z.literal('github'),
60
+ repo: z.string(),
61
+ ref: z.string(),
62
+ commit: z.string().regex(/^[0-9a-f]{40}$/).optional(),
63
+ });
64
+ const NpmLockEntry = z.object({
65
+ ...LockEntryBase,
66
+ source: z.literal('npm'),
67
+ tarball: z.string().url(),
68
+ integrity: z.string().regex(/^sha(?:256|384|512)-[A-Za-z0-9+/=]+$/, 'integrity must be a valid Subresource Integrity hash').optional(),
69
+ });
70
+ const WebLockEntry = z.object({
71
+ ...LockEntryBase,
72
+ source: z.literal('web'),
73
+ urls: z.array(z.string().url()).min(1),
74
+ });
75
+ const LlmsTxtLockEntry = z.object({
76
+ ...LockEntryBase,
77
+ source: z.literal('llms-txt'),
78
+ url: z.string().url(),
79
+ });
80
+ export const LockEntrySchema = z.discriminatedUnion('source', [
81
+ GithubLockEntry,
82
+ NpmLockEntry,
83
+ WebLockEntry,
84
+ LlmsTxtLockEntry,
85
+ ]);
86
+ export const LockSchema = z.object({
87
+ lockfileVersion: z.literal(1),
88
+ generatedAt: IsoDateTimeField,
89
+ entries: z.record(z.string(), LockEntrySchema),
90
+ });
91
+ //# sourceMappingURL=schemas.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schemas.js","sourceRoot":"","sources":["../src/schemas.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ export declare function getSkillDir(projectDir: string, name: string): string;
2
+ export declare function generateSkill(projectDir: string, name: string, version: string, fileList: string[]): string;
3
+ export declare function removeSkill(projectDir: string, name: string): void;
4
+ //# sourceMappingURL=skill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.d.ts","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAIA,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAEpE;AAED,wBAAgB,aAAa,CAC3B,UAAU,EAAE,MAAM,EAClB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,EAAE,GACjB,MAAM,CA+CR;AAED,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAKlE"}
package/dist/skill.js ADDED
@@ -0,0 +1,53 @@
1
+ import fs from 'node:fs';
2
+ import path from 'node:path';
3
+ import { getLibraryDocsDir } from './storage.js';
4
+ export function getSkillDir(projectDir, name) {
5
+ return path.join(projectDir, '.claude', 'skills', `${name}-docs`);
6
+ }
7
+ export function generateSkill(projectDir, name, version, fileList) {
8
+ const skillDir = getSkillDir(projectDir, name);
9
+ fs.mkdirSync(skillDir, { recursive: true });
10
+ const docsRelPath = path.relative(projectDir, getLibraryDocsDir(projectDir, name, version));
11
+ const toc = fileList
12
+ .filter(f => f !== 'INDEX.md')
13
+ .map(f => `- \`${docsRelPath}/${f}\``)
14
+ .join('\n');
15
+ const major = version.split('.')[0];
16
+ const content = `---
17
+ name: ${name}-docs
18
+ description: ${name} v${version} documentation reference. TRIGGER when writing or modifying code that imports or uses ${name}.
19
+ ---
20
+
21
+ # ${name} v${version} Documentation
22
+
23
+ This project uses **${name} v${version}**.
24
+ The APIs and patterns may differ from your training data.
25
+ **Read the relevant docs before writing any code.**
26
+
27
+ ## Version
28
+ - Current: \`${version}\`
29
+ - In package.json, use \`"^${major}"\` (NOT older major versions)
30
+
31
+ ## Documentation Location
32
+ \`${docsRelPath}/\`
33
+
34
+ ## Available Guides
35
+ ${toc}
36
+
37
+ ## Instructions
38
+ 1. Before writing any ${name}-related code, read the relevant guide in \`${docsRelPath}/\`
39
+ 2. Heed deprecation notices and breaking changes
40
+ 3. Prefer patterns shown in the documentation over patterns from training data
41
+ 4. When adding ${name} to package.json, use version \`"^${major}"\`
42
+ `;
43
+ const skillPath = path.join(skillDir, 'SKILL.md');
44
+ fs.writeFileSync(skillPath, content, 'utf-8');
45
+ return skillPath;
46
+ }
47
+ export function removeSkill(projectDir, name) {
48
+ const skillDir = getSkillDir(projectDir, name);
49
+ if (fs.existsSync(skillDir)) {
50
+ fs.rmSync(skillDir, { recursive: true });
51
+ }
52
+ }
53
+ //# sourceMappingURL=skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill.js","sourceRoot":"","sources":["../src/skill.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAA;AACxB,OAAO,IAAI,MAAM,WAAW,CAAA;AAC5B,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAA;AAEhD,MAAM,UAAU,WAAW,CAAC,UAAkB,EAAE,IAAY;IAC1D,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,IAAI,OAAO,CAAC,CAAA;AACnE,CAAC;AAED,MAAM,UAAU,aAAa,CAC3B,UAAkB,EAClB,IAAY,EACZ,OAAe,EACf,QAAkB;IAElB,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IAC9C,EAAE,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAE3C,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAC/B,UAAU,EACV,iBAAiB,CAAC,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,CAC7C,CAAA;IAED,MAAM,GAAG,GAAG,QAAQ;SACjB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,KAAK,UAAU,CAAC;SAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,WAAW,IAAI,CAAC,IAAI,CAAC;SACrC,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAA;IAEnC,MAAM,OAAO,GAAG;QACV,IAAI;eACG,IAAI,KAAK,OAAO,yFAAyF,IAAI;;;IAGxH,IAAI,KAAK,OAAO;;sBAEE,IAAI,KAAK,OAAO;;;;;eAKvB,OAAO;6BACO,KAAK;;;IAG9B,WAAW;;;EAGb,GAAG;;;wBAGmB,IAAI,+CAA+C,WAAW;;;iBAGrE,IAAI,qCAAqC,KAAK;CAC9D,CAAA;IAEC,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAA;IACjD,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,OAAO,EAAE,OAAO,CAAC,CAAA;IAC7C,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,UAAkB,EAAE,IAAY;IAC1D,MAAM,QAAQ,GAAG,WAAW,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;IAC9C,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC5B,EAAE,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAC1C,CAAC;AACH,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { DocSource, FetchResult, SourceConfig } from './index.js';
2
+ export declare class GithubSource implements DocSource {
3
+ fetch(options: SourceConfig): Promise<FetchResult>;
4
+ private detectDocsPath;
5
+ private collectDocFiles;
6
+ /**
7
+ * Resolve a ref (tag or branch) to a full commit sha via `git ls-remote`.
8
+ * Returns undefined when git is unavailable or the ref cannot be resolved
9
+ * — the lockfile leaves `commit` undefined rather than guessing.
10
+ */
11
+ private resolveCommit;
12
+ private isDocFile;
13
+ }
14
+ //# sourceMappingURL=github.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"github.d.ts","sourceRoot":"","sources":["../../src/sources/github.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAEV,SAAS,EACT,WAAW,EAEX,YAAY,EACb,MAAM,YAAY,CAAA;AAWnB,qBAAa,YAAa,YAAW,SAAS;IACtC,KAAK,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,WAAW,CAAC;IA4DxD,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,eAAe;IAmBvB;;;;OAIG;IACH,OAAO,CAAC,aAAa;IA0BrB,OAAO,CAAC,SAAS;CAIlB"}