@ai-coders/context 0.6.1 → 0.7.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 (581) hide show
  1. package/README.md +122 -68
  2. package/dist/commands/export.d.ts +4 -0
  3. package/dist/commands/export.d.ts.map +1 -0
  4. package/dist/commands/export.js +39 -0
  5. package/dist/commands/export.js.map +1 -0
  6. package/dist/commands/fill.d.ts +13 -0
  7. package/dist/commands/fill.d.ts.map +1 -0
  8. package/dist/commands/fill.js +65 -0
  9. package/dist/commands/fill.js.map +1 -0
  10. package/dist/commands/index.d.ts +29 -0
  11. package/dist/commands/index.d.ts.map +1 -0
  12. package/dist/commands/index.js +74 -0
  13. package/dist/commands/index.js.map +1 -0
  14. package/dist/commands/init.d.ts +12 -0
  15. package/dist/commands/init.d.ts.map +1 -0
  16. package/dist/commands/init.js +64 -0
  17. package/dist/commands/init.js.map +1 -0
  18. package/dist/commands/mcp.d.ts +4 -0
  19. package/dist/commands/mcp.d.ts.map +1 -0
  20. package/dist/commands/mcp.js +92 -0
  21. package/dist/commands/mcp.js.map +1 -0
  22. package/dist/commands/plan.d.ts +9 -0
  23. package/dist/commands/plan.d.ts.map +1 -0
  24. package/dist/commands/plan.js +126 -0
  25. package/dist/commands/plan.js.map +1 -0
  26. package/dist/commands/report.d.ts +4 -0
  27. package/dist/commands/report.d.ts.map +1 -0
  28. package/dist/commands/report.js +36 -0
  29. package/dist/commands/report.js.map +1 -0
  30. package/dist/commands/serve.d.ts +4 -0
  31. package/dist/commands/serve.d.ts.map +1 -0
  32. package/dist/commands/serve.js +29 -0
  33. package/dist/commands/serve.js.map +1 -0
  34. package/dist/commands/skill.d.ts +4 -0
  35. package/dist/commands/skill.d.ts.map +1 -0
  36. package/dist/commands/skill.js +217 -0
  37. package/dist/commands/skill.js.map +1 -0
  38. package/dist/commands/start.d.ts +4 -0
  39. package/dist/commands/start.d.ts.map +1 -0
  40. package/dist/commands/start.js +56 -0
  41. package/dist/commands/start.js.map +1 -0
  42. package/dist/commands/sync.d.ts +9 -0
  43. package/dist/commands/sync.d.ts.map +1 -0
  44. package/dist/commands/sync.js +134 -0
  45. package/dist/commands/sync.js.map +1 -0
  46. package/dist/commands/types.d.ts +17 -0
  47. package/dist/commands/types.d.ts.map +1 -0
  48. package/dist/commands/types.js +3 -0
  49. package/dist/commands/types.js.map +1 -0
  50. package/dist/commands/update.d.ts +4 -0
  51. package/dist/commands/update.d.ts.map +1 -0
  52. package/dist/commands/update.js +111 -0
  53. package/dist/commands/update.js.map +1 -0
  54. package/dist/commands/workflow.d.ts +4 -0
  55. package/dist/commands/workflow.d.ts.map +1 -0
  56. package/dist/commands/workflow.js +171 -0
  57. package/dist/commands/workflow.js.map +1 -0
  58. package/dist/generators/agents/agentGenerator.d.ts +2 -0
  59. package/dist/generators/agents/agentGenerator.d.ts.map +1 -1
  60. package/dist/generators/agents/agentGenerator.js +46 -2
  61. package/dist/generators/agents/agentGenerator.js.map +1 -1
  62. package/dist/generators/agents/templates/index.d.ts +0 -1
  63. package/dist/generators/agents/templates/index.d.ts.map +1 -1
  64. package/dist/generators/agents/templates/index.js +1 -3
  65. package/dist/generators/agents/templates/index.js.map +1 -1
  66. package/dist/generators/agents/templates/playbookTemplate.d.ts.map +1 -1
  67. package/dist/generators/agents/templates/playbookTemplate.js +11 -0
  68. package/dist/generators/agents/templates/playbookTemplate.js.map +1 -1
  69. package/dist/generators/documentation/documentationGenerator.d.ts +2 -1
  70. package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -1
  71. package/dist/generators/documentation/documentationGenerator.js +53 -34
  72. package/dist/generators/documentation/documentationGenerator.js.map +1 -1
  73. package/dist/generators/documentation/templates/apiReferenceTemplate.d.ts.map +1 -1
  74. package/dist/generators/documentation/templates/apiReferenceTemplate.js +11 -0
  75. package/dist/generators/documentation/templates/apiReferenceTemplate.js.map +1 -1
  76. package/dist/generators/documentation/templates/architectureTemplate.d.ts +11 -0
  77. package/dist/generators/documentation/templates/architectureTemplate.d.ts.map +1 -1
  78. package/dist/generators/documentation/templates/architectureTemplate.js.map +1 -1
  79. package/dist/generators/documentation/templates/dataFlowTemplate.d.ts.map +1 -1
  80. package/dist/generators/documentation/templates/dataFlowTemplate.js +11 -0
  81. package/dist/generators/documentation/templates/dataFlowTemplate.js.map +1 -1
  82. package/dist/generators/documentation/templates/developmentWorkflowTemplate.d.ts.map +1 -1
  83. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js +11 -0
  84. package/dist/generators/documentation/templates/developmentWorkflowTemplate.js.map +1 -1
  85. package/dist/generators/documentation/templates/glossaryTemplate.d.ts.map +1 -1
  86. package/dist/generators/documentation/templates/glossaryTemplate.js.map +1 -1
  87. package/dist/generators/documentation/templates/index.d.ts +0 -12
  88. package/dist/generators/documentation/templates/index.d.ts.map +1 -1
  89. package/dist/generators/documentation/templates/index.js +1 -25
  90. package/dist/generators/documentation/templates/index.js.map +1 -1
  91. package/dist/generators/documentation/templates/migrationTemplate.d.ts.map +1 -1
  92. package/dist/generators/documentation/templates/migrationTemplate.js +11 -0
  93. package/dist/generators/documentation/templates/migrationTemplate.js.map +1 -1
  94. package/dist/generators/documentation/templates/onboardingTemplate.d.ts.map +1 -1
  95. package/dist/generators/documentation/templates/onboardingTemplate.js +11 -0
  96. package/dist/generators/documentation/templates/onboardingTemplate.js.map +1 -1
  97. package/dist/generators/documentation/templates/projectOverviewTemplate.d.ts.map +1 -1
  98. package/dist/generators/documentation/templates/projectOverviewTemplate.js +11 -0
  99. package/dist/generators/documentation/templates/projectOverviewTemplate.js.map +1 -1
  100. package/dist/generators/documentation/templates/securityTemplate.d.ts.map +1 -1
  101. package/dist/generators/documentation/templates/securityTemplate.js +11 -0
  102. package/dist/generators/documentation/templates/securityTemplate.js.map +1 -1
  103. package/dist/generators/documentation/templates/testingTemplate.d.ts.map +1 -1
  104. package/dist/generators/documentation/templates/testingTemplate.js +11 -0
  105. package/dist/generators/documentation/templates/testingTemplate.js.map +1 -1
  106. package/dist/generators/documentation/templates/toolingTemplate.d.ts.map +1 -1
  107. package/dist/generators/documentation/templates/toolingTemplate.js +11 -0
  108. package/dist/generators/documentation/templates/toolingTemplate.js.map +1 -1
  109. package/dist/generators/documentation/templates/troubleshootingTemplate.d.ts.map +1 -1
  110. package/dist/generators/documentation/templates/troubleshootingTemplate.js +11 -0
  111. package/dist/generators/documentation/templates/troubleshootingTemplate.js.map +1 -1
  112. package/dist/generators/plans/templates/planTemplate.d.ts +11 -0
  113. package/dist/generators/plans/templates/planTemplate.d.ts.map +1 -1
  114. package/dist/generators/plans/templates/planTemplate.js.map +1 -1
  115. package/dist/generators/shared/index.d.ts +1 -0
  116. package/dist/generators/shared/index.d.ts.map +1 -1
  117. package/dist/generators/shared/index.js +16 -0
  118. package/dist/generators/shared/index.js.map +1 -1
  119. package/dist/generators/shared/scaffoldStructures.d.ts +13 -0
  120. package/dist/generators/shared/scaffoldStructures.d.ts.map +1 -0
  121. package/dist/generators/shared/scaffoldStructures.js +30 -0
  122. package/dist/generators/shared/scaffoldStructures.js.map +1 -0
  123. package/dist/generators/shared/structures/agents/definitions.d.ts +18 -0
  124. package/dist/generators/shared/structures/agents/definitions.d.ts.map +1 -0
  125. package/dist/generators/shared/structures/agents/definitions.js +22 -0
  126. package/dist/generators/shared/structures/agents/definitions.js.map +1 -0
  127. package/dist/generators/shared/structures/agents/factory.d.ts +9 -0
  128. package/dist/generators/shared/structures/agents/factory.d.ts.map +1 -0
  129. package/dist/generators/shared/structures/agents/factory.js +112 -0
  130. package/dist/generators/shared/structures/agents/factory.js.map +1 -0
  131. package/dist/generators/shared/structures/agents/index.d.ts +6 -0
  132. package/dist/generators/shared/structures/agents/index.d.ts.map +1 -0
  133. package/dist/generators/shared/structures/agents/index.js +24 -0
  134. package/dist/generators/shared/structures/agents/index.js.map +1 -0
  135. package/dist/generators/shared/structures/documentation/apiReference.d.ts +3 -0
  136. package/dist/generators/shared/structures/documentation/apiReference.d.ts.map +1 -0
  137. package/dist/generators/shared/structures/documentation/apiReference.js +100 -0
  138. package/dist/generators/shared/structures/documentation/apiReference.js.map +1 -0
  139. package/dist/generators/shared/structures/documentation/architecture.d.ts +3 -0
  140. package/dist/generators/shared/structures/documentation/architecture.d.ts.map +1 -0
  141. package/dist/generators/shared/structures/documentation/architecture.js +121 -0
  142. package/dist/generators/shared/structures/documentation/architecture.js.map +1 -0
  143. package/dist/generators/shared/structures/documentation/dataFlow.d.ts +3 -0
  144. package/dist/generators/shared/structures/documentation/dataFlow.d.ts.map +1 -0
  145. package/dist/generators/shared/structures/documentation/dataFlow.js +72 -0
  146. package/dist/generators/shared/structures/documentation/dataFlow.js.map +1 -0
  147. package/dist/generators/shared/structures/documentation/glossary.d.ts +3 -0
  148. package/dist/generators/shared/structures/documentation/glossary.d.ts.map +1 -0
  149. package/dist/generators/shared/structures/documentation/glossary.js +71 -0
  150. package/dist/generators/shared/structures/documentation/glossary.js.map +1 -0
  151. package/dist/generators/shared/structures/documentation/index.d.ts +16 -0
  152. package/dist/generators/shared/structures/documentation/index.d.ts.map +1 -0
  153. package/dist/generators/shared/structures/documentation/index.js +31 -0
  154. package/dist/generators/shared/structures/documentation/index.js.map +1 -0
  155. package/dist/generators/shared/structures/documentation/migration.d.ts +3 -0
  156. package/dist/generators/shared/structures/documentation/migration.d.ts.map +1 -0
  157. package/dist/generators/shared/structures/documentation/migration.js +113 -0
  158. package/dist/generators/shared/structures/documentation/migration.js.map +1 -0
  159. package/dist/generators/shared/structures/documentation/onboarding.d.ts +3 -0
  160. package/dist/generators/shared/structures/documentation/onboarding.d.ts.map +1 -0
  161. package/dist/generators/shared/structures/documentation/onboarding.js +99 -0
  162. package/dist/generators/shared/structures/documentation/onboarding.js.map +1 -0
  163. package/dist/generators/shared/structures/documentation/projectOverview.d.ts +3 -0
  164. package/dist/generators/shared/structures/documentation/projectOverview.d.ts.map +1 -0
  165. package/dist/generators/shared/structures/documentation/projectOverview.js +115 -0
  166. package/dist/generators/shared/structures/documentation/projectOverview.js.map +1 -0
  167. package/dist/generators/shared/structures/documentation/security.d.ts +3 -0
  168. package/dist/generators/shared/structures/documentation/security.d.ts.map +1 -0
  169. package/dist/generators/shared/structures/documentation/security.js +55 -0
  170. package/dist/generators/shared/structures/documentation/security.js.map +1 -0
  171. package/dist/generators/shared/structures/documentation/testing.d.ts +3 -0
  172. package/dist/generators/shared/structures/documentation/testing.d.ts.map +1 -0
  173. package/dist/generators/shared/structures/documentation/testing.js +57 -0
  174. package/dist/generators/shared/structures/documentation/testing.js.map +1 -0
  175. package/dist/generators/shared/structures/documentation/tooling.d.ts +3 -0
  176. package/dist/generators/shared/structures/documentation/tooling.d.ts.map +1 -0
  177. package/dist/generators/shared/structures/documentation/tooling.js +55 -0
  178. package/dist/generators/shared/structures/documentation/tooling.js.map +1 -0
  179. package/dist/generators/shared/structures/documentation/troubleshooting.d.ts +3 -0
  180. package/dist/generators/shared/structures/documentation/troubleshooting.d.ts.map +1 -0
  181. package/dist/generators/shared/structures/documentation/troubleshooting.js +91 -0
  182. package/dist/generators/shared/structures/documentation/troubleshooting.js.map +1 -0
  183. package/dist/generators/shared/structures/documentation/workflow.d.ts +3 -0
  184. package/dist/generators/shared/structures/documentation/workflow.d.ts.map +1 -0
  185. package/dist/generators/shared/structures/documentation/workflow.js +56 -0
  186. package/dist/generators/shared/structures/documentation/workflow.js.map +1 -0
  187. package/dist/generators/shared/structures/index.d.ts +15 -0
  188. package/dist/generators/shared/structures/index.d.ts.map +1 -0
  189. package/dist/generators/shared/structures/index.js +37 -0
  190. package/dist/generators/shared/structures/index.js.map +1 -0
  191. package/dist/generators/shared/structures/plans/index.d.ts +5 -0
  192. package/dist/generators/shared/structures/plans/index.d.ts.map +1 -0
  193. package/dist/generators/shared/structures/plans/index.js +9 -0
  194. package/dist/generators/shared/structures/plans/index.js.map +1 -0
  195. package/dist/generators/shared/structures/plans/planStructure.d.ts +6 -0
  196. package/dist/generators/shared/structures/plans/planStructure.d.ts.map +1 -0
  197. package/dist/generators/shared/structures/plans/planStructure.js +65 -0
  198. package/dist/generators/shared/structures/plans/planStructure.js.map +1 -0
  199. package/dist/generators/shared/structures/registry.d.ts +18 -0
  200. package/dist/generators/shared/structures/registry.d.ts.map +1 -0
  201. package/dist/generators/shared/structures/registry.js +104 -0
  202. package/dist/generators/shared/structures/registry.js.map +1 -0
  203. package/dist/generators/shared/structures/serialization.d.ts +15 -0
  204. package/dist/generators/shared/structures/serialization.d.ts.map +1 -0
  205. package/dist/generators/shared/structures/serialization.js +119 -0
  206. package/dist/generators/shared/structures/serialization.js.map +1 -0
  207. package/dist/generators/shared/structures/skills/definitions.d.ts +14 -0
  208. package/dist/generators/shared/structures/skills/definitions.d.ts.map +1 -0
  209. package/dist/generators/shared/structures/skills/definitions.js +18 -0
  210. package/dist/generators/shared/structures/skills/definitions.js.map +1 -0
  211. package/dist/generators/shared/structures/skills/factory.d.ts +9 -0
  212. package/dist/generators/shared/structures/skills/factory.d.ts.map +1 -0
  213. package/dist/generators/shared/structures/skills/factory.js +56 -0
  214. package/dist/generators/shared/structures/skills/factory.js.map +1 -0
  215. package/dist/generators/shared/structures/skills/index.d.ts +6 -0
  216. package/dist/generators/shared/structures/skills/index.d.ts.map +1 -0
  217. package/dist/generators/shared/structures/skills/index.js +20 -0
  218. package/dist/generators/shared/structures/skills/index.js.map +1 -0
  219. package/dist/generators/shared/structures/types.d.ts +59 -0
  220. package/dist/generators/shared/structures/types.d.ts.map +1 -0
  221. package/dist/generators/shared/structures/types.js +6 -0
  222. package/dist/generators/shared/structures/types.js.map +1 -0
  223. package/dist/generators/shared/structures/validation.d.ts +13 -0
  224. package/dist/generators/shared/structures/validation.d.ts.map +1 -0
  225. package/dist/generators/shared/structures/validation.js +51 -0
  226. package/dist/generators/shared/structures/validation.js.map +1 -0
  227. package/dist/generators/skills/skillGenerator.d.ts +5 -0
  228. package/dist/generators/skills/skillGenerator.d.ts.map +1 -1
  229. package/dist/generators/skills/skillGenerator.js +26 -17
  230. package/dist/generators/skills/skillGenerator.js.map +1 -1
  231. package/dist/generators/skills/templates/skillTemplate.d.ts +10 -0
  232. package/dist/generators/skills/templates/skillTemplate.d.ts.map +1 -1
  233. package/dist/generators/skills/templates/skillTemplate.js +10 -0
  234. package/dist/generators/skills/templates/skillTemplate.js.map +1 -1
  235. package/dist/index.d.ts.map +1 -1
  236. package/dist/index.js +203 -5
  237. package/dist/index.js.map +1 -1
  238. package/dist/prompts/defaults.d.ts +5 -0
  239. package/dist/prompts/defaults.d.ts.map +1 -1
  240. package/dist/prompts/defaults.js +44 -1
  241. package/dist/prompts/defaults.js.map +1 -1
  242. package/dist/services/ai/agents/documentationAgent.d.ts +2 -0
  243. package/dist/services/ai/agents/documentationAgent.d.ts.map +1 -1
  244. package/dist/services/ai/agents/documentationAgent.js +33 -9
  245. package/dist/services/ai/agents/documentationAgent.js.map +1 -1
  246. package/dist/services/ai/agents/playbookAgent.d.ts +2 -0
  247. package/dist/services/ai/agents/playbookAgent.d.ts.map +1 -1
  248. package/dist/services/ai/agents/playbookAgent.js +44 -19
  249. package/dist/services/ai/agents/playbookAgent.js.map +1 -1
  250. package/dist/services/ai/agents/skillAgent.d.ts +2 -0
  251. package/dist/services/ai/agents/skillAgent.d.ts.map +1 -1
  252. package/dist/services/ai/agents/skillAgent.js +54 -22
  253. package/dist/services/ai/agents/skillAgent.js.map +1 -1
  254. package/dist/services/ai/schemas.d.ts +136 -9
  255. package/dist/services/ai/schemas.d.ts.map +1 -1
  256. package/dist/services/ai/schemas.js +65 -4
  257. package/dist/services/ai/schemas.js.map +1 -1
  258. package/dist/services/ai/toolRegistry.d.ts.map +1 -1
  259. package/dist/services/ai/toolRegistry.js +25 -17
  260. package/dist/services/ai/toolRegistry.js.map +1 -1
  261. package/dist/services/ai/tools/checkScaffoldingTool.d.ts.map +1 -1
  262. package/dist/services/ai/tools/checkScaffoldingTool.js +4 -1
  263. package/dist/services/ai/tools/checkScaffoldingTool.js.map +1 -1
  264. package/dist/services/ai/tools/fillScaffoldingTool.d.ts +19 -21
  265. package/dist/services/ai/tools/fillScaffoldingTool.d.ts.map +1 -1
  266. package/dist/services/ai/tools/fillScaffoldingTool.js +41 -142
  267. package/dist/services/ai/tools/fillScaffoldingTool.js.map +1 -1
  268. package/dist/services/ai/tools/getCodebaseMapTool.d.ts +1 -1
  269. package/dist/services/ai/tools/getCodebaseMapTool.d.ts.map +1 -1
  270. package/dist/services/ai/tools/getCodebaseMapTool.js +4 -1
  271. package/dist/services/ai/tools/getCodebaseMapTool.js.map +1 -1
  272. package/dist/services/ai/tools/index.d.ts +1 -1
  273. package/dist/services/ai/tools/index.d.ts.map +1 -1
  274. package/dist/services/ai/tools/index.js +1 -3
  275. package/dist/services/ai/tools/index.js.map +1 -1
  276. package/dist/services/ai/tools/initializeContextTool.d.ts +108 -16
  277. package/dist/services/ai/tools/initializeContextTool.d.ts.map +1 -1
  278. package/dist/services/ai/tools/initializeContextTool.js +177 -67
  279. package/dist/services/ai/tools/initializeContextTool.js.map +1 -1
  280. package/dist/services/ai/tools/scaffoldPlanTool.d.ts +14 -3
  281. package/dist/services/ai/tools/scaffoldPlanTool.d.ts.map +1 -1
  282. package/dist/services/ai/tools/scaffoldPlanTool.js +34 -4
  283. package/dist/services/ai/tools/scaffoldPlanTool.js.map +1 -1
  284. package/dist/services/ai/tools/toolFactory.d.ts +35 -0
  285. package/dist/services/ai/tools/toolFactory.d.ts.map +1 -0
  286. package/dist/services/ai/tools/toolFactory.js +20 -0
  287. package/dist/services/ai/tools/toolFactory.js.map +1 -0
  288. package/dist/services/export/contextExportService.d.ts +45 -0
  289. package/dist/services/export/contextExportService.d.ts.map +1 -0
  290. package/dist/services/export/contextExportService.js +161 -0
  291. package/dist/services/export/contextExportService.js.map +1 -0
  292. package/dist/services/export/exportRulesService.d.ts +15 -1
  293. package/dist/services/export/exportRulesService.d.ts.map +1 -1
  294. package/dist/services/export/exportRulesService.js +100 -36
  295. package/dist/services/export/exportRulesService.js.map +1 -1
  296. package/dist/services/export/index.d.ts +2 -0
  297. package/dist/services/export/index.d.ts.map +1 -1
  298. package/dist/services/export/index.js +3 -1
  299. package/dist/services/export/index.js.map +1 -1
  300. package/dist/services/export/skillExportService.d.ts +6 -1
  301. package/dist/services/export/skillExportService.d.ts.map +1 -1
  302. package/dist/services/export/skillExportService.js +46 -22
  303. package/dist/services/export/skillExportService.js.map +1 -1
  304. package/dist/services/fill/fillService.d.ts.map +1 -1
  305. package/dist/services/fill/fillService.js +30 -3
  306. package/dist/services/fill/fillService.js.map +1 -1
  307. package/dist/services/fill/skillFillService.d.ts.map +1 -1
  308. package/dist/services/fill/skillFillService.js +8 -1
  309. package/dist/services/fill/skillFillService.js.map +1 -1
  310. package/dist/services/import/presets.d.ts +12 -0
  311. package/dist/services/import/presets.d.ts.map +1 -1
  312. package/dist/services/import/presets.js +32 -152
  313. package/dist/services/import/presets.js.map +1 -1
  314. package/dist/services/init/initService.d.ts +1 -0
  315. package/dist/services/init/initService.d.ts.map +1 -1
  316. package/dist/services/init/initService.js +42 -9
  317. package/dist/services/init/initService.js.map +1 -1
  318. package/dist/services/mcp/actionLogger.d.ts +19 -0
  319. package/dist/services/mcp/actionLogger.d.ts.map +1 -0
  320. package/dist/services/mcp/actionLogger.js +128 -0
  321. package/dist/services/mcp/actionLogger.js.map +1 -0
  322. package/dist/services/mcp/gateway/agent.d.ts +17 -0
  323. package/dist/services/mcp/gateway/agent.d.ts.map +1 -0
  324. package/dist/services/mcp/gateway/agent.js +147 -0
  325. package/dist/services/mcp/gateway/agent.js.map +1 -0
  326. package/dist/services/mcp/gateway/context.d.ts +21 -0
  327. package/dist/services/mcp/gateway/context.d.ts.map +1 -0
  328. package/dist/services/mcp/gateway/context.js +249 -0
  329. package/dist/services/mcp/gateway/context.js.map +1 -0
  330. package/dist/services/mcp/gateway/explore.d.ts +16 -0
  331. package/dist/services/mcp/gateway/explore.d.ts.map +1 -0
  332. package/dist/services/mcp/gateway/explore.js +60 -0
  333. package/dist/services/mcp/gateway/explore.js.map +1 -0
  334. package/dist/services/mcp/gateway/index.d.ts +24 -0
  335. package/dist/services/mcp/gateway/index.d.ts.map +1 -0
  336. package/dist/services/mcp/gateway/index.js +53 -0
  337. package/dist/services/mcp/gateway/index.js.map +1 -0
  338. package/dist/services/mcp/gateway/metrics.d.ts +56 -0
  339. package/dist/services/mcp/gateway/metrics.d.ts.map +1 -0
  340. package/dist/services/mcp/gateway/metrics.js +153 -0
  341. package/dist/services/mcp/gateway/metrics.js.map +1 -0
  342. package/dist/services/mcp/gateway/plan.d.ts +18 -0
  343. package/dist/services/mcp/gateway/plan.d.ts.map +1 -0
  344. package/dist/services/mcp/gateway/plan.js +273 -0
  345. package/dist/services/mcp/gateway/plan.js.map +1 -0
  346. package/dist/services/mcp/gateway/project.d.ts +16 -0
  347. package/dist/services/mcp/gateway/project.d.ts.map +1 -0
  348. package/dist/services/mcp/gateway/project.js +149 -0
  349. package/dist/services/mcp/gateway/project.js.map +1 -0
  350. package/dist/services/mcp/gateway/projectReport.d.ts +20 -0
  351. package/dist/services/mcp/gateway/projectReport.d.ts.map +1 -0
  352. package/dist/services/mcp/gateway/projectReport.js +61 -0
  353. package/dist/services/mcp/gateway/projectReport.js.map +1 -0
  354. package/dist/services/mcp/gateway/projectSetup.d.ts +29 -0
  355. package/dist/services/mcp/gateway/projectSetup.d.ts.map +1 -0
  356. package/dist/services/mcp/gateway/projectSetup.js +141 -0
  357. package/dist/services/mcp/gateway/projectSetup.js.map +1 -0
  358. package/dist/services/mcp/gateway/response.d.ts +45 -0
  359. package/dist/services/mcp/gateway/response.d.ts.map +1 -0
  360. package/dist/services/mcp/gateway/response.js +111 -0
  361. package/dist/services/mcp/gateway/response.js.map +1 -0
  362. package/dist/services/mcp/gateway/shared.d.ts +38 -0
  363. package/dist/services/mcp/gateway/shared.d.ts.map +1 -0
  364. package/dist/services/mcp/gateway/shared.js +39 -0
  365. package/dist/services/mcp/gateway/shared.js.map +1 -0
  366. package/dist/services/mcp/gateway/skill.d.ts +17 -0
  367. package/dist/services/mcp/gateway/skill.d.ts.map +1 -0
  368. package/dist/services/mcp/gateway/skill.js +323 -0
  369. package/dist/services/mcp/gateway/skill.js.map +1 -0
  370. package/dist/services/mcp/gateway/sync.d.ts +17 -0
  371. package/dist/services/mcp/gateway/sync.d.ts.map +1 -0
  372. package/dist/services/mcp/gateway/sync.js +219 -0
  373. package/dist/services/mcp/gateway/sync.js.map +1 -0
  374. package/dist/services/mcp/gateway/types.d.ts +116 -0
  375. package/dist/services/mcp/gateway/types.d.ts.map +1 -0
  376. package/dist/services/mcp/gateway/types.js +12 -0
  377. package/dist/services/mcp/gateway/types.js.map +1 -0
  378. package/dist/services/mcp/gateway/workflow.d.ts +18 -0
  379. package/dist/services/mcp/gateway/workflow.d.ts.map +1 -0
  380. package/dist/services/mcp/gateway/workflow.js +317 -0
  381. package/dist/services/mcp/gateway/workflow.js.map +1 -0
  382. package/dist/services/mcp/gateway/workflowAdvance.d.ts +25 -0
  383. package/dist/services/mcp/gateway/workflowAdvance.d.ts.map +1 -0
  384. package/dist/services/mcp/gateway/workflowAdvance.js +133 -0
  385. package/dist/services/mcp/gateway/workflowAdvance.js.map +1 -0
  386. package/dist/services/mcp/gateway/workflowInit.d.ts +28 -0
  387. package/dist/services/mcp/gateway/workflowInit.d.ts.map +1 -0
  388. package/dist/services/mcp/gateway/workflowInit.js +213 -0
  389. package/dist/services/mcp/gateway/workflowInit.js.map +1 -0
  390. package/dist/services/mcp/gateway/workflowManage.d.ts +31 -0
  391. package/dist/services/mcp/gateway/workflowManage.d.ts.map +1 -0
  392. package/dist/services/mcp/gateway/workflowManage.js +222 -0
  393. package/dist/services/mcp/gateway/workflowManage.js.map +1 -0
  394. package/dist/services/mcp/gateway/workflowStatus.d.ts +17 -0
  395. package/dist/services/mcp/gateway/workflowStatus.d.ts.map +1 -0
  396. package/dist/services/mcp/gateway/workflowStatus.js +91 -0
  397. package/dist/services/mcp/gateway/workflowStatus.js.map +1 -0
  398. package/dist/services/mcp/gatewayTools.d.ts +15 -0
  399. package/dist/services/mcp/gatewayTools.d.ts.map +1 -0
  400. package/dist/services/mcp/gatewayTools.js +38 -0
  401. package/dist/services/mcp/gatewayTools.js.map +1 -0
  402. package/dist/services/mcp/index.d.ts +7 -0
  403. package/dist/services/mcp/index.d.ts.map +1 -1
  404. package/dist/services/mcp/index.js +22 -1
  405. package/dist/services/mcp/index.js.map +1 -1
  406. package/dist/services/mcp/mcpInstallService.d.ts +56 -0
  407. package/dist/services/mcp/mcpInstallService.d.ts.map +1 -0
  408. package/dist/services/mcp/mcpInstallService.js +549 -0
  409. package/dist/services/mcp/mcpInstallService.js.map +1 -0
  410. package/dist/services/mcp/mcpServer.d.ts +45 -19
  411. package/dist/services/mcp/mcpServer.d.ts.map +1 -1
  412. package/dist/services/mcp/mcpServer.js +592 -1845
  413. package/dist/services/mcp/mcpServer.js.map +1 -1
  414. package/dist/services/passthrough/protocol.d.ts +4 -4
  415. package/dist/services/qa/index.d.ts +9 -0
  416. package/dist/services/qa/index.d.ts.map +1 -0
  417. package/dist/services/qa/index.js +15 -0
  418. package/dist/services/qa/index.js.map +1 -0
  419. package/dist/services/qa/patternInferer.d.ts +41 -0
  420. package/dist/services/qa/patternInferer.d.ts.map +1 -0
  421. package/dist/services/qa/patternInferer.js +366 -0
  422. package/dist/services/qa/patternInferer.js.map +1 -0
  423. package/dist/services/qa/qaService.d.ts +107 -0
  424. package/dist/services/qa/qaService.d.ts.map +1 -0
  425. package/dist/services/qa/qaService.js +874 -0
  426. package/dist/services/qa/qaService.js.map +1 -0
  427. package/dist/services/qa/topicDetector.d.ts +54 -0
  428. package/dist/services/qa/topicDetector.d.ts.map +1 -0
  429. package/dist/services/qa/topicDetector.js +306 -0
  430. package/dist/services/qa/topicDetector.js.map +1 -0
  431. package/dist/services/quickSync/quickSyncService.d.ts.map +1 -1
  432. package/dist/services/quickSync/quickSyncService.js +6 -10
  433. package/dist/services/quickSync/quickSyncService.js.map +1 -1
  434. package/dist/services/reverseSync/importSkillsService.d.ts +47 -0
  435. package/dist/services/reverseSync/importSkillsService.d.ts.map +1 -0
  436. package/dist/services/reverseSync/importSkillsService.js +362 -0
  437. package/dist/services/reverseSync/importSkillsService.js.map +1 -0
  438. package/dist/services/reverseSync/index.d.ts +12 -0
  439. package/dist/services/reverseSync/index.d.ts.map +1 -0
  440. package/dist/services/reverseSync/index.js +49 -0
  441. package/dist/services/reverseSync/index.js.map +1 -0
  442. package/dist/services/reverseSync/presets.d.ts +51 -0
  443. package/dist/services/reverseSync/presets.d.ts.map +1 -0
  444. package/dist/services/reverseSync/presets.js +77 -0
  445. package/dist/services/reverseSync/presets.js.map +1 -0
  446. package/dist/services/reverseSync/reverseQuickSyncService.d.ts +37 -0
  447. package/dist/services/reverseSync/reverseQuickSyncService.d.ts.map +1 -0
  448. package/dist/services/reverseSync/reverseQuickSyncService.js +265 -0
  449. package/dist/services/reverseSync/reverseQuickSyncService.js.map +1 -0
  450. package/dist/services/reverseSync/skillsDetector.d.ts +36 -0
  451. package/dist/services/reverseSync/skillsDetector.d.ts.map +1 -0
  452. package/dist/services/reverseSync/skillsDetector.js +287 -0
  453. package/dist/services/reverseSync/skillsDetector.js.map +1 -0
  454. package/dist/services/reverseSync/toolDetector.d.ts +36 -0
  455. package/dist/services/reverseSync/toolDetector.d.ts.map +1 -0
  456. package/dist/services/reverseSync/toolDetector.js +174 -0
  457. package/dist/services/reverseSync/toolDetector.js.map +1 -0
  458. package/dist/services/reverseSync/types.d.ts +203 -0
  459. package/dist/services/reverseSync/types.d.ts.map +1 -0
  460. package/dist/services/reverseSync/types.js +9 -0
  461. package/dist/services/reverseSync/types.js.map +1 -0
  462. package/dist/services/semantic/codebaseAnalyzer.d.ts +23 -1
  463. package/dist/services/semantic/codebaseAnalyzer.d.ts.map +1 -1
  464. package/dist/services/semantic/codebaseAnalyzer.js +531 -0
  465. package/dist/services/semantic/codebaseAnalyzer.js.map +1 -1
  466. package/dist/services/semantic/contextBuilder.d.ts.map +1 -1
  467. package/dist/services/semantic/contextBuilder.js +23 -8
  468. package/dist/services/semantic/contextBuilder.js.map +1 -1
  469. package/dist/services/semantic/types.d.ts +50 -0
  470. package/dist/services/semantic/types.d.ts.map +1 -1
  471. package/dist/services/semantic/types.js.map +1 -1
  472. package/dist/services/shared/contentTypeRegistry.d.ts +66 -0
  473. package/dist/services/shared/contentTypeRegistry.d.ts.map +1 -0
  474. package/dist/services/shared/contentTypeRegistry.js +113 -0
  475. package/dist/services/shared/contentTypeRegistry.js.map +1 -0
  476. package/dist/services/shared/contextRootResolver.d.ts +57 -0
  477. package/dist/services/shared/contextRootResolver.d.ts.map +1 -0
  478. package/dist/services/shared/contextRootResolver.js +102 -0
  479. package/dist/services/shared/contextRootResolver.js.map +1 -0
  480. package/dist/services/shared/index.d.ts +4 -1
  481. package/dist/services/shared/index.d.ts.map +1 -1
  482. package/dist/services/shared/index.js +39 -1
  483. package/dist/services/shared/index.js.map +1 -1
  484. package/dist/services/shared/pathHelpers.d.ts +15 -1
  485. package/dist/services/shared/pathHelpers.d.ts.map +1 -1
  486. package/dist/services/shared/pathHelpers.js +26 -1
  487. package/dist/services/shared/pathHelpers.js.map +1 -1
  488. package/dist/services/shared/toolRegistry.d.ts +135 -0
  489. package/dist/services/shared/toolRegistry.d.ts.map +1 -0
  490. package/dist/services/shared/toolRegistry.js +515 -0
  491. package/dist/services/shared/toolRegistry.js.map +1 -0
  492. package/dist/services/stack/scaffoldFilter.d.ts +1 -1
  493. package/dist/services/sync/presets.d.ts +3 -0
  494. package/dist/services/sync/presets.d.ts.map +1 -1
  495. package/dist/services/sync/presets.js +20 -32
  496. package/dist/services/sync/presets.js.map +1 -1
  497. package/dist/services/sync/syncService.d.ts +8 -0
  498. package/dist/services/sync/syncService.d.ts.map +1 -1
  499. package/dist/services/sync/syncService.js +21 -2
  500. package/dist/services/sync/syncService.js.map +1 -1
  501. package/dist/services/sync/types.d.ts +1 -1
  502. package/dist/services/sync/types.d.ts.map +1 -1
  503. package/dist/services/tools/index.d.ts +95 -0
  504. package/dist/services/tools/index.d.ts.map +1 -0
  505. package/dist/services/tools/index.js +236 -0
  506. package/dist/services/tools/index.js.map +1 -0
  507. package/dist/services/workflow/workflowService.d.ts +57 -4
  508. package/dist/services/workflow/workflowService.d.ts.map +1 -1
  509. package/dist/services/workflow/workflowService.js +79 -6
  510. package/dist/services/workflow/workflowService.js.map +1 -1
  511. package/dist/types/scaffoldFrontmatter.d.ts +145 -0
  512. package/dist/types/scaffoldFrontmatter.d.ts.map +1 -0
  513. package/dist/types/scaffoldFrontmatter.js +172 -0
  514. package/dist/types/scaffoldFrontmatter.js.map +1 -0
  515. package/dist/utils/cliUI.d.ts +1 -1
  516. package/dist/utils/cliUI.d.ts.map +1 -1
  517. package/dist/utils/cliUI.js +4 -1
  518. package/dist/utils/cliUI.js.map +1 -1
  519. package/dist/utils/frontMatter.d.ts +48 -0
  520. package/dist/utils/frontMatter.d.ts.map +1 -1
  521. package/dist/utils/frontMatter.js +135 -0
  522. package/dist/utils/frontMatter.js.map +1 -1
  523. package/dist/utils/gitService.d.ts +26 -0
  524. package/dist/utils/gitService.d.ts.map +1 -1
  525. package/dist/utils/gitService.js +96 -0
  526. package/dist/utils/gitService.js.map +1 -1
  527. package/dist/utils/i18n.d.ts +43 -2
  528. package/dist/utils/i18n.d.ts.map +1 -1
  529. package/dist/utils/i18n.js +96 -6
  530. package/dist/utils/i18n.js.map +1 -1
  531. package/dist/utils/prompts/index.d.ts +4 -0
  532. package/dist/utils/prompts/index.d.ts.map +1 -1
  533. package/dist/utils/prompts/index.js +15 -0
  534. package/dist/utils/prompts/index.js.map +1 -1
  535. package/dist/workflow/errors.d.ts +48 -0
  536. package/dist/workflow/errors.d.ts.map +1 -0
  537. package/dist/workflow/errors.js +52 -0
  538. package/dist/workflow/errors.js.map +1 -0
  539. package/dist/workflow/gates/gateChecker.d.ts +93 -0
  540. package/dist/workflow/gates/gateChecker.d.ts.map +1 -0
  541. package/dist/workflow/gates/gateChecker.js +197 -0
  542. package/dist/workflow/gates/gateChecker.js.map +1 -0
  543. package/dist/workflow/gates/index.d.ts +7 -0
  544. package/dist/workflow/gates/index.d.ts.map +1 -0
  545. package/dist/workflow/gates/index.js +13 -0
  546. package/dist/workflow/gates/index.js.map +1 -0
  547. package/dist/workflow/index.d.ts +4 -2
  548. package/dist/workflow/index.d.ts.map +1 -1
  549. package/dist/workflow/index.js +14 -3
  550. package/dist/workflow/index.js.map +1 -1
  551. package/dist/workflow/orchestrator.d.ts +94 -5
  552. package/dist/workflow/orchestrator.d.ts.map +1 -1
  553. package/dist/workflow/orchestrator.js +300 -11
  554. package/dist/workflow/orchestrator.js.map +1 -1
  555. package/dist/workflow/plans/planLinker.d.ts +79 -3
  556. package/dist/workflow/plans/planLinker.d.ts.map +1 -1
  557. package/dist/workflow/plans/planLinker.js +522 -3
  558. package/dist/workflow/plans/planLinker.js.map +1 -1
  559. package/dist/workflow/plans/types.d.ts +64 -0
  560. package/dist/workflow/plans/types.d.ts.map +1 -1
  561. package/dist/workflow/roles.d.ts +6 -0
  562. package/dist/workflow/roles.d.ts.map +1 -1
  563. package/dist/workflow/roles.js +6 -0
  564. package/dist/workflow/roles.js.map +1 -1
  565. package/dist/workflow/scaling.d.ts +1 -0
  566. package/dist/workflow/scaling.d.ts.map +1 -1
  567. package/dist/workflow/scaling.js +8 -17
  568. package/dist/workflow/scaling.js.map +1 -1
  569. package/dist/workflow/status/statusManager.d.ts +54 -1
  570. package/dist/workflow/status/statusManager.d.ts.map +1 -1
  571. package/dist/workflow/status/statusManager.js +539 -9
  572. package/dist/workflow/status/statusManager.js.map +1 -1
  573. package/dist/workflow/status/templates.d.ts +14 -5
  574. package/dist/workflow/status/templates.d.ts.map +1 -1
  575. package/dist/workflow/status/templates.js +55 -41
  576. package/dist/workflow/status/templates.js.map +1 -1
  577. package/dist/workflow/types.d.ts +138 -2
  578. package/dist/workflow/types.d.ts.map +1 -1
  579. package/dist/workflow/types.js +0 -1
  580. package/dist/workflow/types.js.map +1 -1
  581. package/package.json +1 -1
