@ai-coders/context 0.5.2 → 0.6.1

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 (328) hide show
  1. package/README.md +247 -12
  2. package/dist/generators/agents/agentGenerator.d.ts +3 -0
  3. package/dist/generators/agents/agentGenerator.d.ts.map +1 -1
  4. package/dist/generators/agents/agentGenerator.js +13 -7
  5. package/dist/generators/agents/agentGenerator.js.map +1 -1
  6. package/dist/generators/agents/templates/playbookTemplate.d.ts.map +1 -1
  7. package/dist/generators/agents/templates/playbookTemplate.js +3 -1
  8. package/dist/generators/agents/templates/playbookTemplate.js.map +1 -1
  9. package/dist/generators/documentation/codebaseMapGenerator.d.ts +98 -0
  10. package/dist/generators/documentation/codebaseMapGenerator.d.ts.map +1 -0
  11. package/dist/generators/documentation/codebaseMapGenerator.js +247 -0
  12. package/dist/generators/documentation/codebaseMapGenerator.js.map +1 -0
  13. package/dist/generators/documentation/documentationGenerator.d.ts +2 -0
  14. package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -1
  15. package/dist/generators/documentation/documentationGenerator.js +20 -1
  16. package/dist/generators/documentation/documentationGenerator.js.map +1 -1
  17. package/dist/generators/documentation/index.d.ts +2 -0
  18. package/dist/generators/documentation/index.d.ts.map +1 -1
  19. package/dist/generators/documentation/index.js +3 -1
  20. package/dist/generators/documentation/index.js.map +1 -1
  21. package/dist/generators/documentation/templates/architectureTemplate.d.ts.map +1 -1
  22. package/dist/generators/documentation/templates/architectureTemplate.js +2 -31
  23. package/dist/generators/documentation/templates/architectureTemplate.js.map +1 -1
  24. package/dist/generators/documentation/templates/common.d.ts +4 -1
  25. package/dist/generators/documentation/templates/common.d.ts.map +1 -1
  26. package/dist/generators/documentation/templates/common.js +4 -2
  27. package/dist/generators/documentation/templates/common.js.map +1 -1
  28. package/dist/generators/plans/templates/planTemplate.d.ts.map +1 -1
  29. package/dist/generators/plans/templates/planTemplate.js +46 -2
  30. package/dist/generators/plans/templates/planTemplate.js.map +1 -1
  31. package/dist/generators/skills/index.d.ts +7 -0
  32. package/dist/generators/skills/index.d.ts.map +1 -0
  33. package/dist/generators/skills/index.js +15 -0
  34. package/dist/generators/skills/index.js.map +1 -0
  35. package/dist/generators/skills/skillGenerator.d.ts +53 -0
  36. package/dist/generators/skills/skillGenerator.d.ts.map +1 -0
  37. package/dist/generators/skills/skillGenerator.js +149 -0
  38. package/dist/generators/skills/skillGenerator.js.map +1 -0
  39. package/dist/generators/skills/templates/indexTemplate.d.ts +13 -0
  40. package/dist/generators/skills/templates/indexTemplate.d.ts.map +1 -0
  41. package/dist/generators/skills/templates/indexTemplate.js +102 -0
  42. package/dist/generators/skills/templates/indexTemplate.js.map +1 -0
  43. package/dist/generators/skills/templates/skillTemplate.d.ts +20 -0
  44. package/dist/generators/skills/templates/skillTemplate.d.ts.map +1 -0
  45. package/dist/generators/skills/templates/skillTemplate.js +85 -0
  46. package/dist/generators/skills/templates/skillTemplate.js.map +1 -0
  47. package/dist/index.d.ts.map +1 -1
  48. package/dist/index.js +1315 -43
  49. package/dist/index.js.map +1 -1
  50. package/dist/services/ai/agentEvents.d.ts +1 -1
  51. package/dist/services/ai/agentEvents.d.ts.map +1 -1
  52. package/dist/services/ai/agents/index.d.ts +2 -0
  53. package/dist/services/ai/agents/index.d.ts.map +1 -1
  54. package/dist/services/ai/agents/index.js +3 -1
  55. package/dist/services/ai/agents/index.js.map +1 -1
  56. package/dist/services/ai/agents/skillAgent.d.ts +49 -0
  57. package/dist/services/ai/agents/skillAgent.d.ts.map +1 -0
  58. package/dist/services/ai/agents/skillAgent.js +179 -0
  59. package/dist/services/ai/agents/skillAgent.js.map +1 -0
  60. package/dist/services/ai/prompts/index.d.ts +1 -1
  61. package/dist/services/ai/prompts/index.d.ts.map +1 -1
  62. package/dist/services/ai/prompts/index.js +2 -1
  63. package/dist/services/ai/prompts/index.js.map +1 -1
  64. package/dist/services/ai/prompts/sharedPrompts.d.ts +4 -0
  65. package/dist/services/ai/prompts/sharedPrompts.d.ts.map +1 -1
  66. package/dist/services/ai/prompts/sharedPrompts.js +33 -0
  67. package/dist/services/ai/prompts/sharedPrompts.js.map +1 -1
  68. package/dist/services/ai/schemas.d.ts +98 -1
  69. package/dist/services/ai/schemas.d.ts.map +1 -1
  70. package/dist/services/ai/schemas.js +61 -3
  71. package/dist/services/ai/schemas.js.map +1 -1
  72. package/dist/services/ai/toolRegistry.d.ts.map +1 -1
  73. package/dist/services/ai/toolRegistry.js +17 -0
  74. package/dist/services/ai/toolRegistry.js.map +1 -1
  75. package/dist/services/ai/tools/fillScaffoldingTool.d.ts +21 -4
  76. package/dist/services/ai/tools/fillScaffoldingTool.d.ts.map +1 -1
  77. package/dist/services/ai/tools/fillScaffoldingTool.js +17 -0
  78. package/dist/services/ai/tools/fillScaffoldingTool.js.map +1 -1
  79. package/dist/services/ai/tools/getCodebaseMapTool.d.ts +17 -0
  80. package/dist/services/ai/tools/getCodebaseMapTool.d.ts.map +1 -0
  81. package/dist/services/ai/tools/getCodebaseMapTool.js +115 -0
  82. package/dist/services/ai/tools/getCodebaseMapTool.js.map +1 -0
  83. package/dist/services/ai/tools/index.d.ts +3 -2
  84. package/dist/services/ai/tools/index.d.ts.map +1 -1
  85. package/dist/services/ai/tools/index.js +12 -3
  86. package/dist/services/ai/tools/index.js.map +1 -1
  87. package/dist/services/ai/tools/initializeContextTool.d.ts +22 -4
  88. package/dist/services/ai/tools/initializeContextTool.d.ts.map +1 -1
  89. package/dist/services/ai/tools/initializeContextTool.js +201 -16
  90. package/dist/services/ai/tools/initializeContextTool.js.map +1 -1
  91. package/dist/services/ai/tools/scaffoldPlanTool.d.ts +11 -0
  92. package/dist/services/ai/tools/scaffoldPlanTool.d.ts.map +1 -1
  93. package/dist/services/ai/tools/scaffoldPlanTool.js +79 -7
  94. package/dist/services/ai/tools/scaffoldPlanTool.js.map +1 -1
  95. package/dist/services/export/exportRulesService.d.ts +62 -0
  96. package/dist/services/export/exportRulesService.d.ts.map +1 -0
  97. package/dist/services/export/exportRulesService.js +242 -0
  98. package/dist/services/export/exportRulesService.js.map +1 -0
  99. package/dist/services/export/index.d.ts +5 -0
  100. package/dist/services/export/index.d.ts.map +1 -0
  101. package/dist/services/export/index.js +10 -0
  102. package/dist/services/export/index.js.map +1 -0
  103. package/dist/services/export/skillExportService.d.ts +64 -0
  104. package/dist/services/export/skillExportService.d.ts.map +1 -0
  105. package/dist/services/export/skillExportService.js +238 -0
  106. package/dist/services/export/skillExportService.js.map +1 -0
  107. package/dist/services/fill/skillFillService.d.ts +50 -0
  108. package/dist/services/fill/skillFillService.d.ts.map +1 -0
  109. package/dist/services/fill/skillFillService.js +254 -0
  110. package/dist/services/fill/skillFillService.js.map +1 -0
  111. package/dist/services/import/agentsDetector.d.ts +12 -0
  112. package/dist/services/import/agentsDetector.d.ts.map +1 -0
  113. package/dist/services/import/agentsDetector.js +183 -0
  114. package/dist/services/import/agentsDetector.js.map +1 -0
  115. package/dist/services/import/importAgentsService.d.ts +14 -0
  116. package/dist/services/import/importAgentsService.d.ts.map +1 -0
  117. package/dist/services/import/importAgentsService.js +195 -0
  118. package/dist/services/import/importAgentsService.js.map +1 -0
  119. package/dist/services/import/importRulesService.d.ts +17 -0
  120. package/dist/services/import/importRulesService.d.ts.map +1 -0
  121. package/dist/services/import/importRulesService.js +222 -0
  122. package/dist/services/import/importRulesService.js.map +1 -0
  123. package/dist/services/import/index.d.ts +7 -0
  124. package/dist/services/import/index.d.ts.map +1 -0
  125. package/dist/services/import/index.js +28 -0
  126. package/dist/services/import/index.js.map +1 -0
  127. package/dist/services/import/presets.d.ts +8 -0
  128. package/dist/services/import/presets.d.ts.map +1 -0
  129. package/dist/services/import/presets.js +176 -0
  130. package/dist/services/import/presets.js.map +1 -0
  131. package/dist/services/import/rulesDetector.d.ts +16 -0
  132. package/dist/services/import/rulesDetector.d.ts.map +1 -0
  133. package/dist/services/import/rulesDetector.js +278 -0
  134. package/dist/services/import/rulesDetector.js.map +1 -0
  135. package/dist/services/import/types.d.ts +72 -0
  136. package/dist/services/import/types.d.ts.map +1 -0
  137. package/dist/services/import/types.js +3 -0
  138. package/dist/services/import/types.js.map +1 -0
  139. package/dist/services/mcp/mcpServer.d.ts +24 -0
  140. package/dist/services/mcp/mcpServer.d.ts.map +1 -1
  141. package/dist/services/mcp/mcpServer.js +1651 -7
  142. package/dist/services/mcp/mcpServer.js.map +1 -1
  143. package/dist/services/quickSync/index.d.ts +3 -0
  144. package/dist/services/quickSync/index.d.ts.map +1 -0
  145. package/dist/services/quickSync/index.js +7 -0
  146. package/dist/services/quickSync/index.js.map +1 -0
  147. package/dist/services/quickSync/quickSyncService.d.ts +72 -0
  148. package/dist/services/quickSync/quickSyncService.d.ts.map +1 -0
  149. package/dist/services/quickSync/quickSyncService.js +268 -0
  150. package/dist/services/quickSync/quickSyncService.js.map +1 -0
  151. package/dist/services/report/index.d.ts +3 -0
  152. package/dist/services/report/index.d.ts.map +1 -0
  153. package/dist/services/report/index.js +6 -0
  154. package/dist/services/report/index.js.map +1 -0
  155. package/dist/services/report/reportService.d.ts +131 -0
  156. package/dist/services/report/reportService.d.ts.map +1 -0
  157. package/dist/services/report/reportService.js +372 -0
  158. package/dist/services/report/reportService.js.map +1 -0
  159. package/dist/services/semantic/contextBuilder.d.ts +8 -1
  160. package/dist/services/semantic/contextBuilder.d.ts.map +1 -1
  161. package/dist/services/semantic/contextBuilder.js +107 -20
  162. package/dist/services/semantic/contextBuilder.js.map +1 -1
  163. package/dist/services/shared/globPatterns.d.ts +48 -0
  164. package/dist/services/shared/globPatterns.d.ts.map +1 -0
  165. package/dist/services/shared/globPatterns.js +110 -0
  166. package/dist/services/shared/globPatterns.js.map +1 -0
  167. package/dist/services/shared/index.d.ts +10 -0
  168. package/dist/services/shared/index.d.ts.map +1 -0
  169. package/dist/services/shared/index.js +46 -0
  170. package/dist/services/shared/index.js.map +1 -0
  171. package/dist/services/shared/pathHelpers.d.ts +71 -0
  172. package/dist/services/shared/pathHelpers.d.ts.map +1 -0
  173. package/dist/services/shared/pathHelpers.js +162 -0
  174. package/dist/services/shared/pathHelpers.js.map +1 -0
  175. package/dist/services/shared/types.d.ts +74 -0
  176. package/dist/services/shared/types.d.ts.map +1 -0
  177. package/dist/services/shared/types.js +44 -0
  178. package/dist/services/shared/types.js.map +1 -0
  179. package/dist/services/shared/uiHelpers.d.ts +70 -0
  180. package/dist/services/shared/uiHelpers.d.ts.map +1 -0
  181. package/dist/services/shared/uiHelpers.js +131 -0
  182. package/dist/services/shared/uiHelpers.js.map +1 -0
  183. package/dist/services/stack/index.d.ts +6 -0
  184. package/dist/services/stack/index.d.ts.map +1 -0
  185. package/dist/services/stack/index.js +25 -0
  186. package/dist/services/stack/index.js.map +1 -0
  187. package/dist/services/stack/projectTypeClassifier.d.ts +59 -0
  188. package/dist/services/stack/projectTypeClassifier.d.ts.map +1 -0
  189. package/dist/services/stack/projectTypeClassifier.js +242 -0
  190. package/dist/services/stack/projectTypeClassifier.js.map +1 -0
  191. package/dist/services/stack/scaffoldFilter.d.ts +75 -0
  192. package/dist/services/stack/scaffoldFilter.d.ts.map +1 -0
  193. package/dist/services/stack/scaffoldFilter.js +222 -0
  194. package/dist/services/stack/scaffoldFilter.js.map +1 -0
  195. package/dist/services/stack/stackDetector.d.ts +43 -0
  196. package/dist/services/stack/stackDetector.d.ts.map +1 -0
  197. package/dist/services/stack/stackDetector.js +406 -0
  198. package/dist/services/stack/stackDetector.js.map +1 -0
  199. package/dist/services/start/index.d.ts +3 -0
  200. package/dist/services/start/index.d.ts.map +1 -0
  201. package/dist/services/start/index.js +6 -0
  202. package/dist/services/start/index.js.map +1 -0
  203. package/dist/services/start/startService.d.ts +64 -0
  204. package/dist/services/start/startService.d.ts.map +1 -0
  205. package/dist/services/start/startService.js +180 -0
  206. package/dist/services/start/startService.js.map +1 -0
  207. package/dist/services/sync/presets.d.ts.map +1 -1
  208. package/dist/services/sync/presets.js +16 -1
  209. package/dist/services/sync/presets.js.map +1 -1
  210. package/dist/services/sync/types.d.ts +1 -1
  211. package/dist/services/sync/types.d.ts.map +1 -1
  212. package/dist/services/workflow/autoAdvance.d.ts +38 -0
  213. package/dist/services/workflow/autoAdvance.d.ts.map +1 -0
  214. package/dist/services/workflow/autoAdvance.js +219 -0
  215. package/dist/services/workflow/autoAdvance.js.map +1 -0
  216. package/dist/services/workflow/index.d.ts +6 -0
  217. package/dist/services/workflow/index.d.ts.map +1 -0
  218. package/dist/services/workflow/index.js +11 -0
  219. package/dist/services/workflow/index.js.map +1 -0
  220. package/dist/services/workflow/workflowService.d.ts +98 -0
  221. package/dist/services/workflow/workflowService.d.ts.map +1 -0
  222. package/dist/services/workflow/workflowService.js +210 -0
  223. package/dist/services/workflow/workflowService.js.map +1 -0
  224. package/dist/utils/cliUI.d.ts +4 -0
  225. package/dist/utils/cliUI.d.ts.map +1 -1
  226. package/dist/utils/cliUI.js +31 -1
  227. package/dist/utils/cliUI.js.map +1 -1
  228. package/dist/utils/i18n.d.ts +202 -0
  229. package/dist/utils/i18n.d.ts.map +1 -1
  230. package/dist/utils/i18n.js +438 -2
  231. package/dist/utils/i18n.js.map +1 -1
  232. package/dist/utils/theme.d.ts +1 -0
  233. package/dist/utils/theme.d.ts.map +1 -1
  234. package/dist/utils/theme.js +1 -0
  235. package/dist/utils/theme.js.map +1 -1
  236. package/dist/workflow/agents/agentRegistry.d.ts +82 -0
  237. package/dist/workflow/agents/agentRegistry.d.ts.map +1 -0
  238. package/dist/workflow/agents/agentRegistry.js +205 -0
  239. package/dist/workflow/agents/agentRegistry.js.map +1 -0
  240. package/dist/workflow/agents/index.d.ts +7 -0
  241. package/dist/workflow/agents/index.d.ts.map +1 -0
  242. package/dist/workflow/agents/index.js +14 -0
  243. package/dist/workflow/agents/index.js.map +1 -0
  244. package/dist/workflow/collaboration.d.ts +110 -0
  245. package/dist/workflow/collaboration.d.ts.map +1 -0
  246. package/dist/workflow/collaboration.js +301 -0
  247. package/dist/workflow/collaboration.js.map +1 -0
  248. package/dist/workflow/index.d.ts +25 -0
  249. package/dist/workflow/index.d.ts.map +1 -0
  250. package/dist/workflow/index.js +124 -0
  251. package/dist/workflow/index.js.map +1 -0
  252. package/dist/workflow/orchestration/agentOrchestrator.d.ts +68 -0
  253. package/dist/workflow/orchestration/agentOrchestrator.d.ts.map +1 -0
  254. package/dist/workflow/orchestration/agentOrchestrator.js +280 -0
  255. package/dist/workflow/orchestration/agentOrchestrator.js.map +1 -0
  256. package/dist/workflow/orchestration/documentLinker.d.ts +100 -0
  257. package/dist/workflow/orchestration/documentLinker.d.ts.map +1 -0
  258. package/dist/workflow/orchestration/documentLinker.js +266 -0
  259. package/dist/workflow/orchestration/documentLinker.js.map +1 -0
  260. package/dist/workflow/orchestration/index.d.ts +9 -0
  261. package/dist/workflow/orchestration/index.d.ts.map +1 -0
  262. package/dist/workflow/orchestration/index.js +25 -0
  263. package/dist/workflow/orchestration/index.js.map +1 -0
  264. package/dist/workflow/orchestrator.d.ts +99 -0
  265. package/dist/workflow/orchestrator.d.ts.map +1 -0
  266. package/dist/workflow/orchestrator.js +217 -0
  267. package/dist/workflow/orchestrator.js.map +1 -0
  268. package/dist/workflow/phases.d.ts +64 -0
  269. package/dist/workflow/phases.d.ts.map +1 -0
  270. package/dist/workflow/phases.js +151 -0
  271. package/dist/workflow/phases.js.map +1 -0
  272. package/dist/workflow/plans/index.d.ts +8 -0
  273. package/dist/workflow/plans/index.d.ts.map +1 -0
  274. package/dist/workflow/plans/index.js +27 -0
  275. package/dist/workflow/plans/index.js.map +1 -0
  276. package/dist/workflow/plans/planLinker.d.ts +119 -0
  277. package/dist/workflow/plans/planLinker.d.ts.map +1 -0
  278. package/dist/workflow/plans/planLinker.js +499 -0
  279. package/dist/workflow/plans/planLinker.js.map +1 -0
  280. package/dist/workflow/plans/types.d.ts +167 -0
  281. package/dist/workflow/plans/types.d.ts.map +1 -0
  282. package/dist/workflow/plans/types.js +25 -0
  283. package/dist/workflow/plans/types.js.map +1 -0
  284. package/dist/workflow/prevcConfig.d.ts +27 -0
  285. package/dist/workflow/prevcConfig.d.ts.map +1 -0
  286. package/dist/workflow/prevcConfig.js +153 -0
  287. package/dist/workflow/prevcConfig.js.map +1 -0
  288. package/dist/workflow/roles.d.ts +44 -0
  289. package/dist/workflow/roles.d.ts.map +1 -0
  290. package/dist/workflow/roles.js +112 -0
  291. package/dist/workflow/roles.js.map +1 -0
  292. package/dist/workflow/scaling.d.ts +44 -0
  293. package/dist/workflow/scaling.d.ts.map +1 -0
  294. package/dist/workflow/scaling.js +224 -0
  295. package/dist/workflow/scaling.js.map +1 -0
  296. package/dist/workflow/skills/frontmatter.d.ts +23 -0
  297. package/dist/workflow/skills/frontmatter.d.ts.map +1 -0
  298. package/dist/workflow/skills/frontmatter.js +100 -0
  299. package/dist/workflow/skills/frontmatter.js.map +1 -0
  300. package/dist/workflow/skills/index.d.ts +10 -0
  301. package/dist/workflow/skills/index.d.ts.map +1 -0
  302. package/dist/workflow/skills/index.js +22 -0
  303. package/dist/workflow/skills/index.js.map +1 -0
  304. package/dist/workflow/skills/skillRegistry.d.ts +60 -0
  305. package/dist/workflow/skills/skillRegistry.d.ts.map +1 -0
  306. package/dist/workflow/skills/skillRegistry.js +257 -0
  307. package/dist/workflow/skills/skillRegistry.js.map +1 -0
  308. package/dist/workflow/skills/skillTemplates.d.ts +16 -0
  309. package/dist/workflow/skills/skillTemplates.d.ts.map +1 -0
  310. package/dist/workflow/skills/skillTemplates.js +610 -0
  311. package/dist/workflow/skills/skillTemplates.js.map +1 -0
  312. package/dist/workflow/skills/types.d.ts +72 -0
  313. package/dist/workflow/skills/types.d.ts.map +1 -0
  314. package/dist/workflow/skills/types.js +48 -0
  315. package/dist/workflow/skills/types.js.map +1 -0
  316. package/dist/workflow/status/statusManager.d.ts +84 -0
  317. package/dist/workflow/status/statusManager.d.ts.map +1 -0
  318. package/dist/workflow/status/statusManager.js +402 -0
  319. package/dist/workflow/status/statusManager.js.map +1 -0
  320. package/dist/workflow/status/templates.d.ts +40 -0
  321. package/dist/workflow/status/templates.d.ts.map +1 -0
  322. package/dist/workflow/status/templates.js +148 -0
  323. package/dist/workflow/status/templates.js.map +1 -0
  324. package/dist/workflow/types.d.ts +178 -0
  325. package/dist/workflow/types.d.ts.map +1 -0
  326. package/dist/workflow/types.js +25 -0
  327. package/dist/workflow/types.js.map +1 -0
  328. package/package.json +1 -1
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ /**
3
+ * Skills Generator Module
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.generateSkillsIndex = exports.getDefaultPhases = exports.generateSkillContent = exports.createSkillGenerator = exports.SkillGenerator = void 0;
7
+ var skillGenerator_1 = require("./skillGenerator");
8
+ Object.defineProperty(exports, "SkillGenerator", { enumerable: true, get: function () { return skillGenerator_1.SkillGenerator; } });
9
+ Object.defineProperty(exports, "createSkillGenerator", { enumerable: true, get: function () { return skillGenerator_1.createSkillGenerator; } });
10
+ var skillTemplate_1 = require("./templates/skillTemplate");
11
+ Object.defineProperty(exports, "generateSkillContent", { enumerable: true, get: function () { return skillTemplate_1.generateSkillContent; } });
12
+ Object.defineProperty(exports, "getDefaultPhases", { enumerable: true, get: function () { return skillTemplate_1.getDefaultPhases; } });
13
+ var indexTemplate_1 = require("./templates/indexTemplate");
14
+ Object.defineProperty(exports, "generateSkillsIndex", { enumerable: true, get: function () { return indexTemplate_1.generateSkillsIndex; } });
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/generators/skills/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAEH,mDAK0B;AAJxB,gHAAA,cAAc,OAAA;AAGd,sHAAA,oBAAoB,OAAA;AAGtB,2DAAmF;AAA1E,qHAAA,oBAAoB,OAAA;AAAE,iHAAA,gBAAgB,OAAA;AAE/C,2DAAgE;AAAvD,oHAAA,mBAAmB,OAAA"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Skill Generator
3
+ *
4
+ * Scaffolds skill directories and SKILL.md files.
5
+ */
6
+ import { PrevcPhase } from '../../workflow/types';
7
+ export interface SkillGeneratorOptions {
8
+ /** Repository path */
9
+ repoPath: string;
10
+ /** Output directory (default: .context) */
11
+ outputDir?: string;
12
+ /** Skills to generate (default: all built-in) */
13
+ skills?: string[];
14
+ /** Force overwrite existing files */
15
+ force?: boolean;
16
+ }
17
+ export interface SkillGeneratorResult {
18
+ skillsDir: string;
19
+ generatedSkills: string[];
20
+ skippedSkills: string[];
21
+ indexPath: string;
22
+ }
23
+ export declare class SkillGenerator {
24
+ private readonly repoPath;
25
+ private readonly outputDir;
26
+ private readonly skillsDir;
27
+ constructor(options: SkillGeneratorOptions);
28
+ /**
29
+ * Generate skills directory with selected skills
30
+ */
31
+ generate(options?: {
32
+ skills?: string[];
33
+ force?: boolean;
34
+ }): Promise<SkillGeneratorResult>;
35
+ /**
36
+ * Generate a single custom skill
37
+ */
38
+ generateCustomSkill(options: {
39
+ name: string;
40
+ description: string;
41
+ phases?: PrevcPhase[];
42
+ force?: boolean;
43
+ }): Promise<string>;
44
+ /**
45
+ * Generate README.md index
46
+ */
47
+ generateIndex(): Promise<string>;
48
+ }
49
+ /**
50
+ * Factory function
51
+ */
52
+ export declare function createSkillGenerator(options: SkillGeneratorOptions): SkillGenerator;
53
+ //# sourceMappingURL=skillGenerator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skillGenerator.d.ts","sourceRoot":"","sources":["../../../src/generators/skills/skillGenerator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAeH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAElD,MAAM,WAAW,qBAAqB;IACpC,sBAAsB;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,iDAAiD;IACjD,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,qCAAqC;IACrC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,oBAAoB;IACnC,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAS;IAClC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;IACnC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAS;gBAEvB,OAAO,EAAE,qBAAqB;IAM1C;;OAEG;IACG,QAAQ,CAAC,OAAO,GAAE;QACtB,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;QAClB,KAAK,CAAC,EAAE,OAAO,CAAC;KACZ,GAAG,OAAO,CAAC,oBAAoB,CAAC;IA6DtC;;OAEG;IACG,mBAAmB,CAAC,OAAO,EAAE;QACjC,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;QACtB,KAAK,CAAC,EAAE,OAAO,CAAC;KACjB,GAAG,OAAO,CAAC,MAAM,CAAC;IA6BnB;;OAEG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;CAevC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,qBAAqB,GAAG,cAAc,CAEnF"}
@@ -0,0 +1,149 @@
1
+ "use strict";
2
+ /**
3
+ * Skill Generator
4
+ *
5
+ * Scaffolds skill directories and SKILL.md files.
6
+ */
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
19
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
20
+ }) : function(o, v) {
21
+ o["default"] = v;
22
+ });
23
+ var __importStar = (this && this.__importStar) || (function () {
24
+ var ownKeys = function(o) {
25
+ ownKeys = Object.getOwnPropertyNames || function (o) {
26
+ var ar = [];
27
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
28
+ return ar;
29
+ };
30
+ return ownKeys(o);
31
+ };
32
+ return function (mod) {
33
+ if (mod && mod.__esModule) return mod;
34
+ var result = {};
35
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
36
+ __setModuleDefault(result, mod);
37
+ return result;
38
+ };
39
+ })();
40
+ Object.defineProperty(exports, "__esModule", { value: true });
41
+ exports.SkillGenerator = void 0;
42
+ exports.createSkillGenerator = createSkillGenerator;
43
+ const fs = __importStar(require("fs"));
44
+ const path = __importStar(require("path"));
45
+ const skills_1 = require("../../workflow/skills");
46
+ const skillTemplate_1 = require("./templates/skillTemplate");
47
+ const indexTemplate_1 = require("./templates/indexTemplate");
48
+ class SkillGenerator {
49
+ constructor(options) {
50
+ this.repoPath = options.repoPath;
51
+ this.outputDir = options.outputDir || '.context';
52
+ this.skillsDir = path.join(this.repoPath, this.outputDir, 'skills');
53
+ }
54
+ /**
55
+ * Generate skills directory with selected skills
56
+ */
57
+ async generate(options = {}) {
58
+ const { skills = [...skills_1.BUILT_IN_SKILLS], force = false } = options;
59
+ // Create skills directory
60
+ fs.mkdirSync(this.skillsDir, { recursive: true });
61
+ const generatedSkills = [];
62
+ const skippedSkills = [];
63
+ const templates = (0, skills_1.getBuiltInSkillTemplates)();
64
+ for (const skillName of skills) {
65
+ const skillDir = path.join(this.skillsDir, skillName);
66
+ const skillPath = path.join(skillDir, 'SKILL.md');
67
+ // Check if skill already exists
68
+ if (fs.existsSync(skillPath) && !force) {
69
+ skippedSkills.push(skillName);
70
+ continue;
71
+ }
72
+ // Create skill directory
73
+ fs.mkdirSync(skillDir, { recursive: true });
74
+ // Generate SKILL.md content
75
+ let content;
76
+ if ((0, skills_1.isBuiltInSkill)(skillName)) {
77
+ // Use built-in template
78
+ const template = templates[skillName];
79
+ const phases = skills_1.SKILL_TO_PHASES[skillName];
80
+ content = (0, skills_1.wrapWithFrontmatter)({ name: skillName, description: template.description, phases }, template.content);
81
+ }
82
+ else {
83
+ // Generate empty template for custom skill
84
+ content = (0, skillTemplate_1.generateSkillContent)({
85
+ name: skillName,
86
+ description: `TODO: Describe when to use ${skillName}`,
87
+ phases: (0, skillTemplate_1.getDefaultPhases)(skillName),
88
+ });
89
+ }
90
+ // Write SKILL.md
91
+ fs.writeFileSync(skillPath, content, 'utf-8');
92
+ generatedSkills.push(skillName);
93
+ }
94
+ // Generate index README
95
+ const indexPath = await this.generateIndex();
96
+ return {
97
+ skillsDir: this.skillsDir,
98
+ generatedSkills,
99
+ skippedSkills,
100
+ indexPath,
101
+ };
102
+ }
103
+ /**
104
+ * Generate a single custom skill
105
+ */
106
+ async generateCustomSkill(options) {
107
+ const { name, description, phases = ['E'], force = false } = options;
108
+ const skillDir = path.join(this.skillsDir, name);
109
+ const skillPath = path.join(skillDir, 'SKILL.md');
110
+ if (fs.existsSync(skillPath) && !force) {
111
+ throw new Error(`Skill ${name} already exists. Use --force to overwrite.`);
112
+ }
113
+ // Create skill directory
114
+ fs.mkdirSync(skillDir, { recursive: true });
115
+ // Generate content
116
+ const content = (0, skillTemplate_1.generateSkillContent)({
117
+ name,
118
+ description,
119
+ phases,
120
+ });
121
+ // Write SKILL.md
122
+ fs.writeFileSync(skillPath, content, 'utf-8');
123
+ // Update index
124
+ await this.generateIndex();
125
+ return skillPath;
126
+ }
127
+ /**
128
+ * Generate README.md index
129
+ */
130
+ async generateIndex() {
131
+ const registry = (0, skills_1.createSkillRegistry)(this.repoPath);
132
+ const discovered = await registry.discoverAll();
133
+ const content = (0, indexTemplate_1.generateSkillsIndex)({
134
+ skills: discovered.all,
135
+ projectName: path.basename(this.repoPath),
136
+ });
137
+ const indexPath = path.join(this.skillsDir, 'README.md');
138
+ fs.writeFileSync(indexPath, content, 'utf-8');
139
+ return indexPath;
140
+ }
141
+ }
142
+ exports.SkillGenerator = SkillGenerator;
143
+ /**
144
+ * Factory function
145
+ */
146
+ function createSkillGenerator(options) {
147
+ return new SkillGenerator(options);
148
+ }
149
+ //# sourceMappingURL=skillGenerator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skillGenerator.js","sourceRoot":"","sources":["../../../src/generators/skills/skillGenerator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Skills Index (README.md) Template
3
+ */
4
+ import { Skill } from '../../../workflow/skills';
5
+ export interface SkillsIndexOptions {
6
+ skills: Skill[];
7
+ projectName?: string;
8
+ }
9
+ /**
10
+ * Generate README.md for skills directory
11
+ */
12
+ export declare function generateSkillsIndex(options: SkillsIndexOptions): string;
13
+ //# sourceMappingURL=indexTemplate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexTemplate.d.ts","sourceRoot":"","sources":["../../../../src/generators/skills/templates/indexTemplate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEjD,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,KAAK,EAAE,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,GAAG,MAAM,CAuGvE"}
@@ -0,0 +1,102 @@
1
+ "use strict";
2
+ /**
3
+ * Skills Index (README.md) Template
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.generateSkillsIndex = generateSkillsIndex;
7
+ /**
8
+ * Generate README.md for skills directory
9
+ */
10
+ function generateSkillsIndex(options) {
11
+ const { skills, projectName } = options;
12
+ const builtIn = skills.filter((s) => s.isBuiltIn);
13
+ const custom = skills.filter((s) => !s.isBuiltIn);
14
+ let content = `# Skills
15
+
16
+ On-demand expertise for AI agents. Skills are task-specific procedures that get activated when relevant.
17
+
18
+ `;
19
+ if (projectName) {
20
+ content += `> Project: ${projectName}\n\n`;
21
+ }
22
+ content += `## How Skills Work
23
+
24
+ 1. **Discovery**: AI agents discover available skills
25
+ 2. **Matching**: When a task matches a skill's description, it's activated
26
+ 3. **Execution**: The skill's instructions guide the AI's behavior
27
+
28
+ ## Available Skills
29
+
30
+ `;
31
+ if (builtIn.length > 0) {
32
+ content += `### Built-in Skills
33
+
34
+ | Skill | Description | Phases |
35
+ |-------|-------------|--------|
36
+ `;
37
+ for (const skill of builtIn) {
38
+ const phases = skill.metadata.phases?.join(', ') || '-';
39
+ content += `| [${skill.metadata.name}](./${skill.slug}/SKILL.md) | ${skill.metadata.description} | ${phases} |\n`;
40
+ }
41
+ content += '\n';
42
+ }
43
+ if (custom.length > 0) {
44
+ content += `### Custom Skills
45
+
46
+ | Skill | Description | Phases |
47
+ |-------|-------------|--------|
48
+ `;
49
+ for (const skill of custom) {
50
+ const phases = skill.metadata.phases?.join(', ') || '-';
51
+ content += `| [${skill.metadata.name}](./${skill.slug}/SKILL.md) | ${skill.metadata.description} | ${phases} |\n`;
52
+ }
53
+ content += '\n';
54
+ }
55
+ content += `## Creating Custom Skills
56
+
57
+ Create a new skill by adding a directory with a \`SKILL.md\` file:
58
+
59
+ \`\`\`
60
+ .context/skills/
61
+ └── my-skill/
62
+ ├── SKILL.md # Required: skill definition
63
+ └── templates/ # Optional: helper resources
64
+ └── checklist.md
65
+ \`\`\`
66
+
67
+ ### SKILL.md Format
68
+
69
+ \`\`\`yaml
70
+ ---
71
+ name: my-skill
72
+ description: When to use this skill
73
+ phases: [P, E, V] # Optional: PREVC phases
74
+ mode: false # Optional: mode command?
75
+ ---
76
+
77
+ # My Skill
78
+
79
+ ## When to Use
80
+ [Description of when this skill applies]
81
+
82
+ ## Instructions
83
+ 1. Step one
84
+ 2. Step two
85
+
86
+ ## Examples
87
+ [Usage examples]
88
+ \`\`\`
89
+
90
+ ## PREVC Phase Mapping
91
+
92
+ | Phase | Name | Skills |
93
+ |-------|------|--------|
94
+ | P | Planning | feature-breakdown, documentation, api-design |
95
+ | R | Review | pr-review, code-review, api-design, security-audit |
96
+ | E | Execution | commit-message, test-generation, refactoring, bug-investigation |
97
+ | V | Validation | pr-review, code-review, test-generation, security-audit |
98
+ | C | Confirmation | commit-message, documentation |
99
+ `;
100
+ return content;
101
+ }
102
+ //# sourceMappingURL=indexTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"indexTemplate.js","sourceRoot":"","sources":["../../../../src/generators/skills/templates/indexTemplate.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAYH,kDAuGC;AA1GD;;GAEG;AACH,SAAgB,mBAAmB,CAAC,OAA2B;IAC7D,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;IAExC,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IAElD,IAAI,OAAO,GAAG;;;;CAIf,CAAC;IAEA,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,IAAI,cAAc,WAAW,MAAM,CAAC;IAC7C,CAAC;IAED,OAAO,IAAI;;;;;;;;CAQZ,CAAC;IAEA,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,IAAI;;;;CAId,CAAC;QAEE,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;YACxD,OAAO,IAAI,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,gBAAgB,KAAK,CAAC,QAAQ,CAAC,WAAW,MAAM,MAAM,MAAM,CAAC;QACpH,CAAC;QAED,OAAO,IAAI,IAAI,CAAC;IAClB,CAAC;IAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,IAAI;;;;CAId,CAAC;QAEE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,GAAG,CAAC;YACxD,OAAO,IAAI,MAAM,KAAK,CAAC,QAAQ,CAAC,IAAI,OAAO,KAAK,CAAC,IAAI,gBAAgB,KAAK,CAAC,QAAQ,CAAC,WAAW,MAAM,MAAM,MAAM,CAAC;QACpH,CAAC;QAED,OAAO,IAAI,IAAI,CAAC;IAClB,CAAC;IAED,OAAO,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4CZ,CAAC;IAEA,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -0,0 +1,20 @@
1
+ /**
2
+ * SKILL.md Template
3
+ */
4
+ import { PrevcPhase } from '../../../workflow/types';
5
+ export interface SkillTemplateOptions {
6
+ name: string;
7
+ description: string;
8
+ phases?: PrevcPhase[];
9
+ mode?: boolean;
10
+ disableModelInvocation?: boolean;
11
+ }
12
+ /**
13
+ * Generate SKILL.md content
14
+ */
15
+ export declare function generateSkillContent(options: SkillTemplateOptions): string;
16
+ /**
17
+ * Get default phases for a skill name
18
+ */
19
+ export declare function getDefaultPhases(skillName: string): PrevcPhase[];
20
+ //# sourceMappingURL=skillTemplate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skillTemplate.d.ts","sourceRoot":"","sources":["../../../../src/generators/skills/templates/skillTemplate.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,sBAAsB,CAAC,EAAE,OAAO,CAAC;CAClC;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,oBAAoB,GAAG,MAAM,CAc1E;AA+DD;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,UAAU,EAAE,CAKhE"}
@@ -0,0 +1,85 @@
1
+ "use strict";
2
+ /**
3
+ * SKILL.md Template
4
+ */
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.generateSkillContent = generateSkillContent;
7
+ exports.getDefaultPhases = getDefaultPhases;
8
+ const skills_1 = require("../../../workflow/skills");
9
+ /**
10
+ * Generate SKILL.md content
11
+ */
12
+ function generateSkillContent(options) {
13
+ const { name, description, phases, mode, disableModelInvocation } = options;
14
+ const frontmatter = buildFrontmatter({
15
+ name,
16
+ description,
17
+ phases,
18
+ mode,
19
+ disableModelInvocation,
20
+ });
21
+ const body = buildBody(name, description);
22
+ return `${frontmatter}\n\n${body}`;
23
+ }
24
+ function buildFrontmatter(options) {
25
+ const lines = ['---'];
26
+ lines.push(`name: ${options.name}`);
27
+ lines.push(`description: ${options.description}`);
28
+ if (options.phases && options.phases.length > 0) {
29
+ lines.push(`phases: [${options.phases.join(', ')}]`);
30
+ }
31
+ if (options.mode !== undefined) {
32
+ lines.push(`mode: ${options.mode}`);
33
+ }
34
+ if (options.disableModelInvocation !== undefined) {
35
+ lines.push(`disable-model-invocation: ${options.disableModelInvocation}`);
36
+ }
37
+ lines.push('---');
38
+ return lines.join('\n');
39
+ }
40
+ function buildBody(name, description) {
41
+ const title = name
42
+ .split('-')
43
+ .map((word) => word.charAt(0).toUpperCase() + word.slice(1))
44
+ .join(' ');
45
+ return `# ${title}
46
+
47
+ ## When to Use
48
+
49
+ ${description}
50
+
51
+ ## Instructions
52
+
53
+ <!-- TODO: Add step-by-step instructions for this skill -->
54
+
55
+ 1. First step
56
+ 2. Second step
57
+ 3. Third step
58
+
59
+ ## Examples
60
+
61
+ <!-- TODO: Add examples of how to use this skill -->
62
+
63
+ \`\`\`
64
+ Example usage here
65
+ \`\`\`
66
+
67
+ ## Guidelines
68
+
69
+ <!-- TODO: Add guidelines and best practices -->
70
+
71
+ - Guideline 1
72
+ - Guideline 2
73
+ - Guideline 3
74
+ `;
75
+ }
76
+ /**
77
+ * Get default phases for a skill name
78
+ */
79
+ function getDefaultPhases(skillName) {
80
+ if ((0, skills_1.isBuiltInSkill)(skillName)) {
81
+ return skills_1.SKILL_TO_PHASES[skillName];
82
+ }
83
+ return ['E']; // Default to Execution phase
84
+ }
85
+ //# sourceMappingURL=skillTemplate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skillTemplate.js","sourceRoot":"","sources":["../../../../src/generators/skills/templates/skillTemplate.ts"],"names":[],"mappings":";AAAA;;GAEG;;AAgBH,oDAcC;AAkED,4CAKC;AAnGD,qDAA4G;AAW5G;;GAEG;AACH,SAAgB,oBAAoB,CAAC,OAA6B;IAChE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,EAAE,GAAG,OAAO,CAAC;IAE5E,MAAM,WAAW,GAAG,gBAAgB,CAAC;QACnC,IAAI;QACJ,WAAW;QACX,MAAM;QACN,IAAI;QACJ,sBAAsB;KACvB,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAE1C,OAAO,GAAG,WAAW,OAAO,IAAI,EAAE,CAAC;AACrC,CAAC;AAED,SAAS,gBAAgB,CAAC,OAA6B;IACrD,MAAM,KAAK,GAAa,CAAC,KAAK,CAAC,CAAC;IAEhC,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACpC,KAAK,CAAC,IAAI,CAAC,gBAAgB,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAElD,IAAI,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAChD,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACvD,CAAC;IAED,IAAI,OAAO,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,SAAS,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;IACtC,CAAC;IAED,IAAI,OAAO,CAAC,sBAAsB,KAAK,SAAS,EAAE,CAAC;QACjD,KAAK,CAAC,IAAI,CAAC,6BAA6B,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAAC;IAC5E,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAElB,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,SAAS,CAAC,IAAY,EAAE,WAAmB;IAClD,MAAM,KAAK,GAAG,IAAI;SACf,KAAK,CAAC,GAAG,CAAC;SACV,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;SAC3D,IAAI,CAAC,GAAG,CAAC,CAAC;IAEb,OAAO,KAAK,KAAK;;;;EAIjB,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;CAyBZ,CAAC;AACF,CAAC;AAED;;GAEG;AACH,SAAgB,gBAAgB,CAAC,SAAiB;IAChD,IAAI,IAAA,uBAAc,EAAC,SAAS,CAAC,EAAE,CAAC;QAC9B,OAAO,wBAAe,CAAC,SAA6B,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,6BAA6B;AAC7C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AA4WA,wBAAsB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5F;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAW/E;AAED,wBAAsB,UAAU,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnE;AAED,wBAAsB,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAElE;AAED,wBAAsB,UAAU,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnE;AAED,wBAAsB,aAAa,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtE;AAED,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjF"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAu4BA,wBAAsB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAE5F;AAED,wBAAsB,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAW/E;AAED,wBAAsB,UAAU,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnE;AAED,wBAAsB,SAAS,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAElE;AAED,wBAAsB,UAAU,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEnE;AAED,wBAAsB,aAAa,CAAC,GAAG,KAAK,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEtE;AAED,wBAAsB,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjF"}