@truenine/memory-sync-cli 2026.10330.118 → 2026.10402.103

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/dist/index.d.mts CHANGED
@@ -1,33 +1,15 @@
1
1
  /// <reference types="node" />
2
2
  import * as _$node_fs0 from "node:fs";
3
3
  import * as _$node_path0 from "node:path";
4
- import * as fs from "fs";
4
+ import * as _$node_child_process0 from "node:child_process";
5
+ import { spawnSync } from "node:child_process";
5
6
  import { Buffer } from "node:buffer";
6
7
  import { z } from "zod/v3";
8
+ import * as fs from "fs";
7
9
 
8
- //#region ../libraries/logger/dist/index.d.mts
9
- type DiagnosticLines = readonly [string, ...string[]];
10
- type LoggerMethod = (message: string | object, ...meta: unknown[]) => void;
11
- type LoggerDiagnosticMethod = (diagnostic: LoggerDiagnosticInput) => void;
12
- interface LoggerDiagnosticInput {
13
- readonly code: string;
14
- readonly title: string;
15
- readonly rootCause: DiagnosticLines;
16
- readonly exactFix?: DiagnosticLines | undefined;
17
- readonly possibleFixes?: readonly DiagnosticLines[] | undefined;
18
- readonly details?: Record<string, unknown> | undefined;
19
- }
20
- interface ILogger {
21
- error: LoggerDiagnosticMethod;
22
- warn: LoggerDiagnosticMethod;
23
- info: LoggerMethod;
24
- debug: LoggerMethod;
25
- trace: LoggerMethod;
26
- fatal: LoggerDiagnosticMethod;
27
- }
28
- /**
29
- * Set the global log level for all loggers.
30
- */
10
+ //#region src/cli-runtime.d.ts
11
+ declare function isJsonMode(argv: readonly string[]): boolean;
12
+ declare function runCli(argv?: readonly string[]): Promise<number>;
31
13
  //#endregion
32
14
  //#region ../libraries/md-compiler/dist/index-CmaMBW0n.d.mts
33
15
  //#region ../../node_modules/.pnpm/@types+unist@3.0.3/node_modules/@types/unist/index.d.ts
@@ -51,11 +33,11 @@ interface ILogger {
51
33
  * }
52
34
  * ```
53
35
  */
54
- interface Data$1 {}
36
+ interface Data$1$1 {}
55
37
  /**
56
38
  * One place in a source file.
57
39
  */
58
- interface Point$1 {
40
+ interface Point$2 {
59
41
  /**
60
42
  * Line in a source file (1-indexed integer).
61
43
  */
@@ -74,15 +56,15 @@ interface Point$1 {
74
56
  *
75
57
  * A position is a range between two points.
76
58
  */
77
- interface Position$1 {
59
+ interface Position$2 {
78
60
  /**
79
61
  * Place of the first character of the parsed source region.
80
62
  */
81
- start: Point$1;
63
+ start: Point$2;
82
64
  /**
83
65
  * Place of the first character after the parsed source region.
84
66
  */
85
- end: Point$1;
67
+ end: Point$2;
86
68
  }
87
69
  /**
88
70
  * Abstract unist node.
@@ -94,7 +76,7 @@ interface Position$1 {
94
76
  * But for example in markdown, a `thematicBreak` (`***`), is neither literal
95
77
  * nor parent, but still a node.
96
78
  */
97
- interface Node$1 {
79
+ interface Node$1$1 {
98
80
  /**
99
81
  * Node type.
100
82
  */
@@ -102,14 +84,14 @@ interface Node$1 {
102
84
  /**
103
85
  * Info from the ecosystem.
104
86
  */
105
- data?: Data$1 | undefined;
87
+ data?: Data$1$1 | undefined;
106
88
  /**
107
89
  * Position of a node in a source document.
108
90
  *
109
91
  * Nodes that are generated (not in the original source document) must not
110
92
  * have a position.
111
93
  */
112
- position?: Position$1 | undefined;
94
+ position?: Position$2 | undefined;
113
95
  } //#endregion
114
96
  //#region ../../node_modules/.pnpm/@types+mdast@4.0.4/node_modules/@types/mdast/index.d.ts
115
97
  // ## Enumeration
@@ -130,7 +112,7 @@ interface Node$1 {
130
112
  *
131
113
  * Used in GFM tables.
132
114
  */
133
- type AlignType = "center" | "left" | "right" | null;
115
+ type AlignType$1 = "center" | "left" | "right" | null;
134
116
  /**
135
117
  * Explicitness of a reference.
136
118
  *
@@ -140,11 +122,11 @@ type AlignType = "center" | "left" | "right" | null;
140
122
  * content
141
123
  * `'full'`: the reference is explicit, its identifier explicitly set
142
124
  */
143
- type ReferenceType = "shortcut" | "collapsed" | "full"; // ## Mixin
125
+ type ReferenceType$1 = "shortcut" | "collapsed" | "full"; // ## Mixin
144
126
  /**
145
127
  * Node with a fallback.
146
128
  */
147
- interface Alternative {
129
+ interface Alternative$1 {
148
130
  /**
149
131
  * Equivalent content for environments that cannot represent the node as
150
132
  * intended.
@@ -160,7 +142,7 @@ interface Alternative {
160
142
  * whereas multiple {@link LinkReference}s can be non-unique to be associated
161
143
  * with one definition.
162
144
  */
163
- interface Association {
145
+ interface Association$1 {
164
146
  /**
165
147
  * Relation of association.
166
148
  *
@@ -189,16 +171,16 @@ interface Association {
189
171
  /**
190
172
  * Marker that is associated to another node.
191
173
  */
192
- interface Reference extends Association {
174
+ interface Reference$1 extends Association$1 {
193
175
  /**
194
176
  * Explicitness of the reference.
195
177
  */
196
- referenceType: ReferenceType;
178
+ referenceType: ReferenceType$1;
197
179
  }
198
180
  /**
199
181
  * Reference to resource.
200
182
  */
201
- interface Resource {
183
+ interface Resource$1 {
202
184
  /**
203
185
  * URL to the referenced resource.
204
186
  */
@@ -227,7 +209,7 @@ interface Resource {
227
209
  * }
228
210
  * ```
229
211
  */
230
- interface Data$2 extends Data$1 {} // ## Content maps
212
+ interface Data$3 extends Data$1$1 {} // ## Content maps
231
213
  /**
232
214
  * Union of registered mdast nodes that can occur where block content is
233
215
  * expected.
@@ -235,7 +217,7 @@ interface Data$2 extends Data$1 {} // ## Content maps
235
217
  * To register custom mdast nodes, add them to {@link BlockContentMap}.
236
218
  * They will be automatically added here.
237
219
  */
238
- type BlockContent = BlockContentMap[keyof BlockContentMap];
220
+ type BlockContent$1 = BlockContentMap$1[keyof BlockContentMap$1];
239
221
  /**
240
222
  * Registry of all mdast nodes that can occur where {@link BlockContent} is
241
223
  * expected.
@@ -253,15 +235,15 @@ type BlockContent = BlockContentMap[keyof BlockContentMap];
253
235
  *
254
236
  * For a union of all block content, see {@link RootContent}.
255
237
  */