@@ -0,0 +1,161 @@
1
+ "use strict";
2
+ /**
3
+ * Context Export Service
4
+ *
5
+ * Unified export of docs, agents, and skills to AI tool directories.
6
+ * Orchestrates ExportRulesService, SyncService, and SkillExportService.
7
+ */
8
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
9
+ if (k2 === undefined) k2 = k;
10
+ var desc = Object.getOwnPropertyDescriptor(m, k);
11
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
12
+ desc = { enumerable: true, get: function() { return m[k]; } };
13
+ }
14
+ Object.defineProperty(o, k2, desc);
15
+ }) : (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ o[k2] = m[k];
18
+ }));
19
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
20
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
21
+ }) : function(o, v) {
22
+ o["default"] = v;
23
+ });
24
+ var __importStar = (this && this.__importStar) || (function () {
25
+ var ownKeys = function(o) {
26
+ ownKeys = Object.getOwnPropertyNames || function (o) {
27
+ var ar = [];
28
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
29
+ return ar;
30
+ };
31
+ return ownKeys(o);
32
+ };
33
+ return function (mod) {
34
+ if (mod && mod.__esModule) return mod;
35
+ var result = {};
36
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
37
+ __setModuleDefault(result, mod);
38
+ return result;
39
+ };
40
+ })();
41
+ Object.defineProperty(exports, "__esModule", { value: true });
42
+ exports.ContextExportService = void 0;
43
+ const path = __importStar(require("path"));
44
+ const shared_1 = require("../shared");
45
+ const exportRulesService_1 = require("./exportRulesService");
46
+ const skillExportService_1 = require("./skillExportService");
47
+ const sync_1 = require("../sync");
48
+ class ContextExportService {
49
+ constructor(deps) {
50
+ this.deps = deps;
51
+ }
52
+ /**
53
+ * Run unified export operation
54
+ */
55
+ async run(repoPath, options = {}) {
56
+ const absolutePath = path.resolve(repoPath);
57
+ const fs = await Promise.resolve().then(() => __importStar(require('fs-extra')));
58
+ const result = {
59
+ ...(0, shared_1.createEmptyResult)(),
60
+ docsExported: 0,
61
+ agentsExported: 0,
62
+ skillsExported: 0,
63
+ targets: [],
64
+ };
65
+ const preset = options.preset || 'all';
66
+ const errors = [];
67
+ // Export docs - only if .context/docs exists
68
+ const docsPath = path.join(absolutePath, '.context/docs');
69
+ if (!options.skipDocs && await fs.pathExists(docsPath)) {
70
+ try {
71
+ this.deps.ui.startSpinner('Exporting docs...');
72
+ const docsService = new exportRulesService_1.ExportRulesService(this.deps);
73
+ const docsResult = await docsService.run(absolutePath, {
74
+ preset,
75
+ indexMode: options.docsIndexMode || 'readme',
76
+ force: options.force,
77
+ dryRun: options.dryRun,
78
+ verbose: options.verbose,
79
+ });
80
+ result.docsExported = docsResult.filesCreated;
81
+ result.targets.push(...docsResult.targets);
82
+ this.deps.ui.stopSpinner();
83
+ }
84
+ catch (error) {
85
+ errors.push({ type: 'docs', error: error instanceof Error ? error.message : String(error) });
86
+ this.deps.ui.stopSpinner();
87
+ }
88
+ }
89
+ else if (!options.skipDocs) {
90
+ // Docs directory doesn't exist - skip silently
91
+ }
92
+ // Export agents - only if .context/agents exists
93
+ const agentsPath = path.join(absolutePath, '.context/agents');
94
+ if (!options.skipAgents && await fs.pathExists(agentsPath)) {
95
+ try {
96
+ this.deps.ui.startSpinner('Exporting agents...');
97
+ const syncService = new sync_1.SyncService(this.deps);
98
+ await syncService.run({
99
+ source: agentsPath,
100
+ preset: preset,
101
+ mode: options.agentMode || 'symlink',
102
+ force: options.force || false,
103
+ dryRun: options.dryRun || false,
104
+ verbose: options.verbose || false,
105
+ });
106
+ // SyncService doesn't return count, so we mark as 1 if successful
107
+ result.agentsExported = 1;
108
+ this.deps.ui.stopSpinner();
109
+ }
110
+ catch (error) {
111
+ const errorMsg = error instanceof Error ? error.message : String(error);
112
+ if (!errorMsg.includes('sourceMissing') && !errorMsg.includes('no agents')) {
113
+ errors.push({ type: 'agents', error: errorMsg });
114
+ }
115
+ this.deps.ui.stopSpinner();
116
+ }
117
+ }
118
+ else if (!options.skipAgents) {
119
+ // Agents directory doesn't exist - skip silently
120
+ }
121
+ // Export skills - only if .context/skills exists
122
+ const skillsPath = path.join(absolutePath, '.context/skills');
123
+ if (!options.skipSkills && await fs.pathExists(skillsPath)) {
124
+ try {
125
+ this.deps.ui.startSpinner('Exporting skills...');
126
+ const skillsService = new skillExportService_1.SkillExportService(this.deps);
127
+ const skillsResult = await skillsService.run(absolutePath, {
128
+ preset,
129
+ includeBuiltIn: options.includeBuiltInSkills,
130
+ force: options.force,
131
+ dryRun: options.dryRun,
132
+ verbose: options.verbose,
133
+ });
134
+ result.skillsExported = skillsResult.filesCreated;
135
+ result.targets.push(...skillsResult.targets);
136
+ this.deps.ui.stopSpinner();
137
+ }
138
+ catch (error) {
139
+ errors.push({ type: 'skills', error: error instanceof Error ? error.message : String(error) });
140
+ this.deps.ui.stopSpinner();
141
+ }
142
+ }
143
+ else if (!options.skipSkills) {
144
+ // Skills directory doesn't exist - skip silently
145
+ }
146
+ // Update error count
147
+ result.filesFailed = errors.length;
148
+ for (const err of errors) {
149
+ result.errors.push({ file: err.type, error: err.error });
150
+ }
151
+ // Calculate total created
152
+ result.filesCreated = result.docsExported + result.agentsExported + result.skillsExported;
153
+ // Display summary
154
+ if (!options.dryRun && result.filesCreated > 0) {
155
+ this.deps.ui.displaySuccess(`Context exported: ${result.docsExported} docs, ${result.agentsExported} agents, ${result.skillsExported} skills`);
156
+ }
157
+ return result;
158
+ }
159
+ }
160
+ exports.ContextExportService = ContextExportService;
161
+ //# sourceMappingURL=contextExportService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"contextExportService.js","sourceRoot":"","sources":["../../../src/services/export/contextExportService.ts"],"names":[],"mappings":"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"}
@@ -19,12 +19,14 @@ export interface ExportOptions {
19
19
  force?: boolean;
20
20
  dryRun?: boolean;
21
21
  verbose?: boolean;
22
+ /** Index mode: 'readme' exports only README.md files, 'all' exports all matching files */
23
+ indexMode?: 'readme' | 'all';
22
24
  }
