faf-cli 4.4.2 → 4.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. package/README.md +32 -16
  2. package/dist/cli.d.ts.map +1 -1
  3. package/dist/cli.js +75 -10
  4. package/dist/cli.js.map +1 -1
  5. package/dist/commands/agents.d.ts +14 -0
  6. package/dist/commands/agents.d.ts.map +1 -0
  7. package/dist/commands/agents.js +353 -0
  8. package/dist/commands/agents.js.map +1 -0
  9. package/dist/commands/bi-sync.d.ts +3 -0
  10. package/dist/commands/bi-sync.d.ts.map +1 -1
  11. package/dist/commands/bi-sync.js +38 -0
  12. package/dist/commands/bi-sync.js.map +1 -1
  13. package/dist/commands/cursor.d.ts +13 -0
  14. package/dist/commands/cursor.d.ts.map +1 -0
  15. package/dist/commands/cursor.js +310 -0
  16. package/dist/commands/cursor.js.map +1 -0
  17. package/dist/commands/go.d.ts.map +1 -1
  18. package/dist/commands/go.js +22 -19
  19. package/dist/commands/go.js.map +1 -1
  20. package/dist/commands/index.d.ts +12 -0
  21. package/dist/commands/index.d.ts.map +1 -1
  22. package/dist/commands/index.js +5 -4
  23. package/dist/commands/index.js.map +1 -1
  24. package/dist/commands/readme.js +16 -10
  25. package/dist/commands/readme.js.map +1 -1
  26. package/dist/commands/taf-log.d.ts +1 -0
  27. package/dist/commands/taf-log.d.ts.map +1 -1
  28. package/dist/commands/taf-log.js +53 -5
  29. package/dist/commands/taf-log.js.map +1 -1
  30. package/dist/commands/taf-stars.d.ts +8 -0
  31. package/dist/commands/taf-stars.d.ts.map +1 -0
  32. package/dist/commands/taf-stars.js +105 -0
  33. package/dist/commands/taf-stars.js.map +1 -0
  34. package/dist/commands/taf.d.ts +1 -0
  35. package/dist/commands/taf.d.ts.map +1 -1
  36. package/dist/commands/taf.js +9 -0
  37. package/dist/commands/taf.js.map +1 -1
  38. package/dist/compiler/faf-compiler.d.ts.map +1 -1
  39. package/dist/compiler/faf-compiler.js +24 -2
  40. package/dist/compiler/faf-compiler.js.map +1 -1
  41. package/dist/core-extraction-fixes.js +9 -5
  42. package/dist/core-extraction-fixes.js.map +1 -1
  43. package/dist/engines/c-mirror/broadcast/terminal-display.js +2 -1
  44. package/dist/engines/c-mirror/broadcast/terminal-display.js.map +1 -1
  45. package/dist/engines/c-mirror/core/claude-to-faf.js +12 -6
  46. package/dist/engines/c-mirror/core/claude-to-faf.js.map +1 -1
  47. package/dist/engines/c-mirror/core/events/event-emitter.js +12 -6
  48. package/dist/engines/c-mirror/core/events/event-emitter.js.map +1 -1
  49. package/dist/engines/v252-hybrid-engine.js +0 -1
  50. package/dist/engines/v252-hybrid-engine.js.map +1 -1
  51. package/dist/framework-detector.js +14 -7
  52. package/dist/framework-detector.js.map +1 -1
  53. package/dist/github/faf-git-generator.d.ts +16 -22
  54. package/dist/github/faf-git-generator.d.ts.map +1 -1
  55. package/dist/github/faf-git-generator.js +290 -320
  56. package/dist/github/faf-git-generator.js.map +1 -1
  57. package/dist/github/github-extractor.d.ts.map +1 -1
  58. package/dist/github/github-extractor.js +19 -20
  59. package/dist/github/github-extractor.js.map +1 -1
  60. package/dist/github/repo-selector.js +17 -11
  61. package/dist/github/repo-selector.js.map +1 -1
  62. package/dist/smart-faf.js +3 -2
  63. package/dist/smart-faf.js.map +1 -1
  64. package/dist/taf/index.d.ts +4 -0
  65. package/dist/taf/index.d.ts.map +1 -1
  66. package/dist/taf/index.js +16 -1
  67. package/dist/taf/index.js.map +1 -1
  68. package/dist/taf/star-badge.d.ts +32 -0
  69. package/dist/taf/star-badge.d.ts.map +1 -0
  70. package/dist/taf/star-badge.js +158 -0
  71. package/dist/taf/star-badge.js.map +1 -0
  72. package/dist/taf/star-rating.d.ts +30 -0
  73. package/dist/taf/star-rating.d.ts.map +1 -0
  74. package/dist/taf/star-rating.js +79 -0
  75. package/dist/taf/star-rating.js.map +1 -0
  76. package/dist/taf/test-output-parser.d.ts +42 -0
  77. package/dist/taf/test-output-parser.d.ts.map +1 -0
  78. package/dist/taf/test-output-parser.js +114 -0
  79. package/dist/taf/test-output-parser.js.map +1 -0
  80. package/dist/utils/agents-parser.d.ts +60 -0
  81. package/dist/utils/agents-parser.d.ts.map +1 -0
  82. package/dist/utils/agents-parser.js +325 -0
  83. package/dist/utils/agents-parser.js.map +1 -0
  84. package/dist/utils/cursorrules-parser.d.ts +56 -0
  85. package/dist/utils/cursorrules-parser.d.ts.map +1 -0
  86. package/dist/utils/cursorrules-parser.js +315 -0
  87. package/dist/utils/cursorrules-parser.js.map +1 -0
  88. package/package.json +6 -4
  89. package/project.faf +5 -5