256
- interface BlockContentMap {
257
- blockquote: Blockquote;
258
- code: Code$1;
259
- heading: Heading;
260
- html: Html;
261
- list: List;
262
- paragraph: Paragraph;
263
- table: Table;
264
- thematicBreak: ThematicBreak;
238
+ interface BlockContentMap$1 {
239
+ blockquote: Blockquote$1;
240
+ code: Code$2;
241
+ heading: Heading$1;
242
+ html: Html$1;
243
+ list: List$1;
244
+ paragraph: Paragraph$1;
245
+ table: Table$1;
246
+ thematicBreak: ThematicBreak$1;
265
247
  }
266
248
  /**
267
249
  * Union of registered mdast nodes that can occur where definition content is
@@ -270,7 +252,7 @@ interface BlockContentMap {
270
252
  * To register custom mdast nodes, add them to {@link DefinitionContentMap}.
271
253
  * They will be automatically added here.
272
254
  */
273
- type DefinitionContent = DefinitionContentMap[keyof DefinitionContentMap];
255
+ type DefinitionContent$1 = DefinitionContentMap$1[keyof DefinitionContentMap$1];
274
256
  /**
275
257
  * Registry of all mdast nodes that can occur where {@link DefinitionContent}
276
258
  * is expected.
@@ -287,9 +269,9 @@ type DefinitionContent = DefinitionContentMap[keyof DefinitionContentMap];
287
269
  *
288
270
  * For a union of all definition content, see {@link RootContent}.
289
271
  */
290
- interface DefinitionContentMap {
291
- definition: Definition;
292
- footnoteDefinition: FootnoteDefinition;
272
+ interface DefinitionContentMap$1 {
273
+ definition: Definition$1;
274
+ footnoteDefinition: FootnoteDefinition$1;
293
275
  }
294
276
  /**
295
277
  * Union of registered mdast nodes that can occur where list content is
@@ -298,7 +280,7 @@ interface DefinitionContentMap {
298
280
  * To register custom mdast nodes, add them to {@link ListContentMap}.
299
281
  * They will be automatically added here.
300
282
  */
301
- type ListContent = ListContentMap[keyof ListContentMap];
283
+ type ListContent$1 = ListContentMap$1[keyof ListContentMap$1];
302
284
  /**
303
285
  * Registry of all mdast nodes that can occur where {@link ListContent}
304
286
  * is expected.
@@ -315,8 +297,8 @@ type ListContent = ListContentMap[keyof ListContentMap];
315
297
  *
316
298
  * For a union of all list content, see {@link RootContent}.
317
299
  */
318
- interface ListContentMap {
319
- listItem: ListItem;
300
+ interface ListContentMap$1 {
301
+ listItem: ListItem$1;
320
302
  }
321
303
  /**
322
304
  * Union of registered mdast nodes that can occur where phrasing content is
@@ -325,7 +307,7 @@ interface ListContentMap {
325
307
  * To register custom mdast nodes, add them to {@link PhrasingContentMap}.
326
308
  * They will be automatically added here.
327
309
  */
328
- type PhrasingContent = PhrasingContentMap[keyof PhrasingContentMap];
310
+ type PhrasingContent$1 = PhrasingContentMap$1[keyof PhrasingContentMap$1];
329
311
  /**
330
312
  * Registry of all mdast nodes that can occur where {@link PhrasingContent}
331
313
  * is expected.
@@ -343,19 +325,19 @@ type PhrasingContent = PhrasingContentMap[keyof PhrasingContentMap];
343
325
  *
344
326
  * For a union of all phrasing content, see {@link RootContent}.
345
327
  */
346
- interface PhrasingContentMap {
347
- break: Break;
348
- delete: Delete;
349
- emphasis: Emphasis;
350
- footnoteReference: FootnoteReference;
351
- html: Html;
352
- image: Image;
353
- imageReference: ImageReference;
354
- inlineCode: InlineCode;
355
- link: Link;
356
- linkReference: LinkReference;
357
- strong: Strong;
358
- text: Text$1;
328
+ interface PhrasingContentMap$1 {
329
+ break: Break$1;
330
+ delete: Delete$1;
331
+ emphasis: Emphasis$1;
332
+ footnoteReference: FootnoteReference$1;
333
+ html: Html$1;
334
+ image: Image$1;
335
+ imageReference: ImageReference$1;
336
+ inlineCode: InlineCode$1;
337
+ link: Link$1;
338
+ linkReference: LinkReference$1;
339
+ strong: Strong$1;
340
+ text: Text$2;
359
341
  }
360
342
  /**
361
343
  * Union of registered mdast nodes that can occur in {@link Root}.
@@ -363,7 +345,7 @@ interface PhrasingContentMap {
363
345
  * To register custom mdast nodes, add them to {@link RootContentMap}.
364
346
  * They will be automatically added here.
365
347
  */
366
- type RootContent = RootContentMap$1[keyof RootContentMap$1];
348
+ type RootContent$2 = RootContentMap$2[keyof RootContentMap$2];
367
349
  /**
368
350
  * Registry of all mdast nodes that can occur as children of {@link Root}.
369
351
  *
@@ -383,32 +365,32 @@ type RootContent = RootContentMap$1[keyof RootContentMap$1];
383
365
  *
384
366
  * For a union of all {@link Root} children, see {@link RootContent}.
385
367
  */
386
- interface RootContentMap$1 {
387
- blockquote: Blockquote;
388
- break: Break;
389
- code: Code$1;
390
- definition: Definition;
391
- delete: Delete;
392
- emphasis: Emphasis;
393
- footnoteDefinition: FootnoteDefinition;
394
- footnoteReference: FootnoteReference;
395
- heading: Heading;
396
- html: Html;
397
- image: Image;
398
- imageReference: ImageReference;
399
- inlineCode: InlineCode;
400
- link: Link;
401
- linkReference: LinkReference;
402
- list: List;
403
- listItem: ListItem;
404
- paragraph: Paragraph;
405
- strong: Strong;
406
- table: Table;
407
- tableCell: TableCell;
408
- tableRow: TableRow;
409
- text: Text$1;
410
- thematicBreak: ThematicBreak;
411
- yaml: Yaml;
368
+ interface RootContentMap$2 {
369
+ blockquote: Blockquote$1;
370
+ break: Break$1;
371
+ code: Code$2;
372
+ definition: Definition$1;
373
+ delete: Delete$1;
374
+ emphasis: Emphasis$1;
375
+ footnoteDefinition: FootnoteDefinition$1;
376
+ footnoteReference: FootnoteReference$1;
377
+ heading: Heading$1;
378
+ html: Html$1;
379
+ image: Image$1;
380
+ imageReference: ImageReference$1;
381
+ inlineCode: InlineCode$1;
382
+ link: Link$1;
383
+ linkReference: LinkReference$1;
384
+ list: List$1;
385
+ listItem: ListItem$1;
386
+ paragraph: Paragraph$1;
387
+ strong: Strong$1;
388
+ table: Table$1;
389
+ tableCell: TableCell$1;
390
+ tableRow: TableRow$1;
391
+ text: Text$2;
392
+ thematicBreak: ThematicBreak$1;
393
+ yaml: Yaml$1;
412
394
  }
413
395
  /**
414
396
  * Union of registered mdast nodes that can occur where row content is
@@ -417,7 +399,7 @@ interface RootContentMap$1 {
417
399
  * To register custom mdast nodes, add them to {@link RowContentMap}.
418
400
  * They will be automatically added here.
419
401
  */
420
- type RowContent = RowContentMap[keyof RowContentMap];
402
+ type RowContent$1 = RowContentMap$1[keyof RowContentMap$1];
421
403
  /**
422
404
  * Registry of all mdast nodes that can occur where {@link RowContent}
423
405
  * is expected.
@@ -434,8 +416,8 @@ type RowContent = RowContentMap[keyof RowContentMap];
434
416
  *
435
417
  * For a union of all row content, see {@link RootContent}.
436
418
  */
437
- interface RowContentMap {
438
- tableCell: TableCell;
419
+ interface RowContentMap$1 {
420
+ tableCell: TableCell$1;
439
421
  }
440
422
  /**
441
423
  * Union of registered mdast nodes that can occur where table content is
@@ -444,7 +426,7 @@ interface RowContentMap {
444
426
  * To register custom mdast nodes, add them to {@link TableContentMap}.
445
427
  * They will be automatically added here.
446
428
  */
447
- type TableContent = TableContentMap[keyof TableContentMap];
429
+ type TableContent$1 = TableContentMap$1[keyof TableContentMap$1];
448
430
  /**
449
431
  * Registry of all mdast nodes that can occur where {@link TableContent}
450
432
  * is expected.
@@ -461,8 +443,8 @@ type TableContent = TableContentMap[keyof TableContentMap];
461
443
  *
462
444
  * For a union of all table content, see {@link RootContent}.
463
445
  */
464
- interface TableContentMap {
465
- tableRow: TableRow;
446
+ interface TableContentMap$1 {
447
+ tableRow: TableRow$1;
466
448
  } // ## Abstract nodes
467
449
  /**
468
450
  * Abstract mdast node that contains the smallest possible value.
@@ -471,7 +453,7 @@ interface TableContentMap {
471
453
  *
472
454
  * For a union of all registered mdast literals, see {@link Literals}.
473
455
  */
474
- interface Literal$2 extends Node$2 {
456
+ interface Literal$3 extends Node$3 {
475
457
  /**
476
458
  * Plain-text value.
477
459
  */
@@ -490,11 +472,11 @@ interface Literal$2 extends Node$2 {
490
472
  *
491
473
  * For a union of all registered mdast nodes, see {@link Nodes}.
492
474
  */
493
- interface Node$2 extends Node$1 {
475
+ interface Node$3 extends Node$1$1 {
494
476
  /**
495
477
  * Info from the ecosystem.
496
478
  */
497
- data?: Data$2 | undefined;
479
+ data?: Data$3 | undefined;
498
480
  }
499
481
  /**
500
482
  * Abstract mdast node that contains other mdast nodes (*children*).
@@ -503,16 +485,16 @@ interface Node$2 extends Node$1 {
503
485
  *
504
486
  * For a union of all registered mdast parents, see {@link Parents}.
505
487
  */
506
- interface Parent$1 extends Node$2 {
488
+ interface Parent$2 extends Node$3 {
507
489
  /**
508
490
  * List of children.
509
491
  */
510
- children: RootContent[];
492
+ children: RootContent$2[];
511
493
  } // ## Concrete nodes
512
494
  /**
513
495
  * Markdown block quote.
514
496
  */
515
- interface Blockquote extends Parent$1 {
497
+ interface Blockquote$1 extends Parent$2 {
516
498
  /**
517
499
  * Node type of mdast block quote.
518
500
  */
@@ -520,20 +502,20 @@ interface Blockquote extends Parent$1 {
520
502
  /**
521
503
  * Children of block quote.
522
504
  */
523
- children: Array<BlockContent | DefinitionContent>;
505
+ children: Array<BlockContent$1 | DefinitionContent$1>;
524
506
  /**
525
507
  * Data associated with the mdast block quote.
526
508
  */
527
- data?: BlockquoteData | undefined;
509
+ data?: BlockquoteData$1 | undefined;
528
510
  }
529
511
  /**
530
512
  * Info associated with mdast block quote nodes by the ecosystem.
531
513
  */
532
- interface BlockquoteData extends Data$2 {}
514
+ interface BlockquoteData$1 extends Data$3 {}
533
515
  /**
534
516
  * Markdown break.
535
517
  */
536
- interface Break extends Node$2 {
518
+ interface Break$1 extends Node$3 {
537
519
  /**
538
520
  * Node type of mdast break.
539
521
  */
@@ -541,16 +523,16 @@ interface Break extends Node$2 {
541
523
  /**
542
524
  * Data associated with the mdast break.
543
525
  */
544
- data?: BreakData | undefined;
526
+ data?: BreakData$1 | undefined;
545
527
  }
546
528
  /**
547
529
  * Info associated with mdast break nodes by the ecosystem.
548
530
  */
549
- interface BreakData extends Data$2 {}
531
+ interface BreakData$1 extends Data$3 {}
550
532
  /**
551
533
  * Markdown code (flow) (block).
552
534
  */
553
- interface Code$1 extends Literal$2 {
535
+ interface Code$2 extends Literal$3 {
554
536
  /**
555
537
  * Node type of mdast code (flow).
556
538
  */
@@ -568,16 +550,16 @@ interface Code$1 extends Literal$2 {
568
550
  /**
569
551
  * Data associated with the mdast code (flow).
570
552
  */
571
- data?: CodeData | undefined;
553
+ data?: CodeData$1 | undefined;
572
554
  }
573
555
  /**
574
556
  * Info associated with mdast code (flow) (block) nodes by the ecosystem.
575
557
  */
576
- interface CodeData extends Data$2 {}
558
+ interface CodeData$1 extends Data$3 {}
577
559
  /**
578
560
  * Markdown definition.
579
561
  */
580
- interface Definition extends Node$2, Association, Resource {
562
+ interface Definition$1 extends Node$3, Association$1, Resource$1 {
581
563
  /**
582
564
  * Node type of mdast definition.
583
565
  */
@@ -585,16 +567,16 @@ interface Definition extends Node$2, Association, Resource {
585
567
  /**
586
568
  * Data associated with the mdast definition.
587
569
  */
588
- data?: DefinitionData | undefined;
570
+ data?: DefinitionData$1 | undefined;
589
571
  }
590
572
  /**
591
573
  * Info associated with mdast definition nodes by the ecosystem.
592
574
  */
593
- interface DefinitionData extends Data$2 {}
575
+ interface DefinitionData$1 extends Data$3 {}
594
576
  /**
595
577
  * Markdown GFM delete (strikethrough).
596
578
  */
597
- interface Delete extends Parent$1 {
579
+ interface Delete$1 extends Parent$2 {
598
580
  /**
599
581
  * Node type of mdast GFM delete.
600
582
  */
@@ -602,20 +584,20 @@ interface Delete extends Parent$1 {
602
584
  /**
603
585
  * Children of GFM delete.
604
586
  */
605
- children: PhrasingContent[];
587
+ children: PhrasingContent$1[];
606
588
  /**
607
589
  * Data associated with the mdast GFM delete.
608
590
  */
609
- data?: DeleteData | undefined;
591
+ data?: DeleteData$1 | undefined;
610
592
  }
611
593
  /**
612
594
  * Info associated with mdast GFM delete nodes by the ecosystem.
613
595
  */
614
- interface DeleteData extends Data$2 {}
596
+ interface DeleteData$1 extends Data$3 {}
615
597
  /**
616
598
  * Markdown emphasis.
617
599
  */
618
- interface Emphasis extends Parent$1 {
600
+ interface Emphasis$1 extends Parent$2 {
619
601
  /**
620
602
  * Node type of mdast emphasis.
621
603
  */
@@ -623,20 +605,20 @@ interface Emphasis extends Parent$1 {
623
605
  /**
624
606
  * Children of emphasis.
625
607
  */
626
- children: PhrasingContent[];
608
+ children: PhrasingContent$1[];
627
609
  /**
628
610
  * Data associated with the mdast emphasis.
629
611
  */
630
- data?: EmphasisData | undefined;
612
+ data?: EmphasisData$1 | undefined;
631
613
  }
632
614
  /**
633
615
  * Info associated with mdast emphasis nodes by the ecosystem.
634
616
  */
635
- interface EmphasisData extends Data$2 {}
617
+ interface EmphasisData$1 extends Data$3 {}
636
618
  /**
637
619
  * Markdown GFM footnote definition.
638
620
  */
639
- interface FootnoteDefinition extends Parent$1, Association {
621
+ interface FootnoteDefinition$1 extends Parent$2, Association$1 {
640
622
  /**
641
623
  * Node type of mdast GFM footnote definition.
642
624
  */
@@ -644,20 +626,20 @@ interface FootnoteDefinition extends Parent$1, Association {
644
626
  /**
645
627
  * Children of GFM footnote definition.
646
628
  */
647
- children: Array<BlockContent | DefinitionContent>;
629
+ children: Array<BlockContent$1 | DefinitionContent$1>;
648
630
  /**
649
631
  * Data associated with the mdast GFM footnote definition.
650
632
  */
651
- data?: FootnoteDefinitionData | undefined;
633
+ data?: FootnoteDefinitionData$1 | undefined;
652
634
  }
653
635
  /**
654
636
  * Info associated with mdast GFM footnote definition nodes by the ecosystem.
655
637
  */
656
- interface FootnoteDefinitionData extends Data$2 {}
638
+ interface FootnoteDefinitionData$1 extends Data$3 {}
657
639
  /**
658
640
  * Markdown GFM footnote reference.
659
641
  */
660
- interface FootnoteReference extends Association, Node$2 {
642
+ interface FootnoteReference$1 extends Association$1, Node$3 {
661
643
  /**
662
644
  * Node type of mdast GFM footnote reference.
663
645
  */
@@ -665,16 +647,16 @@ interface FootnoteReference extends Association, Node$2 {
665
647
  /**
666
648
  * Data associated with the mdast GFM footnote reference.
667
649
  */
668
- data?: FootnoteReferenceData | undefined;
650
+ data?: FootnoteReferenceData$1 | undefined;
669
651
  }
670
652
  /**
671
653
  * Info associated with mdast GFM footnote reference nodes by the ecosystem.
672
654
  */
673
- interface FootnoteReferenceData extends Data$2 {}
655
+ interface FootnoteReferenceData$1 extends Data$3 {}
674
656
  /**
675
657
  * Markdown heading.
676
658
  */
677
- interface Heading extends Parent$1 {
659
+ interface Heading$1 extends Parent$2 {
678
660
  /**
679
661
  * Node type of mdast heading.
680
662
  */
@@ -688,20 +670,20 @@ interface Heading extends Parent$1 {
688
670
  /**
689
671
  * Children of heading.
690
672
  */
691
- children: PhrasingContent[];
673
+ children: PhrasingContent$1[];
692
674
  /**
693
675
  * Data associated with the mdast heading.
694
676
  */
695
- data?: HeadingData | undefined;
677
+ data?: HeadingData$1 | undefined;
696
678
  }
697
679
  /**
698
680
  * Info associated with mdast heading nodes by the ecosystem.
699
681
  */
700
- interface HeadingData extends Data$2 {}
682
+ interface HeadingData$1 extends Data$3 {}
701
683
  /**
702
684
  * Markdown HTML.
703
685
  */
704
- interface Html extends Literal$2 {
686
+ interface Html$1 extends Literal$3 {
705
687
  /**
706
688
  * Node type of mdast HTML.
707
689
  */
@@ -709,16 +691,16 @@ interface Html extends Literal$2 {
709
691
  /**
710
692
  * Data associated with the mdast HTML.
711
693
  */
712
- data?: HtmlData | undefined;
694
+ data?: HtmlData$1 | undefined;
713
695
  }
714
696
  /**
715
697
  * Info associated with mdast HTML nodes by the ecosystem.
716
698
  */
717
- interface HtmlData extends Data$2 {}
699
+ interface HtmlData$1 extends Data$3 {}
718
700
  /**
719
701
  * Markdown image.
720
702
  */
721
- interface Image extends Alternative, Node$2, Resource {
703
+ interface Image$1 extends Alternative$1, Node$3, Resource$1 {
722
704
  /**
723
705
  * Node type of mdast image.
724
706
  */
@@ -726,16 +708,16 @@ interface Image extends Alternative, Node$2, Resource {
726
708
  /**
727
709
  * Data associated with the mdast image.
728
710
  */
729
- data?: ImageData | undefined;
711
+ data?: ImageData$1 | undefined;
730
712
  }
731
713
  /**
732
714
  * Info associated with mdast image nodes by the ecosystem.
733
715
  */
734
- interface ImageData extends Data$2 {}
716
+ interface ImageData$1 extends Data$3 {}
735
717
  /**
736
718
  * Markdown image reference.
737
719
  */
738
- interface ImageReference extends Alternative, Node$2, Reference {
720
+ interface ImageReference$1 extends Alternative$1, Node$3, Reference$1 {
739
721
  /**
740
722
  * Node type of mdast image reference.
741
723
  */
@@ -743,16 +725,16 @@ interface ImageReference extends Alternative, Node$2, Reference {
743
725
  /**
744
726
  * Data associated with the mdast image reference.
745
727
  */
746
- data?: ImageReferenceData | undefined;
728
+ data?: ImageReferenceData$1 | undefined;
747
729
  }
748
730
  /**
749
731
  * Info associated with mdast image reference nodes by the ecosystem.
750
732
  */
751
- interface ImageReferenceData extends Data$2 {}
733
+ interface ImageReferenceData$1 extends Data$3 {}
752
734
  /**
753
735
  * Markdown code (text) (inline).
754
736
  */
755
- interface InlineCode extends Literal$2 {
737
+ interface InlineCode$1 extends Literal$3 {
756
738
  /**
757
739
  * Node type of mdast code (text).
758
740
  */
@@ -760,16 +742,16 @@ interface InlineCode extends Literal$2 {
760
742
  /**
761
743
  * Data associated with the mdast code (text).
762
744
  */
763
- data?: InlineCodeData | undefined;
745
+ data?: InlineCodeData$1 | undefined;
764
746
  }
765
747
  /**
766
748
  * Info associated with mdast code (text) (inline) nodes by the ecosystem.
767
749
  */
768
- interface InlineCodeData extends Data$2 {}
750
+ interface InlineCodeData$1 extends Data$3 {}
769
751
  /**
770
752
  * Markdown link.
771
753
  */
772
- interface Link extends Parent$1, Resource {
754
+ interface Link$1 extends Parent$2, Resource$1 {
773
755
  /**
774
756
  * Node type of mdast link.
775
757
  */
@@ -777,20 +759,20 @@ interface Link extends Parent$1, Resource {
777
759
  /**
778
760
  * Children of link.
779
761
  */
780
- children: PhrasingContent[];
762
+ children: PhrasingContent$1[];
781
763
  /**
782
764
  * Data associated with the mdast link.
783
765
  */
784
- data?: LinkData | undefined;
766
+ data?: LinkData$1 | undefined;
785
767
  }
786
768
  /**
787
769
  * Info associated with mdast link nodes by the ecosystem.
788
770
  */
789
- interface LinkData extends Data$2 {}
771
+ interface LinkData$1 extends Data$3 {}
790
772
  /**
791
773
  * Markdown link reference.
792
774
  */
793
- interface LinkReference extends Parent$1, Reference {
775
+ interface LinkReference$1 extends Parent$2, Reference$1 {
794
776
  /**
795
777
  * Node type of mdast link reference.
796
778
  */
@@ -798,20 +780,20 @@ interface LinkReference extends Parent$1, Reference {
798
780
  /**
799
781
  * Children of link reference.
800
782
  */
801
- children: PhrasingContent[];
783
+ children: PhrasingContent$1[];
802
784
  /**
803
785
  * Data associated with the mdast link reference.
804
786
  */
805
- data?: LinkReferenceData | undefined;
787
+ data?: LinkReferenceData$1 | undefined;
806
788
  }
807
789
  /**
808
790
  * Info associated with mdast link reference nodes by the ecosystem.
809
791
  */
810
- interface LinkReferenceData extends Data$2 {}
792
+ interface LinkReferenceData$1 extends Data$3 {}
811
793
  /**
812
794
  * Markdown list.
813
795
  */
814
- interface List extends Parent$1 {
796
+ interface List$1 extends Parent$2 {
815
797
  /**
816
798
  * Node type of mdast list.
817
799
  */
@@ -833,20 +815,20 @@ interface List extends Parent$1 {
833
815
  /**
834
816
  * Children of list.
835
817
  */
836
- children: ListContent[];
818
+ children: ListContent$1[];
837
819
  /**
838
820
  * Data associated with the mdast list.
839
821
  */
840
- data?: ListData | undefined;
822
+ data?: ListData$1 | undefined;
841
823
  }
842
824
  /**
843
825
  * Info associated with mdast list nodes by the ecosystem.
844
826
  */
845
- interface ListData extends Data$2 {}
827
+ interface ListData$1 extends Data$3 {}
846
828
  /**
847
829
  * Markdown list item.
848
830
  */
849
- interface ListItem extends Parent$1 {
831
+ interface ListItem$1 extends Parent$2 {
850
832
  /**
851
833
  * Node type of mdast list item.
852
834
  */
@@ -866,20 +848,20 @@ interface ListItem extends Parent$1 {
866
848
  /**
867
849
  * Children of list item.
868
850
  */
869
- children: Array<BlockContent | DefinitionContent>;
851
+ children: Array<BlockContent$1 | DefinitionContent$1>;
870
852
  /**
871
853
  * Data associated with the mdast list item.
872
854
  */
873
- data?: ListItemData | undefined;
855
+ data?: ListItemData$1 | undefined;
874
856
  }
875
857
  /**
876
858
  * Info associated with mdast list item nodes by the ecosystem.
877
859
  */
878
- interface ListItemData extends Data$2 {}
860
+ interface ListItemData$1 extends Data$3 {}
879
861
  /**
880
862
  * Markdown paragraph.
881
863
  */
882
- interface Paragraph extends Parent$1 {
864
+ interface Paragraph$1 extends Parent$2 {
883
865
  /**
884
866
  * Node type of mdast paragraph.
885
867
  */
@@ -887,22 +869,22 @@ interface Paragraph extends Parent$1 {
887
869
  /**
888
870
  * Children of paragraph.
889
871
  */
890
- children: PhrasingContent[];
872
+ children: PhrasingContent$1[];
891
873
  /**
892
874
  * Data associated with the mdast paragraph.
893
875
  */
894
- data?: ParagraphData | undefined;
876
+ data?: ParagraphData$1 | undefined;
895
877
  }
896
878
  /**
897
879
  * Info associated with mdast paragraph nodes by the ecosystem.
898
880
  */
899
- interface ParagraphData extends Data$2 {}
881
+ interface ParagraphData$1 extends Data$3 {}
900
882
  /**
901
883
  * Document fragment or a whole document.
902
884
  *
903
885
  * Should be used as the root of a tree and must not be used as a child.
904
886
  */
905
- interface Root extends Parent$1 {
887
+ interface Root$2 extends Parent$2 {
906
888
  /**
907
889
  * Node type of mdast root.
908
890
  */
@@ -910,16 +892,16 @@ interface Root extends Parent$1 {
910
892
  /**
911
893
  * Data associated with the mdast root.
912
894
  */
913
- data?: RootData$1 | undefined;
895
+ data?: RootData$2 | undefined;
914
896
  }
915
897
  /**
916
898
  * Info associated with mdast root nodes by the ecosystem.
917
899
  */
918
- interface RootData$1 extends Data$2 {}
900
+ interface RootData$2 extends Data$3 {}
919
901
  /**
920
902
  * Markdown strong.
921
903
  */
922
- interface Strong extends Parent$1 {
904
+ interface Strong$1 extends Parent$2 {
923
905
  /**
924
906
  * Node type of mdast strong.
925
907
  */
@@ -927,20 +909,20 @@ interface Strong extends Parent$1 {
927
909
  /**
928
910
  * Children of strong.
929
911
  */
930
- children: PhrasingContent[];
912
+ children: PhrasingContent$1[];
931
913
  /**
932
914
  * Data associated with the mdast strong.
933
915
  */
934
- data?: StrongData | undefined;
916
+ data?: StrongData$1 | undefined;
935
917
  }
936
918
  /**
937
919
  * Info associated with mdast strong nodes by the ecosystem.
938
920
  */
939
- interface StrongData extends Data$2 {}
921
+ interface StrongData$1 extends Data$3 {}
940
922
  /**
941
923
  * Markdown GFM table.
942
924
  */
943
- interface Table extends Parent$1 {
925
+ interface Table$1 extends Parent$2 {
944
926
  /**
945
927
  * Node type of mdast GFM table.
946
928
  */
@@ -948,24 +930,24 @@ interface Table extends Parent$1 {
948
930
  /**
949
931
  * How cells in columns are aligned.
950
932
  */
951
- align?: AlignType[] | null | undefined;
933
+ align?: AlignType$1[] | null | undefined;
952
934
  /**
953
935
  * Children of GFM table.
954
936
  */
955
- children: TableContent[];
937
+ children: TableContent$1[];
956
938
  /**
957
939
  * Data associated with the mdast GFM table.
958
940
  */
959
- data?: TableData | undefined;
941
+ data?: TableData$1 | undefined;
960
942
  }
961
943
  /**
962
944
  * Info associated with mdast GFM table nodes by the ecosystem.
963
945
  */
964
- interface TableData extends Data$2 {}
946
+ interface TableData$1 extends Data$3 {}
965
947
  /**
966
948
  * Markdown GFM table row.
967
949
  */
968
- interface TableRow extends Parent$1 {
950
+ interface TableRow$1 extends Parent$2 {
969
951
  /**
970
952
  * Node type of mdast GFM table row.
971
953
  */
@@ -973,20 +955,20 @@ interface TableRow extends Parent$1 {
973
955
  /**
974
956
  * Children of GFM table row.
975
957
  */
976
- children: RowContent[];
958
+ children: RowContent$1[];
977
959
  /**
978
960
  * Data associated with the mdast GFM table row.
979
961
  */
980
- data?: TableRowData | undefined;
962
+ data?: TableRowData$1 | undefined;
981
963
  }
982
964
  /**
983
965
  * Info associated with mdast GFM table row nodes by the ecosystem.
984
966
  */
985
- interface TableRowData extends Data$2 {}
967
+ interface TableRowData$1 extends Data$3 {}
986
968
  /**
987
969
  * Markdown GFM table cell.
988
970
  */
989
- interface TableCell extends Parent$1 {
971
+ interface TableCell$1 extends Parent$2 {
990
972
  /**
991
973
  * Node type of mdast GFM table cell.
992
974
  */
@@ -994,20 +976,20 @@ interface TableCell extends Parent$1 {
994
976
  /**
995
977
  * Children of GFM table cell.
996
978
  */
997
- children: PhrasingContent[];
979
+ children: PhrasingContent$1[];
998
980
  /**
999
981
  * Data associated with the mdast GFM table cell.
1000
982
  */
1001
- data?: TableCellData | undefined;
983
+ data?: TableCellData$1 | undefined;
1002
984
  }
1003
985
  /**
1004
986
  * Info associated with mdast GFM table cell nodes by the ecosystem.
1005
987
  */
1006
- interface TableCellData extends Data$2 {}
988
+ interface TableCellData$1 extends Data$3 {}
1007
989
  /**
1008
990
  * Markdown text.
1009
991
  */
1010
- interface Text$1 extends Literal$2 {
992
+ interface Text$2 extends Literal$3 {
1011
993
  /**
1012
994
  * Node type of mdast text.
1013
995
  */
@@ -1015,16 +997,16 @@ interface Text$1 extends Literal$2 {
1015
997
  /**
1016
998
  * Data associated with the mdast text.
1017
999
  */
1018
- data?: TextData$1 | undefined;
1000
+ data?: TextData$2 | undefined;
1019
1001
  }
1020
1002
  /**
1021
1003
  * Info associated with mdast text nodes by the ecosystem.
1022
1004
  */
1023
- interface TextData$1 extends Data$2 {}
1005
+ interface TextData$2 extends Data$3 {}
1024
1006
  /**
1025
1007
  * Markdown thematic break (horizontal rule).
1026
1008
  */
1027
- interface ThematicBreak extends Node$2 {
1009
+ interface ThematicBreak$1 extends Node$3 {
1028
1010
  /**
1029
1011
  * Node type of mdast thematic break.
1030
1012
  */
@@ -1032,16 +1014,16 @@ interface ThematicBreak extends Node$2 {
1032
1014
  /**
1033
1015
  * Data associated with the mdast thematic break.
1034
1016
  */
1035
- data?: ThematicBreakData | undefined;
1017
+ data?: ThematicBreakData$1 | undefined;
1036
1018
  }
1037
1019
  /**
1038
1020
  * Info associated with mdast thematic break nodes by the ecosystem.
1039
1021
  */
1040
- interface ThematicBreakData extends Data$2 {}
1022
+ interface ThematicBreakData$1 extends Data$3 {}
1041
1023
  /**
1042
1024
  * Markdown YAML.
1043
1025
  */
1044
- interface Yaml extends Literal$2 {
1026
+ interface Yaml$1 extends Literal$3 {
1045
1027
  /**
1046
1028
  * Node type of mdast YAML.
1047
1029
  */
@@ -1049,12 +1031,22 @@ interface Yaml extends Literal$2 {
1049
1031
  /**
1050
1032
  * Data associated with the mdast YAML.
1051
1033
  */
1052
- data?: YamlData | undefined;
1034
+ data?: YamlData$1 | undefined;
1053
1035
  }
1054
1036
  /**
1055
1037
  * Info associated with mdast YAML nodes by the ecosystem.
1056
1038
  */
1057
- interface YamlData extends Data$2 {} //#endregion
1039
+ interface YamlData$1 extends Data$3 {} //#endregion
1040
+ //#endregion
1041
+ //#region ../libraries/md-compiler/dist/markdown/index.d.mts
1042
+ //#region src/markdown/index.d.ts
1043
+ interface ParsedMarkdown<Y = Record<string, unknown>> {
1044
+ readonly yamlFrontMatter?: Y;
1045
+ readonly rawFrontMatter?: string;
1046
+ readonly markdownAst: Root$2;
1047
+ readonly markdownContents: readonly RootContent$2[];
1048
+ readonly contentWithoutFrontMatter: string;
1049
+ }
1058
1050
  //#endregion
1059
1051
  //#region ../libraries/md-compiler/dist/index-CWunvDN-.d.mts
1060
1052
  //#region src/globals/index.d.ts
@@ -1063,7 +1055,7 @@ interface YamlData extends Data$2 {} //#endregion
1063
1055
  * User profile information
1064
1056
  * @example {profile.name}, {profile.username}
1065
1057
  */
1066
- interface UserProfile {
1058
+ interface UserProfile$1 {
1067
1059
  [key: string]: unknown;
1068
1060
  name?: string;
1069
1061
  username?: string;
@@ -1074,7 +1066,7 @@ interface UserProfile {
1074
1066
  * Tool references for AI assistants
1075
1067
  * @example {tool.websearch}, {tool.webfetch}, {tool.readFile}
1076
1068
  */
1077
- interface ToolReferences {
1069
+ interface ToolReferences$1 {
1078
1070
  /** Allow custom tool references */
1079
1071
  [key: string]: string | undefined;
1080
1072
  /** Web search tool name */
@@ -1098,11 +1090,40 @@ interface ToolReferences {
1098
1090
  * Tool name presets for different AI tools.
1099
1091
  * Each preset provides tool name mappings specific to that AI tool.
1100
1092
  */
1093
+ declare const ToolPresets$1: {
1094
+ /** Default tool names (snake_case) */readonly default: {
1095
+ readonly websearch: "web_search";
1096
+ readonly webfetch: "web_fetch";
1097
+ readonly readFile: "read_file";
1098
+ readonly writeFile: "write_file";
1099
+ readonly executeCommand: "execute_command";
1100
+ readonly todolistWrite: "todolist_write";
1101
+ readonly grep: "grep";
1102
+ readonly listDirectory: "list_directory";
1103
+ }; /** Claude Code CLI tool names (PascalCase) */
1104
+ readonly claudeCode: {
1105
+ readonly readFile: "Read";
1106
+ readonly writeFile: "Write";
1107
+ readonly executeCommand: "Execute";
1108
+ readonly todolistWrite: "TodoWrite";
1109
+ readonly listDirectory: "List";
1110
+ }; /** Kiro tool names */
1111
+ readonly kiro: {
1112
+ readonly websearch: "remote_web_search";
1113
+ readonly webfetch: "webFetch";
1114
+ readonly readFile: "readFile";
1115
+ readonly writeFile: "fsWrite";
1116
+ readonly executeCommand: "executeBash";
1117
+ readonly todolistWrite: "todolistWrite";
1118
+ readonly grep: "grepSearch";
1119
+ readonly listDirectory: "listDir";
1120
+ };
1121
+ };
1101
1122
  /**
1102
1123
  * Environment context
1103
1124
  * @example {env.NODE_ENV}, {env.DEBUG}
1104
1125
  */
1105
- interface EnvironmentContext {
1126
+ interface EnvironmentContext$1 {
1106
1127
  [key: string]: unknown;
1107
1128
  }
1108
1129
  /**
@@ -1128,7 +1149,7 @@ declare enum OsKind {
1128
1149
  * Operating system information
1129
1150
  * @example {os.platform}, {os.arch}, {os.shellKind}, {os.kind}
1130
1151
  */
1131
- interface OsInfo {
1152
+ interface OsInfo$1 {
1132
1153
  [key: string]: string | ShellKind | OsKind | undefined;
1133
1154
  platform?: string;
1134
1155
  arch?: string;
@@ -1140,13 +1161,13 @@ interface OsInfo {
1140
1161
  shellKind?: ShellKind;
1141
1162
  kind?: OsKind;
1142
1163
  }
1143
- interface MdProps {
1164
+ interface MdProps$1 {
1144
1165
  /** Condition for rendering content. If omitted, content always renders. */
1145
1166
  when?: boolean;
1146
1167
  /** Child content to render when condition is met */
1147
1168
  children?: unknown;
1148
1169
  }
1149
- interface MdLineProps {
1170
+ interface MdLineProps$1 {
1150
1171
  /** Condition for rendering content. If omitted, content always renders. */
1151
1172
  when?: boolean;
1152
1173
  /** Inline text content to render when condition is met */
@@ -1155,68 +1176,1268 @@ interface MdLineProps {
1155
1176
  /**
1156
1177
  * Md component type with Line sub-component
1157
1178
  */
1158
- interface MdComponent {
1159
- (props: MdProps): unknown;
1160
- Line: (props: MdLineProps) => unknown;
1179
+ interface MdComponent$1 {
1180
+ (props: MdProps$1): unknown;
1181
+ Line: (props: MdLineProps$1) => unknown;
1161
1182
  }
1162
1183
  /**
1163
1184
  * Global scope available in MDX expressions
1164
1185
  */
1165
1186
  interface MdxGlobalScope {
1166
1187
  /** User profile information */
1167
- profile: UserProfile;
1188
+ profile: UserProfile$1;
1168
1189
  /** Tool name references for AI assistants */
1169
- tool: ToolReferences;
1190
+ tool: ToolReferences$1;
1170
1191
  /** Environment variables context */
1171
- env: EnvironmentContext;
1192
+ env: EnvironmentContext$1;
1172
1193
  /** Operating system information */
1173
- os: OsInfo;
1194
+ os: OsInfo$1;
1174
1195
  /** Conditional Markdown component with Line sub-component */
1175
- Md: MdComponent;
1196
+ Md: MdComponent$1;
1176
1197
  }
1177
1198
  declare global {
1178
1199
  /** User profile information */
1179
- const profile: UserProfile, /** Tool name references for AI assistants */tool: ToolReferences, /** Environment variables context */env: EnvironmentContext, /** Operating system information */os: OsInfo, /** Conditional Markdown component with Line sub-component */Md: MdComponent;
1200
+ const profile: UserProfile$1, /** Tool name references for AI assistants */tool: ToolReferences$1, /** Environment variables context */env: EnvironmentContext$1, /** Operating system information */os: OsInfo$1, /** Conditional Markdown component with Line sub-component */Md: MdComponent$1;
1180
1201
  namespace JSX {
1181
1202
  interface IntrinsicElements {
1182
- 'Md': MdProps;
1183
- 'Md.Line': MdLineProps;
1203
+ 'Md': MdProps$1;
1204
+ 'Md.Line': MdLineProps$1;
1184
1205
  }
1185
1206
  }
1186
1207
  } //#endregion
1187
1208
  //#endregion
1188
- //#region ../libraries/md-compiler/dist/index.d.mts
1189
- //#region ../../node_modules/.pnpm/@types+estree@1.0.8/node_modules/@types/estree/index.d.ts
1190
- // This definition file follows a somewhat unusual format. ESTree allows
1191
- // runtime type checks based on the `type` parameter. In order to explain this
1192
- // to typescript we want to use discriminated union types:
1193
- // https://github.com/Microsoft/TypeScript/pull/9163
1194
- //
1195
- // For ESTree this is a bit tricky because the high level interfaces like
1196
- // Node or Function are pulling double duty. We want to pass common fields down
1197
- // to the interfaces that extend them (like Identifier or
1198
- // ArrowFunctionExpression), but you can't extend a type union or enforce
1199
- // common fields on them. So we've split the high level interfaces into two
1200
- // types, a base type which passes down inherited fields, and a type union of
1201
- // all types which extend the base type. Only the type union is exported, and
1202
- // the union is how other types refer to the collection of inheriting types.
1203
- //
1204
- // This makes the definitions file here somewhat more difficult to maintain,
1205
- // but it has the notable advantage of making ESTree much easier to use as
1206
- // an end user.
1207
- interface BaseNodeWithoutComments {
1208
- // Every leaf interface that extends BaseNode must specify a type property.
1209
- // The type property should be a string literal. For example, Identifier
1210
- // has: `type: "Identifier"`
1211
- type: string;
1212
- loc?: SourceLocation | null | undefined;
1213
- range?: [number, number] | undefined;
1214
- }
1215
- interface BaseNode extends BaseNodeWithoutComments {
1216
- leadingComments?: Comment$1[] | undefined;
1217
- trailingComments?: Comment$1[] | undefined;
1218
- }
1219
- interface Comment$1 extends BaseNodeWithoutComments {
1209
+ //#region ../sdk/dist/index.d.mts
1210
+ //#region ../libraries/logger/dist/index.d.mts
1211
+ //#region src/index.d.ts
1212
+ type LogLevel = 'error' | 'warn' | 'info' | 'debug' | 'trace' | 'fatal' | 'silent';
1213
+ type DiagnosticLines = readonly [string, ...string[]];
1214
+ type LoggerDiagnosticLevel = Extract<LogLevel, 'warn' | 'error' | 'fatal'>;
1215
+ type LoggerMethod = (message: string | object, ...meta: unknown[]) => void;
1216
+ type LoggerDiagnosticMethod = (diagnostic: LoggerDiagnosticInput) => void;
1217
+ interface LoggerDiagnosticInput {
1218
+ readonly code: string;
1219
+ readonly title: string;
1220
+ readonly rootCause: DiagnosticLines;
1221
+ readonly exactFix?: DiagnosticLines | undefined;
1222
+ readonly possibleFixes?: readonly DiagnosticLines[] | undefined;
1223
+ readonly details?: Record<string, unknown> | undefined;
1224
+ }
1225
+ interface LoggerDiagnosticRecord extends LoggerDiagnosticInput {
1226
+ readonly level: LoggerDiagnosticLevel;
1227
+ readonly namespace: string;
1228
+ readonly copyText: DiagnosticLines;
1229
+ }
1230
+ interface ILogger {
1231
+ error: LoggerDiagnosticMethod;
1232
+ warn: LoggerDiagnosticMethod;
1233
+ info: LoggerMethod;
1234
+ debug: LoggerMethod;
1235
+ trace: LoggerMethod;
1236
+ fatal: LoggerDiagnosticMethod;
1237
+ }
1238
+ /**
1239
+ * Set the global log level for all loggers.
1240
+ */
1241
+ //#endregion
1242
+ //#region src/inputs/AbstractInputCapability.d.ts
1243
+ declare abstract class AbstractInputCapability implements InputCapability {
1244
+ private readonly inputEffects;
1245
+ private readonly registeredScopes;
1246
+ readonly name: string;
1247
+ readonly dependsOn?: readonly string[];
1248
+ private _log?;
1249
+ get log(): ILogger;
1250
+ protected constructor(name: string, dependsOn?: readonly string[]);
1251
+ protected registerEffect(name: string, handler: InputEffectHandler, priority?: number): void;
1252
+ executeEffects(ctx: InputCapabilityContext, dryRun?: boolean): Promise<InputEffectResult[]>;
1253
+ private logInputEffectFailure;
1254
+ hasEffects(): boolean;
1255
+ getEffectCount(): number;
1256
+ protected registerScope(namespace: string, values: Record<string, unknown>): void;
1257
+ getRegisteredScopes(): readonly PluginScopeRegistration[];
1258
+ protected clearRegisteredScopes(): void;
1259
+ abstract collect(ctx: InputCapabilityContext): Partial<InputCollectedContext> | Promise<Partial<InputCollectedContext>>;
1260
+ protected resolveBasePaths(options: Required<PluginOptions>): ResolvedBasePaths;
1261
+ protected resolvePath(rawPath: string, workspaceDir: string): string;
1262
+ protected resolveAindexPath(relativePath: string, aindexDir: string): string;
1263
+ protected readAndParseMarkdown<T extends YAMLFrontMatter>(filePath: string, fs: typeof _$node_fs0): ParsedMarkdown<T>;
1264
+ } //#endregion
1265
+ //#region ../libraries/md-compiler/dist/index-CWunvDN-.d.mts
1266
+ //#region src/globals/index.d.ts
1267
+ /**
1268
+ * // These types are available to users when writing MDX templates. // Global type declarations for MDX expression scope. // src/globals/index.ts
1269
+ * User profile information
1270
+ * @example {profile.name}, {profile.username}
1271
+ */
1272
+ interface UserProfile {
1273
+ [key: string]: unknown;
1274
+ name?: string;
1275
+ username?: string;
1276
+ gender?: string;
1277
+ birthday?: string;
1278
+ }
1279
+ /**
1280
+ * Tool references for AI assistants
1281
+ * @example {tool.websearch}, {tool.webfetch}, {tool.readFile}
1282
+ */
1283
+ interface ToolReferences {
1284
+ /** Allow custom tool references */
1285
+ [key: string]: string | undefined;
1286
+ /** Web search tool name */
1287
+ websearch?: string;
1288
+ /** Web fetch tool name */
1289
+ webfetch?: string;
1290
+ /** Read file tool name */
1291
+ readFile?: string;
1292
+ /** Write file tool name */
1293
+ writeFile?: string;
1294
+ /** Execute command/shell tool name */
1295
+ executeCommand?: string;
1296
+ /** Todolist write tool name */
1297
+ todolistWrite?: string;
1298
+ /** Grep/search tool name */
1299
+ grep?: string;
1300
+ /** List directory tool name */
1301
+ listDirectory?: string;
1302
+ }
1303
+ /**
1304
+ * Tool name presets for different AI tools.
1305
+ * Each preset provides tool name mappings specific to that AI tool.
1306
+ */
1307
+ /**
1308
+ * Environment context
1309
+ * @example {env.NODE_ENV}, {env.DEBUG}
1310
+ */
1311
+ interface EnvironmentContext {
1312
+ [key: string]: unknown;
1313
+ }
1314
+ /**
1315
+ * Shell kind enumeration
1316
+ */
1317
+ declare enum ShellKind$1 {
1318
+ Bash = "bash",
1319
+ Zsh = "zsh",
1320
+ Fish = "fish",
1321
+ Sh = "sh",
1322
+ PowerShell = "powershell",
1323
+ Pwsh = "pwsh",
1324
+ Cmd = "cmd",
1325
+ Unknown = "unknown"
1326
+ }
1327
+ declare enum OsKind$1 {
1328
+ Win = "win",
1329
+ Mac = "mac",
1330
+ Linux = "linux",
1331
+ Unknown = "unknown"
1332
+ }
1333
+ /**
1334
+ * Operating system information
1335
+ * @example {os.platform}, {os.arch}, {os.shellKind}, {os.kind}
1336
+ */
1337
+ interface OsInfo {
1338
+ [key: string]: string | ShellKind$1 | OsKind$1 | undefined;
1339
+ platform?: string;
1340
+ arch?: string;
1341
+ hostname?: string;
1342
+ homedir?: string;
1343
+ tmpdir?: string;
1344
+ type?: string;
1345
+ release?: string;
1346
+ shellKind?: ShellKind$1;
1347
+ kind?: OsKind$1;
1348
+ }
1349
+ interface MdProps {
1350
+ /** Condition for rendering content. If omitted, content always renders. */
1351
+ when?: boolean;
1352
+ /** Child content to render when condition is met */
1353
+ children?: unknown;
1354
+ }
1355
+ interface MdLineProps {
1356
+ /** Condition for rendering content. If omitted, content always renders. */
1357
+ when?: boolean;
1358
+ /** Inline text content to render when condition is met */
1359
+ children?: unknown;
1360
+ }
1361
+ /**
1362
+ * Md component type with Line sub-component
1363
+ */
1364
+ interface MdComponent {
1365
+ (props: MdProps): unknown;
1366
+ Line: (props: MdLineProps) => unknown;
1367
+ }
1368
+ /**
1369
+ * Global scope available in MDX expressions
1370
+ */
1371
+ declare global {
1372
+ /** User profile information */
1373
+ const profile: UserProfile, /** Tool name references for AI assistants */tool: ToolReferences, /** Environment variables context */env: EnvironmentContext, /** Operating system information */os: OsInfo, /** Conditional Markdown component with Line sub-component */Md: MdComponent;
1374
+ namespace JSX {
1375
+ interface IntrinsicElements {
1376
+ 'Md': MdProps;
1377
+ 'Md.Line': MdLineProps;
1378
+ }
1379
+ }
1380
+ } //#endregion
1381
+ //#endregion
1382
+ //#region ../libraries/md-compiler/dist/index-CmaMBW0n.d.mts
1383
+ //#region ../../node_modules/.pnpm/@types+unist@3.0.3/node_modules/@types/unist/index.d.ts
1384
+ // ## Interfaces
1385
+ /**
1386
+ * Info associated with nodes by the ecosystem.
1387
+ *
1388
+ * This space is guaranteed to never be specified by unist or specifications
1389
+ * implementing unist.
1390
+ * But you can use it in utilities and plugins to store data.
1391
+ *
1392
+ * This type can be augmented to register custom data.
1393
+ * For example:
1394
+ *
1395
+ * ```ts
1396
+ * declare module 'unist' {
1397
+ * interface Data {
1398
+ * // `someNode.data.myId` is typed as `number | undefined`
1399
+ * myId?: number | undefined
1400
+ * }
1401
+ * }
1402
+ * ```
1403
+ */
1404
+ interface Data$1 {}
1405
+ /**
1406
+ * One place in a source file.
1407
+ */
1408
+ interface Point$1 {
1409
+ /**
1410
+ * Line in a source file (1-indexed integer).
1411
+ */
1412
+ line: number;
1413
+ /**
1414
+ * Column in a source file (1-indexed integer).
1415
+ */
1416
+ column: number;
1417
+ /**
1418
+ * Character in a source file (0-indexed integer).
1419
+ */
1420
+ offset?: number | undefined;
1421
+ }
1422
+ /**
1423
+ * Position of a node in a source document.
1424
+ *
1425
+ * A position is a range between two points.
1426
+ */
1427
+ interface Position$1 {
1428
+ /**
1429
+ * Place of the first character of the parsed source region.
1430
+ */
1431
+ start: Point$1;
1432
+ /**
1433
+ * Place of the first character after the parsed source region.
1434
+ */
1435
+ end: Point$1;
1436
+ }
1437
+ /**
1438
+ * Abstract unist node.
1439
+ *
1440
+ * The syntactic unit in unist syntax trees are called nodes.
1441
+ *
1442
+ * This interface is supposed to be extended.
1443
+ * If you can use {@link Literal} or {@link Parent}, you should.
1444
+ * But for example in markdown, a `thematicBreak` (`***`), is neither literal
1445
+ * nor parent, but still a node.
1446
+ */
1447
+ interface Node$1 {
1448
+ /**
1449
+ * Node type.
1450
+ */
1451
+ type: string;
1452
+ /**
1453
+ * Info from the ecosystem.
1454
+ */
1455
+ data?: Data$1 | undefined;
1456
+ /**
1457
+ * Position of a node in a source document.
1458
+ *
1459
+ * Nodes that are generated (not in the original source document) must not
1460
+ * have a position.
1461
+ */
1462
+ position?: Position$1 | undefined;
1463
+ } //#endregion
1464
+ //#region ../../node_modules/.pnpm/@types+mdast@4.0.4/node_modules/@types/mdast/index.d.ts
1465
+ // ## Enumeration
1466
+ /**
1467
+ * How phrasing content is aligned
1468
+ * ({@link https://drafts.csswg.org/css-text/ | [CSSTEXT]}).
1469
+ *
1470
+ * * `'left'`: See the
1471
+ * {@link https://drafts.csswg.org/css-text/#valdef-text-align-left | left}
1472
+ * value of the `text-align` CSS property
1473
+ * * `'right'`: See the
1474
+ * {@link https://drafts.csswg.org/css-text/#valdef-text-align-right | right}
1475
+ * value of the `text-align` CSS property
1476
+ * * `'center'`: See the
1477
+ * {@link https://drafts.csswg.org/css-text/#valdef-text-align-center | center}
1478
+ * value of the `text-align` CSS property
1479
+ * * `null`: phrasing content is aligned as defined by the host environment
1480
+ *
1481
+ * Used in GFM tables.
1482
+ */
1483
+ type AlignType = "center" | "left" | "right" | null;
1484
+ /**
1485
+ * Explicitness of a reference.
1486
+ *
1487
+ * `'shortcut'`: the reference is implicit, its identifier inferred from its
1488
+ * content
1489
+ * `'collapsed'`: the reference is explicit, its identifier inferred from its
1490
+ * content
1491
+ * `'full'`: the reference is explicit, its identifier explicitly set
1492
+ */
1493
+ type ReferenceType = "shortcut" | "collapsed" | "full"; // ## Mixin
1494
+ /**
1495
+ * Node with a fallback.
1496
+ */
1497
+ interface Alternative {
1498
+ /**
1499
+ * Equivalent content for environments that cannot represent the node as
1500
+ * intended.
1501
+ */
1502
+ alt?: string | null | undefined;
1503
+ }
1504
+ /**
1505
+ * Internal relation from one node to another.
1506
+ *
1507
+ * Whether the value of `identifier` is expected to be a unique identifier or
1508
+ * not depends on the type of node including the Association.
1509
+ * An example of this is that they should be unique on {@link Definition},
1510
+ * whereas multiple {@link LinkReference}s can be non-unique to be associated
1511
+ * with one definition.
1512
+ */
1513
+ interface Association {
1514
+ /**
1515
+ * Relation of association.
1516
+ *
1517
+ * `identifier` is a source value: character escapes and character
1518
+ * references are not parsed.
1519
+ *
1520
+ * It can match another node.
1521
+ *
1522
+ * Its value must be normalized.
1523
+ * To normalize a value, collapse markdown whitespace (`[\t\n\r ]+`) to a space,
1524
+ * trim the optional initial and/or final space, and perform Unicode-aware
1525
+ * case-folding.
1526
+ */
1527
+ identifier: string;
1528
+ /**
1529
+ * Relation of association, in parsed form.
1530
+ *
1531
+ * `label` is a `string` value: it works just like `title` on {@link Link}
1532
+ * or a `lang` on {@link Code}: character escapes and character references
1533
+ * are parsed.
1534
+ *
1535
+ * It can match another node.
1536
+ */
1537
+ label?: string | null | undefined;
1538
+ }
1539
+ /**
1540
+ * Marker that is associated to another node.
1541
+ */
1542
+ interface Reference extends Association {
1543
+ /**
1544
+ * Explicitness of the reference.
1545
+ */
1546
+ referenceType: ReferenceType;
1547
+ }
1548
+ /**
1549
+ * Reference to resource.
1550
+ */
1551
+ interface Resource {
1552
+ /**
1553
+ * URL to the referenced resource.
1554
+ */
1555
+ url: string;
1556
+ /**
1557
+ * Advisory information for the resource, such as would be appropriate for
1558
+ * a tooltip.
1559
+ */
1560
+ title?: string | null | undefined;
1561
+ } // ## Interfaces
1562
+ /**
1563
+ * Info associated with mdast nodes by the ecosystem.
1564
+ *
1565
+ * This space is guaranteed to never be specified by unist or mdast.
1566
+ * But you can use it in utilities and plugins to store data.
1567
+ *
1568
+ * This type can be augmented to register custom data.
1569
+ * For example:
1570
+ *
1571
+ * ```ts
1572
+ * declare module 'mdast' {
1573
+ * interface Data {
1574
+ * // `someNode.data.myId` is typed as `number | undefined`
1575
+ * myId?: number | undefined
1576
+ * }
1577
+ * }
1578
+ * ```
1579
+ */
1580
+ interface Data$2 extends Data$1 {} // ## Content maps
1581
+ /**
1582
+ * Union of registered mdast nodes that can occur where block content is
1583
+ * expected.
1584
+ *
1585
+ * To register custom mdast nodes, add them to {@link BlockContentMap}.
1586
+ * They will be automatically added here.
1587
+ */
1588
+ type BlockContent = BlockContentMap[keyof BlockContentMap];
1589
+ /**
1590
+ * Registry of all mdast nodes that can occur where {@link BlockContent} is
1591
+ * expected.
1592
+ *
1593
+ * This interface can be augmented to register custom node types:
1594
+ *
1595
+ * ```ts
1596
+ * declare module 'mdast' {
1597
+ * interface BlockContentMap {
1598
+ * // Allow using MDX ESM nodes defined by `remark-mdx`.
1599
+ * mdxjsEsm: MdxjsEsm;
1600
+ * }
1601
+ * }
1602
+ * ```
1603
+ *
1604
+ * For a union of all block content, see {@link RootContent}.
1605
+ */
1606
+ interface BlockContentMap {
1607
+ blockquote: Blockquote;
1608
+ code: Code$1;
1609
+ heading: Heading;
1610
+ html: Html;
1611
+ list: List;
1612
+ paragraph: Paragraph;
1613
+ table: Table;
1614
+ thematicBreak: ThematicBreak;
1615
+ }
1616
+ /**
1617
+ * Union of registered mdast nodes that can occur where definition content is
1618
+ * expected.
1619
+ *
1620
+ * To register custom mdast nodes, add them to {@link DefinitionContentMap}.
1621
+ * They will be automatically added here.
1622
+ */
1623
+ type DefinitionContent = DefinitionContentMap[keyof DefinitionContentMap];
1624
+ /**
1625
+ * Registry of all mdast nodes that can occur where {@link DefinitionContent}
1626
+ * is expected.
1627
+ *
1628
+ * This interface can be augmented to register custom node types:
1629
+ *
1630
+ * ```ts
1631
+ * declare module 'mdast' {
1632
+ * interface DefinitionContentMap {
1633
+ * custom: Custom;
1634
+ * }
1635
+ * }
1636
+ * ```
1637
+ *
1638
+ * For a union of all definition content, see {@link RootContent}.
1639
+ */
1640
+ interface DefinitionContentMap {
1641
+ definition: Definition;
1642
+ footnoteDefinition: FootnoteDefinition;
1643
+ }
1644
+ /**
1645
+ * Union of registered mdast nodes that can occur where list content is
1646
+ * expected.
1647
+ *
1648
+ * To register custom mdast nodes, add them to {@link ListContentMap}.
1649
+ * They will be automatically added here.
1650
+ */
1651
+ type ListContent = ListContentMap[keyof ListContentMap];
1652
+ /**
1653
+ * Registry of all mdast nodes that can occur where {@link ListContent}
1654
+ * is expected.
1655
+ *
1656
+ * This interface can be augmented to register custom node types:
1657
+ *
1658
+ * ```ts
1659
+ * declare module 'mdast' {
1660
+ * interface ListContentMap {
1661
+ * custom: Custom;
1662
+ * }
1663
+ * }
1664
+ * ```
1665
+ *
1666
+ * For a union of all list content, see {@link RootContent}.
1667
+ */
1668
+ interface ListContentMap {
1669
+ listItem: ListItem;
1670
+ }
1671
+ /**
1672
+ * Union of registered mdast nodes that can occur where phrasing content is
1673
+ * expected.
1674
+ *
1675
+ * To register custom mdast nodes, add them to {@link PhrasingContentMap}.
1676
+ * They will be automatically added here.
1677
+ */
1678
+ type PhrasingContent = PhrasingContentMap[keyof PhrasingContentMap];
1679
+ /**
1680
+ * Registry of all mdast nodes that can occur where {@link PhrasingContent}
1681
+ * is expected.
1682
+ *
1683
+ * This interface can be augmented to register custom node types:
1684
+ *
1685
+ * ```ts
1686
+ * declare module 'mdast' {
1687
+ * interface PhrasingContentMap {
1688
+ * // Allow using MDX JSX (text) nodes defined by `remark-mdx`.
1689
+ * mdxJsxTextElement: MDXJSXTextElement;
1690
+ * }
1691
+ * }
1692
+ * ```
1693
+ *
1694
+ * For a union of all phrasing content, see {@link RootContent}.
1695
+ */
1696
+ interface PhrasingContentMap {
1697
+ break: Break;
1698
+ delete: Delete;
1699
+ emphasis: Emphasis;
1700
+ footnoteReference: FootnoteReference;
1701
+ html: Html;
1702
+ image: Image;
1703
+ imageReference: ImageReference;
1704
+ inlineCode: InlineCode;
1705
+ link: Link;
1706
+ linkReference: LinkReference;
1707
+ strong: Strong;
1708
+ text: Text$1;
1709
+ }
1710
+ /**
1711
+ * Union of registered mdast nodes that can occur in {@link Root}.
1712
+ *
1713
+ * To register custom mdast nodes, add them to {@link RootContentMap}.
1714
+ * They will be automatically added here.
1715
+ */
1716
+ type RootContent = RootContentMap$1[keyof RootContentMap$1];
1717
+ /**
1718
+ * Registry of all mdast nodes that can occur as children of {@link Root}.
1719
+ *
1720
+ * > **Note**: {@link Root} does not need to be an entire document.
1721
+ * > it can also be a fragment.
1722
+ *
1723
+ * This interface can be augmented to register custom node types:
1724
+ *
1725
+ * ```ts
1726
+ * declare module 'mdast' {
1727
+ * interface RootContentMap {
1728
+ * // Allow using toml nodes defined by `remark-frontmatter`.
1729
+ * toml: TOML;
1730
+ * }
1731
+ * }
1732
+ * ```
1733
+ *
1734
+ * For a union of all {@link Root} children, see {@link RootContent}.
1735
+ */
1736
+ interface RootContentMap$1 {
1737
+ blockquote: Blockquote;
1738
+ break: Break;
1739
+ code: Code$1;
1740
+ definition: Definition;
1741
+ delete: Delete;
1742
+ emphasis: Emphasis;
1743
+ footnoteDefinition: FootnoteDefinition;
1744
+ footnoteReference: FootnoteReference;
1745
+ heading: Heading;
1746
+ html: Html;
1747
+ image: Image;
1748
+ imageReference: ImageReference;
1749
+ inlineCode: InlineCode;
1750
+ link: Link;
1751
+ linkReference: LinkReference;
1752
+ list: List;
1753
+ listItem: ListItem;
1754
+ paragraph: Paragraph;
1755
+ strong: Strong;
1756
+ table: Table;
1757
+ tableCell: TableCell;
1758
+ tableRow: TableRow;
1759
+ text: Text$1;
1760
+ thematicBreak: ThematicBreak;
1761
+ yaml: Yaml;
1762
+ }
1763
+ /**
1764
+ * Union of registered mdast nodes that can occur where row content is
1765
+ * expected.
1766
+ *
1767
+ * To register custom mdast nodes, add them to {@link RowContentMap}.
1768
+ * They will be automatically added here.
1769
+ */
1770
+ type RowContent = RowContentMap[keyof RowContentMap];
1771
+ /**
1772
+ * Registry of all mdast nodes that can occur where {@link RowContent}
1773
+ * is expected.
1774
+ *
1775
+ * This interface can be augmented to register custom node types:
1776
+ *
1777
+ * ```ts
1778
+ * declare module 'mdast' {
1779
+ * interface RowContentMap {
1780
+ * custom: Custom;
1781
+ * }
1782
+ * }
1783
+ * ```
1784
+ *
1785
+ * For a union of all row content, see {@link RootContent}.
1786
+ */
1787
+ interface RowContentMap {
1788
+ tableCell: TableCell;
1789
+ }
1790
+ /**
1791
+ * Union of registered mdast nodes that can occur where table content is
1792
+ * expected.
1793
+ *
1794
+ * To register custom mdast nodes, add them to {@link TableContentMap}.
1795
+ * They will be automatically added here.
1796
+ */
1797
+ type TableContent = TableContentMap[keyof TableContentMap];
1798
+ /**
1799
+ * Registry of all mdast nodes that can occur where {@link TableContent}
1800
+ * is expected.
1801
+ *
1802
+ * This interface can be augmented to register custom node types:
1803
+ *
1804
+ * ```ts
1805
+ * declare module 'mdast' {
1806
+ * interface TableContentMap {
1807
+ * custom: Custom;
1808
+ * }
1809
+ * }
1810
+ * ```
1811
+ *
1812
+ * For a union of all table content, see {@link RootContent}.
1813
+ */
1814
+ interface TableContentMap {
1815
+ tableRow: TableRow;
1816
+ } // ## Abstract nodes
1817
+ /**
1818
+ * Abstract mdast node that contains the smallest possible value.
1819
+ *
1820
+ * This interface is supposed to be extended if you make custom mdast nodes.
1821
+ *
1822
+ * For a union of all registered mdast literals, see {@link Literals}.
1823
+ */
1824
+ interface Literal$2 extends Node$2 {
1825
+ /**
1826
+ * Plain-text value.
1827
+ */
1828
+ value: string;
1829
+ }
1830
+ /**
1831
+ * Abstract mdast node.
1832
+ *
1833
+ * This interface is supposed to be extended.
1834
+ * If you can use {@link Literal} or {@link Parent}, you should.
1835
+ * But for example in markdown, a thematic break (`***`) is neither literal nor
1836
+ * parent, but still a node.
1837
+ *
1838
+ * To register custom mdast nodes, add them to {@link RootContentMap} and other
1839
+ * places where relevant (such as {@link ElementContentMap}).
1840
+ *
1841
+ * For a union of all registered mdast nodes, see {@link Nodes}.
1842
+ */
1843
+ interface Node$2 extends Node$1 {
1844
+ /**
1845
+ * Info from the ecosystem.
1846
+ */
1847
+ data?: Data$2 | undefined;
1848
+ }
1849
+ /**
1850
+ * Abstract mdast node that contains other mdast nodes (*children*).
1851
+ *
1852
+ * This interface is supposed to be extended if you make custom mdast nodes.
1853
+ *
1854
+ * For a union of all registered mdast parents, see {@link Parents}.
1855
+ */
1856
+ interface Parent$1 extends Node$2 {
1857
+ /**
1858
+ * List of children.
1859
+ */
1860
+ children: RootContent[];
1861
+ } // ## Concrete nodes
1862
+ /**
1863
+ * Markdown block quote.
1864
+ */
1865
+ interface Blockquote extends Parent$1 {
1866
+ /**
1867
+ * Node type of mdast block quote.
1868
+ */
1869
+ type: "blockquote";
1870
+ /**
1871
+ * Children of block quote.
1872
+ */
1873
+ children: Array<BlockContent | DefinitionContent>;
1874
+ /**
1875
+ * Data associated with the mdast block quote.
1876
+ */
1877
+ data?: BlockquoteData | undefined;
1878
+ }
1879
+ /**
1880
+ * Info associated with mdast block quote nodes by the ecosystem.
1881
+ */
1882
+ interface BlockquoteData extends Data$2 {}
1883
+ /**
1884
+ * Markdown break.
1885
+ */
1886
+ interface Break extends Node$2 {
1887
+ /**
1888
+ * Node type of mdast break.
1889
+ */
1890
+ type: "break";
1891
+ /**
1892
+ * Data associated with the mdast break.
1893
+ */
1894
+ data?: BreakData | undefined;
1895
+ }
1896
+ /**
1897
+ * Info associated with mdast break nodes by the ecosystem.
1898
+ */
1899
+ interface BreakData extends Data$2 {}
1900
+ /**
1901
+ * Markdown code (flow) (block).
1902
+ */
1903
+ interface Code$1 extends Literal$2 {
1904
+ /**
1905
+ * Node type of mdast code (flow).
1906
+ */
1907
+ type: "code";
1908
+ /**
1909
+ * Language of computer code being marked up.
1910
+ */
1911
+ lang?: string | null | undefined;
1912
+ /**
1913
+ * Custom information relating to the node.
1914
+ *
1915
+ * If the lang field is present, a meta field can be present.
1916
+ */
1917
+ meta?: string | null | undefined;
1918
+ /**
1919
+ * Data associated with the mdast code (flow).
1920
+ */
1921
+ data?: CodeData | undefined;
1922
+ }
1923
+ /**
1924
+ * Info associated with mdast code (flow) (block) nodes by the ecosystem.
1925
+ */
1926
+ interface CodeData extends Data$2 {}
1927
+ /**
1928
+ * Markdown definition.
1929
+ */
1930
+ interface Definition extends Node$2, Association, Resource {
1931
+ /**
1932
+ * Node type of mdast definition.
1933
+ */
1934
+ type: "definition";
1935
+ /**
1936
+ * Data associated with the mdast definition.
1937
+ */
1938
+ data?: DefinitionData | undefined;
1939
+ }
1940
+ /**
1941
+ * Info associated with mdast definition nodes by the ecosystem.
1942
+ */
1943
+ interface DefinitionData extends Data$2 {}
1944
+ /**
1945
+ * Markdown GFM delete (strikethrough).
1946
+ */
1947
+ interface Delete extends Parent$1 {
1948
+ /**
1949
+ * Node type of mdast GFM delete.
1950
+ */
1951
+ type: "delete";
1952
+ /**
1953
+ * Children of GFM delete.
1954
+ */
1955
+ children: PhrasingContent[];
1956
+ /**
1957
+ * Data associated with the mdast GFM delete.
1958
+ */
1959
+ data?: DeleteData | undefined;
1960
+ }
1961
+ /**
1962
+ * Info associated with mdast GFM delete nodes by the ecosystem.
1963
+ */
1964
+ interface DeleteData extends Data$2 {}
1965
+ /**
1966
+ * Markdown emphasis.
1967
+ */
1968
+ interface Emphasis extends Parent$1 {
1969
+ /**
1970
+ * Node type of mdast emphasis.
1971
+ */
1972
+ type: "emphasis";
1973
+ /**
1974
+ * Children of emphasis.
1975
+ */
1976
+ children: PhrasingContent[];
1977
+ /**
1978
+ * Data associated with the mdast emphasis.
1979
+ */
1980
+ data?: EmphasisData | undefined;
1981
+ }
1982
+ /**
1983
+ * Info associated with mdast emphasis nodes by the ecosystem.
1984
+ */
1985
+ interface EmphasisData extends Data$2 {}
1986
+ /**
1987
+ * Markdown GFM footnote definition.
1988
+ */
1989
+ interface FootnoteDefinition extends Parent$1, Association {
1990
+ /**
1991
+ * Node type of mdast GFM footnote definition.
1992
+ */
1993
+ type: "footnoteDefinition";
1994
+ /**
1995
+ * Children of GFM footnote definition.
1996
+ */
1997
+ children: Array<BlockContent | DefinitionContent>;
1998
+ /**
1999
+ * Data associated with the mdast GFM footnote definition.
2000
+ */
2001
+ data?: FootnoteDefinitionData | undefined;
2002
+ }
2003
+ /**
2004
+ * Info associated with mdast GFM footnote definition nodes by the ecosystem.
2005
+ */
2006
+ interface FootnoteDefinitionData extends Data$2 {}
2007
+ /**
2008
+ * Markdown GFM footnote reference.
2009
+ */
2010
+ interface FootnoteReference extends Association, Node$2 {
2011
+ /**
2012
+ * Node type of mdast GFM footnote reference.
2013
+ */
2014
+ type: "footnoteReference";
2015
+ /**
2016
+ * Data associated with the mdast GFM footnote reference.
2017
+ */
2018
+ data?: FootnoteReferenceData | undefined;
2019
+ }
2020
+ /**
2021
+ * Info associated with mdast GFM footnote reference nodes by the ecosystem.
2022
+ */
2023
+ interface FootnoteReferenceData extends Data$2 {}
2024
+ /**
2025
+ * Markdown heading.
2026
+ */
2027
+ interface Heading extends Parent$1 {
2028
+ /**
2029
+ * Node type of mdast heading.
2030
+ */
2031
+ type: "heading";
2032
+ /**
2033
+ * Heading rank.
2034
+ *
2035
+ * A value of `1` is said to be the highest rank and `6` the lowest.
2036
+ */
2037
+ depth: 1 | 2 | 3 | 4 | 5 | 6;
2038
+ /**
2039
+ * Children of heading.
2040
+ */
2041
+ children: PhrasingContent[];
2042
+ /**
2043
+ * Data associated with the mdast heading.
2044
+ */
2045
+ data?: HeadingData | undefined;
2046
+ }
2047
+ /**
2048
+ * Info associated with mdast heading nodes by the ecosystem.
2049
+ */
2050
+ interface HeadingData extends Data$2 {}
2051
+ /**
2052
+ * Markdown HTML.
2053
+ */
2054
+ interface Html extends Literal$2 {
2055
+ /**
2056
+ * Node type of mdast HTML.
2057
+ */
2058
+ type: "html";
2059
+ /**
2060
+ * Data associated with the mdast HTML.
2061
+ */
2062
+ data?: HtmlData | undefined;
2063
+ }
2064
+ /**
2065
+ * Info associated with mdast HTML nodes by the ecosystem.
2066
+ */
2067
+ interface HtmlData extends Data$2 {}
2068
+ /**
2069
+ * Markdown image.
2070
+ */
2071
+ interface Image extends Alternative, Node$2, Resource {
2072
+ /**
2073
+ * Node type of mdast image.
2074
+ */
2075
+ type: "image";
2076
+ /**
2077
+ * Data associated with the mdast image.
2078
+ */
2079
+ data?: ImageData | undefined;
2080
+ }
2081
+ /**
2082
+ * Info associated with mdast image nodes by the ecosystem.
2083
+ */
2084
+ interface ImageData extends Data$2 {}
2085
+ /**
2086
+ * Markdown image reference.
2087
+ */
2088
+ interface ImageReference extends Alternative, Node$2, Reference {
2089
+ /**
2090
+ * Node type of mdast image reference.
2091
+ */
2092
+ type: "imageReference";
2093
+ /**
2094
+ * Data associated with the mdast image reference.
2095
+ */
2096
+ data?: ImageReferenceData | undefined;
2097
+ }
2098
+ /**
2099
+ * Info associated with mdast image reference nodes by the ecosystem.
2100
+ */
2101
+ interface ImageReferenceData extends Data$2 {}
2102
+ /**
2103
+ * Markdown code (text) (inline).
2104
+ */
2105
+ interface InlineCode extends Literal$2 {
2106
+ /**
2107
+ * Node type of mdast code (text).
2108
+ */
2109
+ type: "inlineCode";
2110
+ /**
2111
+ * Data associated with the mdast code (text).
2112
+ */
2113
+ data?: InlineCodeData | undefined;
2114
+ }
2115
+ /**
2116
+ * Info associated with mdast code (text) (inline) nodes by the ecosystem.
2117
+ */
2118
+ interface InlineCodeData extends Data$2 {}
2119
+ /**
2120
+ * Markdown link.
2121
+ */
2122
+ interface Link extends Parent$1, Resource {
2123
+ /**
2124
+ * Node type of mdast link.
2125
+ */
2126
+ type: "link";
2127
+ /**
2128
+ * Children of link.
2129
+ */
2130
+ children: PhrasingContent[];
2131
+ /**
2132
+ * Data associated with the mdast link.
2133
+ */
2134
+ data?: LinkData | undefined;
2135
+ }
2136
+ /**
2137
+ * Info associated with mdast link nodes by the ecosystem.
2138
+ */
2139
+ interface LinkData extends Data$2 {}
2140
+ /**
2141
+ * Markdown link reference.
2142
+ */
2143
+ interface LinkReference extends Parent$1, Reference {
2144
+ /**
2145
+ * Node type of mdast link reference.
2146
+ */
2147
+ type: "linkReference";
2148
+ /**
2149
+ * Children of link reference.
2150
+ */
2151
+ children: PhrasingContent[];
2152
+ /**
2153
+ * Data associated with the mdast link reference.
2154
+ */
2155
+ data?: LinkReferenceData | undefined;
2156
+ }
2157
+ /**
2158
+ * Info associated with mdast link reference nodes by the ecosystem.
2159
+ */
2160
+ interface LinkReferenceData extends Data$2 {}
2161
+ /**
2162
+ * Markdown list.
2163
+ */
2164
+ interface List extends Parent$1 {
2165
+ /**
2166
+ * Node type of mdast list.
2167
+ */
2168
+ type: "list";
2169
+ /**
2170
+ * Whether the items have been intentionally ordered (when `true`), or that
2171
+ * the order of items is not important (when `false` or not present).
2172
+ */
2173
+ ordered?: boolean | null | undefined;
2174
+ /**
2175
+ * The starting number of the list, when the `ordered` field is `true`.
2176
+ */
2177
+ start?: number | null | undefined;
2178
+ /**
2179
+ * Whether one or more of the children are separated with a blank line from
2180
+ * its siblings (when `true`), or not (when `false` or not present).
2181
+ */
2182
+ spread?: boolean | null | undefined;
2183
+ /**
2184
+ * Children of list.
2185
+ */
2186
+ children: ListContent[];
2187
+ /**
2188
+ * Data associated with the mdast list.
2189
+ */
2190
+ data?: ListData | undefined;
2191
+ }
2192
+ /**
2193
+ * Info associated with mdast list nodes by the ecosystem.
2194
+ */
2195
+ interface ListData extends Data$2 {}
2196
+ /**
2197
+ * Markdown list item.
2198
+ */
2199
+ interface ListItem extends Parent$1 {
2200
+ /**
2201
+ * Node type of mdast list item.
2202
+ */
2203
+ type: "listItem";
2204
+ /**
2205
+ * Whether the item is a tasklist item (when `boolean`).
2206
+ *
2207
+ * When `true`, the item is complete.
2208
+ * When `false`, the item is incomplete.
2209
+ */
2210
+ checked?: boolean | null | undefined;
2211
+ /**
2212
+ * Whether one or more of the children are separated with a blank line from
2213
+ * its siblings (when `true`), or not (when `false` or not present).
2214
+ */
2215
+ spread?: boolean | null | undefined;
2216
+ /**
2217
+ * Children of list item.
2218
+ */
2219
+ children: Array<BlockContent | DefinitionContent>;
2220
+ /**
2221
+ * Data associated with the mdast list item.
2222
+ */
2223
+ data?: ListItemData | undefined;
2224
+ }
2225
+ /**
2226
+ * Info associated with mdast list item nodes by the ecosystem.
2227
+ */
2228
+ interface ListItemData extends Data$2 {}
2229
+ /**
2230
+ * Markdown paragraph.
2231
+ */
2232
+ interface Paragraph extends Parent$1 {
2233
+ /**
2234
+ * Node type of mdast paragraph.
2235
+ */
2236
+ type: "paragraph";
2237
+ /**
2238
+ * Children of paragraph.
2239
+ */
2240
+ children: PhrasingContent[];
2241
+ /**
2242
+ * Data associated with the mdast paragraph.
2243
+ */
2244
+ data?: ParagraphData | undefined;
2245
+ }
2246
+ /**
2247
+ * Info associated with mdast paragraph nodes by the ecosystem.
2248
+ */
2249
+ interface ParagraphData extends Data$2 {}
2250
+ /**
2251
+ * Document fragment or a whole document.
2252
+ *
2253
+ * Should be used as the root of a tree and must not be used as a child.
2254
+ */
2255
+ interface Root extends Parent$1 {
2256
+ /**
2257
+ * Node type of mdast root.
2258
+ */
2259
+ type: "root";
2260
+ /**
2261
+ * Data associated with the mdast root.
2262
+ */
2263
+ data?: RootData$1 | undefined;
2264
+ }
2265
+ /**
2266
+ * Info associated with mdast root nodes by the ecosystem.
2267
+ */
2268
+ interface RootData$1 extends Data$2 {}
2269
+ /**
2270
+ * Markdown strong.
2271
+ */
2272
+ interface Strong extends Parent$1 {
2273
+ /**
2274
+ * Node type of mdast strong.
2275
+ */
2276
+ type: "strong";
2277
+ /**
2278
+ * Children of strong.
2279
+ */
2280
+ children: PhrasingContent[];
2281
+ /**
2282
+ * Data associated with the mdast strong.
2283
+ */
2284
+ data?: StrongData | undefined;
2285
+ }
2286
+ /**
2287
+ * Info associated with mdast strong nodes by the ecosystem.
2288
+ */
2289
+ interface StrongData extends Data$2 {}
2290
+ /**
2291
+ * Markdown GFM table.
2292
+ */
2293
+ interface Table extends Parent$1 {
2294
+ /**
2295
+ * Node type of mdast GFM table.
2296
+ */
2297
+ type: "table";
2298
+ /**
2299
+ * How cells in columns are aligned.
2300
+ */
2301
+ align?: AlignType[] | null | undefined;
2302
+ /**
2303
+ * Children of GFM table.
2304
+ */
2305
+ children: TableContent[];
2306
+ /**
2307
+ * Data associated with the mdast GFM table.
2308
+ */
2309
+ data?: TableData | undefined;
2310
+ }
2311
+ /**
2312
+ * Info associated with mdast GFM table nodes by the ecosystem.
2313
+ */
2314
+ interface TableData extends Data$2 {}
2315
+ /**
2316
+ * Markdown GFM table row.
2317
+ */
2318
+ interface TableRow extends Parent$1 {
2319
+ /**
2320
+ * Node type of mdast GFM table row.
2321
+ */
2322
+ type: "tableRow";
2323
+ /**
2324
+ * Children of GFM table row.
2325
+ */
2326
+ children: RowContent[];
2327
+ /**
2328
+ * Data associated with the mdast GFM table row.
2329
+ */
2330
+ data?: TableRowData | undefined;
2331
+ }
2332
+ /**
2333
+ * Info associated with mdast GFM table row nodes by the ecosystem.
2334
+ */
2335
+ interface TableRowData extends Data$2 {}
2336
+ /**
2337
+ * Markdown GFM table cell.
2338
+ */
2339
+ interface TableCell extends Parent$1 {
2340
+ /**
2341
+ * Node type of mdast GFM table cell.
2342
+ */
2343
+ type: "tableCell";
2344
+ /**
2345
+ * Children of GFM table cell.
2346
+ */
2347
+ children: PhrasingContent[];
2348
+ /**
2349
+ * Data associated with the mdast GFM table cell.
2350
+ */
2351
+ data?: TableCellData | undefined;
2352
+ }
2353
+ /**
2354
+ * Info associated with mdast GFM table cell nodes by the ecosystem.
2355
+ */
2356
+ interface TableCellData extends Data$2 {}
2357
+ /**
2358
+ * Markdown text.
2359
+ */
2360
+ interface Text$1 extends Literal$2 {
2361
+ /**
2362
+ * Node type of mdast text.
2363
+ */
2364
+ type: "text";
2365
+ /**
2366
+ * Data associated with the mdast text.
2367
+ */
2368
+ data?: TextData$1 | undefined;
2369
+ }
2370
+ /**
2371
+ * Info associated with mdast text nodes by the ecosystem.
2372
+ */
2373
+ interface TextData$1 extends Data$2 {}
2374
+ /**
2375
+ * Markdown thematic break (horizontal rule).
2376
+ */
2377
+ interface ThematicBreak extends Node$2 {
2378
+ /**
2379
+ * Node type of mdast thematic break.
2380
+ */
2381
+ type: "thematicBreak";
2382
+ /**
2383
+ * Data associated with the mdast thematic break.
2384
+ */
2385
+ data?: ThematicBreakData | undefined;
2386
+ }
2387
+ /**
2388
+ * Info associated with mdast thematic break nodes by the ecosystem.
2389
+ */
2390
+ interface ThematicBreakData extends Data$2 {}
2391
+ /**
2392
+ * Markdown YAML.
2393
+ */
2394
+ interface Yaml extends Literal$2 {
2395
+ /**
2396
+ * Node type of mdast YAML.
2397
+ */
2398
+ type: "yaml";
2399
+ /**
2400
+ * Data associated with the mdast YAML.
2401
+ */
2402
+ data?: YamlData | undefined;
2403
+ }
2404
+ /**
2405
+ * Info associated with mdast YAML nodes by the ecosystem.
2406
+ */
2407
+ interface YamlData extends Data$2 {} //#endregion
2408
+ //#endregion
2409
+ //#region ../libraries/md-compiler/dist/index.d.mts
2410
+ //#region ../../node_modules/.pnpm/@types+estree@1.0.8/node_modules/@types/estree/index.d.ts
2411
+ // This definition file follows a somewhat unusual format. ESTree allows
2412
+ // runtime type checks based on the `type` parameter. In order to explain this
2413
+ // to typescript we want to use discriminated union types:
2414
+ // https://github.com/Microsoft/TypeScript/pull/9163
2415
+ //
2416
+ // For ESTree this is a bit tricky because the high level interfaces like
2417
+ // Node or Function are pulling double duty. We want to pass common fields down
2418
+ // to the interfaces that extend them (like Identifier or
2419
+ // ArrowFunctionExpression), but you can't extend a type union or enforce
2420
+ // common fields on them. So we've split the high level interfaces into two
2421
+ // types, a base type which passes down inherited fields, and a type union of
2422
+ // all types which extend the base type. Only the type union is exported, and
2423
+ // the union is how other types refer to the collection of inheriting types.
2424
+ //
2425
+ // This makes the definitions file here somewhat more difficult to maintain,
2426
+ // but it has the notable advantage of making ESTree much easier to use as
2427
+ // an end user.
2428
+ interface BaseNodeWithoutComments {
2429
+ // Every leaf interface that extends BaseNode must specify a type property.
2430
+ // The type property should be a string literal. For example, Identifier
2431
+ // has: `type: "Identifier"`
2432
+ type: string;
2433
+ loc?: SourceLocation | null | undefined;
2434
+ range?: [number, number] | undefined;
2435
+ }
2436
+ interface BaseNode extends BaseNodeWithoutComments {
2437
+ leadingComments?: Comment$1[] | undefined;
2438
+ trailingComments?: Comment$1[] | undefined;
2439
+ }
2440
+ interface Comment$1 extends BaseNodeWithoutComments {
1220
2441
  type: "Line" | "Block";
1221
2442
  value: string;
1222
2443
  }
@@ -3379,11 +4600,268 @@ declare module 'hast' {
3379
4600
  * Metadata source type
3380
4601
  */
3381
4602
  //#endregion
4603
+ //#region src/compiler/types.d.ts
4604
+ /** Scope containing values available for expression evaluation */
4605
+ interface EvaluationScope {
4606
+ [key: string]: unknown;
4607
+ }
4608
+ /**
4609
+ * Component handler signature for built-in components.
4610
+ * Handlers receive the JSX element, processing context, and a function to process children.
4611
+ */
4612
+ //#endregion
4613
+ //#region src/toml.d.ts
4614
+ interface BuildTomlDocumentOptions {
4615
+ readonly fieldOrder?: readonly string[];
4616
+ }
4617
+ interface BuildPromptTomlArtifactOptions extends BuildTomlDocumentOptions {
4618
+ readonly content: string;
4619
+ readonly bodyFieldName: string;
4620
+ readonly frontMatter?: Readonly<Record<string, unknown>>;
4621
+ readonly fieldNameMap?: Readonly<Record<string, string>>;
4622
+ readonly excludedKeys?: readonly string[];
4623
+ readonly extraFields?: Readonly<Record<string, unknown>>;
4624
+ } //#endregion
3382
4625
  //#region src/plugins/plugin-core/AindexConfigDefaults.d.ts
4626
+ interface AindexDirPairLike {
4627
+ readonly src: string;
4628
+ readonly dist: string;
4629
+ }
4630
+ declare const AINDEX_DEFAULT_DIR_NAME = "aindex";
3383
4631
  declare const AINDEX_PROJECT_SERIES_NAMES: readonly ["app", "ext", "arch", "softwares"];
3384
4632
  type AindexProjectSeriesName = (typeof AINDEX_PROJECT_SERIES_NAMES)[number];
3385
- //#endregion
4633
+ declare const AINDEX_CONFIG_DIRECTORY_PAIR_KEYS: readonly ["skills", "commands", "subAgents", "rules", "app", "ext", "arch", "softwares"];
4634
+ declare const AINDEX_CONFIG_FILE_PAIR_KEYS: readonly ["globalPrompt", "workspacePrompt"];
4635
+ declare const AINDEX_CONFIG_PAIR_KEYS: readonly ["skills", "commands", "subAgents", "rules", "globalPrompt", "workspacePrompt", "app", "ext", "arch", "softwares"];
4636
+ type AindexConfigPairKey = (typeof AINDEX_CONFIG_PAIR_KEYS)[number];
4637
+ type AindexConfigDirectoryPairKey = (typeof AINDEX_CONFIG_DIRECTORY_PAIR_KEYS)[number];
4638
+ type AindexConfigFilePairKey = (typeof AINDEX_CONFIG_FILE_PAIR_KEYS)[number];
4639
+ type AindexConfigKeyPath = `aindex.${AindexConfigPairKey}.src` | `aindex.${AindexConfigPairKey}.dist`;
4640
+ declare const AINDEX_PROMPT_TREE_DIRECTORY_PAIR_KEYS: readonly ["skills", "commands", "subAgents", "app", "ext", "arch", "softwares"];
4641
+ type AindexPromptTreeDirectoryPairKey = (typeof AINDEX_PROMPT_TREE_DIRECTORY_PAIR_KEYS)[number];
4642
+ interface MutableAindexDirPair {
4643
+ src: string;
4644
+ dist: string;
4645
+ }
4646
+ type AindexConfigLike = {
4647
+ dir: string;
4648
+ } & { [K in AindexConfigPairKey]: MutableAindexDirPair };
4649
+ declare const AINDEX_CONFIG_PAIR_DEFAULTS: {
4650
+ readonly skills: {
4651
+ readonly src: "skills";
4652
+ readonly dist: "dist/skills";
4653
+ };
4654
+ readonly commands: {
4655
+ readonly src: "commands";
4656
+ readonly dist: "dist/commands";
4657
+ };
4658
+ readonly subAgents: {
4659
+ readonly src: "subagents";
4660
+ readonly dist: "dist/subagents";
4661
+ };
4662
+ readonly rules: {
4663
+ readonly src: "rules";
4664
+ readonly dist: "dist/rules";
4665
+ };
4666
+ readonly globalPrompt: {
4667
+ readonly src: "global.src.mdx";
4668
+ readonly dist: "dist/global.mdx";
4669
+ };
4670
+ readonly workspacePrompt: {
4671
+ readonly src: "workspace.src.mdx";
4672
+ readonly dist: "dist/workspace.mdx";
4673
+ };
4674
+ readonly app: {
4675
+ readonly src: "app";
4676
+ readonly dist: "dist/app";
4677
+ };
4678
+ readonly ext: {
4679
+ readonly src: "ext";
4680
+ readonly dist: "dist/ext";
4681
+ };
4682
+ readonly arch: {
4683
+ readonly src: "arch";
4684
+ readonly dist: "dist/arch";
4685
+ };
4686
+ readonly softwares: {
4687
+ readonly src: "softwares";
4688
+ readonly dist: "dist/softwares";
4689
+ };
4690
+ };
4691
+ declare const AINDEX_CONFIG_KEY_PATHS: readonly AindexConfigKeyPath[];
4692
+ declare function buildDefaultAindexConfig(): AindexConfigLike;
4693
+ declare function mergeAindexConfig<T extends AindexConfigLike>(base: T, override?: Partial<T>): T; //#endregion
4694
+ //#region src/plugins/plugin-core/AindexTypes.d.ts
4695
+ /**
4696
+ * Aindex directory structure types and constants
4697
+ * Used for directory structure validation and generation
4698
+ */
4699
+ /**
4700
+ * File entry in the aindex project
4701
+ */
4702
+ interface AindexFileEntry {
4703
+ /** File name (e.g., 'GLOBAL.md') */
4704
+ readonly name: string;
4705
+ /** Whether this file is required */
4706
+ readonly required: boolean;
4707
+ /** File description */
4708
+ readonly description?: string;
4709
+ }
4710
+ /**
4711
+ * Directory entry in the aindex project
4712
+ */
4713
+ interface AindexDirectoryEntry {
4714
+ /** Directory name (e.g., 'skills') */
4715
+ readonly name: string;
4716
+ /** Whether this directory is required */
4717
+ readonly required: boolean;
4718
+ /** Directory description */
4719
+ readonly description?: string;
4720
+ /** Nested directories */
4721
+ readonly directories?: readonly AindexDirectoryEntry[];
4722
+ /** Files in this directory */
4723
+ readonly files?: readonly AindexFileEntry[];
4724
+ }
4725
+ /**
4726
+ * Root structure of the aindex project
4727
+ */
4728
+ interface AindexDirectory {
4729
+ /** Source directories (before compilation) */
4730
+ readonly src: {
4731
+ readonly skills: AindexDirectoryEntry;
4732
+ readonly commands: AindexDirectoryEntry;
4733
+ readonly agents: AindexDirectoryEntry;
4734
+ readonly rules: AindexDirectoryEntry;
4735
+ readonly globalMemoryFile: AindexFileEntry;
4736
+ readonly workspaceMemoryFile: AindexFileEntry;
4737
+ };
4738
+ /** Distribution directories (after compilation) */
4739
+ readonly dist: {
4740
+ readonly skills: AindexDirectoryEntry;
4741
+ readonly commands: AindexDirectoryEntry;
4742
+ readonly agents: AindexDirectoryEntry;
4743
+ readonly rules: AindexDirectoryEntry;
4744
+ readonly app: AindexDirectoryEntry;
4745
+ readonly ext: AindexDirectoryEntry;
4746
+ readonly arch: AindexDirectoryEntry;
4747
+ readonly softwares: AindexDirectoryEntry;
4748
+ readonly globalMemoryFile: AindexFileEntry;
4749
+ readonly workspaceMemoryFile: AindexFileEntry;
4750
+ };
4751
+ /** App directory (project-specific prompts source, standalone at root) */
4752
+ readonly app: AindexDirectoryEntry;
4753
+ readonly ext: AindexDirectoryEntry;
4754
+ readonly arch: AindexDirectoryEntry;
4755
+ readonly softwares: AindexDirectoryEntry;
4756
+ /** IDE configuration directories */
4757
+ readonly ide: {
4758
+ readonly idea: AindexDirectoryEntry;
4759
+ readonly ideaCodeStyles: AindexDirectoryEntry;
4760
+ readonly vscode: AindexDirectoryEntry;
4761
+ readonly zed: AindexDirectoryEntry;
4762
+ };
4763
+ /** IDE configuration files */
4764
+ readonly ideFiles: readonly AindexFileEntry[];
4765
+ /** AI Agent ignore files */
4766
+ readonly ignoreFiles: readonly AindexFileEntry[];
4767
+ }
4768
+ /**
4769
+ * Directory names used in aindex project
4770
+ */
4771
+ declare const AINDEX_DIR_NAMES: {
4772
+ readonly SRC: "src";
4773
+ readonly DIST: "dist";
4774
+ readonly SKILLS: "skills";
4775
+ readonly COMMANDS: "commands";
4776
+ readonly AGENTS: "agents";
4777
+ readonly RULES: "rules";
4778
+ readonly APP: "app";
4779
+ readonly EXT: "ext";
4780
+ readonly ARCH: "arch";
4781
+ readonly SOFTWARES: "softwares";
4782
+ readonly IDEA: ".idea";
4783
+ readonly IDEA_CODE_STYLES: ".idea/codeStyles";
4784
+ readonly VSCODE: ".vscode";
4785
+ readonly ZED: ".zed";
4786
+ };
4787
+ /**
4788
+ * File names used in aindex project
4789
+ */
4790
+ declare const AINDEX_FILE_NAMES: {
4791
+ readonly GLOBAL_MEMORY: "global.mdx";
4792
+ readonly GLOBAL_MEMORY_SRC: "global.src.mdx";
4793
+ readonly WORKSPACE_MEMORY: "workspace.mdx";
4794
+ readonly WORKSPACE_MEMORY_SRC: "workspace.src.mdx";
4795
+ readonly EDITOR_CONFIG: ".editorconfig";
4796
+ readonly IDEA_GITIGNORE: ".idea/.gitignore";
4797
+ readonly IDEA_PROJECT_XML: ".idea/codeStyles/Project.xml";
4798
+ readonly IDEA_CODE_STYLE_CONFIG_XML: ".idea/codeStyles/codeStyleConfig.xml";
4799
+ readonly VSCODE_SETTINGS: ".vscode/settings.json";
4800
+ readonly VSCODE_EXTENSIONS: ".vscode/extensions.json";
4801
+ readonly ZED_SETTINGS: ".zed/settings.json";
4802
+ readonly QODER_IGNORE: ".qoderignore";
4803
+ readonly CURSOR_IGNORE: ".cursorignore";
4804
+ readonly WARP_INDEX_IGNORE: ".warpindexignore";
4805
+ readonly AI_IGNORE: ".aiignore";
4806
+ readonly CODEIUM_IGNORE: ".codeiumignore";
4807
+ };
4808
+ /**
4809
+ * Relative paths from aindex project root
4810
+ */
4811
+ declare const AINDEX_RELATIVE_PATHS: {
4812
+ readonly SRC_SKILLS: "src/skills";
4813
+ readonly SRC_COMMANDS: "src/commands";
4814
+ readonly SRC_AGENTS: "src/agents";
4815
+ readonly SRC_RULES: "src/rules";
4816
+ readonly SRC_GLOBAL_MEMORY: "global.src.mdx";
4817
+ readonly SRC_WORKSPACE_MEMORY: "workspace.src.mdx";
4818
+ readonly DIST_SKILLS: "dist/skills";
4819
+ readonly DIST_COMMANDS: "dist/commands";
4820
+ readonly DIST_AGENTS: "dist/agents";
4821
+ readonly DIST_RULES: "dist/rules";
4822
+ readonly DIST_APP: "dist/app";
4823
+ readonly DIST_EXT: "dist/ext";
4824
+ readonly DIST_ARCH: "dist/arch";
4825
+ readonly DIST_SOFTWARES: "dist/softwares";
4826
+ readonly DIST_GLOBAL_MEMORY: "dist/global.mdx";
4827
+ readonly DIST_WORKSPACE_MEMORY: "dist/workspace.mdx";
4828
+ readonly APP: "app";
4829
+ readonly EXT: "ext";
4830
+ readonly ARCH: "arch";
4831
+ readonly SOFTWARES: "softwares";
4832
+ };
4833
+ /**
4834
+ * Default aindex directory structure
4835
+ * Used for validation and generation
4836
+ */
4837
+ declare const DEFAULT_AINDEX_STRUCTURE: AindexDirectory;
4838
+ /**
4839
+ * Type for directory names
4840
+ */
4841
+ type AindexDirName = (typeof AINDEX_DIR_NAMES)[keyof typeof AINDEX_DIR_NAMES];
4842
+ /**
4843
+ * Type for file names
4844
+ */
4845
+ type AindexFileName = (typeof AINDEX_FILE_NAMES)[keyof typeof AINDEX_FILE_NAMES];
4846
+ /**
4847
+ * Type for relative paths
4848
+ */
4849
+ type AindexRelativePath = (typeof AINDEX_RELATIVE_PATHS)[keyof typeof AINDEX_RELATIVE_PATHS]; //#endregion
3386
4850
  //#region src/plugins/plugin-core/ConfigTypes.schema.d.ts
4851
+ /**
4852
+ * Zod schema for a source/dist path pair.
4853
+ * Both paths are relative to the aindex project root.
4854
+ */
4855
+ declare const ZAindexDirPair: z.ZodObject<{
4856
+ src: z.ZodString;
4857
+ dist: z.ZodString;
4858
+ }, "strip", z.ZodTypeAny, {
4859
+ src: string;
4860
+ dist: string;
4861
+ }, {
4862
+ src: string;
4863
+ dist: string;
4864
+ }>;
3387
4865
  /**
3388
4866
  * Zod schema for the aindex configuration.
3389
4867
  * All paths are relative to <workspaceDir>/<aindex.dir>.
@@ -3665,6 +5143,19 @@ declare const ZAindexConfig: z.ZodObject<{
3665
5143
  dist: string;
3666
5144
  } | undefined;
3667
5145
  }>;
5146
+ /**
5147
+ * Zod schema for per-plugin command series override options.
5148
+ */
5149
+ declare const ZCommandSeriesPluginOverride: z.ZodObject<{
5150
+ includeSeriesPrefix: z.ZodOptional<z.ZodBoolean>;
5151
+ seriesSeparator: z.ZodOptional<z.ZodString>;
5152
+ }, "strip", z.ZodTypeAny, {
5153
+ includeSeriesPrefix?: boolean | undefined;
5154
+ seriesSeparator?: string | undefined;
5155
+ }, {
5156
+ includeSeriesPrefix?: boolean | undefined;
5157
+ seriesSeparator?: string | undefined;
5158
+ }>;
3668
5159
  /**
3669
5160
  * Zod schema for command series configuration options.
3670
5161
  */
@@ -3693,6 +5184,39 @@ declare const ZCommandSeriesOptions: z.ZodObject<{
3693
5184
  seriesSeparator?: string | undefined;
3694
5185
  }> | undefined;
3695
5186
  }>;
5187
+ /**
5188
+ * Zod schema for output scope value.
5189
+ */
5190
+ declare const ZOutputScope: z.ZodEnum<["project", "global"]>;
5191
+ /**
5192
+ * Zod schema for selecting one or more scopes.
5193
+ */
5194
+ declare const ZOutputScopeSelection: z.ZodUnion<[z.ZodEnum<["project", "global"]>, z.ZodArray<z.ZodEnum<["project", "global"]>, "many">]>;
5195
+ /**
5196
+ * Zod schema for per-plugin topic scope overrides.
5197
+ */
5198
+ declare const ZPluginOutputScopeTopics: z.ZodObject<{
5199
+ prompt: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["project", "global"]>, z.ZodArray<z.ZodEnum<["project", "global"]>, "many">]>>;
5200
+ rules: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["project", "global"]>, z.ZodArray<z.ZodEnum<["project", "global"]>, "many">]>>;
5201
+ commands: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["project", "global"]>, z.ZodArray<z.ZodEnum<["project", "global"]>, "many">]>>;
5202
+ subagents: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["project", "global"]>, z.ZodArray<z.ZodEnum<["project", "global"]>, "many">]>>;
5203
+ skills: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["project", "global"]>, z.ZodArray<z.ZodEnum<["project", "global"]>, "many">]>>;
5204
+ mcp: z.ZodOptional<z.ZodUnion<[z.ZodEnum<["project", "global"]>, z.ZodArray<z.ZodEnum<["project", "global"]>, "many">]>>;
5205
+ }, "strip", z.ZodTypeAny, {
5206
+ skills?: "project" | "global" | ("project" | "global")[] | undefined;
5207
+ commands?: "project" | "global" | ("project" | "global")[] | undefined;
5208
+ rules?: "project" | "global" | ("project" | "global")[] | undefined;
5209
+ prompt?: "project" | "global" | ("project" | "global")[] | undefined;
5210
+ subagents?: "project" | "global" | ("project" | "global")[] | undefined;
5211
+ mcp?: "project" | "global" | ("project" | "global")[] | undefined;
5212
+ }, {
5213
+ skills?: "project" | "global" | ("project" | "global")[] | undefined;
5214
+ commands?: "project" | "global" | ("project" | "global")[] | undefined;
5215
+ rules?: "project" | "global" | ("project" | "global")[] | undefined;
5216
+ prompt?: "project" | "global" | ("project" | "global")[] | undefined;
5217
+ subagents?: "project" | "global" | ("project" | "global")[] | undefined;
5218
+ mcp?: "project" | "global" | ("project" | "global")[] | undefined;
5219
+ }>;
3696
5220
  /**
3697
5221
  * Zod schema for output scope override configuration.
3698
5222
  */
@@ -3749,6 +5273,23 @@ declare const ZFrontMatterOptions: z.ZodObject<{
3749
5273
  blankLineAfter?: boolean | undefined;
3750
5274
  }>;
3751
5275
  declare const ZProtectionMode: z.ZodEnum<["direct", "recursive"]>;
5276
+ declare const ZProtectionRuleMatcher: z.ZodEnum<["path", "glob"]>;
5277
+ declare const ZCleanupProtectionRule: z.ZodObject<{
5278
+ path: z.ZodString;
5279
+ protectionMode: z.ZodEnum<["direct", "recursive"]>;
5280
+ matcher: z.ZodOptional<z.ZodEnum<["path", "glob"]>>;
5281
+ reason: z.ZodOptional<z.ZodString>;
5282
+ }, "strip", z.ZodTypeAny, {
5283
+ path: string;
5284
+ protectionMode: "direct" | "recursive";
5285
+ matcher?: "path" | "glob" | undefined;
5286
+ reason?: string | undefined;
5287
+ }, {
5288
+ path: string;
5289
+ protectionMode: "direct" | "recursive";
5290
+ matcher?: "path" | "glob" | undefined;
5291
+ reason?: string | undefined;
5292
+ }>;
3752
5293
  declare const ZCleanupProtectionOptions: z.ZodObject<{
3753
5294
  rules: z.ZodOptional<z.ZodArray<z.ZodObject<{
3754
5295
  path: z.ZodString;
@@ -3781,6 +5322,14 @@ declare const ZCleanupProtectionOptions: z.ZodObject<{
3781
5322
  reason?: string | undefined;
3782
5323
  }[] | undefined;
3783
5324
  }>;
5325
+ declare const ZStringOrStringArray: z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>;
5326
+ declare const ZWindowsWsl2Options: z.ZodObject<{
5327
+ instances: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
5328
+ }, "strip", z.ZodTypeAny, {
5329
+ instances?: string | string[] | undefined;
5330
+ }, {
5331
+ instances?: string | string[] | undefined;
5332
+ }>;
3784
5333
  declare const ZWindowsOptions: z.ZodObject<{
3785
5334
  wsl2: z.ZodOptional<z.ZodObject<{
3786
5335
  instances: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
@@ -3798,6 +5347,25 @@ declare const ZWindowsOptions: z.ZodObject<{
3798
5347
  instances?: string | string[] | undefined;
3799
5348
  } | undefined;
3800
5349
  }>;
5350
+ /**
5351
+ * Zod schema for user profile information.
5352
+ */
5353
+ declare const ZUserProfile: z.ZodObject<{
5354
+ name: z.ZodOptional<z.ZodString>;
5355
+ username: z.ZodOptional<z.ZodString>;
5356
+ gender: z.ZodOptional<z.ZodString>;
5357
+ birthday: z.ZodOptional<z.ZodString>;
5358
+ }, "strip", z.ZodUnknown, z.objectOutputType<{
5359
+ name: z.ZodOptional<z.ZodString>;
5360
+ username: z.ZodOptional<z.ZodString>;
5361
+ gender: z.ZodOptional<z.ZodString>;
5362
+ birthday: z.ZodOptional<z.ZodString>;
5363
+ }, z.ZodUnknown, "strip">, z.objectInputType<{
5364
+ name: z.ZodOptional<z.ZodString>;
5365
+ username: z.ZodOptional<z.ZodString>;
5366
+ gender: z.ZodOptional<z.ZodString>;
5367
+ birthday: z.ZodOptional<z.ZodString>;
5368
+ }, z.ZodUnknown, "strip">>;
3801
5369
  /**
3802
5370
  * Zod schema for the user configuration file (.tnmsc.json).
3803
5371
  */
@@ -4394,6 +5962,29 @@ declare const ZUserConfigFile: z.ZodObject<{
4394
5962
  birthday: z.ZodOptional<z.ZodString>;
4395
5963
  }, z.ZodUnknown, "strip"> | undefined;
4396
5964
  }>;
5965
+ /**
5966
+ * Zod schema for MCP project config.
5967
+ */
5968
+ declare const ZMcpProjectConfig: z.ZodObject<{
5969
+ names: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
5970
+ }, "strip", z.ZodTypeAny, {
5971
+ names?: string[] | undefined;
5972
+ }, {
5973
+ names?: string[] | undefined;
5974
+ }>;
5975
+ /**
5976
+ * Zod schema for per-type series filtering configuration.
5977
+ */
5978
+ declare const ZTypeSeriesConfig: z.ZodObject<{
5979
+ includeSeries: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
5980
+ subSeries: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodArray<z.ZodString, "many">>>;
5981
+ }, "strip", z.ZodTypeAny, {
5982
+ includeSeries?: string[] | undefined;
5983
+ subSeries?: Record<string, string[]> | undefined;
5984
+ }, {
5985
+ includeSeries?: string[] | undefined;
5986
+ subSeries?: Record<string, string[]> | undefined;
5987
+ }>;
4397
5988
  /**
4398
5989
  * Zod schema for project config.
4399
5990
  */
@@ -4496,14 +6087,25 @@ declare const ZProjectConfig: z.ZodObject<{
4496
6087
  * Zod schema for ConfigLoader options.
4497
6088
  */
4498
6089
  declare const ZConfigLoaderOptions: z.ZodObject<{}, "strip", z.ZodTypeAny, {}, {}>;
6090
+ type AindexDirPair = z.infer<typeof ZAindexDirPair>;
4499
6091
  type AindexConfig = z.infer<typeof ZAindexConfig>;
6092
+ type CommandSeriesPluginOverride = z.infer<typeof ZCommandSeriesPluginOverride>;
4500
6093
  type CommandSeriesOptions = z.infer<typeof ZCommandSeriesOptions>;
6094
+ type OutputScope = z.infer<typeof ZOutputScope>;
6095
+ type OutputScopeSelection = z.infer<typeof ZOutputScopeSelection>;
6096
+ type PluginOutputScopeTopics = z.infer<typeof ZPluginOutputScopeTopics>;
4501
6097
  type OutputScopeOptions = z.infer<typeof ZOutputScopeOptions>;
4502
6098
  type FrontMatterOptions = z.infer<typeof ZFrontMatterOptions>;
4503
6099
  type ProtectionMode = z.infer<typeof ZProtectionMode>;
6100
+ type ProtectionRuleMatcher = z.infer<typeof ZProtectionRuleMatcher>;
6101
+ type CleanupProtectionRule = z.infer<typeof ZCleanupProtectionRule>;
4504
6102
  type CleanupProtectionOptions = z.infer<typeof ZCleanupProtectionOptions>;
6103
+ type StringOrStringArray = z.infer<typeof ZStringOrStringArray>;
6104
+ type WindowsWsl2Options = z.infer<typeof ZWindowsWsl2Options>;
4505
6105
  type WindowsOptions = z.infer<typeof ZWindowsOptions>;
4506
6106
  type UserConfigFile = z.infer<typeof ZUserConfigFile>;
6107
+ type McpProjectConfig = z.infer<typeof ZMcpProjectConfig>;
6108
+ type TypeSeriesConfig = z.infer<typeof ZTypeSeriesConfig>;
4507
6109
  type ProjectConfig = z.infer<typeof ZProjectConfig>;
4508
6110
  type ConfigLoaderOptions = z.infer<typeof ZConfigLoaderOptions>;
4509
6111
  /**
@@ -4513,8 +6115,7 @@ interface ConfigLoadResult {
4513
6115
  readonly config: UserConfigFile;
4514
6116
  readonly source: string | null;
4515
6117
  readonly found: boolean;
4516
- }
4517
- //#endregion
6118
+ } //#endregion
4518
6119
  //#region src/plugins/plugin-core/enums.d.ts
4519
6120
  declare enum PluginKind {
4520
6121
  Output = "output"
@@ -4560,8 +6161,7 @@ declare enum GlobalConfigDirectoryType {
4560
6161
  External = "external"
4561
6162
  }
4562
6163
  type CodingAgentTools = string;
4563
- type ClaudeCodeCLISubAgentColors = string;
4564
- //#endregion
6164
+ type ClaudeCodeCLISubAgentColors = string; //#endregion
4565
6165
  //#region src/plugins/plugin-core/InputTypes.d.ts
4566
6166
  interface Project {
4567
6167
  readonly name?: string;
@@ -4623,6 +6223,11 @@ interface InputCollectedContext extends CollectedContextData {}
4623
6223
  * Produced once from input context and consumed by output plugins only.
4624
6224
  */
4625
6225
  interface OutputCollectedContext extends CollectedContextData {}
6226
+ /**
6227
+ * Convert input context to output context boundary object.
6228
+ * This keeps input and output stages decoupled while preserving data shape.
6229
+ */
6230
+ declare function toOutputCollectedContext(input: InputCollectedContext): OutputCollectedContext;
4626
6231
  /**
4627
6232
  * Rule prompt with glob patterns for file-scoped rule application
4628
6233
  */
@@ -4731,6 +6336,13 @@ interface SkillPrompt extends Prompt<PromptKind.Skill, SkillYAMLFrontMatter> {
4731
6336
  * - Security: security.mdx → SECURITY.md
4732
6337
  */
4733
6338
  type ReadmeFileKind = 'Readme' | 'CodeOfConduct' | 'Security';
6339
+ /**
6340
+ * Mapping from ReadmeFileKind to source/output file names
6341
+ */
6342
+ declare const README_FILE_KIND_MAP: Readonly<Record<ReadmeFileKind, {
6343
+ readonly src: string;
6344
+ readonly out: string;
6345
+ }>>;
4734
6346
  /**
4735
6347
  * README-family prompt data structure (README.md, CODE_OF_CONDUCT.md, SECURITY.md)
4736
6348
  */
@@ -4741,7 +6353,97 @@ interface ReadmePrompt extends Prompt<PromptKind.Readme> {
4741
6353
  readonly isRoot: boolean;
4742
6354
  readonly fileKind: ReadmeFileKind;
4743
6355
  }
4744
- //#endregion
6356
+ /**
6357
+ * Supported locale codes
6358
+ */
6359
+ type Locale = 'zh' | 'en';
6360
+ type LocalizedFileExtension = string | readonly string[];
6361
+ /**
6362
+ * Localized content wrapper for a single locale
6363
+ * Contains both compiled content and raw MDX source
6364
+ */
6365
+ interface LocalizedContent<T extends Prompt = Prompt> {
6366
+ /** Compiled/processed content */
6367
+ readonly content: string;
6368
+ /** Original MDX source (before compilation) */
6369
+ readonly rawMdx?: string;
6370
+ /** Extracted front matter */
6371
+ readonly frontMatter?: Record<string, unknown>;
6372
+ /** File last modified timestamp */
6373
+ readonly lastModified: Date;
6374
+ /** Full prompt object (optional, for extended access) */
6375
+ readonly prompt?: T;
6376
+ /** Absolute file path */
6377
+ readonly filePath: string;
6378
+ }
6379
+ /**
6380
+ * Source content container for all locales
6381
+ */
6382
+ interface LocalizedSource<T extends Prompt = Prompt> {
6383
+ /** Default source content (.src.mdx) */
6384
+ readonly zh?: LocalizedContent<T>;
6385
+ /** English content (.mdx) */
6386
+ readonly en?: LocalizedContent<T>;
6387
+ /** Default locale content (typically zh) */
6388
+ readonly default: LocalizedContent<T>;
6389
+ /** Which locale is the default */
6390
+ readonly defaultLocale: Locale;
6391
+ }
6392
+ /** Universal localized prompt wrapper */
6393
+ interface LocalizedPrompt<T extends Prompt = Prompt, K extends PromptKind = PromptKind> {
6394
+ readonly name: string;
6395
+ readonly type: K;
6396
+ readonly src?: LocalizedSource<T>;
6397
+ readonly dist?: LocalizedContent<T>;
6398
+ /** Metadata flags */
6399
+ readonly metadata: {
6400
+ readonly hasDist: boolean;
6401
+ readonly hasMultipleLocales: boolean;
6402
+ readonly isDirectoryStructure: boolean; /** Available child items (for directory structures) */
6403
+ readonly children?: string[];
6404
+ };
6405
+ /** File paths for all variants */
6406
+ readonly paths: {
6407
+ readonly zh?: string;
6408
+ readonly en?: string;
6409
+ readonly dist?: string;
6410
+ };
6411
+ }
6412
+ /**
6413
+ * Options for reading localized prompts from different structures
6414
+ */
6415
+ interface LocalizedReadOptions<T extends Prompt, K extends PromptKind> {
6416
+ /** File extensions for each locale */
6417
+ readonly localeExtensions: {
6418
+ readonly zh: LocalizedFileExtension;
6419
+ readonly en: LocalizedFileExtension;
6420
+ };
6421
+ /** Entry file name (without extension, e.g., 'skill' for skills) */
6422
+ readonly entryFileName?: string;
6423
+ /** Whether source contents should be hydrated and compiled in addition to dist */
6424
+ readonly hydrateSourceContents?: boolean;
6425
+ /** Create prompt from content */
6426
+ readonly createPrompt: (content: string, locale: Locale, name: string, metadata?: Record<string, unknown>) => T | Promise<T>;
6427
+ /** Prompt kind */
6428
+ readonly kind: K;
6429
+ /** Whether this is a directory-based structure */
6430
+ readonly isDirectoryStructure: boolean;
6431
+ }
6432
+ /**
6433
+ * Result of reading a directory structure (like skills)
6434
+ */
6435
+ interface DirectoryReadResult<T extends Prompt, K extends PromptKind> {
6436
+ readonly prompts: LocalizedPrompt<T, K>[];
6437
+ readonly errors: ReadError[];
6438
+ }
6439
+ /**
6440
+ * Error during reading
6441
+ */
6442
+ interface ReadError {
6443
+ readonly path: string;
6444
+ readonly error: Error;
6445
+ readonly phase: 'scan' | 'read' | 'compile';
6446
+ } //#endregion
4745
6447
  //#region src/plugins/plugin-core/OutputTypes.d.ts
4746
6448
  /**
4747
6449
  * Global configuration based on user_home root directory
@@ -4758,7 +6460,109 @@ interface GlobalConfigDirectoryInOther<K = GlobalConfigDirectoryType.External> {
4758
6460
  readonly directory: AbsolutePath;
4759
6461
  }
4760
6462
  type GlobalConfigDirectory<K = GlobalConfigDirectoryType> = GlobalConfigDirectoryInUserHome<K> | GlobalConfigDirectoryInOther<K>;
4761
- //#endregion
6463
+ interface Target {}
6464
+ /**
6465
+ * SubAgent frontmatter field mapping
6466
+ * Value can be a static string or a function that extracts value from SubAgentPrompt
6467
+ */
6468
+ type SubAgentFrontMatterField = string | ((subAgent: SubAgentPrompt) => unknown);
6469
+ /**
6470
+ * SubAgent output configuration for declarative configuration
6471
+ */
6472
+ interface SubAgentOutputConfig {
6473
+ /** Output subdirectory name (relative to IDE config directory) */
6474
+ readonly subDir?: string;
6475
+ /** File name format template */
6476
+ readonly fileNameTemplate?: 'prefix-agent' | 'prefix_agent' | 'agent' | string;
6477
+ /** Whether to include series prefix */
6478
+ readonly includeSeriesPrefix?: boolean;
6479
+ /** Series prefix separator */
6480
+ readonly seriesSeparator?: string;
6481
+ /** Frontmatter configuration */
6482
+ readonly frontMatter?: {
6483
+ /** Custom field mappings */readonly fields?: Record<string, SubAgentFrontMatterField>; /** Fields to exclude */
6484
+ readonly exclude?: string[];
6485
+ };
6486
+ /** Content transformation options */
6487
+ readonly contentTransform?: {
6488
+ /** Whether to transform MDX references to Markdown */readonly transformMdxRefs?: boolean; /** Custom content processor */
6489
+ readonly processor?: (content: string, subAgent: SubAgentPrompt) => string;
6490
+ };
6491
+ }
6492
+ /**
6493
+ * Generic registry data structure.
6494
+ * All registry files must have version and lastUpdated fields.
6495
+ */
6496
+ interface RegistryData {
6497
+ readonly version: string;
6498
+ readonly lastUpdated: string;
6499
+ }
6500
+ /**
6501
+ * Result of a registry operation.
6502
+ */
6503
+ interface RegistryOperationResult {
6504
+ readonly success: boolean;
6505
+ readonly entryName: string;
6506
+ readonly error?: Error;
6507
+ }
6508
+ /**
6509
+ * Source information for a Kiro power.
6510
+ * Indicates the origin type of a registered power.
6511
+ */
6512
+ interface KiroPowerSource {
6513
+ readonly type: 'local' | 'repo' | 'registry';
6514
+ readonly repoId?: string;
6515
+ readonly repoName?: string;
6516
+ readonly cloneId?: string;
6517
+ }
6518
+ /**
6519
+ * A single power entry in the Kiro registry.
6520
+ * Contains metadata about an installed power.
6521
+ */
6522
+ interface KiroPowerEntry {
6523
+ readonly name: string;
6524
+ readonly description: string;
6525
+ readonly mcpServers?: readonly string[];
6526
+ readonly author?: string;
6527
+ readonly keywords: readonly string[];
6528
+ readonly displayName?: string;
6529
+ readonly installed: boolean;
6530
+ readonly installedAt?: string;
6531
+ readonly installPath?: string;
6532
+ readonly source: KiroPowerSource;
6533
+ readonly sourcePath?: string;
6534
+ }
6535
+ /**
6536
+ * Repository source tracking in Kiro registry.
6537
+ * Tracks the source/origin of registered items.
6538
+ */
6539
+ interface KiroRepoSource {
6540
+ readonly name: string;
6541
+ readonly type: 'local' | 'git';
6542
+ readonly enabled: boolean;
6543
+ readonly addedAt?: string;
6544
+ readonly powerCount: number;
6545
+ readonly path?: string;
6546
+ readonly lastSync?: string;
6547
+ readonly powers?: readonly string[];
6548
+ }
6549
+ /**
6550
+ * Kiro recommended repo metadata (preserved during updates).
6551
+ */
6552
+ interface KiroRecommendedRepo {
6553
+ readonly url: string;
6554
+ readonly lastFetch: string;
6555
+ readonly powerCount: number;
6556
+ }
6557
+ /**
6558
+ * Complete Kiro powers registry structure.
6559
+ * Represents the full ~/.kiro/powers/registry.json file.
6560
+ */
6561
+ interface KiroPowersRegistry extends RegistryData {
6562
+ readonly powers: Record<string, KiroPowerEntry>;
6563
+ readonly repoSources: Record<string, KiroRepoSource>;
6564
+ readonly kiroRecommendedRepo?: KiroRecommendedRepo;
6565
+ } //#endregion
4762
6566
  //#region src/plugins/plugin-core/PromptTypes.d.ts
4763
6567
  /** Common directory representation */
4764
6568
  interface Path<K extends FilePathKind = FilePathKind> {
@@ -4847,25 +6651,164 @@ interface SkillYAMLFrontMatter extends SkillsYAMLFrontMatter {
4847
6651
  readonly scope?: RuleScope;
4848
6652
  }
4849
6653
  /**
4850
- * Rule YAML front matter with glob patterns and scope
6654
+ * Codex skill metadata field
6655
+ * Follows Agent Skills specification: https://agentskills.io/specification
6656
+ *
6657
+ * The metadata field is an arbitrary key-value mapping for additional metadata.
6658
+ * Common fields include displayName, version, author, keywords, etc.
6659
+ */
6660
+ interface CodexSkillMetadata {
6661
+ readonly 'short-description'?: string;
6662
+ readonly 'displayName'?: string;
6663
+ readonly 'version'?: string;
6664
+ readonly 'author'?: string;
6665
+ readonly 'keywords'?: readonly string[];
6666
+ readonly 'category'?: string;
6667
+ readonly 'repository'?: string;
6668
+ readonly [key: string]: unknown;
6669
+ }
6670
+ interface CodexSkillYAMLFrontMatter extends SkillsYAMLFrontMatter {
6671
+ readonly 'license'?: string;
6672
+ readonly 'compatibility'?: string;
6673
+ readonly 'metadata'?: CodexSkillMetadata;
6674
+ readonly 'allowed-tools'?: string;
6675
+ }
6676
+ /**
6677
+ * Kiro steering file front matter
6678
+ * @see https://kiro.dev/docs/steering
6679
+ */
6680
+ interface KiroSteeringYAMLFrontMatter extends YAMLFrontMatter {
6681
+ readonly inclusion?: 'always' | 'fileMatch' | 'manual';
6682
+ readonly fileMatchPattern?: string;
6683
+ }
6684
+ /**
6685
+ * Kiro Power POWER.md front matter
6686
+ * @see https://kiro.dev/docs/powers
6687
+ */
6688
+ interface KiroPowerYAMLFrontMatter extends SkillsYAMLFrontMatter {
6689
+ readonly displayName?: string;
6690
+ readonly keywords?: readonly string[];
6691
+ readonly author?: string;
6692
+ }
6693
+ /**
6694
+ * Rule YAML front matter with glob patterns and scope
6695
+ */
6696
+ interface RuleYAMLFrontMatter extends CommonYAMLFrontMatter {
6697
+ readonly globs: readonly string[];
6698
+ readonly scope?: RuleScope;
6699
+ readonly seriName?: SeriName;
6700
+ }
6701
+ /**
6702
+ * Global memory prompt
6703
+ * Single output target
6704
+ */
6705
+ interface GlobalMemoryPrompt extends Prompt<PromptKind.GlobalMemory> {
6706
+ readonly type: PromptKind.GlobalMemory;
6707
+ readonly parentDirectoryPath: GlobalConfigDirectory;
6708
+ } //#endregion
6709
+ //#region src/plugins/plugin-core/ExportMetadataTypes.d.ts
6710
+ /**
6711
+ * Base export metadata interface
6712
+ * All export metadata types should extend this
6713
+ */
6714
+ interface BaseExportMetadata {
6715
+ readonly namingCase?: NamingCaseKind;
6716
+ }
6717
+ interface SkillExportMetadata extends BaseExportMetadata {
6718
+ readonly name?: string;
6719
+ readonly description: string;
6720
+ readonly keywords?: readonly string[];
6721
+ readonly enabled?: boolean;
6722
+ readonly displayName?: string;
6723
+ readonly author?: string;
6724
+ readonly version?: string;
6725
+ readonly allowTools?: readonly (CodingAgentTools | string)[];
6726
+ readonly seriName?: SeriName;
6727
+ readonly scope?: RuleScope;
6728
+ }
6729
+ interface CommandExportMetadata extends BaseExportMetadata {
6730
+ readonly description?: string;
6731
+ readonly argumentHint?: string;
6732
+ readonly allowTools?: readonly (CodingAgentTools | string)[];
6733
+ readonly globalOnly?: boolean;
6734
+ readonly seriName?: SeriName;
6735
+ readonly scope?: RuleScope;
6736
+ }
6737
+ interface RuleExportMetadata extends BaseExportMetadata {
6738
+ readonly globs: readonly string[];
6739
+ readonly description: string;
6740
+ readonly scope?: RuleScope;
6741
+ readonly seriName?: SeriName;
6742
+ }
6743
+ interface SubAgentExportMetadata extends BaseExportMetadata {
6744
+ readonly description: string;
6745
+ readonly role?: string;
6746
+ readonly model?: string;
6747
+ readonly color?: string;
6748
+ readonly argumentHint?: string;
6749
+ readonly allowTools?: readonly (CodingAgentTools | string)[];
6750
+ readonly seriName?: SeriName;
6751
+ readonly scope?: RuleScope;
6752
+ }
6753
+ /**
6754
+ * Metadata validation result
6755
+ */
6756
+ interface MetadataValidationResult {
6757
+ readonly valid: boolean;
6758
+ readonly errors: readonly string[];
6759
+ readonly warnings: readonly string[];
6760
+ }
6761
+ /**
6762
+ * Options for metadata validation
6763
+ */
6764
+ interface ValidateMetadataOptions<T> {
6765
+ readonly requiredFields: readonly (keyof T)[];
6766
+ readonly optionalDefaults?: Partial<T>;
6767
+ readonly filePath?: string | undefined;
6768
+ }
6769
+ declare function validateExportMetadata<T>(metadata: Record<string, unknown>, options: ValidateMetadataOptions<T>): MetadataValidationResult;
6770
+ /**
6771
+ * Validate skill export metadata
6772
+ *
6773
+ * @param metadata - The metadata object to validate
6774
+ * @param filePath - Optional file path for error messages
6775
+ * @returns Validation result
6776
+ */
6777
+ declare function validateSkillMetadata(metadata: Record<string, unknown>, filePath?: string): MetadataValidationResult;
6778
+ /**
6779
+ * Validate fast command export metadata
6780
+ *
6781
+ * @param metadata - The metadata object to validate
6782
+ * @param filePath - Optional file path for error messages
6783
+ * @returns Validation result
6784
+ */
6785
+ declare function validateCommandMetadata(metadata: Record<string, unknown>, filePath?: string): MetadataValidationResult;
6786
+ /**
6787
+ * Validate sub-agent export metadata
6788
+ *
6789
+ * @param metadata - The metadata object to validate
6790
+ * @param filePath - Optional file path for error messages
6791
+ * @returns Validation result
4851
6792
  */
4852
- interface RuleYAMLFrontMatter extends CommonYAMLFrontMatter {
4853
- readonly globs: readonly string[];
4854
- readonly scope?: RuleScope;
4855
- readonly seriName?: SeriName;
4856
- }
6793
+ declare function validateSubAgentMetadata(metadata: Record<string, unknown>, filePath?: string): MetadataValidationResult;
4857
6794
  /**
4858
- * Global memory prompt
4859
- * Single output target
6795
+ * Validate rule export metadata
6796
+ *
6797
+ * @param metadata - The metadata object to validate
6798
+ * @param filePath - Optional file path for error messages
6799
+ * @returns Validation result
4860
6800
  */
4861
- interface GlobalMemoryPrompt extends Prompt<PromptKind.GlobalMemory> {
4862
- readonly type: PromptKind.GlobalMemory;
4863
- readonly parentDirectoryPath: GlobalConfigDirectory;
4864
- }
4865
- //#endregion
6801
+ declare function validateRuleMetadata(metadata: Record<string, unknown>, filePath?: string): MetadataValidationResult;
6802
+ /**
6803
+ * Apply default values to metadata
6804
+ *
6805
+ * @param metadata - The metadata object
6806
+ * @param defaults - Default values to apply
6807
+ * @returns Metadata with defaults applied
6808
+ */
6809
+ declare function applyMetadataDefaults<T>(metadata: Record<string, unknown>, defaults: Partial<T>): T; //#endregion
4866
6810
  //#region ../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/types/index.d.ts
4867
- declare type ErrnoException$1 = NodeJS.ErrnoException;
4868
- //#endregion
6811
+ declare type ErrnoException$1 = NodeJS.ErrnoException; //#endregion
4869
6812
  //#region ../node_modules/.pnpm/@nodelib+fs.stat@2.0.5/node_modules/@nodelib/fs.stat/out/adapters/fs.d.ts
4870
6813
  declare type StatAsynchronousMethod = (path: string, callback: (error: ErrnoException$1 | null, stats: fs.Stats) => void) => void;
4871
6814
  declare type StatSynchronousMethod = (path: string) => fs.Stats;
@@ -4874,8 +6817,7 @@ interface FileSystemAdapter$2 {
4874
6817
  stat: StatAsynchronousMethod;
4875
6818
  lstatSync: StatSynchronousMethod;
4876
6819
  statSync: StatSynchronousMethod;
4877
- }
4878
- //#endregion
6820
+ } //#endregion
4879
6821
  //#region ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/types/index.d.ts
4880
6822
  interface Entry$2 {
4881
6823
  dirent: Dirent;
@@ -4894,8 +6836,7 @@ interface Dirent {
4894
6836
  isSocket: () => boolean;
4895
6837
  isSymbolicLink: () => boolean;
4896
6838
  name: string;
4897
- }
4898
- //#endregion
6839
+ } //#endregion
4899
6840
  //#region ../node_modules/.pnpm/@nodelib+fs.scandir@2.1.5/node_modules/@nodelib/fs.scandir/out/adapters/fs.d.ts
4900
6841
  interface ReaddirAsynchronousMethod {
4901
6842
  (filepath: string, options: {
@@ -4912,16 +6853,13 @@ interface ReaddirSynchronousMethod {
4912
6853
  declare type FileSystemAdapter$1 = FileSystemAdapter$2 & {
4913
6854
  readdir: ReaddirAsynchronousMethod;
4914
6855
  readdirSync: ReaddirSynchronousMethod;
4915
- };
4916
- //#endregion
6856
+ }; //#endregion
4917
6857
  //#region ../node_modules/.pnpm/@nodelib+fs.walk@1.2.8/node_modules/@nodelib/fs.walk/out/types/index.d.ts
4918
- declare type Entry$1 = Entry$2;
4919
- //#endregion
6858
+ declare type Entry$1 = Entry$2; //#endregion
4920
6859
  //#region ../node_modules/.pnpm/fast-glob@3.3.3/node_modules/fast-glob/out/types/index.d.ts
4921
6860
  type Entry = Entry$1;
4922
6861
  type Pattern = string;
4923
- type FileSystemAdapter = FileSystemAdapter$1;
4924
- //#endregion
6862
+ type FileSystemAdapter = FileSystemAdapter$1; //#endregion
4925
6863
  //#region ../node_modules/.pnpm/fast-glob@3.3.3/node_modules/fast-glob/out/settings.d.ts
4926
6864
  type Options = {
4927
6865
  /**
@@ -5057,8 +6995,7 @@ type Options = {
5057
6995
  * @default true
5058
6996
  */
5059
6997
  unique?: boolean;
5060
- };
5061
- //#endregion
6998
+ }; //#endregion
5062
6999
  //#region ../node_modules/.pnpm/fast-glob@3.3.3/node_modules/fast-glob/out/managers/tasks.d.ts
5063
7000
  type Task$1 = {
5064
7001
  base: string;
@@ -5100,8 +7037,9 @@ declare namespace FastGlob {
5100
7037
  function escapePath(source: string): Pattern;
5101
7038
  function convertPathToPattern(source: string): Pattern;
5102
7039
  }
5103
- }
5104
- //#endregion
7040
+ } //#endregion
7041
+ //#region src/runtime-command.d.ts
7042
+ type RuntimeCommand = 'execute' | 'dry-run' | 'clean' | 'plugins'; //#endregion
5105
7043
  //#region src/plugins/plugin-core/plugin.d.ts
5106
7044
  type FastGlobType = typeof index_d_exports;
5107
7045
  /**
@@ -5128,13 +7066,21 @@ interface PluginContext {
5128
7066
  interface InputCapabilityContext extends PluginContext {
5129
7067
  readonly userConfigOptions: Required<PluginOptions>;
5130
7068
  readonly dependencyContext: Partial<InputCollectedContext>;
5131
- readonly runtimeCommand?: 'execute' | 'dry-run' | 'clean' | 'plugins';
7069
+ readonly runtimeCommand?: RuntimeCommand;
5132
7070
  readonly globalScope?: MdxGlobalScope;
5133
7071
  readonly scopeRegistry?: ScopeRegistryLike;
5134
7072
  }
5135
7073
  interface InputCapability extends DependencyNode {
5136
7074
  collect: (ctx: InputCapabilityContext) => Partial<InputCollectedContext> | Promise<Partial<InputCollectedContext>>;
5137
7075
  }
7076
+ /**
7077
+ * Capability that can enhance projects after all projects are collected.
7078
+ * This is useful for capabilities that need to add data to projects
7079
+ * collected by earlier capabilities.
7080
+ */
7081
+ interface ProjectEnhancerCapability extends InputCapability {
7082
+ enhanceProjects: (ctx: InputCapabilityContext, projects: readonly Project[]) => Project[];
7083
+ }
5138
7084
  interface OutputRuntimeTargets {
5139
7085
  readonly jetbrainsCodexDirs: readonly string[];
5140
7086
  }
@@ -5169,10 +7115,100 @@ interface WslMirrorFileDeclaration {
5169
7115
  /** Optional label for diagnostics/logging */
5170
7116
  readonly label?: string;
5171
7117
  }
7118
+ /**
7119
+ * Result of a single write operation
7120
+ */
7121
+ interface WriteResult {
7122
+ readonly path: string;
7123
+ readonly success: boolean;
7124
+ readonly skipped?: boolean;
7125
+ readonly error?: Error;
7126
+ }
7127
+ /**
7128
+ * Collected results from write operations
7129
+ */
7130
+ interface WriteResults {
7131
+ readonly files: readonly WriteResult[];
7132
+ readonly dirs: readonly WriteResult[];
7133
+ }
5172
7134
  /**
5173
7135
  * Awaitable type for sync/async flexibility
5174
7136
  */
5175
7137
  type Awaitable<T> = T | Promise<T>;
7138
+ /**
7139
+ * Result of executing an input effect.
7140
+ * Used for preprocessing/cleaning input sources before collection.
7141
+ */
7142
+ interface InputEffectResult {
7143
+ /** Whether the effect executed successfully */
7144
+ readonly success: boolean;
7145
+ /** Error details if the effect failed */
7146
+ readonly error?: Error;
7147
+ /** Description of what the effect did (for logging) */
7148
+ readonly description?: string;
7149
+ /** Files that were modified/created */
7150
+ readonly modifiedFiles?: readonly string[];
7151
+ /** Files that were deleted */
7152
+ readonly deletedFiles?: readonly string[];
7153
+ }
7154
+ /**
7155
+ * Context provided to input effect handlers.
7156
+ * Contains utilities and configuration for effect execution.
7157
+ */
7158
+ interface InputEffectContext {
7159
+ /** Logger instance */
7160
+ readonly logger: ILogger;
7161
+ /** File system module */
7162
+ readonly fs: typeof _$node_fs0;
7163
+ /** Path module */
7164
+ readonly path: typeof _$node_path0;
7165
+ /** Glob module for file matching */
7166
+ readonly glob: FastGlobType;
7167
+ /** Child process spawn function */
7168
+ readonly spawn: typeof _$node_child_process0.spawn;
7169
+ /** User configuration options */
7170
+ readonly userConfigOptions: Required<PluginOptions>;
7171
+ /** Resolved workspace directory */
7172
+ readonly workspaceDir: string;
7173
+ /** Resolved aindex directory */
7174
+ readonly aindexDir: string;
7175
+ /** Whether running in dry-run mode */
7176
+ readonly dryRun?: boolean;
7177
+ }
7178
+ /**
7179
+ * Handler function for input effects.
7180
+ * Receives the effect context and returns an effect result.
7181
+ */
7182
+ type InputEffectHandler = (ctx: InputEffectContext) => Awaitable<InputEffectResult>;
7183
+ /**
7184
+ * Registration entry for an input effect.
7185
+ */
7186
+ interface InputEffectRegistration {
7187
+ /** Descriptive name for logging */
7188
+ readonly name: string;
7189
+ /** The effect handler function */
7190
+ readonly handler: InputEffectHandler;
7191
+ /** Priority for execution order (lower = earlier, default: 0) */
7192
+ readonly priority?: number;
7193
+ }
7194
+ /**
7195
+ * Result of resolving base paths from plugin options.
7196
+ */
7197
+ interface ResolvedBasePaths {
7198
+ /** The resolved workspace directory path */
7199
+ readonly workspaceDir: string;
7200
+ /** The resolved aindex directory path */
7201
+ readonly aindexDir: string;
7202
+ }
7203
+ /**
7204
+ * Represents a registered scope entry from a plugin.
7205
+ */
7206
+ interface PluginScopeRegistration {
7207
+ /** The namespace name (e.g., 'myPlugin') */
7208
+ readonly namespace: string;
7209
+ /** Key-value pairs registered under this namespace */
7210
+ readonly values: Record<string, unknown>;
7211
+ }
5176
7212
  /**
5177
7213
  * Output plugin interface.
5178
7214
  * Declarative write model only:
@@ -5266,6 +7302,30 @@ interface OutputCleanupDeclarations {
5266
7302
  /** Glob ignore patterns when expanding delete/protect globs */
5267
7303
  readonly excludeScanGlobs?: readonly string[];
5268
7304
  }
7305
+ declare function validateOutputPluginCapabilities(plugin: OutputPlugin): void;
7306
+ declare function validateOutputScopeOverridesForPlugin(plugin: OutputPlugin, pluginOptions?: PluginOptions): void;
7307
+ declare function validateOutputScopeOverridesForPlugins(plugins: readonly OutputPlugin[], pluginOptions?: PluginOptions): void;
7308
+ declare function collectOutputDeclarations(plugins: readonly OutputPlugin[], ctx: OutputWriteContext): Promise<Map<OutputPlugin, readonly OutputFileDeclaration[]>>;
7309
+ /**
7310
+ * Execute declarative write operations for output plugins.
7311
+ * Core runtime owns file system writes; plugins only declare and convert content.
7312
+ */
7313
+ declare function executeDeclarativeWriteOutputs(plugins: readonly OutputPlugin[], ctx: OutputWriteContext, predeclaredOutputs?: ReadonlyMap<OutputPlugin, readonly OutputFileDeclaration[]>): Promise<Map<string, WriteResults>>;
7314
+ /**
7315
+ * Collected outputs from all plugins.
7316
+ * Used by the clean command to gather all artifacts for cleanup.
7317
+ */
7318
+ interface CollectedOutputs {
7319
+ readonly projectDirs: readonly string[];
7320
+ readonly projectFiles: readonly string[];
7321
+ readonly globalDirs: readonly string[];
7322
+ readonly globalFiles: readonly string[];
7323
+ }
7324
+ /**
7325
+ * Collect all outputs from all registered output plugins.
7326
+ * This is the main entry point for the clean command.
7327
+ */
7328
+ declare function collectAllPluginOutputs(plugins: readonly OutputPlugin[], ctx: OutputPluginContext, predeclaredOutputs?: ReadonlyMap<OutputPlugin, readonly OutputFileDeclaration[]>): Promise<CollectedOutputs>;
5269
7329
  /**
5270
7330
  * Configuration to be processed by plugin.config.ts
5271
7331
  * Interpreted by plugin system as collection context
@@ -5285,8 +7345,422 @@ interface PluginOptions {
5285
7345
  readonly windows?: WindowsOptions;
5286
7346
  plugins?: readonly (InputCapability | OutputPlugin)[];
5287
7347
  logLevel?: 'trace' | 'debug' | 'info' | 'warn' | 'error';
7348
+ } //#endregion
7349
+ //#region src/plugins/plugin-core/types.d.ts
7350
+ declare class MissingDependencyError extends Error {
7351
+ readonly nodeName: string;
7352
+ readonly missingDependency: string;
7353
+ constructor(nodeName: string, missingDependency: string);
7354
+ }
7355
+ declare class CircularDependencyError extends Error {
7356
+ readonly cyclePath: readonly string[];
7357
+ constructor(cyclePath: readonly string[]);
7358
+ } //#endregion
7359
+ //#region src/plugins/plugin-core/GlobalScopeCollector.d.ts
7360
+ /**
7361
+ * Tool preset names supported by GlobalScopeCollector
7362
+ */
7363
+ type ToolPresetName = keyof typeof ToolPresets$1;
7364
+ /**
7365
+ * Options for GlobalScopeCollector
7366
+ */
7367
+ interface GlobalScopeCollectorOptions {
7368
+ /** User configuration file */
7369
+ readonly userConfig?: UserConfigFile | undefined;
7370
+ /** Tool preset to use (default: 'default') */
7371
+ readonly toolPreset?: ToolPresetName | undefined;
7372
+ }
7373
+ /**
7374
+ * Collects global scope variables from system, environment, and user configuration.
7375
+ * The collected scope is available in MDX templates via expressions like {os.platform}, {env.NODE_ENV}, etc.
7376
+ */
7377
+ declare class GlobalScopeCollector {
7378
+ private readonly userConfig;
7379
+ private readonly toolPreset;
7380
+ constructor(options?: GlobalScopeCollectorOptions);
7381
+ collect(): MdxGlobalScope;
7382
+ private collectOsInfo;
7383
+ private detectOsKind;
7384
+ private detectShellKind;
7385
+ private collectEnvContext;
7386
+ private collectProfile;
7387
+ private collectToolReferences;
7388
+ private createMdComponent;
7389
+ }
7390
+ /**
7391
+ * Represents a single scope registration
7392
+ */
7393
+ interface ScopeRegistration {
7394
+ readonly namespace: string;
7395
+ readonly values: Record<string, unknown>;
7396
+ readonly priority: number;
7397
+ }
7398
+ /**
7399
+ * Priority levels for scope sources.
7400
+ * Higher values take precedence over lower values during merge.
7401
+ */
7402
+ declare enum ScopePriority {
7403
+ /** System default values (os, default tool) */
7404
+ SystemDefault = 0,
7405
+ /** Values from configuration file (profile, custom tool) */
7406
+ UserConfig = 10,
7407
+ /** Values registered by plugins */
7408
+ PluginRegistered = 20,
7409
+ /** Values passed at MDX compile time */
7410
+ CompileTime = 30
7411
+ }
7412
+ /**
7413
+ * Registry for managing and merging scopes from multiple sources.
7414
+ * Handles priority-based resolution when the same key exists in multiple sources.
7415
+ */
7416
+ declare class ScopeRegistry {
7417
+ private readonly registrations;
7418
+ private globalScope;
7419
+ setGlobalScope(scope: MdxGlobalScope): void;
7420
+ getGlobalScope(): MdxGlobalScope | null;
7421
+ register(namespace: string, values: Record<string, unknown>, priority?: ScopePriority): void;
7422
+ getRegistrations(): readonly ScopeRegistration[];
7423
+ merge(compileTimeScope?: EvaluationScope): EvaluationScope;
7424
+ private deepMerge;
7425
+ resolve(expression: string): string;
7426
+ clear(): void;
7427
+ } //#endregion
7428
+ //#region src/plugins/plugin-core/RegistryWriter.d.ts
7429
+ /**
7430
+ * Abstract base class for registry configuration writers.
7431
+ * Provides common functionality for reading, writing, and merging JSON registry files.
7432
+ *
7433
+ * @template TEntry - The type of entries stored in the registry
7434
+ * @template TRegistry - The full registry data structure type
7435
+ *
7436
+ * @see Requirements 1.1, 1.2, 1.3, 1.7
7437
+ */
7438
+ declare abstract class RegistryWriter<TEntry, TRegistry extends RegistryData = RegistryData> {
7439
+ protected readonly registryPath: string;
7440
+ protected readonly log: ILogger;
7441
+ protected constructor(registryPath: string, logger?: ILogger);
7442
+ protected resolvePath(p: string): string;
7443
+ protected getRegistryDir(): string;
7444
+ protected ensureRegistryDir(): void;
7445
+ read(): TRegistry;
7446
+ protected write(data: TRegistry, dryRun?: boolean): boolean;
7447
+ register(entries: readonly TEntry[], dryRun?: boolean): readonly RegistryOperationResult[];
7448
+ protected generateEntryId(prefix?: string): string;
7449
+ protected abstract getEntryName(entry: TEntry): string;
7450
+ protected abstract merge(existing: TRegistry, entries: readonly TEntry[]): TRegistry;
7451
+ protected abstract createInitialRegistry(): TRegistry;
7452
+ } //#endregion
7453
+ //#region src/plugins/plugin-core/AbstractPlugin.d.ts
7454
+ declare abstract class AbstractPlugin<T extends PluginKind = PluginKind> implements Plugin<T> {
7455
+ readonly type: T;
7456
+ readonly name: string;
7457
+ private _log?;
7458
+ get log(): ILogger;
7459
+ readonly dependsOn?: readonly string[];
7460
+ protected constructor(name: string, type: T, dependsOn?: readonly string[]);
7461
+ } //#endregion
7462
+ //#region src/plugins/plugin-core/AbstractOutputPlugin.d.ts
7463
+ interface ScopedSourceConfig {
7464
+ /** Allowed source scopes for the topic */
7465
+ readonly sourceScopes?: readonly OutputDeclarationScope[];
7466
+ /** Optional source-scope remap before output selection */
7467
+ readonly scopeRemap?: Partial<Record<OutputDeclarationScope, OutputDeclarationScope>>;
7468
+ }
7469
+ /**
7470
+ * Options for building skill front matter
7471
+ */
7472
+ interface SkillFrontMatterOptions {
7473
+ readonly includeTools?: boolean;
7474
+ readonly toolFormat?: 'array' | 'string';
7475
+ readonly additionalFields?: Record<string, unknown>;
7476
+ }
7477
+ /**
7478
+ * Options for building rule content
7479
+ */
7480
+ interface RuleContentOptions {
7481
+ readonly fileExtension: '.mdc' | '.md';
7482
+ readonly alwaysApply: boolean;
7483
+ readonly globJoinPattern: ', ' | '|' | string;
7484
+ readonly frontMatterFormatter?: (globs: string) => unknown;
7485
+ readonly additionalFrontMatter?: Record<string, unknown>;
7486
+ }
7487
+ /**
7488
+ * Rule output configuration (declarative)
7489
+ */
7490
+ interface RuleOutputConfig {
7491
+ /** Rules subdirectory, default 'rules' */
7492
+ readonly subDir?: string;
7493
+ /** Link symbol between series and ruleName, default '-' */
7494
+ readonly linkSymbol?: string;
7495
+ /** Rule file prefix, default 'rule' */
7496
+ readonly prefix?: string;
7497
+ /** Rule file extension, default '.md' */
7498
+ readonly ext?: string;
7499
+ /** Custom frontmatter transformer */
7500
+ readonly transformFrontMatter?: (rule: RulePrompt) => Record<string, unknown>;
7501
+ /** Allowed rule source scopes, default ['project', 'global'] */
7502
+ readonly sourceScopes?: readonly OutputDeclarationScope[];
7503
+ }
7504
+ /**
7505
+ * Command output configuration (declarative)
7506
+ */
7507
+ interface CommandOutputConfig {
7508
+ /** Commands subdirectory, default 'commands' */
7509
+ readonly subDir?: string;
7510
+ /** Custom command frontmatter transformer */
7511
+ readonly transformFrontMatter?: (cmd: CommandPrompt, context: {
7512
+ readonly sourceFrontMatter?: Record<string, unknown>;
7513
+ readonly isRecompiled: boolean;
7514
+ }) => Record<string, unknown>;
7515
+ /** Allowed command source scopes, default ['project', 'global'] */
7516
+ readonly sourceScopes?: readonly OutputDeclarationScope[];
7517
+ /** Optional source-scope remap before output selection */
7518
+ readonly scopeRemap?: Partial<Record<OutputDeclarationScope, OutputDeclarationScope>>;
7519
+ }
7520
+ type SubAgentArtifactFormat = 'markdown' | 'toml';
7521
+ type SubAgentFileNameSource = 'derivedPath' | 'frontMatterName';
7522
+ /**
7523
+ * SubAgent output configuration (declarative)
7524
+ */
7525
+ interface SubAgentsOutputConfig extends ScopedSourceConfig {
7526
+ /** SubAgents subdirectory, default 'agents' */
7527
+ readonly subDir?: string;
7528
+ /** Whether to include input-derived prefix in output filename, default true */
7529
+ readonly includePrefix?: boolean;
7530
+ /** Separator between prefix and agent name, default '-' */
7531
+ readonly linkSymbol?: string;
7532
+ /** SubAgent file extension, default '.md' */
7533
+ readonly ext?: string;
7534
+ /** Output artifact format, default 'markdown' */
7535
+ readonly artifactFormat?: SubAgentArtifactFormat;
7536
+ /** Field name that receives prompt body when artifactFormat='toml' */
7537
+ readonly bodyFieldName?: string;
7538
+ /** Source for output file name, default 'derivedPath' */
7539
+ readonly fileNameSource?: SubAgentFileNameSource;
7540
+ /** Front matter field remap before artifact emission */
7541
+ readonly fieldNameMap?: Readonly<Record<string, string>>;
7542
+ /** Front matter fields to exclude from artifact emission */
7543
+ readonly excludedFrontMatterFields?: readonly string[];
7544
+ /** Additional fields injected into emitted artifact */
7545
+ readonly extraFields?: Readonly<Record<string, unknown>>;
7546
+ /** Preferred root-level field order for emitted artifact */
7547
+ readonly fieldOrder?: readonly string[];
7548
+ /** Optional frontmatter transformer */
7549
+ readonly transformFrontMatter?: (subAgent: SubAgentPrompt, context: {
7550
+ readonly sourceFrontMatter?: Record<string, unknown>;
7551
+ }) => Record<string, unknown>;
7552
+ }
7553
+ /**
7554
+ * Skills output configuration (declarative)
7555
+ */
7556
+ interface SkillsOutputConfig extends ScopedSourceConfig {
7557
+ /** Skills subdirectory, default 'skills' */
7558
+ readonly subDir?: string;
7559
+ }
7560
+ /**
7561
+ * Options for transforming command names in output filenames.
7562
+ * Used by transformCommandName method to control prefix handling.
7563
+ */
7564
+ interface CommandNameTransformOptions {
7565
+ readonly includeSeriesPrefix?: boolean;
7566
+ readonly seriesSeparator?: string;
7567
+ }
7568
+ /**
7569
+ * Options for transforming subagent names in output filenames.
7570
+ */
7571
+ interface SubAgentNameTransformOptions {
7572
+ readonly includePrefix?: boolean;
7573
+ readonly linkSymbol?: string;
7574
+ readonly ext?: string;
7575
+ }
7576
+ /**
7577
+ * Cleanup path entries for one scope.
7578
+ * Relative paths are resolved by scope base:
7579
+ * - project: project root
7580
+ * - global: user home
7581
+ * - xdgConfig: XDG config home (defaults to ~/.config)
7582
+ */
7583
+ interface CleanupScopePathsConfig {
7584
+ readonly files?: readonly string[];
7585
+ readonly dirs?: readonly string[];
7586
+ readonly globs?: readonly string[];
7587
+ }
7588
+ /**
7589
+ * Declarative cleanup configuration for output plugins.
7590
+ */
7591
+ interface OutputCleanupConfig {
7592
+ readonly delete?: Partial<Record<OutputCleanupScope, CleanupScopePathsConfig>>;
7593
+ readonly protect?: Partial<Record<OutputCleanupScope, CleanupScopePathsConfig>>;
7594
+ readonly excludeScanGlobs?: readonly string[];
5288
7595
  }
5289
- //#endregion
7596
+ /**
7597
+ * Options for configuring AbstractOutputPlugin subclasses.
7598
+ */
7599
+ interface AbstractOutputPluginOptions {
7600
+ globalConfigDir?: string;
7601
+ outputFileName?: string;
7602
+ treatWorkspaceRootProjectAsProject?: boolean;
7603
+ dependsOn?: readonly string[];
7604
+ indexignore?: string;
7605
+ /** Command output configuration (declarative) */
7606
+ commands?: CommandOutputConfig;
7607
+ /** SubAgent output configuration (declarative) */
7608
+ subagents?: SubAgentsOutputConfig;
7609
+ /** Skills output configuration (declarative) */
7610
+ skills?: SkillsOutputConfig;
7611
+ toolPreset?: ToolPresetName;
7612
+ /** Rule output configuration (declarative) */
7613
+ rules?: RuleOutputConfig;
7614
+ /** Cleanup configuration (declarative) */
7615
+ cleanup?: OutputCleanupConfig;
7616
+ /** Host-home files that should be mirrored into configured WSL instances */
7617
+ wslMirrors?: readonly string[];
7618
+ /** Explicit output capability matrix for scope override validation */
7619
+ capabilities?: OutputPluginCapabilities;
7620
+ /** Whether this plugin honors the shared blank-line-after-front-matter option */
7621
+ supportsBlankLineAfterFrontMatter?: boolean;
7622
+ }
7623
+ /**
7624
+ * Options for combining global content with project content.
7625
+ */
7626
+ interface CombineOptions {
7627
+ separator?: string;
7628
+ skipIfEmpty?: boolean;
7629
+ position?: 'before' | 'after';
7630
+ }
7631
+ declare abstract class AbstractOutputPlugin extends AbstractPlugin implements OutputPlugin {
7632
+ readonly declarativeOutput: true;
7633
+ readonly outputCapabilities: OutputPluginCapabilities;
7634
+ protected readonly globalConfigDir: string;
7635
+ protected readonly outputFileName: string;
7636
+ protected readonly treatWorkspaceRootProjectAsProject: boolean;
7637
+ protected readonly indexignore: string | undefined;
7638
+ protected readonly commandsConfig: {
7639
+ readonly subDir: string;
7640
+ readonly transformFrontMatter?: (cmd: CommandPrompt, context: {
7641
+ readonly sourceFrontMatter?: Record<string, unknown>;
7642
+ readonly isRecompiled: boolean;
7643
+ }) => Record<string, unknown>;
7644
+ readonly sourceScopes: readonly OutputDeclarationScope[];
7645
+ readonly scopeRemap?: Partial<Record<OutputDeclarationScope, OutputDeclarationScope>>;
7646
+ };
7647
+ protected readonly subAgentsConfig: {
7648
+ readonly subDir: string;
7649
+ readonly sourceScopes: readonly OutputDeclarationScope[];
7650
+ readonly includePrefix: boolean;
7651
+ readonly linkSymbol: string;
7652
+ readonly ext: string;
7653
+ readonly artifactFormat: SubAgentArtifactFormat;
7654
+ readonly bodyFieldName?: string;
7655
+ readonly fileNameSource: SubAgentFileNameSource;
7656
+ readonly fieldNameMap?: Readonly<Record<string, string>>;
7657
+ readonly excludedFrontMatterFields?: readonly string[];
7658
+ readonly extraFields?: Readonly<Record<string, unknown>>;
7659
+ readonly fieldOrder?: readonly string[];
7660
+ readonly scopeRemap?: Partial<Record<OutputDeclarationScope, OutputDeclarationScope>>;
7661
+ readonly transformFrontMatter?: (subAgent: SubAgentPrompt, context: {
7662
+ readonly sourceFrontMatter?: Record<string, unknown>;
7663
+ }) => Record<string, unknown>;
7664
+ };
7665
+ protected readonly commandOutputEnabled: boolean;
7666
+ protected readonly subAgentOutputEnabled: boolean;
7667
+ protected readonly skillsConfig: {
7668
+ readonly subDir: string;
7669
+ readonly sourceScopes: readonly OutputDeclarationScope[];
7670
+ readonly scopeRemap?: Partial<Record<OutputDeclarationScope, OutputDeclarationScope>>;
7671
+ };
7672
+ protected readonly skillOutputEnabled: boolean;
7673
+ protected readonly toolPreset: ToolPresetName | undefined;
7674
+ /** Rule output configuration */
7675
+ protected readonly rulesConfig: RuleOutputConfig;
7676
+ protected readonly ruleOutputEnabled: boolean;
7677
+ protected readonly cleanupConfig: OutputCleanupConfig;
7678
+ protected readonly wslMirrorPaths: readonly string[];
7679
+ protected readonly supportsBlankLineAfterFrontMatter: boolean;
7680
+ private readonly registryWriterCache;
7681
+ private warnedDeprecatedSubAgentFileNameSource;
7682
+ protected constructor(name: string, options?: AbstractOutputPluginOptions);
7683
+ private createCommandsConfig;
7684
+ private createSubAgentsConfig;
7685
+ private createSkillsConfig;
7686
+ private buildInferredCapabilities;
7687
+ private normalizeCapabilities;
7688
+ private normalizeCapability;
7689
+ protected resolvePromptSourceProjectConfig(ctx: OutputPluginContext | OutputWriteContext): ProjectConfig | undefined;
7690
+ protected getConcreteProjects(ctx: OutputPluginContext | OutputWriteContext): Project[];
7691
+ protected isProjectPromptOutputTarget(project: Project): boolean;
7692
+ protected getProjectOutputProjects(ctx: OutputPluginContext | OutputWriteContext): Project[];
7693
+ protected getProjectPromptOutputProjects(ctx: OutputPluginContext | OutputWriteContext): Project[];
7694
+ protected getWorkspaceRootProject(ctx: OutputPluginContext | OutputWriteContext): Project | undefined;
7695
+ protected resolveProjectRootDir(ctx: OutputPluginContext | OutputWriteContext, project: Project): string | undefined;
7696
+ protected resolveProjectConfigDir(ctx: OutputPluginContext | OutputWriteContext, project: Project): string | undefined;
7697
+ protected isRelativePath(p: Path): boolean;
7698
+ protected toRelativePath(p: Path): string;
7699
+ protected resolveFullPath(targetPath: Path, outputFileName?: string): string;
7700
+ protected resolveDirectoryPath(targetPath: Path): string;
7701
+ protected getWorkspaceConfigDir(ctx: OutputWriteContext): string;
7702
+ protected createRelativePath(pathStr: string, basePath: string, dirNameFn: () => string): string;
7703
+ protected createFileRelativePath(dir: string, fileName: string): string;
7704
+ protected getGlobalConfigDir(): string;
7705
+ protected getXdgConfigHomeDir(): string;
7706
+ protected getHomeDir(): string;
7707
+ protected joinPath(...segments: string[]): string;
7708
+ protected resolvePath(...segments: string[]): string;
7709
+ protected dirname(p: string): string;
7710
+ protected buildProjectPromptCleanupTargets(ctx: OutputCleanContext, fileName?: string): readonly OutputCleanupPathDeclaration[];
7711
+ protected basename(p: string, ext?: string): string;
7712
+ protected getIgnoreOutputPath(): string | undefined;
7713
+ private resolveCleanupScopeBasePaths;
7714
+ private resolveCleanupDeclaredPath;
7715
+ private normalizeGlobPattern;
7716
+ private buildCleanupTargetsFromScopeConfig;
7717
+ protected resolveFrontMatterBlankLineAfter(ctx?: OutputPluginContext): boolean;
7718
+ protected buildMarkdownContent(content: string, frontMatter?: Record<string, unknown>, ctx?: OutputPluginContext): string;
7719
+ protected buildMarkdownContentWithRaw(content: string, frontMatter?: Record<string, unknown>, rawFrontMatter?: string, ctx?: OutputPluginContext): string;
7720
+ protected buildTomlContent(options: BuildPromptTomlArtifactOptions): string;
7721
+ protected extractGlobalMemoryContent(ctx: OutputWriteContext): string | undefined;
7722
+ protected combineGlobalWithContent(globalContent: string | undefined, projectContent: string, options?: CombineOptions): string;
7723
+ protected getSkillName(skill: SkillPrompt): string;
7724
+ protected getSubAgentCanonicalName(subAgent: SubAgentPrompt): string;
7725
+ protected transformCommandName(cmd: CommandPrompt, options?: CommandNameTransformOptions): string;
7726
+ protected transformSubAgentName(subAgent: SubAgentPrompt, options?: SubAgentNameTransformOptions): string;
7727
+ protected normalizeOutputFileStem(value: string): string;
7728
+ private warnDeprecatedSubAgentFileNameSource;
7729
+ protected appendSubAgentDeclarations(declarations: OutputFileDeclaration[], basePath: string, scope: OutputDeclarationScope, scopedSubAgents: readonly SubAgentPrompt[]): void;
7730
+ protected appendCommandDeclarations(declarations: OutputFileDeclaration[], basePath: string, scope: OutputDeclarationScope, commands: readonly CommandPrompt[], transformOptions: CommandNameTransformOptions): void;
7731
+ protected appendSkillDeclarations(declarations: OutputFileDeclaration[], basePath: string, scope: OutputDeclarationScope, scopedSkills: readonly SkillPrompt[]): void;
7732
+ protected appendRuleDeclarations(declarations: OutputFileDeclaration[], basePath: string, scope: OutputDeclarationScope, rules: readonly RulePrompt[]): void;
7733
+ protected buildSubAgentTomlContent(agent: SubAgentPrompt, frontMatter: Record<string, unknown> | undefined): string;
7734
+ protected getCommandSeriesOptions(ctx: OutputWriteContext): CommandSeriesPluginOverride;
7735
+ protected getTransformOptionsFromContext(ctx: OutputWriteContext, additionalOptions?: CommandNameTransformOptions): CommandNameTransformOptions;
7736
+ protected shouldSkipDueToPlugin(ctx: OutputWriteContext, precedingPluginName: string): boolean;
7737
+ protected getRegistryWriter<TEntry, TRegistry extends RegistryData, T extends RegistryWriter<TEntry, TRegistry>>(WriterClass: new (logger: ILogger) => T): T;
7738
+ protected registerInRegistry<TEntry, TRegistry extends RegistryData>(writer: RegistryWriter<TEntry, TRegistry>, entries: readonly TEntry[], ctx: OutputWriteContext): Promise<readonly RegistryOperationResult[]>;
7739
+ protected normalizeRuleScope(rule: RulePrompt): RuleScope;
7740
+ protected normalizeSourceScope(scope: RuleScope | undefined): OutputDeclarationScope;
7741
+ protected remapDeclarationScope(scope: OutputDeclarationScope, remap?: Partial<Record<OutputDeclarationScope, OutputDeclarationScope>>): OutputDeclarationScope;
7742
+ protected resolveCommandSourceScope(cmd: CommandPrompt): OutputDeclarationScope;
7743
+ protected resolveSubAgentSourceScope(subAgent: SubAgentPrompt): OutputDeclarationScope;
7744
+ protected resolveSkillSourceScope(skill: SkillPrompt): OutputDeclarationScope;
7745
+ protected selectSingleScopeItems<T>(items: readonly T[], sourceScopes: readonly OutputDeclarationScope[], resolveScope: (item: T) => OutputDeclarationScope, requestedScopes?: OutputScopeSelection): {
7746
+ readonly selectedScope?: OutputDeclarationScope;
7747
+ readonly items: readonly T[];
7748
+ };
7749
+ protected selectRuleScopes(ctx: OutputWriteContext, rules: readonly RulePrompt[]): readonly OutputDeclarationScope[];
7750
+ protected selectPromptScopes(ctx: OutputWriteContext, supportedScopes?: readonly OutputDeclarationScope[], defaultScopes?: readonly OutputDeclarationScope[]): readonly OutputDeclarationScope[];
7751
+ protected getTopicScopeOverride(ctx: OutputPluginContext | OutputWriteContext, topic: OutputScopeTopic): OutputScopeSelection | undefined;
7752
+ protected buildSkillFrontMatter(skill: SkillPrompt, options?: SkillFrontMatterOptions): Record<string, unknown>;
7753
+ protected buildRuleContent(rule: RulePrompt, ctx?: OutputPluginContext): string;
7754
+ protected buildRuleFileName(rule: RulePrompt): string;
7755
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
7756
+ declareCleanupPaths(ctx: OutputCleanContext): Promise<OutputCleanupDeclarations>;
7757
+ declareWslMirrorFiles(ctx: OutputWriteContext): Promise<readonly WslMirrorFileDeclaration[]>;
7758
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string | Buffer>;
7759
+ protected buildDefaultOutputDeclarations(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
7760
+ protected buildCommandContent(cmd: CommandPrompt, ctx?: OutputPluginContext): Promise<string>;
7761
+ protected buildSubAgentContent(agent: SubAgentPrompt, ctx?: OutputPluginContext): string;
7762
+ protected buildSkillMainContent(skill: SkillPrompt, ctx?: OutputPluginContext): string;
7763
+ } //#endregion
5290
7764
  //#region src/plugins/plugin-core/constants.d.ts
5291
7765
  declare const PathPlaceholders: {
5292
7766
  readonly USER_HOME: "~";
@@ -5294,7 +7768,276 @@ declare const PathPlaceholders: {
5294
7768
  };
5295
7769
  type DefaultUserConfig = Readonly<Required<Omit<UserConfigFile, never>>>;
5296
7770
  declare const DEFAULT_USER_CONFIG: DefaultUserConfig;
5297
- //#endregion
7771
+ declare const PLUGIN_NAMES: {
7772
+ readonly AgentsOutput: "AgentsOutputPlugin";
7773
+ readonly GeminiCLIOutput: "GeminiCLIOutputPlugin";
7774
+ readonly CursorOutput: "CursorOutputPlugin";
7775
+ readonly WindsurfOutput: "WindsurfOutputPlugin";
7776
+ readonly ClaudeCodeCLIOutput: "ClaudeCodeCLIOutputPlugin";
7777
+ readonly KiroIDEOutput: "KiroCLIOutputPlugin";
7778
+ readonly OpencodeCLIOutput: "OpencodeCLIOutputPlugin";
7779
+ readonly OpenAICodexCLIOutput: "CodexCLIOutputPlugin";
7780
+ readonly DroidCLIOutput: "DroidCLIOutputPlugin";
7781
+ readonly WarpIDEOutput: "WarpIDEOutputPlugin";
7782
+ readonly TraeIDEOutput: "TraeIDEOutputPlugin";
7783
+ readonly TraeCNIDEOutput: "TraeCNIDEOutputPlugin";
7784
+ readonly QoderIDEOutput: "QoderIDEPluginOutputPlugin";
7785
+ readonly JetBrainsCodeStyleOutput: "JetBrainsIDECodeStyleConfigOutputPlugin";
7786
+ readonly JetBrainsAICodexOutput: "JetBrainsAIAssistantCodexOutputPlugin";
7787
+ readonly AgentSkillsCompactOutput: "GenericSkillsOutputPlugin";
7788
+ readonly GitExcludeOutput: "GitExcludeOutputPlugin";
7789
+ readonly ReadmeOutput: "ReadmeMdConfigFileOutputPlugin";
7790
+ readonly VSCodeOutput: "VisualStudioCodeIDEConfigOutputPlugin";
7791
+ readonly ZedOutput: "ZedIDEConfigOutputPlugin";
7792
+ readonly EditorConfigOutput: "EditorConfigOutputPlugin";
7793
+ readonly AntigravityOutput: "AntigravityOutputPlugin";
7794
+ };
7795
+ type PluginName = (typeof PLUGIN_NAMES)[keyof typeof PLUGIN_NAMES];
7796
+ declare const WORKSPACE_ROOT_PROJECT_NAME = "__workspace__";
7797
+ /**
7798
+ * Constants for output plugins.
7799
+ */
7800
+ declare const OutputFileNames: {
7801
+ readonly SKILL: "SKILL.md";
7802
+ readonly CURSOR_GLOBAL_RULE: "global.mdc";
7803
+ readonly CURSOR_PROJECT_RULE: "always.md";
7804
+ readonly MCP_CONFIG: "mcp.json";
7805
+ readonly CLAUDE_MEMORY: "CLAUDE.md";
7806
+ readonly WINDSURF_GLOBAL_RULE: "global_rules.md";
7807
+ };
7808
+ declare const OutputPrefixes: {
7809
+ readonly RULE: "rule-";
7810
+ readonly CHILD_RULE: "glob-";
7811
+ };
7812
+ declare const OutputSubdirectories: {
7813
+ readonly RULES: "rules";
7814
+ readonly COMMANDS: "commands";
7815
+ readonly SKILLS: "skills";
7816
+ readonly AGENTS: "agents";
7817
+ readonly CURSOR_SKILLS: "skills-cursor";
7818
+ };
7819
+ declare const FrontMatterFields: {
7820
+ readonly ALWAYS_APPLY: "alwaysApply";
7821
+ readonly GLOBS: "globs";
7822
+ readonly DESCRIPTION: "description";
7823
+ readonly NAME: "name";
7824
+ readonly TRIGGER: "trigger";
7825
+ };
7826
+ declare const FileExtensions: {
7827
+ readonly MD: ".md";
7828
+ readonly MDC: ".mdc";
7829
+ readonly MDX: ".mdx";
7830
+ readonly JSON: ".json";
7831
+ };
7832
+ declare const SourcePromptExtensions: {
7833
+ readonly PRIMARY: ".src.mdx";
7834
+ };
7835
+ declare const SourcePromptFileExtensions: readonly [".src.mdx"];
7836
+ declare const SourceLocaleExtensions: {
7837
+ readonly zh: readonly [".src.mdx"];
7838
+ readonly en: ".mdx";
7839
+ };
7840
+ declare function hasSourcePromptExtension(fileName: string): boolean;
7841
+ declare const GlobalConfigDirs: {
7842
+ readonly CURSOR: ".cursor";
7843
+ readonly CLAUDE: ".claude";
7844
+ readonly WINDSURF: ".codeium/windsurf";
7845
+ readonly WINDSURF_RULES: ".windsurf";
7846
+ };
7847
+ declare const IgnoreFiles: {
7848
+ readonly CURSOR: ".cursorignore";
7849
+ readonly WINDSURF: ".codeiumignore";
7850
+ };
7851
+ declare const PreservedSkills: {
7852
+ readonly CURSOR: Set<string>;
7853
+ };
7854
+ declare const ToolPresets: {
7855
+ readonly CLAUDE_CODE: "claudeCode";
7856
+ }; //#endregion
7857
+ //#region src/plugins/plugin-core/filters.d.ts
7858
+ /**
7859
+ * Interface for items that can be filtered by series name
7860
+ */
7861
+ interface SeriesFilterable {
7862
+ readonly seriName?: SeriName;
7863
+ }
7864
+ /**
7865
+ * Configuration path types for project config lookup
7866
+ */
7867
+ type FilterConfigPath = 'commands' | 'skills' | 'subAgents' | 'rules';
7868
+ declare function filterByProjectConfig<T extends SeriesFilterable>(items: readonly T[], projectConfig: ProjectConfig | undefined, configPath: FilterConfigPath): readonly T[];
7869
+ declare function applySubSeriesGlobPrefix(rules: readonly RulePrompt[], projectConfig: ProjectConfig | undefined): readonly RulePrompt[];
7870
+ /**
7871
+ * Resolves the actual `.git/info` directory for a given project path.
7872
+ * Handles both regular git repos (`.git` is a directory) and submodules/worktrees (`.git` is a file with `gitdir:` pointer).
7873
+ * Returns `null` if no valid git info directory can be resolved.
7874
+ */
7875
+ declare function resolveGitInfoDir(projectDir: string): string | null;
7876
+ /**
7877
+ * Recursively discovers all `.git` entries (directories or files) under a given root,
7878
+ * skipping common non-source directories.
7879
+ * Returns absolute paths of directories containing a `.git` entry.
7880
+ */
7881
+ declare function findAllGitRepos(rootDir: string, maxDepth?: number): string[];
7882
+ /**
7883
+ * Scans `.git/modules/` directory recursively to find all submodule `info/` dirs.
7884
+ * Handles nested submodules (modules within modules).
7885
+ * Returns absolute paths of `info/` directories.
7886
+ */
7887
+ declare function findGitModuleInfoDirs(dotGitDir: string): string[]; //#endregion
7888
+ //#region src/plugins/plugin-core/LocalizedPromptReader.d.ts
7889
+ /**
7890
+ * Universal reader for localized prompts
7891
+ * Handles reading src (multiple locales) and dist (compiled) content
7892
+ * Supports directory structures (skills) and flat files (commands, subAgents)
7893
+ *
7894
+ * Dist is the only prompt source that may flow into final outputs.
7895
+ * Source files are read only for discovery, locale metadata, and validation.
7896
+ */
7897
+ declare class LocalizedPromptReader {
7898
+ private fs;
7899
+ private path;
7900
+ private logger;
7901
+ private globalScope?;
7902
+ constructor(fs: typeof _$node_fs0, path: typeof _$node_path0, logger: ILogger, globalScope?: MdxGlobalScope | undefined);
7903
+ readDirectoryStructure<T extends Prompt, K extends PromptKind>(srcDir: string, distDir: string, options: LocalizedReadOptions<T, K>): Promise<DirectoryReadResult<T, K>>;
7904
+ readFlatFiles<T extends Prompt, K extends PromptKind>(srcDir: string, distDir: string, options: LocalizedReadOptions<T, K>): Promise<DirectoryReadResult<T, K>>;
7905
+ readSingleFile<T extends Prompt, K extends PromptKind>(srcBasePath: string, // Path without extension
7906
+ distBasePath: string, options: LocalizedReadOptions<T, K>): Promise<LocalizedPrompt<T, K> | null>;
7907
+ private readEntry;
7908
+ private readFlatEntry;
7909
+ private readLocaleContent;
7910
+ private readDistContent;
7911
+ private buildDistReadDiagnostic;
7912
+ private scanChildren;
7913
+ private exists;
7914
+ private normalizeExtensions;
7915
+ private findMatchingExtension;
7916
+ private resolveLocalizedPath;
7917
+ }
7918
+ /**
7919
+ * Factory function to create a LocalizedPromptReader
7920
+ */
7921
+ declare function createLocalizedPromptReader(fs: typeof _$node_fs0, path: typeof _$node_path0, logger: ILogger, globalScope?: MdxGlobalScope): LocalizedPromptReader; //#endregion
7922
+ //#region src/plugins/plugin-core/McpConfigManager.d.ts
7923
+ /**
7924
+ * MCP configuration format type
7925
+ */
7926
+ type McpConfigFormat = 'cursor' | 'opencode';
7927
+ /**
7928
+ * MCP config entry for a single server
7929
+ */
7930
+ interface McpServerEntry {
7931
+ readonly name: string;
7932
+ readonly config: McpServerConfig;
7933
+ }
7934
+ /**
7935
+ * Transformed MCP server config for different output formats
7936
+ */
7937
+ interface TransformedMcpConfig {
7938
+ [serverName: string]: Record<string, unknown>;
7939
+ }
7940
+ /**
7941
+ * Result of MCP config write operation
7942
+ */
7943
+ interface McpWriteResult {
7944
+ readonly success: boolean;
7945
+ readonly path: string;
7946
+ readonly serverCount: number;
7947
+ readonly error?: Error;
7948
+ readonly skipped?: boolean;
7949
+ }
7950
+ /**
7951
+ * MCP configuration transformer function type
7952
+ */
7953
+ type McpConfigTransformer = (config: McpServerConfig) => Record<string, unknown>;
7954
+ declare function collectMcpServersFromSkills(skills: readonly SkillPrompt[], logger?: ILogger): Map<string, McpServerConfig>;
7955
+ declare function transformMcpServerMap(servers: Map<string, McpServerConfig>, transformer: McpConfigTransformer): TransformedMcpConfig;
7956
+ /**
7957
+ * MCP Config Manager
7958
+ * Handles merging and writing MCP configurations from skills to various output formats
7959
+ */
7960
+ declare class McpConfigManager {
7961
+ private readonly fs;
7962
+ private readonly logger;
7963
+ constructor(deps: {
7964
+ fs: typeof _$node_fs0;
7965
+ logger: ILogger;
7966
+ });
7967
+ collectMcpServers(skills: readonly SkillPrompt[]): Map<string, McpServerConfig>;
7968
+ transformMcpServers(servers: Map<string, McpServerConfig>, transformer: McpConfigTransformer): TransformedMcpConfig;
7969
+ readExistingConfig(configPath: string): Record<string, unknown>;
7970
+ writeCursorMcpConfig(configPath: string, servers: TransformedMcpConfig, dryRun: boolean): McpWriteResult;
7971
+ writeOpencodeMcpConfig(configPath: string, servers: TransformedMcpConfig, dryRun: boolean, additionalConfig?: Record<string, unknown>): McpWriteResult;
7972
+ writeSkillMcpConfig(configPath: string, rawContent: string, dryRun: boolean): McpWriteResult;
7973
+ private ensureDirectory;
7974
+ private writeConfigFile;
7975
+ }
7976
+ /**
7977
+ * Transform MCP config for Cursor format
7978
+ * Keeps standard MCP structure with command/args/env or url/headers
7979
+ */
7980
+ declare function transformMcpConfigForCursor(config: McpServerConfig): Record<string, unknown>;
7981
+ /**
7982
+ * Transform MCP config for Opencode format
7983
+ * Converts to local (command array) or remote (url) format with enabled flag
7984
+ */
7985
+ declare function transformMcpConfigForOpencode(config: McpServerConfig): Record<string, unknown>; //#endregion
7986
+ //#region src/plugins/plugin-core/PromptArtifactCache.d.ts
7987
+ interface PromptArtifact {
7988
+ readonly rawMdx: string;
7989
+ readonly parsed: ParsedMarkdown;
7990
+ readonly content: string;
7991
+ readonly metadata: Record<string, unknown>;
7992
+ readonly lastModified: Date;
7993
+ }
7994
+ interface ReadPromptArtifactOptions {
7995
+ readonly mode: 'source' | 'dist';
7996
+ readonly globalScope?: MdxGlobalScope | undefined;
7997
+ readonly rawMdx?: string | undefined;
7998
+ readonly lastModified?: Date | undefined;
7999
+ }
8000
+ interface CompileRawPromptArtifactOptions {
8001
+ readonly filePath: string;
8002
+ readonly globalScope?: MdxGlobalScope | undefined;
8003
+ readonly rawMdx: string;
8004
+ readonly cacheMtimeMs?: number | undefined;
8005
+ }
8006
+ interface RawPromptCompilation {
8007
+ readonly content: string;
8008
+ readonly metadata: Record<string, unknown>;
8009
+ }
8010
+ declare function readPromptArtifact(filePath: string, options: ReadPromptArtifactOptions): Promise<PromptArtifact>;
8011
+ declare function compileRawPromptArtifact(options: CompileRawPromptArtifactOptions): Promise<RawPromptCompilation>;
8012
+ declare function clearPromptArtifactCache(): void; //#endregion
8013
+ //#region src/plugins/plugin-core/PromptIdentity.d.ts
8014
+ declare function flattenPromptPath(value: string): string;
8015
+ declare function deriveSubAgentIdentity(relativeName: string): {
8016
+ readonly agentPrefix?: string;
8017
+ readonly agentName: string;
8018
+ readonly canonicalName: string;
8019
+ };
8020
+ declare function resolveSkillName(skill: Pick<SkillPrompt, 'dir' | 'skillName'>): string;
8021
+ declare function resolveSubAgentCanonicalName(subAgent: Pick<SubAgentPrompt, 'agentName' | 'canonicalName' | 'agentPrefix'>): string; //#endregion
8022
+ //#region src/plugins/plugin-core/scopePolicy.d.ts
8023
+ declare const DEFAULT_SCOPE_PRIORITY: readonly OutputDeclarationScope[];
8024
+ type ScopeSelectionInput = OutputDeclarationScope | readonly OutputDeclarationScope[] | undefined;
8025
+ interface ResolveTopicScopesOptions {
8026
+ readonly requestedScopes?: ScopeSelectionInput;
8027
+ readonly defaultScopes: readonly OutputDeclarationScope[];
8028
+ readonly supportedScopes: readonly OutputDeclarationScope[];
8029
+ readonly singleScope: boolean;
8030
+ readonly availableScopes?: readonly OutputDeclarationScope[];
8031
+ readonly priority?: readonly OutputDeclarationScope[];
8032
+ }
8033
+ declare function resolveTopicScopes(options: ResolveTopicScopesOptions): readonly OutputDeclarationScope[]; //#endregion
8034
+ //#region src/plugins/plugin-core.d.ts
8035
+ declare function clearBufferedDiagnostics(): void;
8036
+ declare function createLogger(namespace: string, logLevel?: LogLevel): ILogger;
8037
+ declare function drainBufferedDiagnostics(): LoggerDiagnosticRecord[];
8038
+ declare function flushOutput(): void;
8039
+ declare function getGlobalLogLevel(): LogLevel | undefined;
8040
+ declare function setGlobalLogLevel(level: LogLevel): void; //#endregion
5298
8041
  //#region src/Aindex.d.ts
5299
8042
  /**
5300
8043
  * Version control check result
@@ -5335,12 +8078,7 @@ interface GenerationOptions {
5335
8078
  /**
5336
8079
  * Generate aindex directory structure
5337
8080
  */
5338
- declare function generateAindex(rootPath: string, options?: GenerationOptions): GenerationResult;
5339
- //#endregion
5340
- //#region src/cli-runtime.d.ts
5341
- declare function isJsonMode(argv: readonly string[]): boolean;
5342
- declare function runCli(argv?: readonly string[]): Promise<number>;
5343
- //#endregion
8081
+ declare function generateAindex(rootPath: string, options?: GenerationOptions): GenerationResult; //#endregion
5344
8082
  //#region src/config.d.ts
5345
8083
  /**
5346
8084
  * Pipeline configuration containing collected context and output plugins
@@ -5363,7 +8101,7 @@ interface DefineConfigOptions {
5363
8101
  readonly configLoaderOptions?: ConfigLoaderOptions;
5364
8102
  readonly loadUserConfig?: boolean;
5365
8103
  readonly cwd?: string;
5366
- readonly pipelineArgs?: readonly string[];
8104
+ readonly runtimeCommand?: RuntimeCommand;
5367
8105
  }
5368
8106
  /**
5369
8107
  * Merge multiple PluginOptions with default configuration.
@@ -5381,8 +8119,7 @@ declare function mergeConfig(...configs: Partial<PluginOptions>[]): Required<Plu
5381
8119
  *
5382
8120
  * @param options - Plugin options or DefineConfigOptions
5383
8121
  */
5384
- declare function defineConfig(options?: PluginOptions | DefineConfigOptions): Promise<PipelineConfig>;
5385
- //#endregion
8122
+ declare function defineConfig(options?: PluginOptions | DefineConfigOptions): Promise<PipelineConfig>; //#endregion
5386
8123
  //#region src/ConfigLoader.d.ts
5387
8124
  /**
5388
8125
  * Default config file name
@@ -5450,71 +8187,298 @@ declare function loadUserConfig(cwd?: string): MergedConfigResult;
5450
8187
  *
5451
8188
  * @returns Validation result indicating whether program should continue or exit
5452
8189
  */
5453
- declare function validateGlobalConfig(): GlobalConfigValidationResult;
5454
- //#endregion
5455
- //#region src/plugin.config.d.ts
5456
- declare function createDefaultPluginConfig(pipelineArgs?: readonly string[]): Promise<PipelineConfig>;
5457
- //#endregion
5458
- //#region src/commands/Command.d.ts
5459
- /**
5460
- * Command execution result
5461
- */
5462
- interface CommandResult {
5463
- readonly success: boolean;
5464
- readonly filesAffected: number;
5465
- readonly dirsAffected: number;
5466
- readonly message?: string;
8190
+ declare function validateGlobalConfig(): GlobalConfigValidationResult; //#endregion
8191
+ //#region src/ProtectedDeletionGuard.d.ts
8192
+ type ProtectionMode$1 = 'direct' | 'recursive';
8193
+ interface ProtectedPathViolation {
8194
+ readonly targetPath: string;
8195
+ readonly protectedPath: string;
8196
+ readonly protectionMode: ProtectionMode$1;
8197
+ readonly reason: string;
8198
+ readonly source: string;
8199
+ }
8200
+ declare function logProtectedDeletionGuardError(logger: ILogger, operation: string, violations: readonly ProtectedPathViolation[]): void; //#endregion
8201
+ //#region src/diagnostics.d.ts
8202
+ declare function diagnosticLines(firstLine: string, ...otherLines: string[]): DiagnosticLines;
8203
+ declare function toErrorMessage(error: unknown): string;
8204
+ declare function splitDiagnosticText(text: string): DiagnosticLines;
8205
+ declare function buildDiagnostic(input: LoggerDiagnosticInput): LoggerDiagnosticInput;
8206
+ interface DiagnosticFailure {
8207
+ readonly path: string;
8208
+ readonly error: unknown;
8209
+ readonly details?: Record<string, unknown> | undefined;
5467
8210
  }
5468
- //#endregion
5469
- //#region src/pipeline/CliArgumentParser.d.ts
8211
+ interface FileOperationDiagnosticOptions {
8212
+ readonly code: string;
8213
+ readonly title: string;
8214
+ readonly operation: string;
8215
+ readonly targetKind: string;
8216
+ readonly path: string;
8217
+ readonly error: unknown;
8218
+ readonly platform?: NodeJS.Platform | undefined;
8219
+ readonly exactFix?: DiagnosticLines | undefined;
8220
+ readonly possibleFixes?: readonly DiagnosticLines[] | undefined;
8221
+ readonly details?: Record<string, unknown> | undefined;
8222
+ }
8223
+ declare function buildFileOperationDiagnostic(options: FileOperationDiagnosticOptions): LoggerDiagnosticInput;
8224
+ interface BatchFileOperationDiagnosticOptions {
8225
+ readonly code: string;
8226
+ readonly title: string;
8227
+ readonly operation: string;
8228
+ readonly targetKind: string;
8229
+ readonly failures: readonly DiagnosticFailure[];
8230
+ readonly exactFix?: DiagnosticLines | undefined;
8231
+ readonly possibleFixes?: readonly DiagnosticLines[] | undefined;
8232
+ readonly details?: Record<string, unknown> | undefined;
8233
+ }
8234
+ declare function buildBatchFileOperationDiagnostic(options: BatchFileOperationDiagnosticOptions): LoggerDiagnosticInput;
8235
+ interface ConfigDiagnosticOptions {
8236
+ readonly code: string;
8237
+ readonly title: string;
8238
+ readonly reason: DiagnosticLines;
8239
+ readonly configPath?: string | undefined;
8240
+ readonly exactFix?: DiagnosticLines | undefined;
8241
+ readonly possibleFixes?: readonly DiagnosticLines[] | undefined;
8242
+ readonly details?: Record<string, unknown> | undefined;
8243
+ }
8244
+ declare function buildConfigDiagnostic(options: ConfigDiagnosticOptions): LoggerDiagnosticInput;
8245
+ interface UsageDiagnosticOptions {
8246
+ readonly code: string;
8247
+ readonly title: string;
8248
+ readonly rootCause: DiagnosticLines;
8249
+ readonly exactFix?: DiagnosticLines | undefined;
8250
+ readonly possibleFixes?: readonly DiagnosticLines[] | undefined;
8251
+ readonly details?: Record<string, unknown> | undefined;
8252
+ }
8253
+ declare function buildUsageDiagnostic(options: UsageDiagnosticOptions): LoggerDiagnosticInput;
8254
+ interface PathStateDiagnosticOptions {
8255
+ readonly code: string;
8256
+ readonly title: string;
8257
+ readonly path: string;
8258
+ readonly expectedKind: string;
8259
+ readonly actualState: string;
8260
+ readonly exactFix?: DiagnosticLines | undefined;
8261
+ readonly possibleFixes?: readonly DiagnosticLines[] | undefined;
8262
+ readonly details?: Record<string, unknown> | undefined;
8263
+ }
8264
+ declare function buildPathStateDiagnostic(options: PathStateDiagnosticOptions): LoggerDiagnosticInput;
8265
+ interface PromptCompilerDiagnosticOptions {
8266
+ readonly code: string;
8267
+ readonly title: string;
8268
+ readonly diagnosticText: string;
8269
+ readonly exactFix?: DiagnosticLines | undefined;
8270
+ readonly possibleFixes?: readonly DiagnosticLines[] | undefined;
8271
+ readonly details?: Record<string, unknown> | undefined;
8272
+ }
8273
+ declare function buildPromptCompilerDiagnostic(options: PromptCompilerDiagnosticOptions): LoggerDiagnosticInput;
8274
+ declare function buildProtectedDeletionDiagnostic(operation: string, violations: readonly ProtectedPathViolation[]): LoggerDiagnosticInput;
8275
+ declare function buildUnhandledExceptionDiagnostic(context: string, error: unknown): LoggerDiagnosticInput;
8276
+ declare function partitionBufferedDiagnostics(diagnostics: readonly LoggerDiagnosticRecord[]): {
8277
+ warnings: LoggerDiagnosticRecord[];
8278
+ errors: LoggerDiagnosticRecord[];
8279
+ }; //#endregion
8280
+ //#region src/pipeline/OutputRuntimeTargets.d.ts
8281
+ declare function discoverOutputRuntimeTargets(logger: ILogger): OutputRuntimeTargets; //#endregion
8282
+ //#region src/plugins/GenericSkillsOutputPlugin.d.ts
5470
8283
  /**
5471
- * Valid subcommands for the CLI
8284
+ * Output plugin that writes skills directly to each project's .agents/skills/ directory.
8285
+ *
8286
+ * Structure:
8287
+ * - Project: <project>/.agents/skills/<skill-name>/SKILL.md, mcp.json, child docs, resources
8288
+ *
8289
+ * @deprecated Legacy compact skills output. Cleanup must remove the entire
8290
+ * global `~/.skills/` directory in addition to the current skill targets.
5472
8291
  */
5473
- type Subcommand = 'help' | 'version' | 'init' | 'dry-run' | 'clean' | 'config' | 'plugins';
8292
+ declare class GenericSkillsOutputPlugin extends AbstractOutputPlugin {
8293
+ constructor();
8294
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8295
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string | Buffer>;
8296
+ } //#endregion
8297
+ //#region src/plugins/AgentsOutputPlugin.d.ts
8298
+ declare class AgentsOutputPlugin extends AbstractOutputPlugin {
8299
+ constructor();
8300
+ declareCleanupPaths(ctx: OutputCleanContext): Promise<OutputCleanupDeclarations>;
8301
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8302
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string>;
8303
+ } //#endregion
8304
+ //#region src/plugins/ClaudeCodeCLIOutputPlugin.d.ts
5474
8305
  /**
5475
- * Valid log levels for the CLI
8306
+ * Output plugin for Claude Code CLI.
8307
+ *
8308
+ * Outputs rules to `.claude/rules/` directory with frontmatter format.
8309
+ *
8310
+ * @see https://github.com/anthropics/claude-code/issues/26868
8311
+ * Known bug: Claude Code CLI has issues with `.claude/rules` directory handling.
8312
+ * This may affect rule loading behavior in certain scenarios.
5476
8313
  */
5477
- type LogLevel = 'trace' | 'debug' | 'info' | 'warn' | 'error';
8314
+ declare class ClaudeCodeCLIOutputPlugin extends AbstractOutputPlugin {
8315
+ constructor();
8316
+ declareCleanupPaths(ctx: OutputCleanContext): Promise<OutputCleanupDeclarations>;
8317
+ } //#endregion
8318
+ //#region src/plugins/CursorOutputPlugin.d.ts
8319
+ declare class CursorOutputPlugin extends AbstractOutputPlugin {
8320
+ constructor();
8321
+ declareCleanupPaths(ctx: OutputCleanContext): Promise<OutputCleanupDeclarations>;
8322
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8323
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string | Buffer>;
8324
+ private buildGlobalRuleContent;
8325
+ private isPreservedSkill;
8326
+ protected buildRuleMdcContent(rule: RulePrompt, ctx?: OutputWriteContext): string;
8327
+ } //#endregion
8328
+ //#region src/plugins/DroidCLIOutputPlugin.d.ts
8329
+ declare class DroidCLIOutputPlugin extends AbstractOutputPlugin {
8330
+ constructor();
8331
+ protected buildSkillMainContent(skill: SkillPrompt, ctx?: OutputWriteContext): string;
8332
+ } //#endregion
8333
+ //#region src/plugins/EditorConfigOutputPlugin.d.ts
5478
8334
  /**
5479
- * Command line argument parsing result
8335
+ * Output plugin for writing .editorconfig files to project directories.
8336
+ * Reads EditorConfig files collected by EditorConfigInputCapability.
5480
8337
  */
5481
- interface ParsedCliArgs {
5482
- readonly subcommand: Subcommand | undefined;
5483
- readonly helpFlag: boolean;
5484
- readonly versionFlag: boolean;
5485
- readonly dryRun: boolean;
5486
- readonly jsonFlag: boolean;
5487
- readonly showFlag: boolean;
5488
- readonly logLevel: LogLevel | undefined;
5489
- readonly setOption: readonly [key: string, value: string][];
5490
- readonly unknownCommand: string | undefined;
5491
- readonly positional: readonly string[];
5492
- readonly unknown: readonly string[];
5493
- }
5494
- //#endregion
5495
- //#region src/PluginPipeline.d.ts
8338
+ declare class EditorConfigOutputPlugin extends AbstractOutputPlugin {
8339
+ constructor();
8340
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8341
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string>;
8342
+ } //#endregion
8343
+ //#region src/plugins/GeminiCLIOutputPlugin.d.ts
8344
+ declare class GeminiCLIOutputPlugin extends AbstractOutputPlugin {
8345
+ constructor();
8346
+ declareCleanupPaths(ctx: OutputCleanContext): Promise<OutputCleanupDeclarations>;
8347
+ } //#endregion
8348
+ //#region src/plugins/GitExcludeOutputPlugin.d.ts
8349
+ declare class GitExcludeOutputPlugin extends AbstractOutputPlugin {
8350
+ constructor();
8351
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8352
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string>;
8353
+ private buildManagedContent;
8354
+ private sanitizeContent;
8355
+ private normalizeContent;
8356
+ } //#endregion
8357
+ //#region src/plugins/JetBrainsAIAssistantCodexOutputPlugin.d.ts
8358
+ declare class JetBrainsAIAssistantCodexOutputPlugin extends AbstractOutputPlugin {
8359
+ constructor();
8360
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8361
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string | Buffer>;
8362
+ declareCleanupPaths(ctx: OutputCleanContext): Promise<OutputCleanupDeclarations>;
8363
+ private getJetBrainsCodexDirs;
8364
+ private buildChildRuleFileName;
8365
+ private buildChildRulePattern;
8366
+ private buildAlwaysRuleContent;
8367
+ private buildGlobRuleContent;
8368
+ private buildCodexSkillContent;
8369
+ private normalizeSkillName;
8370
+ private normalizeToSingleLine;
8371
+ } //#endregion
8372
+ //#region src/plugins/JetBrainsIDECodeStyleConfigOutputPlugin.d.ts
8373
+ declare class JetBrainsIDECodeStyleConfigOutputPlugin extends AbstractOutputPlugin {
8374
+ constructor();
8375
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8376
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string>;
8377
+ private getTargetRelativePath;
8378
+ } //#endregion
8379
+ //#region src/plugins/CodexCLIOutputPlugin.d.ts
8380
+ declare class CodexCLIOutputPlugin extends AbstractOutputPlugin {
8381
+ constructor();
8382
+ /**
8383
+ * Project-scoped output still writes to the workspace project, but Codex also
8384
+ * resolves user-installed skills from `~/.codex/skills/`. Cleanup therefore
8385
+ * needs to prune that global skills directory as well, while preserving the
8386
+ * built-in `.system/` subtree.
8387
+ */
8388
+ declareCleanupPaths(ctx: OutputCleanContext): Promise<OutputCleanupDeclarations>;
8389
+ } //#endregion
8390
+ //#region src/plugins/OpencodeCLIOutputPlugin.d.ts
8391
+ declare class OpencodeCLIOutputPlugin extends AbstractOutputPlugin {
8392
+ constructor();
8393
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8394
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string | Buffer>;
8395
+ private buildOpencodeAgentFrontMatter;
8396
+ private buildOpencodeSkillFrontMatter;
8397
+ private validateAndNormalizeSkillName;
8398
+ } //#endregion
8399
+ //#region src/plugins/QoderIDEPluginOutputPlugin.d.ts
8400
+ declare class QoderIDEPluginOutputPlugin extends AbstractOutputPlugin {
8401
+ constructor();
8402
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8403
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string | Buffer>;
8404
+ private buildChildRuleFileName;
8405
+ private buildAlwaysRuleContent;
8406
+ private buildGlobRuleContent;
8407
+ protected buildSkillFrontMatter(skill: SkillPrompt): Record<string, unknown>;
8408
+ protected buildRuleFileName(rule: RulePrompt, prefix?: string): string;
8409
+ protected buildRuleContent(rule: RulePrompt, ctx?: OutputWriteContext): string;
8410
+ protected normalizeRuleScope(rule: RulePrompt): RuleScope;
8411
+ } //#endregion
8412
+ //#region src/plugins/ReadmeMdConfigFileOutputPlugin.d.ts
5496
8413
  /**
5497
- * Plugin Pipeline - Orchestrates plugin execution
8414
+ * Output plugin for writing readme-family files to project directories.
8415
+ * Reads README prompts collected by ReadmeMdInputCapability and writes them
8416
+ * to the corresponding project directories.
5498
8417
  *
5499
- * This class has been refactored to use modular components:
5500
- * - CliArgumentParser: CLI argument parsing (moved to @/pipeline)
5501
- * - DependencyResolver: dependency ordering (moved to @/pipeline)
5502
- * - ContextMerger: Context merging (moved to @/pipeline)
5503
- */
5504
- declare class PluginPipeline {
5505
- private readonly logger;
5506
- readonly args: ParsedCliArgs;
5507
- private outputPlugins;
5508
- private runtimeTargets?;
5509
- constructor(...cmdArgs: (string | undefined)[]);
5510
- registerOutputPlugins(plugins: OutputPlugin[]): this;
5511
- run(config: PipelineConfig): Promise<CommandResult>;
5512
- private createCommandContext;
5513
- private createCleanContext;
5514
- private createWriteContext;
5515
- private getRuntimeTargets;
5516
- }
5517
- //#endregion
8418
+ * Output mapping:
8419
+ * - fileKind=Readme README.md
8420
+ * - fileKind=CodeOfConduct CODE_OF_CONDUCT.md
8421
+ * - fileKind=Security SECURITY.md
8422
+ *
8423
+ * Supports:
8424
+ * - Root files (written to project root)
8425
+ * - Child files (written to project subdirectories)
8426
+ * - Dry-run mode (preview without writing)
8427
+ * - Clean operation (delete generated files)
8428
+ */
8429
+ declare class ReadmeMdConfigFileOutputPlugin extends AbstractOutputPlugin {
8430
+ constructor();
8431
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8432
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string>;
8433
+ } //#endregion
8434
+ //#region src/plugins/TraeCNIDEOutputPlugin.d.ts
8435
+ declare class TraeCNIDEOutputPlugin extends AbstractOutputPlugin {
8436
+ constructor();
8437
+ private getGlobalUserRulesDir;
8438
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8439
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string>;
8440
+ } //#endregion
8441
+ //#region src/plugins/TraeIDEOutputPlugin.d.ts
8442
+ declare class TraeIDEOutputPlugin extends AbstractOutputPlugin {
8443
+ constructor();
8444
+ protected getIgnoreOutputPath(): string | undefined;
8445
+ private getGlobalSteeringDir;
8446
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8447
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string | Buffer>;
8448
+ protected buildSkillFrontMatter(skill: SkillPrompt): Record<string, unknown>;
8449
+ private buildSteeringFileName;
8450
+ private buildPathGuardHint;
8451
+ private buildProjectRelativeGlobPattern;
8452
+ } //#endregion
8453
+ //#region src/plugins/VisualStudioCodeIDEConfigOutputPlugin.d.ts
8454
+ declare class VisualStudioCodeIDEConfigOutputPlugin extends AbstractOutputPlugin {
8455
+ constructor();
8456
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8457
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string>;
8458
+ private getTargetRelativePath;
8459
+ } //#endregion
8460
+ //#region src/plugins/WarpIDEOutputPlugin.d.ts
8461
+ declare class WarpIDEOutputPlugin extends AbstractOutputPlugin {
8462
+ constructor();
8463
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8464
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string>;
8465
+ } //#endregion
8466
+ //#region src/plugins/WindsurfOutputPlugin.d.ts
8467
+ declare class WindsurfOutputPlugin extends AbstractOutputPlugin {
8468
+ constructor();
8469
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8470
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string | Buffer>;
8471
+ private getCodeiumWindsurfDir;
8472
+ protected buildRuleFileName(rule: RulePrompt, prefix?: string): string;
8473
+ protected buildRuleContent(rule: RulePrompt, ctx?: OutputWriteContext): string;
8474
+ } //#endregion
8475
+ //#region src/plugins/ZedIDEConfigOutputPlugin.d.ts
8476
+ declare class ZedIDEConfigOutputPlugin extends AbstractOutputPlugin {
8477
+ constructor();
8478
+ declareOutputFiles(ctx: OutputWriteContext): Promise<OutputFileDeclaration[]>;
8479
+ convertContent(declaration: OutputFileDeclaration, ctx: OutputWriteContext): Promise<string>;
8480
+ private getTargetRelativePath;
8481
+ } //#endregion
5518
8482
  //#region src/prompts.d.ts
5519
8483
  type ManagedPromptKind = 'global-memory' | 'workspace-memory' | 'project-memory' | 'project-child-memory' | 'skill' | 'skill-child-doc' | 'command' | 'subagent' | 'rule';
5520
8484
  type PromptArtifactState = 'missing' | 'stale' | 'ready';
@@ -5583,6 +8547,171 @@ declare function listPrompts(options?: ListPromptsOptions): Promise<PromptCatalo
5583
8547
  declare function getPrompt(promptId: string, options?: PromptServiceOptions): Promise<PromptDetails | null>;
5584
8548
  declare function upsertPromptSource(input: UpsertPromptSourceInput): Promise<PromptDetails>;
5585
8549
  declare function writePromptArtifacts(input: WritePromptArtifactsInput): Promise<PromptDetails>;
5586
- declare function resolvePromptDefinition(promptId: string, options?: PromptServiceOptions): Promise<PromptCatalogPaths>;
8550
+ declare function resolvePromptDefinition(promptId: string, options?: PromptServiceOptions): Promise<PromptCatalogPaths>; //#endregion
8551
+ //#region src/runtime-environment.d.ts
8552
+ type RuntimeFs = Pick<typeof _$node_fs0, 'existsSync' | 'readdirSync' | 'statSync'>;
8553
+ interface RuntimeEnvironmentDependencies {
8554
+ readonly fs?: RuntimeFs;
8555
+ readonly env?: NodeJS.ProcessEnv;
8556
+ readonly platform?: NodeJS.Platform;
8557
+ readonly homedir?: string;
8558
+ readonly release?: string;
8559
+ readonly windowsUsersRoot?: string;
8560
+ }
8561
+ interface RuntimeEnvironmentContext {
8562
+ readonly platform: NodeJS.Platform;
8563
+ readonly isWsl: boolean;
8564
+ readonly nativeHomeDir: string;
8565
+ readonly effectiveHomeDir: string;
8566
+ readonly globalConfigCandidates: readonly string[];
8567
+ readonly selectedGlobalConfigPath?: string;
8568
+ readonly wslHostHomeDir?: string;
8569
+ readonly windowsUsersRoot: string;
8570
+ readonly expandedEnv: Readonly<Record<string, string>>;
8571
+ }
8572
+ declare function getRequiredGlobalConfigPath(dependencies?: RuntimeEnvironmentDependencies): string;
8573
+ declare function resolveUserPath(rawPath: string, dependenciesOrContext?: RuntimeEnvironmentDependencies | RuntimeEnvironmentContext): string; //#endregion
8574
+ //#region src/runtime/cleanup.d.ts
8575
+ interface CleanupResult {
8576
+ readonly deletedFiles: number;
8577
+ readonly deletedDirs: number;
8578
+ readonly errors: readonly CleanupError[];
8579
+ readonly violations: readonly ProtectedPathViolation[];
8580
+ readonly conflicts: readonly CleanupProtectionConflict[];
8581
+ readonly message?: string;
8582
+ }
8583
+ interface CleanupError {
8584
+ readonly path: string;
8585
+ readonly type: 'file' | 'directory';
8586
+ readonly error: unknown;
8587
+ }
8588
+ interface CleanupProtectionConflict {
8589
+ readonly outputPath: string;
8590
+ readonly outputPlugin: string;
8591
+ readonly protectedPath: string;
8592
+ readonly protectionMode: ProtectionMode$1;
8593
+ readonly protectedBy: string;
8594
+ readonly reason: string;
8595
+ }
8596
+ declare class CleanupProtectionConflictError extends Error {
8597
+ readonly conflicts: readonly CleanupProtectionConflict[];
8598
+ constructor(conflicts: readonly CleanupProtectionConflict[]);
8599
+ }
8600
+ type NativeProtectionMode = 'direct' | 'recursive';
8601
+ type NativeProtectionRuleMatcher = 'path' | 'glob';
8602
+ type NativeCleanupTargetKind = 'file' | 'directory' | 'glob';
8603
+ type NativeCleanupErrorKind = 'file' | 'directory';
8604
+ interface NativeCleanupTarget {
8605
+ readonly path: string;
8606
+ readonly kind: NativeCleanupTargetKind;
8607
+ readonly excludeBasenames?: readonly string[];
8608
+ readonly protectionMode?: NativeProtectionMode;
8609
+ readonly scope?: string;
8610
+ readonly label?: string;
8611
+ }
8612
+ interface NativeCleanupDeclarations {
8613
+ readonly delete?: readonly NativeCleanupTarget[];
8614
+ readonly protect?: readonly NativeCleanupTarget[];
8615
+ readonly excludeScanGlobs?: readonly string[];
8616
+ }
8617
+ interface NativePluginCleanupSnapshot {
8618
+ readonly pluginName: string;
8619
+ readonly outputs: readonly string[];
8620
+ readonly cleanup: NativeCleanupDeclarations;
8621
+ }
8622
+ interface NativeProtectedRule {
8623
+ readonly path: string;
8624
+ readonly protectionMode: NativeProtectionMode;
8625
+ readonly reason: string;
8626
+ readonly source: string;
8627
+ readonly matcher?: NativeProtectionRuleMatcher | undefined;
8628
+ }
8629
+ interface NativeCleanupSnapshot {
8630
+ readonly workspaceDir: string;
8631
+ readonly aindexDir?: string;
8632
+ readonly projectRoots: readonly string[];
8633
+ readonly protectedRules: readonly NativeProtectedRule[];
8634
+ readonly pluginSnapshots: readonly NativePluginCleanupSnapshot[];
8635
+ readonly emptyDirExcludeGlobs?: readonly string[];
8636
+ }
8637
+ interface NativeProtectedPathViolation {
8638
+ readonly targetPath: string;
8639
+ readonly protectedPath: string;
8640
+ readonly protectionMode: NativeProtectionMode;
8641
+ readonly reason: string;
8642
+ readonly source: string;
8643
+ }
8644
+ interface NativeCleanupProtectionConflict {
8645
+ readonly outputPath: string;
8646
+ readonly outputPlugin: string;
8647
+ readonly protectedPath: string;
8648
+ readonly protectionMode: NativeProtectionMode;
8649
+ readonly protectedBy: string;
8650
+ readonly reason: string;
8651
+ }
8652
+ interface NativeCleanupPlan {
8653
+ readonly filesToDelete: string[];
8654
+ readonly dirsToDelete: string[];
8655
+ readonly emptyDirsToDelete: string[];
8656
+ readonly violations: readonly NativeProtectedPathViolation[];
8657
+ readonly conflicts: readonly NativeCleanupProtectionConflict[];
8658
+ readonly excludedScanGlobs: string[];
8659
+ }
8660
+ interface NativeCleanupError {
8661
+ readonly path: string;
8662
+ readonly kind: NativeCleanupErrorKind;
8663
+ readonly error: string;
8664
+ }
8665
+ interface NativeCleanupResult {
8666
+ readonly deletedFiles: number;
8667
+ readonly deletedDirs: number;
8668
+ readonly errors: readonly NativeCleanupError[];
8669
+ readonly violations: readonly NativeProtectedPathViolation[];
8670
+ readonly conflicts: readonly NativeCleanupProtectionConflict[];
8671
+ readonly filesToDelete: string[];
8672
+ readonly dirsToDelete: string[];
8673
+ readonly emptyDirsToDelete: string[];
8674
+ readonly excludedScanGlobs: string[];
8675
+ }
8676
+ declare function hasNativeCleanupBinding(): boolean;
8677
+ declare function planCleanupWithNative(snapshot: NativeCleanupSnapshot): Promise<NativeCleanupPlan>;
8678
+ declare function performCleanupWithNative(snapshot: NativeCleanupSnapshot): Promise<NativeCleanupResult>;
8679
+ declare function collectDeletionTargets(outputPlugins: readonly OutputPlugin[], cleanCtx: OutputCleanContext, predeclaredOutputs?: ReadonlyMap<OutputPlugin, readonly OutputFileDeclaration[]>): Promise<{
8680
+ filesToDelete: string[];
8681
+ dirsToDelete: string[];
8682
+ emptyDirsToDelete: string[];
8683
+ violations: ProtectedPathViolation[];
8684
+ conflicts: CleanupProtectionConflict[];
8685
+ excludedScanGlobs: string[];
8686
+ }>;
8687
+ declare function performCleanup(outputPlugins: readonly OutputPlugin[], cleanCtx: OutputCleanContext, logger: ILogger, predeclaredOutputs?: ReadonlyMap<OutputPlugin, readonly OutputFileDeclaration[]>): Promise<CleanupResult>; //#endregion
8688
+ //#region src/wsl-mirror-sync.d.ts
8689
+ type MirrorFs = Pick<typeof _$node_fs0, 'existsSync' | 'mkdirSync' | 'readFileSync' | 'writeFileSync'>;
8690
+ type SpawnSyncFn = typeof spawnSync;
8691
+ interface WslMirrorRuntimeDependencies {
8692
+ readonly fs?: MirrorFs;
8693
+ readonly spawnSync?: SpawnSyncFn;
8694
+ readonly platform?: NodeJS.Platform;
8695
+ readonly effectiveHomeDir?: string;
8696
+ readonly nativeHomeDir?: string;
8697
+ readonly isWsl?: boolean;
8698
+ }
8699
+ interface ResolvedWslInstanceTarget {
8700
+ readonly instance: string;
8701
+ readonly linuxHomeDir: string;
8702
+ readonly windowsHomeDir: string;
8703
+ }
8704
+ interface WslMirrorSyncResult {
8705
+ readonly mirroredFiles: number;
8706
+ readonly warnings: readonly string[];
8707
+ readonly errors: readonly string[];
8708
+ }
8709
+ declare function collectDeclaredWslMirrorFiles(outputPlugins: readonly OutputPlugin[], ctx: OutputWriteContext): Promise<readonly WslMirrorFileDeclaration[]>;
8710
+ declare function resolveWslInstanceTargets(pluginOptions: Required<PluginOptions>, logger: ILogger, dependencies?: WslMirrorRuntimeDependencies): ResolvedWslInstanceTarget[];
8711
+ declare function syncWindowsConfigIntoWsl(outputPlugins: readonly OutputPlugin[], ctx: OutputWriteContext, dependencies?: WslMirrorRuntimeDependencies, predeclaredOutputs?: ReadonlyMap<OutputPlugin, readonly OutputFileDeclaration[]>): Promise<WslMirrorSyncResult>; //#endregion
8712
+ //#endregion
8713
+ //#region src/plugin.config.d.ts
8714
+ declare function resolveRuntimeCommandFromArgv(argv?: readonly string[]): RuntimeCommand;
8715
+ declare function createDefaultPluginConfig(argv?: readonly string[], runtimeCommand?: RuntimeCommand): Promise<PipelineConfig>;
5587
8716
  //#endregion
5588
- export { ConfigLoader, DEFAULT_CONFIG_FILE_NAME, DEFAULT_GLOBAL_CONFIG_DIR, DEFAULT_USER_CONFIG, DefineConfigOptions, GenerationOptions, GenerationResult, GlobalConfigValidationResult, ListPromptsOptions, ManagedPromptKind, MergedConfigResult, PathPlaceholders, PipelineConfig, PluginPipeline, PromptArtifactRecord, PromptArtifactState, PromptCatalogItem, PromptCatalogPaths, PromptCatalogPresence, PromptDetails, PromptServiceOptions, PromptSourceLocale, UpsertPromptSourceInput, VersionControlCheckResult, WritePromptArtifactsInput, checkVersionControl, createDefaultPluginConfig, defineConfig, generateAindex, getConfigLoader, getGlobalConfigPath, getPrompt, isJsonMode, listPrompts, loadUserConfig, mergeConfig, resolvePromptDefinition, runCli, upsertPromptSource, userConfigToPluginOptions, validateGlobalConfig, writePromptArtifacts };
8717
+ export { AIAgentIgnoreConfigFile, AINDEX_CONFIG_DIRECTORY_PAIR_KEYS, AINDEX_CONFIG_FILE_PAIR_KEYS, AINDEX_CONFIG_KEY_PATHS, AINDEX_CONFIG_PAIR_DEFAULTS, AINDEX_CONFIG_PAIR_KEYS, AINDEX_DEFAULT_DIR_NAME, AINDEX_DIR_NAMES, AINDEX_FILE_NAMES, AINDEX_PROJECT_SERIES_NAMES, AINDEX_PROMPT_TREE_DIRECTORY_PAIR_KEYS, AINDEX_RELATIVE_PATHS, AbsolutePath, AbstractInputCapability, AbstractOutputPlugin, type AbstractOutputPluginOptions, AbstractPlugin, AgentsOutputPlugin, AindexConfig, AindexConfigDirectoryPairKey, AindexConfigFilePairKey, AindexConfigKeyPath, AindexConfigLike, AindexConfigPairKey, AindexDirName, AindexDirPair, AindexDirPairLike, AindexDirectory, AindexDirectoryEntry, AindexFileEntry, AindexFileName, type AindexProjectSeriesName, AindexPromptTreeDirectoryPairKey, AindexRelativePath, Awaitable, BaseExportMetadata, CircularDependencyError, ClaudeCodeCLIOutputPlugin, ClaudeCodeCLISubAgentColors, CleanupError, CleanupProtectionConflict, CleanupProtectionConflictError, CleanupProtectionOptions, CleanupProtectionRule, CleanupResult, type CleanupScopePathsConfig, CodexCLIOutputPlugin, CodexSkillMetadata, CodexSkillYAMLFrontMatter, CodingAgentTools, CollectedOutputs, type CombineOptions, CommandExportMetadata, type CommandNameTransformOptions, type CommandOutputConfig, CommandPrompt, CommandSeriesOptions, CommandSeriesPluginOverride, CommandYAMLFrontMatter, CommonYAMLFrontMatter, ConfigLoadResult, ConfigLoader, ConfigLoaderOptions, CursorOutputPlugin, DEFAULT_AINDEX_STRUCTURE, DEFAULT_CONFIG_FILE_NAME, DEFAULT_GLOBAL_CONFIG_DIR, DEFAULT_SCOPE_PRIORITY, DEFAULT_USER_CONFIG, DefineConfigOptions, DependencyNode, type DiagnosticLines, type DirectoryReadResult, DroidCLIOutputPlugin, EditorConfigOutputPlugin, FastGlobType, FileContent, FileExtensions, FilePathKind, type FilterConfigPath, FrontMatterFields, FrontMatterOptions, GeminiCLIOutputPlugin, GenerationOptions, GenerationResult, GenericSkillsOutputPlugin, GitExcludeOutputPlugin, GlobalConfigDirectory, GlobalConfigDirectoryInOther, GlobalConfigDirectoryInUserHome, GlobalConfigDirectoryType, GlobalConfigDirs, GlobalConfigValidationResult, GlobalMemoryPrompt, GlobalScopeCollector, type GlobalScopeCollectorOptions, IDEKind, type ILogger, IgnoreFiles, InputCapability, InputCapabilityContext, InputCollectedContext, InputEffectContext, InputEffectHandler, InputEffectRegistration, InputEffectResult, JetBrainsAIAssistantCodexOutputPlugin, JetBrainsIDECodeStyleConfigOutputPlugin, KiroPowerEntry, KiroPowerSource, KiroPowerYAMLFrontMatter, KiroPowersRegistry, KiroRecommendedRepo, KiroRepoSource, KiroSteeringYAMLFrontMatter, ListPromptsOptions, Locale, LocalizedContent, LocalizedFileExtension, LocalizedPrompt, LocalizedPromptReader, type LocalizedReadOptions, LocalizedSource, type LogLevel, type LoggerDiagnosticInput, type LoggerDiagnosticRecord, ManagedPromptKind, type McpConfigFormat, McpConfigManager, type McpConfigTransformer, McpProjectConfig, McpServerConfig, type McpServerEntry, type McpWriteResult, MergedConfigResult, MetadataValidationResult, MissingDependencyError, NamingCaseKind, OUTPUT_SCOPE_TOPICS, OpencodeCLIOutputPlugin, OutputCleanContext, type OutputCleanupConfig, OutputCleanupDeclarations, OutputCleanupPathDeclaration, OutputCleanupScope, OutputCleanupTargetKind, OutputCollectedContext, OutputDeclarationScope, OutputFileDeclaration, OutputFileNames, OutputPlugin, OutputPluginCapabilities, OutputPluginContext, OutputPrefixes, OutputRuntimeTargets, OutputScope, OutputScopeOptions, OutputScopeSelection, OutputScopeTopic, OutputSubdirectories, OutputTopicCapability, OutputWriteContext, PLUGIN_NAMES, Path, PathPlaceholders, PipelineConfig, Plugin, PluginContext, PluginKind, type PluginName, PluginOptions, PluginOutputScopeTopics, PluginScopeRegistration, PreservedSkills, Project, ProjectChildrenMemoryPrompt, ProjectConfig, ProjectEnhancerCapability, ProjectIDEConfigFile, ProjectRootMemoryPrompt, Prompt, PromptArtifactRecord, PromptArtifactState, PromptCatalogItem, PromptCatalogPaths, PromptCatalogPresence, PromptDetails, PromptKind, PromptServiceOptions, PromptSourceLocale, ProtectionMode, ProtectionRuleMatcher, QoderIDEPluginOutputPlugin, README_FILE_KIND_MAP, type ReadError, ReadmeFileKind, ReadmeMdConfigFileOutputPlugin, ReadmePrompt, RegistryData, RegistryOperationResult, RegistryWriter, RelativePath, ResolvedBasePaths, ResolvedWslInstanceTarget, RootPath, type RuleContentOptions, RuleExportMetadata, type RuleOutputConfig, RulePrompt, RuleScope, RuleYAMLFrontMatter, RuntimeCommand, ScopePriority, type ScopeRegistration, ScopeRegistry, ScopeRegistryLike, SeriName, type SeriesFilterable, SkillChildDoc, SkillExportMetadata, type SkillFrontMatterOptions, SkillMcpConfig, SkillPrompt, SkillResource, SkillResourceEncoding, SkillYAMLFrontMatter, type SkillsOutputConfig, SkillsYAMLFrontMatter, SourceLocaleExtensions, SourcePromptExtensions, SourcePromptFileExtensions, StringOrStringArray, type SubAgentArtifactFormat, SubAgentExportMetadata, type SubAgentFileNameSource, SubAgentFrontMatterField, type SubAgentNameTransformOptions, SubAgentOutputConfig, SubAgentPrompt, SubAgentYAMLFrontMatter, type SubAgentsOutputConfig, Target, ToolAwareYAMLFrontMatter, ToolPresets, TraeCNIDEOutputPlugin, TraeIDEOutputPlugin, type TransformedMcpConfig, TypeSeriesConfig, UpsertPromptSourceInput, UserConfigFile, ValidateMetadataOptions, VersionControlCheckResult, VisualStudioCodeIDEConfigOutputPlugin, WORKSPACE_ROOT_PROJECT_NAME, WarpIDEOutputPlugin, WindowsOptions, WindowsWsl2Options, WindsurfOutputPlugin, Workspace, WritePromptArtifactsInput, WriteResult, WriteResults, WslMirrorFileDeclaration, WslMirrorRuntimeDependencies, WslMirrorSyncResult, YAMLFrontMatter, ZAindexConfig, ZAindexDirPair, ZCleanupProtectionOptions, ZCleanupProtectionRule, ZCommandSeriesOptions, ZCommandSeriesPluginOverride, ZConfigLoaderOptions, ZFrontMatterOptions, ZMcpProjectConfig, ZOutputScope, ZOutputScopeOptions, ZOutputScopeSelection, ZPluginOutputScopeTopics, ZProjectConfig, ZProtectionMode, ZProtectionRuleMatcher, ZStringOrStringArray, ZTypeSeriesConfig, ZUserConfigFile, ZUserProfile, ZWindowsOptions, ZWindowsWsl2Options, ZedIDEConfigOutputPlugin, applyMetadataDefaults, applySubSeriesGlobPrefix, buildBatchFileOperationDiagnostic, buildConfigDiagnostic, buildDefaultAindexConfig, buildDiagnostic, buildFileOperationDiagnostic, buildPathStateDiagnostic, buildPromptCompilerDiagnostic, buildProtectedDeletionDiagnostic, buildUnhandledExceptionDiagnostic, buildUsageDiagnostic, checkVersionControl, clearBufferedDiagnostics, clearPromptArtifactCache, collectAllPluginOutputs, collectDeclaredWslMirrorFiles, collectDeletionTargets, collectMcpServersFromSkills, collectOutputDeclarations, compileRawPromptArtifact, createDefaultPluginConfig, createLocalizedPromptReader, createLogger, defineConfig, deriveSubAgentIdentity, diagnosticLines, discoverOutputRuntimeTargets, drainBufferedDiagnostics, executeDeclarativeWriteOutputs, filterByProjectConfig, findAllGitRepos, findGitModuleInfoDirs, flattenPromptPath, flushOutput, generateAindex, getConfigLoader, getGlobalConfigPath, getGlobalLogLevel, getPrompt, getRequiredGlobalConfigPath, hasNativeCleanupBinding, hasSourcePromptExtension, isJsonMode, listPrompts, loadUserConfig, logProtectedDeletionGuardError, mergeAindexConfig, mergeConfig, partitionBufferedDiagnostics, performCleanup, performCleanupWithNative, planCleanupWithNative, readPromptArtifact, resolveGitInfoDir, resolvePromptDefinition, resolveRuntimeCommandFromArgv, resolveSkillName, resolveSubAgentCanonicalName, resolveTopicScopes, resolveUserPath, resolveWslInstanceTargets, runCli, setGlobalLogLevel, splitDiagnosticText, syncWindowsConfigIntoWsl, toErrorMessage, toOutputCollectedContext, transformMcpConfigForCursor, transformMcpConfigForOpencode, transformMcpServerMap, upsertPromptSource, userConfigToPluginOptions, validateCommandMetadata, validateExportMetadata, validateGlobalConfig, validateOutputPluginCapabilities, validateOutputScopeOverridesForPlugin, validateOutputScopeOverridesForPlugins, validateRuleMetadata, validateSkillMetadata, validateSubAgentMetadata, writePromptArtifacts };