23
25
  export interface ExportResult extends OperationResult {
24
26
  targets: string[];
25
27
  }
26
28
  /**
27
- * Export presets for different AI tools
29
+ * Export presets for different AI tools (derived from tool registry)
28
30
  */
29
31
  export declare const EXPORT_PRESETS: Record<string, ExportTarget[]>;
30
32
  export declare class ExportRulesService {
@@ -40,12 +42,24 @@ export declare class ExportRulesService {
40
42
  private exportToTarget;
41
43
  /**
42
44
  * Resolve export targets from options
45
+ *
46
+ * Supports three formats:
47
+ * 1. Preset name via `preset` option (e.g., 'all', 'cursor')
48
+ * 2. Preset names in `targets` array (e.g., ['claude', 'cursor'])
49
+ * 3. Direct paths in `targets` array (e.g., ['.custom/rules'])
43
50
  */
44
51
  private resolveTargets;
45
52
  /**
46
53
  * Read source rules from .context/docs
54
+ * @param sourcePath - Path to the source directory
55
+ * @param indexMode - 'readme' to only read README.md files, 'all' to read all matching files
47
56
  */
48
57
  private readSourceRules;
58
+ /**
59
+ * Read only README.md files as indices
60
+ * This is useful when you want to export just the index files that reference other docs
61
+ */
62
+ private readReadmeIndexFiles;
49
63
  /**
50
64
  * Combine multiple rules into a single content block
51
65
  */
@@ -1 +1 @@
1
- {"version":3,"file":"exportRulesService.d.ts","sourceRoot":"","sources":["../../../src/services/export/exportRulesService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EACL,gBAAgB,EAChB,eAAe,EAUhB,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,8BAA8B,GAAG,gBAAgB,CAAC;AAE9D,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,MAAM,WAAW,YAAa,SAAQ,eAAe;IACnD,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAQD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,CAkBzD,CAAC;AAOF,qBAAa,kBAAkB;IACjB,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,8BAA8B;IAExD;;OAEG;IACG,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IAgD/E;;OAEG;YACW,cAAc;IA6D5B;;OAEG;IACH,OAAO,CAAC,cAAc;IAuBtB;;OAEG;YACW,eAAe;IAgC7B;;OAEG;IACH,OAAO,CAAC,YAAY;IAepB;;OAEG;YACW,iBAAiB;IAS/B;;OAEG;IACH,mBAAmB,IAAI,MAAM,EAAE;CAGhC"}
1
+ {"version":3,"file":"exportRulesService.d.ts","sourceRoot":"","sources":["../../../src/services/export/exportRulesService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EACL,gBAAgB,EAChB,eAAe,EAWhB,MAAM,WAAW,CAAC;AAEnB,MAAM,MAAM,8BAA8B,GAAG,gBAAgB,CAAC;AAE9D,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,QAAQ,GAAG,WAAW,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0FAA0F;IAC1F,SAAS,CAAC,EAAE,QAAQ,GAAG,KAAK,CAAC;CAC9B;AAED,MAAM,WAAW,YAAa,SAAQ,eAAe;IACnD,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB;AAyCD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,EAAE,CAAwB,CAAC;AAEnF,qBAAa,kBAAkB;IACjB,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,8BAA8B;IAExD;;OAEG;IACG,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,aAAkB,GAAG,OAAO,CAAC,YAAY,CAAC;IAgD/E;;OAEG;YACW,cAAc;IA6D5B;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc;IAoCtB;;;;OAIG;YACW,eAAe;IA0C7B;;;OAGG;YACW,oBAAoB;IA8BlC;;OAEG;IACH,OAAO,CAAC,YAAY;IAepB;;OAEG;YACW,iBAAiB;IAS/B;;OAEG;IACH,mBAAmB,IAAI,MAAM,EAAE;CAGhC"}
@@ -43,31 +43,36 @@ const path = __importStar(require("path"));
43
43
  const fs = __importStar(require("fs-extra"));
44
44
  const shared_1 = require("../shared");
45
45
  /**
46
- * Export presets for different AI tools
46
+ * Build export presets from the unified tool registry
47
47
  */
48
- exports.EXPORT_PRESETS = {
49
- cursor: [
50
- { name: 'cursorrules', path: '.cursorrules', format: 'single', description: 'Cursor AI rules file' },
51
- { name: 'cursor-rules-dir', path: '.cursor/rules', format: 'directory', description: 'Cursor AI rules directory' },
52
- ],
53
- claude: [
54
- { name: 'claude-md', path: 'CLAUDE.md', format: 'single', description: 'Claude Code main rules file' },
55
- ],
56
- github: [
57
- { name: 'copilot-instructions', path: '.github/copilot-instructions.md', format: 'single', description: 'GitHub Copilot instructions' },
58
- ],
59
- windsurf: [
60
- { name: 'windsurf-rules-dir', path: '.windsurf/rules', format: 'single', description: 'Windsurf rules file' },
61
- ],
62
- agents: [
48
+ function buildExportPresets() {
49
+ const registryPresets = (0, shared_1.getRulesExportPresets)();
50
+ const presets = {};
51
+ // Add presets from registry
52
+ for (const [toolId, targets] of Object.entries(registryPresets)) {
53
+ presets[toolId] = targets;
54
+ }
55
+ // Add cursor legacy .cursorrules file (in addition to directory)
56
+ if (presets.cursor) {
57
+ presets.cursor = [
58
+ { name: 'cursorrules', path: '.cursorrules', format: 'single', description: 'Cursor AI rules file' },
59
+ ...presets.cursor,
60
+ ];
61
+ }
62
+ // Add universal AGENTS.md
63
+ presets.agents = [
63
64
  { name: 'agents-md', path: 'AGENTS.md', format: 'single', description: 'Universal AGENTS.md file' },
64
- ],
65
- all: [], // Populated dynamically below
66
- };
67
- // Populate 'all' preset
68
- exports.EXPORT_PRESETS.all = Object.entries(exports.EXPORT_PRESETS)
69
- .filter(([key]) => key !== 'all')
70
- .flatMap(([, targets]) => targets);
65
+ ];
66
+ // Build 'all' preset
67
+ presets.all = Object.entries(presets)
68
+ .filter(([key]) => key !== 'all')
69
+ .flatMap(([, targets]) => targets);
70
+ return presets;
71
+ }
72
+ /**
73
+ * Export presets for different AI tools (derived from tool registry)
74
+ */
75
+ exports.EXPORT_PRESETS = buildExportPresets();
71
76
  class ExportRulesService {
72
77
  constructor(deps) {
73
78
  this.deps = deps;
@@ -88,8 +93,8 @@ class ExportRulesService {
88
93
  this.deps.ui.displayError(this.deps.t('errors.export.noTargets'));
89
94
  return result;
90
95
  }
91
- // Read source rules
92
- const rules = await this.readSourceRules(sourcePath);
96
+ // Read source rules based on indexMode
97
+ const rules = await this.readSourceRules(sourcePath, options.indexMode);
93
98
  if (rules.length === 0) {
94
99
  this.deps.ui.displayError(this.deps.t('errors.export.noRules'));
95
100
  return result;
@@ -154,6 +159,11 @@ class ExportRulesService {
154
159
  }
155
160
  /**
156
161
  * Resolve export targets from options
162
+ *
163
+ * Supports three formats:
164
+ * 1. Preset name via `preset` option (e.g., 'all', 'cursor')
165
+ * 2. Preset names in `targets` array (e.g., ['claude', 'cursor'])
166
+ * 3. Direct paths in `targets` array (e.g., ['.custom/rules'])
157
167
  */
158
168
  resolveTargets(options) {
159
169
  if (options.preset) {
@@ -162,12 +172,24 @@ class ExportRulesService {
162
172
  return preset;
163
173
  }
164
174
  if (options.targets?.length) {
165
- return options.targets.map((t) => ({
166
- name: path.basename(t),
167
- path: t,
168
- format: 'single',
169
- description: 'Custom target',
170
- }));
175
+ const resolved = [];
176
+ for (const t of options.targets) {
177
+ // First check if target is a preset name
178
+ const preset = exports.EXPORT_PRESETS[t.toLowerCase()];
179
+ if (preset) {
180
+ resolved.push(...preset);
181
+ }
182
+ else {
183
+ // Treat as a direct path
184
+ resolved.push({
185
+ name: path.basename(t),
186
+ path: t,
187
+ format: 'single',
188
+ description: 'Custom target',
189
+ });
190
+ }
191
+ }
192
+ return resolved;
171
193
  }
172
194
  // Default: export to common targets
173
195
  return [
@@ -178,19 +200,30 @@ class ExportRulesService {
178
200
  }
179
201
  /**
180
202
  * Read source rules from .context/docs
203
+ * @param sourcePath - Path to the source directory
204
+ * @param indexMode - 'readme' to only read README.md files, 'all' to read all matching files
181
205
  */
182
- async readSourceRules(sourcePath) {
206
+ async readSourceRules(sourcePath, indexMode) {
207
+ // Check if source directory exists
208
+ if (!await fs.pathExists(sourcePath)) {
209
+ return [];
210
+ }
183
211
  const rules = [];
184
- const patterns = ['**/*rules*.md', '**/*instructions*.md', '**/*conventions*.md', '**/README.md'];
185
212
  try {
213
+ if (indexMode === 'readme') {
214
+ // Only read README.md files (indices)
215
+ return await this.readReadmeIndexFiles(sourcePath);
216
+ }
217
+ // Default behavior: read all matching files
186
218
  const files = await (0, shared_1.globFiles)(`**/*.md`, sourcePath, { absolute: true });
187
219
  for (const file of files) {
188
220
  const basename = (0, shared_1.getBasename)(file).toLowerCase();
189
- const isRuleFile = patterns.some(p => basename.includes('rules') ||
221
+ const isRuleFile = basename.includes('rules') ||
190
222
  basename.includes('instructions') ||
191
223
  basename.includes('conventions') ||
192
- basename === 'readme');
193
- if (isRuleFile || patterns.length === 0) {
224
+ basename === 'readme.md' ||
225
+ basename === 'readme';
226
+ if (isRuleFile) {
194
227
  try {
195
228
  const content = await fs.readFile(file, 'utf-8');
196
229
  rules.push({ name: (0, shared_1.getBasename)(file), content, path: file });
@@ -206,6 +239,37 @@ class ExportRulesService {
206
239
  }
207
240
  return rules;
208
241
  }
242
+ /**
243
+ * Read only README.md files as indices
244
+ * This is useful when you want to export just the index files that reference other docs
245
+ */
246
+ async readReadmeIndexFiles(sourcePath) {
247
+ // Check if source directory exists
248
+ if (!await fs.pathExists(sourcePath)) {
249
+ return [];
250
+ }
251
+ const rules = [];
252
+ try {
253
+ const files = await (0, shared_1.globFiles)(`**/README.md`, sourcePath, { absolute: true });
254
+ for (const file of files) {
255
+ try {
256
+ const content = await fs.readFile(file, 'utf-8');
257
+ // Use relative path from sourcePath for naming
258
+ const relativePath = path.relative(sourcePath, file);
259
+ const dirName = path.dirname(relativePath);
260
+ const name = dirName === '.' ? 'README' : `${dirName}/README`;
261
+ rules.push({ name, content, path: file });
262
+ }
263
+ catch {
264
+ // Skip unreadable files
265
+ }
266
+ }
267
+ }
268
+ catch {
269
+ // Source path doesn't exist
270
+ }
271
+ return rules;
272
+ }
209
273
  /**
210
274
  * Combine multiple rules into a single content block
211
275
  */
@@ -1 +1 @@
1
- {"version":3,"file":"exportRulesService.js","sourceRoot":"","sources":["../../../src/services/export/exportRulesService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"exportRulesService.js","sourceRoot":"","sources":["../../../src/services/export/exportRulesService.ts"],"names":[],"mappings":"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"}
@@ -2,4 +2,6 @@ export { ExportRulesService, EXPORT_PRESETS } from './exportRulesService';
2
2
  export type { ExportOptions, ExportResult, ExportTarget, ExportRulesServiceDependencies } from './exportRulesService';
3
3
  export { SkillExportService, SKILL_EXPORT_PRESETS } from './skillExportService';
4
4
  export type { SkillExportOptions, SkillExportResult, SkillExportTarget, SkillExportServiceDependencies } from './skillExportService';
5
+ export { ContextExportService } from './contextExportService';
6
+ export type { ContextExportOptions, ContextExportResult, ContextExportServiceDependencies } from './contextExportService';
5
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/export/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC1E,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAEtH,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAChF,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/export/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAC1E,YAAY,EAAE,aAAa,EAAE,YAAY,EAAE,YAAY,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAEtH,OAAO,EAAE,kBAAkB,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAChF,YAAY,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,iBAAiB,EAAE,8BAA8B,EAAE,MAAM,sBAAsB,CAAC;AAErI,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,gCAAgC,EAAE,MAAM,wBAAwB,CAAC"}
@@ -1,10 +1,12 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SKILL_EXPORT_PRESETS = exports.SkillExportService = exports.EXPORT_PRESETS = exports.ExportRulesService = void 0;
3
+ exports.ContextExportService = exports.SKILL_EXPORT_PRESETS = exports.SkillExportService = exports.EXPORT_PRESETS = exports.ExportRulesService = void 0;
4
4
  var exportRulesService_1 = require("./exportRulesService");
5
5
  Object.defineProperty(exports, "ExportRulesService", { enumerable: true, get: function () { return exportRulesService_1.ExportRulesService; } });
6
6
  Object.defineProperty(exports, "EXPORT_PRESETS", { enumerable: true, get: function () { return exportRulesService_1.EXPORT_PRESETS; } });
7
7
  var skillExportService_1 = require("./skillExportService");
8
8
  Object.defineProperty(exports, "SkillExportService", { enumerable: true, get: function () { return skillExportService_1.SkillExportService; } });
9
9
  Object.defineProperty(exports, "SKILL_EXPORT_PRESETS", { enumerable: true, get: function () { return skillExportService_1.SKILL_EXPORT_PRESETS; } });
10
+ var contextExportService_1 = require("./contextExportService");
11
+ Object.defineProperty(exports, "ContextExportService", { enumerable: true, get: function () { return contextExportService_1.ContextExportService; } });
10
12
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/export/index.ts"],"names":[],"mappings":";;;AAAA,2DAA0E;AAAjE,wHAAA,kBAAkB,OAAA;AAAE,oHAAA,cAAc,OAAA;AAG3C,2DAAgF;AAAvE,wHAAA,kBAAkB,OAAA;AAAE,0HAAA,oBAAoB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/export/index.ts"],"names":[],"mappings":";;;AAAA,2DAA0E;AAAjE,wHAAA,kBAAkB,OAAA;AAAE,oHAAA,cAAc,OAAA;AAG3C,2DAAgF;AAAvE,wHAAA,kBAAkB,OAAA;AAAE,0HAAA,oBAAoB,OAAA;AAGjD,+DAA8D;AAArD,4HAAA,oBAAoB,OAAA"}
@@ -26,7 +26,7 @@ export interface SkillExportResult extends OperationResult {
26
26
  skillsExported: string[];
27
27
  }
28
28
  /**
29
- * Skill export presets for different AI tools
29
+ * Skill export presets for different AI tools (derived from tool registry)
30
30
  */
31
31
  export declare const SKILL_EXPORT_PRESETS: Record<string, SkillExportTarget[]>;
32
32
  export declare class SkillExportService {
@@ -54,6 +54,11 @@ export declare class SkillExportService {
54
54
  private generateSkillContent;
55
55
  /**
56
56
  * Resolve export targets from options
57
+ *
58
+ * Supports three formats:
59
+ * 1. Preset name via `preset` option (e.g., 'all', 'claude')
60
+ * 2. Preset names in `targets` array (e.g., ['claude', 'gemini'])
61
+ * 3. Direct paths in `targets` array (e.g., ['.custom/skills'])
57
62
  */
58
63
  private resolveTargets;
59
64
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"skillExportService.d.ts","sourceRoot":"","sources":["../../../src/services/export/skillExportService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EACL,gBAAgB,EAChB,eAAe,EAMhB,MAAM,WAAW,CAAC;AAGnB,MAAM,MAAM,8BAA8B,GAAG,gBAAgB,CAAC;AAE9D,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,qDAAqD;IACrD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAWpE,CAAC;AAOF,qBAAa,kBAAkB;IACjB,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,8BAA8B;IAExD;;OAEG;IACG,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA6CzF;;OAEG;YACW,iBAAiB;IAsC/B;;OAEG;YACW,cAAc;IAqC5B;;OAEG;YACW,WAAW;IAyCzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;OAEG;IACH,OAAO,CAAC,cAAc;IAkBtB;;OAEG;IACH,mBAAmB,IAAI,MAAM,EAAE;CAGhC"}
1
+ {"version":3,"file":"skillExportService.d.ts","sourceRoot":"","sources":["../../../src/services/export/skillExportService.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EACL,gBAAgB,EAChB,eAAe,EAOhB,MAAM,WAAW,CAAC;AAGnB,MAAM,MAAM,8BAA8B,GAAG,gBAAgB,CAAC;AAE9D,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kCAAkC;IAClC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAC;IAClB,qDAAqD;IACrD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,MAAM,WAAW,iBAAkB,SAAQ,eAAe;IACxD,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,cAAc,EAAE,MAAM,EAAE,CAAC;CAC1B;AAqBD;;GAEG;AACH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,EAAE,CAA6B,CAAC;AAEnG,qBAAa,kBAAkB;IACjB,OAAO,CAAC,IAAI;gBAAJ,IAAI,EAAE,8BAA8B;IAExD;;OAEG;IACG,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC;IA6CzF;;OAEG;YACW,iBAAiB;IA+C/B;;OAEG;YACW,cAAc;IAqC5B;;OAEG;YACW,WAAW;IAyCzB;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAI5B;;;;;;;OAOG;IACH,OAAO,CAAC,cAAc;IA+BtB;;OAEG;IACH,mBAAmB,IAAI,MAAM,EAAE;CAGhC"}
@@ -44,24 +44,24 @@ const fs = __importStar(require("fs-extra"));
44
44
  const shared_1 = require("../shared");
45
45
  const skills_1 = require("../../workflow/skills");
46
46
  /**
47
- * Skill export presets for different AI tools
47
+ * Build skill export presets from the unified tool registry
48
48
  */
49
- exports.SKILL_EXPORT_PRESETS = {
50
- claude: [
51
- { name: 'claude-skills', path: '.claude/skills', description: 'Claude Code skills directory' },
52
- ],
53
- gemini: [
54
- { name: 'gemini-skills', path: '.gemini/skills', description: 'Gemini CLI skills directory' },
55
- ],
56
- codex: [
57
- { name: 'codex-skills', path: '.codex/skills', description: 'Codex CLI skills directory' },
58
- ],
59
- all: [], // Populated dynamically below
60
- };
61
- // Populate 'all' preset
62
- exports.SKILL_EXPORT_PRESETS.all = Object.entries(exports.SKILL_EXPORT_PRESETS)
63
- .filter(([key]) => key !== 'all')
64
- .flatMap(([, targets]) => targets);
49
+ function buildSkillExportPresets() {
50
+ const registryPresets = (0, shared_1.getSkillsExportPresets)();
51
+ const presets = {};
52
+ for (const [toolId, targets] of Object.entries(registryPresets)) {
53
+ presets[toolId] = targets;
54
+ }
55
+ // Build 'all' preset
56
+ presets.all = Object.entries(presets)
57
+ .filter(([key]) => key !== 'all')
58
+ .flatMap(([, targets]) => targets);
59
+ return presets;
60
+ }
61
+ /**
62
+ * Skill export presets for different AI tools (derived from tool registry)
63
+ */
64
+ exports.SKILL_EXPORT_PRESETS = buildSkillExportPresets();
65
65
  class SkillExportService {
66
66
  constructor(deps) {
67
67
  this.deps = deps;
@@ -108,6 +108,13 @@ class SkillExportService {
108
108
  * Get skills to export
109
109
  */
110
110
  async getSkillsToExport(repoPath, options) {
111
+ const fs = await Promise.resolve().then(() => __importStar(require('fs-extra')));
112
+ const skillsPath = path.join(repoPath, '.context', 'skills');
113
+ const skillsExist = await fs.pathExists(skillsPath);
114
+ // If skills directory doesn't exist and includeBuiltIn is not enabled, return empty
115
+ if (!skillsExist && !options.includeBuiltIn) {
116
+ return [];
117
+ }
111
118
  const registry = (0, skills_1.createSkillRegistry)(repoPath);
112
119
  const discovered = await registry.discoverAll();
113
120
  let skills = discovered.all;
@@ -210,6 +217,11 @@ class SkillExportService {
210
217
  }
211
218
  /**
212
219
  * Resolve export targets from options
220
+ *
221
+ * Supports three formats:
222
+ * 1. Preset name via `preset` option (e.g., 'all', 'claude')
223
+ * 2. Preset names in `targets` array (e.g., ['claude', 'gemini'])
224
+ * 3. Direct paths in `targets` array (e.g., ['.custom/skills'])
213
225
  */
214
226
  resolveTargets(options) {
215
227
  if (options.preset) {
@@ -218,11 +230,23 @@ class SkillExportService {
218
230
  return preset;
219
231
  }
220
232
  if (options.targets?.length) {
221
- return options.targets.map((t) => ({
222
- name: path.basename(t),
223
- path: t,
224
- description: 'Custom target',
225
- }));
233
+ const resolved = [];
234
+ for (const t of options.targets) {
235
+ // First check if target is a preset name
236
+ const preset = exports.SKILL_EXPORT_PRESETS[t.toLowerCase()];
237
+ if (preset) {
238
+ resolved.push(...preset);
239
+ }
240
+ else {
241
+ // Treat as a direct path
242
+ resolved.push({
243
+ name: path.basename(t),
244
+ path: t,
245
+ description: 'Custom target',
246
+ });
247
+ }
248
+ }
249
+ return resolved;
226
250
  }
227
251
  // Default: export to all supported tools
228
252
  return exports.SKILL_EXPORT_PRESETS.all;