@@ -0,0 +1,353 @@
1
+ "use strict";
2
+ /**
3
+ * faf agents - AGENTS.md Interop Commands
4
+ *
5
+ * Bidirectional interoperability between FAF and AGENTS.md files.
6
+ * Works with OpenAI Codex, Linux Foundation tooling, and any tool
7
+ * that reads AGENTS.md.
8
+ *
9
+ * Commands:
10
+ * - faf agents import Import AGENTS.md → project.faf
11
+ * - faf agents export Export project.faf → AGENTS.md
12
+ * - faf agents sync Bidirectional sync
13
+ */
14
+ var __importDefault = (this && this.__importDefault) || function (mod) {
15
+ return (mod && mod.__esModule) ? mod : { "default": mod };
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.agentsCommand = agentsCommand;
19
+ const colors_1 = require("../fix-once/colors");
20
+ const fs_1 = require("fs");
21
+ const path_1 = __importDefault(require("path"));
22
+ const championship_style_1 = require("../utils/championship-style");
23
+ const file_utils_1 = require("../utils/file-utils");
24
+ const yaml_1 = require("../fix-once/yaml");
25
+ const agents_parser_1 = require("../utils/agents-parser");
26
+ // ============================================================================
27
+ // Main Command Router
28
+ // ============================================================================
29
+ async function agentsCommand(args) {
30
+ const subcommand = args[0];
31
+ const subcommandArgs = args.slice(1);
32
+ switch (subcommand) {
33
+ case 'import':
34
+ await runAgentsImport(subcommandArgs);
35
+ break;
36
+ case 'export':
37
+ await runAgentsExport(subcommandArgs);
38
+ break;
39
+ case 'sync':
40
+ await runAgentsSync(subcommandArgs);
41
+ break;
42
+ case undefined:
43
+ case 'help':
44
+ case '--help':
45
+ case '-h':
46
+ showAgentsHelp();
47
+ break;
48
+ default:
49
+ console.error(colors_1.chalk.red(`\n❌ Unknown agents command: ${subcommand}`));
50
+ console.log('\nAvailable commands:');
51
+ showAgentsHelp();
52
+ process.exit(1);
53
+ }
54
+ }
55
+ function parseImportArgs(args) {
56
+ const options = {};
57
+ for (let i = 0; i < args.length; i++) {
58
+ const arg = args[i];
59
+ if (arg === '--path' && args[i + 1]) {
60
+ options.path = args[++i];
61
+ }
62
+ else if (arg === '--global' || arg === '-g') {
63
+ options.global = true;
64
+ }
65
+ else if (arg === '--merge' || arg === '-m') {
66
+ options.merge = true;
67
+ }
68
+ else if (arg === '--output' && args[i + 1]) {
69
+ options.output = args[++i];
70
+ }
71
+ }
72
+ return options;
73
+ }
74
+ async function runAgentsImport(args) {
75
+ const options = parseImportArgs(args);
76
+ const outputPath = options.output || path_1.default.join(process.cwd(), 'project.faf');
77
+ console.log();
78
+ console.log(championship_style_1.FAF_COLORS.fafCyan(`${championship_style_1.FAF_ICONS.rocket} Importing AGENTS.md...`));
79
+ // Determine source path
80
+ let agentsPath = null;
81
+ if (options.path) {
82
+ agentsPath = options.path;
83
+ }
84
+ else if (options.global) {
85
+ agentsPath = await (0, agents_parser_1.detectGlobalAgentsMd)();
86
+ if (!agentsPath) {
87
+ console.log(colors_1.chalk.red(`❌ Global AGENTS.md not found at ~/.codex/AGENTS.md`));
88
+ return;
89
+ }
90
+ }
91
+ else {
92
+ agentsPath = await (0, agents_parser_1.detectAgentsMd)(process.cwd());
93
+ if (!agentsPath) {
94
+ console.log(colors_1.chalk.red(`❌ AGENTS.md not found in current directory`));
95
+ console.log(colors_1.chalk.gray(' Use --path to specify location, or --global for ~/.codex/AGENTS.md'));
96
+ console.log();
97
+ return;
98
+ }
99
+ }
100
+ console.log(colors_1.chalk.gray(` Source: ${agentsPath}`));
101
+ console.log();
102
+ // Import
103
+ const result = await (0, agents_parser_1.agentsImport)(agentsPath);
104
+ if (!result.success) {
105
+ console.log(colors_1.chalk.red(`❌ Import failed`));
106
+ result.warnings.forEach(w => console.log(colors_1.chalk.yellow(` - ${w}`)));
107
+ return;
108
+ }
109
+ // Show warnings
110
+ if (result.warnings.length > 0) {
111
+ console.log(colors_1.chalk.yellow(`⚠️ Warnings:`));
112
+ result.warnings.forEach(w => console.log(colors_1.chalk.yellow(` - ${w}`)));
113
+ console.log();
114
+ }
115
+ // Show sections found
116
+ if (result.sectionsFound.length > 0) {
117
+ console.log(colors_1.chalk.green(`☑️ Sections imported:`));
118
+ result.sectionsFound.forEach(s => console.log(colors_1.chalk.gray(` - ${s}`)));
119
+ console.log();
120
+ }
121
+ // Handle merge option
122
+ if (options.merge && await (0, file_utils_1.fileExists)(outputPath)) {
123
+ try {
124
+ const existingContent = await fs_1.promises.readFile(outputPath, 'utf-8');
125
+ const existingFaf = (0, yaml_1.parse)(existingContent);
126
+ // Merge - agents values add to existing
127
+ const merged = {
128
+ ...existingFaf,
129
+ project: {
130
+ ...existingFaf.project,
131
+ rules: [...(existingFaf.project?.rules || []), ...result.faf.project.rules],
132
+ guidelines: [...(existingFaf.project?.guidelines || []), ...result.faf.project.guidelines],
133
+ codingStyle: [...(existingFaf.project?.codingStyle || []), ...result.faf.project.codingStyle],
134
+ },
135
+ metadata: {
136
+ ...existingFaf.metadata,
137
+ agents_import: result.faf.metadata.imported,
138
+ },
139
+ };
140
+ await fs_1.promises.writeFile(outputPath, (0, yaml_1.stringify)(merged));
141
+ console.log(colors_1.chalk.green(`☑️ Merged into: ${outputPath}`));
142
+ }
143
+ catch (err) {
144
+ console.log(colors_1.chalk.red(`❌ Merge failed: ${err}`));
145
+ return;
146
+ }
147
+ }
148
+ else {
149
+ // Convert to FAF YAML format
150
+ const fafContent = {
151
+ version: '1.0',
152
+ type: 'agents-import',
153
+ project: result.faf.project,
154
+ metadata: result.faf.metadata,
155
+ };
156
+ await fs_1.promises.writeFile(outputPath, (0, yaml_1.stringify)(fafContent));
157
+ console.log(colors_1.chalk.green(`☑️ Created: ${outputPath}`));
158
+ }
159
+ console.log();
160
+ console.log(championship_style_1.FAF_COLORS.fafOrange(`${championship_style_1.FAF_ICONS.trophy} AGENTS.md import complete!`));
161
+ console.log(colors_1.chalk.gray(' FAF is now your universal AI-context format.'));
162
+ console.log();
163
+ }
164
+ function parseExportArgs(args) {
165
+ const options = {};
166
+ for (let i = 0; i < args.length; i++) {
167
+ const arg = args[i];
168
+ if (arg === '--path' && args[i + 1]) {
169
+ options.path = args[++i];
170
+ }
171
+ else if (arg === '--global' || arg === '-g') {
172
+ options.global = true;
173
+ }
174
+ else if (arg === '--force' || arg === '-f') {
175
+ options.force = true;
176
+ }
177
+ }
178
+ return options;
179
+ }
180
+ async function runAgentsExport(args) {
181
+ const options = parseExportArgs(args);
182
+ console.log();
183
+ console.log(championship_style_1.FAF_COLORS.fafCyan(`${championship_style_1.FAF_ICONS.rocket} Exporting to AGENTS.md...`));
184
+ console.log();
185
+ // Find FAF file
186
+ const fafPath = await (0, file_utils_1.findFafFile)(process.cwd());
187
+ if (!fafPath) {
188
+ console.log(colors_1.chalk.red(`❌ No .faf file found in current directory`));
189
+ console.log(colors_1.chalk.gray(' Run "faf init" first to create one.'));
190
+ console.log();
191
+ return;
192
+ }
193
+ // Determine output path
194
+ let outputPath;
195
+ if (options.path) {
196
+ outputPath = options.path;
197
+ }
198
+ else if (options.global) {
199
+ const home = process.env.HOME || process.env.USERPROFILE || '';
200
+ const codexDir = path_1.default.join(home, '.codex');
201
+ try {
202
+ await fs_1.promises.mkdir(codexDir, { recursive: true });
203
+ }
204
+ catch {
205
+ // Already exists
206
+ }
207
+ outputPath = path_1.default.join(codexDir, 'AGENTS.md');
208
+ }
209
+ else {
210
+ outputPath = path_1.default.join(process.cwd(), 'AGENTS.md');
211
+ }
212
+ console.log(colors_1.chalk.gray(` Source: ${fafPath}`));
213
+ console.log(colors_1.chalk.gray(` Output: ${outputPath}`));
214
+ console.log();
215
+ // Check if file exists
216
+ if (await (0, file_utils_1.fileExists)(outputPath) && !options.force) {
217
+ console.log(colors_1.chalk.yellow(`⚠️ AGENTS.md already exists`));
218
+ console.log(colors_1.chalk.gray(' Use --force to overwrite'));
219
+ console.log();
220
+ return;
221
+ }
222
+ // Read FAF file
223
+ let fafContent;
224
+ try {
225
+ const content = await fs_1.promises.readFile(fafPath, 'utf-8');
226
+ fafContent = (0, yaml_1.parse)(content);
227
+ }
228
+ catch (err) {
229
+ console.log(colors_1.chalk.red(`❌ Failed to read FAF file: ${err}`));
230
+ return;
231
+ }
232
+ // Export
233
+ const result = await (0, agents_parser_1.agentsExport)(fafContent, outputPath);
234
+ if (!result.success) {
235
+ console.log(colors_1.chalk.red(`❌ Export failed`));
236
+ result.warnings.forEach(w => console.log(colors_1.chalk.yellow(` - ${w}`)));
237
+ return;
238
+ }
239
+ console.log(colors_1.chalk.green(`☑️ Created: ${result.filePath}`));
240
+ console.log();
241
+ console.log(championship_style_1.FAF_COLORS.fafOrange(`${championship_style_1.FAF_ICONS.trophy} AGENTS.md export complete!`));
242
+ if (options.global) {
243
+ console.log(colors_1.chalk.gray(' Your global Codex AGENTS.md is now set.'));
244
+ }
245
+ else {
246
+ console.log(colors_1.chalk.gray(' Your project now works with OpenAI Codex and 20+ tools.'));
247
+ }
248
+ console.log();
249
+ }
250
+ function parseSyncArgs(args) {
251
+ const options = { source: 'faf' };
252
+ for (let i = 0; i < args.length; i++) {
253
+ const arg = args[i];
254
+ if (arg === '--source' && args[i + 1]) {
255
+ const src = args[++i];
256
+ if (src === 'faf' || src === 'agents') {
257
+ options.source = src;
258
+ }
259
+ }
260
+ else if (arg === '--global' || arg === '-g') {
261
+ options.global = true;
262
+ }
263
+ else if (arg === '--path' && args[i + 1]) {
264
+ options.path = args[++i];
265
+ }
266
+ }
267
+ return options;
268
+ }
269
+ async function runAgentsSync(args) {
270
+ const options = parseSyncArgs(args);
271
+ console.log();
272
+ console.log(championship_style_1.FAF_COLORS.fafCyan(`${championship_style_1.FAF_ICONS.rocket} Syncing FAF <-> AGENTS.md...`));
273
+ console.log(colors_1.chalk.gray(` Source of truth: ${options.source}`));
274
+ if (options.global) {
275
+ console.log(colors_1.chalk.gray(` Target: ~/.codex/AGENTS.md (global)`));
276
+ }
277
+ console.log();
278
+ if (options.source === 'agents') {
279
+ // AGENTS.md is source of truth
280
+ const importArgs = options.global ? ['--global', '--merge'] : ['--merge'];
281
+ if (options.path) {
282
+ importArgs.push('--path', options.path);
283
+ }
284
+ await runAgentsImport(importArgs);
285
+ }
286
+ else {
287
+ // FAF is source of truth (default)
288
+ const fafPath = await (0, file_utils_1.findFafFile)(process.cwd());
289
+ if (!fafPath) {
290
+ console.log(colors_1.chalk.red(`❌ No .faf file found`));
291
+ return;
292
+ }
293
+ const exportArgs = options.global ? ['--global', '--force'] : ['--force'];
294
+ if (options.path) {
295
+ exportArgs.push('--path', options.path);
296
+ }
297
+ await runAgentsExport(exportArgs);
298
+ }
299
+ console.log(colors_1.chalk.green(`☑️ Sync complete!`));
300
+ console.log();
301
+ }
302
+ // ============================================================================
303
+ // Help
304
+ // ============================================================================
305
+ function showAgentsHelp() {
306
+ console.log();
307
+ console.log(`${championship_style_1.FAF_COLORS.fafOrange('faf agents')} - AGENTS.md Interop`);
308
+ console.log();
309
+ console.log(colors_1.chalk.cyan('Commands:'));
310
+ console.log(' faf agents import Import AGENTS.md to project.faf');
311
+ console.log(' faf agents export Export project.faf to AGENTS.md');
312
+ console.log(' faf agents sync Bidirectional sync between formats');
313
+ console.log();
314
+ console.log(colors_1.chalk.cyan('Import Options:'));
315
+ console.log(' --path <file> AGENTS.md file path');
316
+ console.log(' --global, -g Import from ~/.codex/AGENTS.md');
317
+ console.log(' --merge, -m Merge with existing .faf instead of overwrite');
318
+ console.log(' --output <file> Output file path (default: ./project.faf)');
319
+ console.log();
320
+ console.log(colors_1.chalk.cyan('Export Options:'));
321
+ console.log(' --path <file> Output file path');
322
+ console.log(' --global, -g Export to ~/.codex/AGENTS.md');
323
+ console.log(' --force, -f Overwrite existing AGENTS.md');
324
+ console.log();
325
+ console.log(colors_1.chalk.cyan('Sync Options:'));
326
+ console.log(' --source <faf|agents> Source of truth (default: faf)');
327
+ console.log(' --global, -g Sync with ~/.codex/AGENTS.md');
328
+ console.log(' --path <file> AGENTS.md file path');
329
+ console.log();
330
+ console.log(colors_1.chalk.cyan('Examples:'));
331
+ console.log(' faf agents import # Import ./AGENTS.md to project.faf');
332
+ console.log(' faf agents import --global # Import ~/.codex/AGENTS.md');
333
+ console.log(' faf agents import --merge # Merge with existing .faf');
334
+ console.log();
335
+ console.log(' faf agents export # Export to ./AGENTS.md');
336
+ console.log(' faf agents export --global # Export to ~/.codex/AGENTS.md');
337
+ console.log(' faf agents export --force # Overwrite existing');
338
+ console.log();
339
+ console.log(' faf agents sync # Sync (FAF is source of truth)');
340
+ console.log(' faf agents sync --source agents # Sync (AGENTS.md is source)');
341
+ console.log(' faf agents sync --global # Sync with global AGENTS.md');
342
+ console.log();
343
+ console.log(colors_1.chalk.gray('About:'));
344
+ console.log(colors_1.chalk.gray(' FAF supports AGENTS.md files used by OpenAI Codex, Linux Foundation'));
345
+ console.log(colors_1.chalk.gray(' tooling, and 20+ other tools. Use FAF as your universal AI-context'));
346
+ console.log(colors_1.chalk.gray(' interchange format — define once, generate everywhere.'));
347
+ console.log();
348
+ console.log(colors_1.chalk.gray(' Locations:'));
349
+ console.log(colors_1.chalk.gray(' Project: ./AGENTS.md'));
350
+ console.log(colors_1.chalk.gray(' Global: ~/.codex/AGENTS.md'));
351
+ console.log();
352
+ }
353
+ //# sourceMappingURL=agents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agents.js","sourceRoot":"","sources":["../../src/commands/agents.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;GAWG;;;;;AAmBH,sCA8BC;AA/CD,+CAA2C;AAC3C,2BAAoC;AACpC,gDAAwB;AACxB,oEAAoE;AACpE,oDAA8D;AAC9D,2CAAkF;AAClF,0DAKgC;AAEhC,+EAA+E;AAC/E,sBAAsB;AACtB,+EAA+E;AAExE,KAAK,UAAU,aAAa,CAAC,IAAc;IAChD,MAAM,UAAU,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;IAC3B,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IAErC,QAAQ,UAAU,EAAE,CAAC;QACnB,KAAK,QAAQ;YACX,MAAM,eAAe,CAAC,cAAc,CAAC,CAAC;YACtC,MAAM;QAER,KAAK,QAAQ;YACX,MAAM,eAAe,CAAC,cAAc,CAAC,CAAC;YACtC,MAAM;QAER,KAAK,MAAM;YACT,MAAM,aAAa,CAAC,cAAc,CAAC,CAAC;YACpC,MAAM;QAER,KAAK,SAAS,CAAC;QACf,KAAK,MAAM,CAAC;QACZ,KAAK,QAAQ,CAAC;QACd,KAAK,IAAI;YACP,cAAc,EAAE,CAAC;YACjB,MAAM;QAER;YACE,OAAO,CAAC,KAAK,CAAC,cAAK,CAAC,GAAG,CAAC,+BAA+B,UAAU,EAAE,CAAC,CAAC,CAAC;YACtE,OAAO,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAC;YACrC,cAAc,EAAE,CAAC;YACjB,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACH,CAAC;AAaD,SAAS,eAAe,CAAC,IAAc;IACrC,MAAM,OAAO,GAAkB,EAAE,CAAC;IAElC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC9C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QACxB,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC7C,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;QACvB,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC7C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC7B,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAAc;IAC3C,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,IAAI,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,aAAa,CAAC,CAAC;IAE7E,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,+BAAU,CAAC,OAAO,CAAC,GAAG,8BAAS,CAAC,MAAM,yBAAyB,CAAC,CAAC,CAAC;IAE9E,wBAAwB;IACxB,IAAI,UAAU,GAAkB,IAAI,CAAC;IAErC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAC5B,CAAC;SAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,UAAU,GAAG,MAAM,IAAA,oCAAoB,GAAE,CAAC;QAC1C,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC,CAAC;YAC7E,OAAO;QACT,CAAC;IACH,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,MAAM,IAAA,8BAAc,EAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,GAAG,CAAC,4CAA4C,CAAC,CAAC,CAAC;YACrE,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC,CAAC;YACjG,OAAO,CAAC,GAAG,EAAE,CAAC;YACd,OAAO;QACT,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,cAAc,UAAU,EAAE,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,SAAS;IACT,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAY,EAAC,UAAU,CAAC,CAAC;IAE9C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrE,OAAO;IACT,CAAC;IAED,gBAAgB;IAChB,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrE,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,sBAAsB;IACtB,IAAI,MAAM,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,KAAK,CAAC,uBAAuB,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACxE,OAAO,CAAC,GAAG,EAAE,CAAC;IAChB,CAAC;IAED,sBAAsB;IACtB,IAAI,OAAO,CAAC,KAAK,IAAI,MAAM,IAAA,uBAAU,EAAC,UAAU,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC;YACH,MAAM,eAAe,GAAG,MAAM,aAAE,CAAC,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YAC/D,MAAM,WAAW,GAAG,IAAA,YAAS,EAAC,eAAe,CAAQ,CAAC;YAEtD,wCAAwC;YACxC,MAAM,MAAM,GAAG;gBACb,GAAG,WAAW;gBACd,OAAO,EAAE;oBACP,GAAG,WAAW,CAAC,OAAO;oBACtB,KAAK,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC;oBAC3E,UAAU,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,UAAU,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC;oBAC1F,WAAW,EAAE,CAAC,GAAG,CAAC,WAAW,CAAC,OAAO,EAAE,WAAW,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC;iBAC9F;gBACD,QAAQ,EAAE;oBACR,GAAG,WAAW,CAAC,QAAQ;oBACvB,aAAa,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ;iBAC5C;aACF,CAAC;YAEF,MAAM,aAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAA,gBAAa,EAAC,MAAM,CAAC,CAAC,CAAC;YACtD,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,KAAK,CAAC,mBAAmB,UAAU,EAAE,CAAC,CAAC,CAAC;QAC5D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,GAAG,CAAC,mBAAmB,GAAG,EAAE,CAAC,CAAC,CAAC;YACjD,OAAO;QACT,CAAC;IACH,CAAC;SAAM,CAAC;QACN,6BAA6B;QAC7B,MAAM,UAAU,GAAG;YACjB,OAAO,EAAE,KAAK;YACd,IAAI,EAAE,eAAe;YACrB,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,OAAO;YAC3B,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,QAAQ;SAC9B,CAAC;QAEF,MAAM,aAAE,CAAC,SAAS,CAAC,UAAU,EAAE,IAAA,gBAAa,EAAC,UAAU,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,KAAK,CAAC,eAAe,UAAU,EAAE,CAAC,CAAC,CAAC;IACxD,CAAC;IAED,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,+BAAU,CAAC,SAAS,CAAC,GAAG,8BAAS,CAAC,MAAM,6BAA6B,CAAC,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAYD,SAAS,eAAe,CAAC,IAAc;IACrC,MAAM,OAAO,GAAkB,EAAE,CAAC;IAElC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACpC,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC9C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QACxB,CAAC;aAAM,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC7C,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;QACvB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,eAAe,CAAC,IAAc;IAC3C,MAAM,OAAO,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;IAEtC,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,+BAAU,CAAC,OAAO,CAAC,GAAG,8BAAS,CAAC,MAAM,4BAA4B,CAAC,CAAC,CAAC;IACjF,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,gBAAgB;IAChB,MAAM,OAAO,GAAG,MAAM,IAAA,wBAAW,EAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACjD,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,GAAG,CAAC,2CAA2C,CAAC,CAAC,CAAC;QACpE,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;QAClE,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,wBAAwB;IACxB,IAAI,UAAkB,CAAC;IACvB,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAC5B,CAAC;SAAM,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC;QAC/D,MAAM,QAAQ,GAAG,cAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC3C,IAAI,CAAC;YACH,MAAM,aAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAChD,CAAC;QAAC,MAAM,CAAC;YACP,iBAAiB;QACnB,CAAC;QACD,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;IAChD,CAAC;SAAM,CAAC;QACN,UAAU,GAAG,cAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,EAAE,WAAW,CAAC,CAAC;IACrD,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC,CAAC;IACjD,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,cAAc,UAAU,EAAE,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,uBAAuB;IACvB,IAAI,MAAM,IAAA,uBAAU,EAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACzD,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,6BAA6B,CAAC,CAAC,CAAC;QACvD,OAAO,CAAC,GAAG,EAAE,CAAC;QACd,OAAO;IACT,CAAC;IAED,gBAAgB;IAChB,IAAI,UAAe,CAAC;IACpB,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,MAAM,aAAE,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QACpD,UAAU,GAAG,IAAA,YAAS,EAAC,OAAO,CAAC,CAAC;IAClC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,GAAG,CAAC,8BAA8B,GAAG,EAAE,CAAC,CAAC,CAAC;QAC5D,OAAO;IACT,CAAC;IAED,SAAS;IACT,MAAM,MAAM,GAAG,MAAM,IAAA,4BAAY,EAAC,UAAU,EAAE,UAAU,CAAC,CAAC;IAE1D,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,CAAC;QAC1C,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QACrE,OAAO;IACT,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,KAAK,CAAC,eAAe,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,OAAO,CAAC,GAAG,CAAC,+BAAU,CAAC,SAAS,CAAC,GAAG,8BAAS,CAAC,MAAM,6BAA6B,CAAC,CAAC,CAAC;IACpF,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAC,CAAC;IACxE,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAC,CAAC;IACxF,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAYD,SAAS,aAAa,CAAC,IAAc;IACnC,MAAM,OAAO,GAAgB,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAE/C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,IAAI,GAAG,KAAK,UAAU,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YACtC,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;YACtB,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,QAAQ,EAAE,CAAC;gBACtC,OAAO,CAAC,MAAM,GAAG,GAAG,CAAC;YACvB,CAAC;QACH,CAAC;aAAM,IAAI,GAAG,KAAK,UAAU,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;YAC9C,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;QACxB,CAAC;aAAM,IAAI,GAAG,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC;YAC3C,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAC3B,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,aAAa,CAAC,IAAc;IACzC,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAEpC,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,+BAAU,CAAC,OAAO,CAAC,GAAG,8BAAS,CAAC,MAAM,+BAA+B,CAAC,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,uBAAuB,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;IACjE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC,CAAC;IACpE,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;IAEd,IAAI,OAAO,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QAChC,+BAA+B;QAC/B,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC1E,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC;QACD,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;SAAM,CAAC;QACN,mCAAmC;QACnC,MAAM,OAAO,GAAG,MAAM,IAAA,wBAAW,EAAC,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;QACjD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC,CAAC;YAC/C,OAAO;QACT,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QAC1E,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;YACjB,UAAU,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;QAC1C,CAAC;QACD,MAAM,eAAe,CAAC,UAAU,CAAC,CAAC;IACpC,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,+EAA+E;AAC/E,OAAO;AACP,+EAA+E;AAE/E,SAAS,cAAc;IACrB,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,GAAG,+BAAU,CAAC,SAAS,CAAC,YAAY,CAAC,sBAAsB,CAAC,CAAC;IACzE,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,yDAAyD,CAAC,CAAC;IACvE,OAAO,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;IAC1E,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;IACjE,OAAO,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC;IAChF,OAAO,CAAC,GAAG,CAAC,8DAA8D,CAAC,CAAC;IAC5E,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC3C,OAAO,CAAC,GAAG,CAAC,qCAAqC,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,iDAAiD,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC;IACzC,OAAO,CAAC,GAAG,CAAC,0DAA0D,CAAC,CAAC;IACxE,OAAO,CAAC,GAAG,CAAC,wDAAwD,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IACrC,OAAO,CAAC,GAAG,CAAC,4EAA4E,CAAC,CAAC;IAC1F,OAAO,CAAC,GAAG,CAAC,oEAAoE,CAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CAAC,mEAAmE,CAAC,CAAC;IACjF,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;IAC9E,OAAO,CAAC,GAAG,CAAC,uEAAuE,CAAC,CAAC;IACrF,OAAO,CAAC,GAAG,CAAC,6DAA6D,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,wEAAwE,CAAC,CAAC;IACtF,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,CAAC,qEAAqE,CAAC,CAAC;IACnF,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC;IAClC,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,uEAAuE,CAAC,CAAC,CAAC;IACjG,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAC,CAAC;IAChG,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC,CAAC;IACpF,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC;IACxC,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC;IACpD,OAAO,CAAC,GAAG,CAAC,cAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC;IAC3D,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC"}
@@ -18,6 +18,9 @@ export interface BiSyncOptions {
18
18
  auto?: boolean;
19
19
  watch?: boolean;
20
20
  force?: boolean;
21
+ agents?: boolean;
22
+ cursor?: boolean;
23
+ all?: boolean;
21
24
  }
22
25
  export interface SyncResult {
23
26
  success: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"bi-sync.d.ts","sourceRoot":"","sources":["../../src/commands/bi-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAUH,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,eAAe,GAAG,eAAe,GAAG,eAAe,GAAG,MAAM,CAAC;IACxE,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CA6ExD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,GAAG,MAAM,CAanF;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,UAAU,CAAC,CA+E7D;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAiC9E"}
1
+ {"version":3,"file":"bi-sync.d.ts","sourceRoot":"","sources":["../../src/commands/bi-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AAaH,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,GAAG,CAAC,EAAE,OAAO,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,eAAe,GAAG,eAAe,GAAG,eAAe,GAAG,MAAM,CAAC;IACxE,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CA6ExD;AAED;;GAEG;AACH,wBAAgB,aAAa,CAAC,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,GAAG,GAAG,MAAM,CAanF;AAED;;GAEG;AACH,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,UAAU,CAAC,CA+E7D;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAyE9E"}
@@ -60,6 +60,9 @@ const faf_mirror_1 = require("../engines/c-mirror/faf-extensions/faf-mirror");
60
60
  const file_utils_1 = require("../utils/file-utils");
61
61
  const technical_credit_1 = require("../utils/technical-credit");
62
62
  const championship_style_1 = require("../utils/championship-style");
63
+ const agents_parser_1 = require("../utils/agents-parser");
64
+ const cursorrules_parser_1 = require("../utils/cursorrules-parser");
65
+ const gemini_parser_1 = require("../utils/gemini-parser");
63
66
  /**
64
67
  * 🔄 Convert .faf YAML content to claude.md Markdown format
65
68
  */
@@ -230,6 +233,41 @@ async function biSyncCommand(options = {}) {
230
233
  }
231
234
  // Clean up
232
235
  mirror.stop();
236
+ // Sync to additional targets if requested
237
+ if (result.success && fafFile && (options.agents || options.cursor || options.all)) {
238
+ const fafContent = await fs_1.promises.readFile(fafFile, 'utf-8');
239
+ const fafData = (0, yaml_1.parse)(fafContent);
240
+ const projectDir = path.dirname(fafFile);
241
+ const additionalFiles = [];
242
+ if (options.agents || options.all) {
243
+ const agentsPath = path.join(projectDir, 'AGENTS.md');
244
+ const agentsResult = await (0, agents_parser_1.agentsExport)(fafData, agentsPath);
245
+ if (agentsResult.success) {
246
+ additionalFiles.push('AGENTS.md');
247
+ }
248
+ }
249
+ if (options.cursor || options.all) {
250
+ const cursorPath = path.join(projectDir, '.cursorrules');
251
+ const cursorResult = await (0, cursorrules_parser_1.cursorExport)(fafData, cursorPath);
252
+ if (cursorResult.success) {
253
+ additionalFiles.push('.cursorrules');
254
+ }
255
+ }
256
+ if (options.all) {
257
+ const geminiPath = path.join(projectDir, 'GEMINI.md');
258
+ const geminiResult = await (0, gemini_parser_1.geminiExport)(fafData, geminiPath);
259
+ if (geminiResult.success) {
260
+ additionalFiles.push('GEMINI.md');
261
+ }
262
+ }
263
+ if (additionalFiles.length > 0) {
264
+ console.log();
265
+ console.log(championship_style_1.FAF_COLORS.fafCyan(`${championship_style_1.FAF_ICONS.lightning} Additional targets synced:`));
266
+ for (const f of additionalFiles) {
267
+ console.log(` ${championship_style_1.FAF_ICONS.link} ${f}`);
268
+ }
269
+ }
270
+ }
233
271
  // Exit with appropriate code (unless called from auto command)
234
272
  if (!options.auto) {
235
273
  process.exit(result.success ? 0 : 1);
@@ -1 +1 @@
1
- {"version":3,"file":"bi-sync.js","sourceRoot":"","sources":["../../src/commands/bi-sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bi-sync.js","sourceRoot":"","sources":["../../src/commands/bi-sync.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * faf cursor - Cursor IDE Interop Commands
3
+ *
4
+ * Bidirectional interoperability between FAF and .cursorrules files.
5
+ * Generates legacy .cursorrules format (single file) for widest compatibility.
6
+ *
7
+ * Commands:
8
+ * - faf cursor import Import .cursorrules → project.faf
9
+ * - faf cursor export Export project.faf → .cursorrules
10
+ * - faf cursor sync Bidirectional sync
11
+ */
12
+ export declare function cursorCommand(args: string[]): Promise<void>;
13
+ //# sourceMappingURL=cursor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor.d.ts","sourceRoot":"","sources":["../../src/commands/cursor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAkBH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CA8BjE"}