@dotcontext/cli 0.8.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 (797) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +566 -0
  3. package/dist/generators/agents/agentConfig.d.ts +4 -0
  4. package/dist/generators/agents/agentConfig.d.ts.map +1 -0
  5. package/dist/generators/agents/agentConfig.js +180 -0
  6. package/dist/generators/agents/agentConfig.js.map +1 -0
  7. package/dist/generators/agents/agentGenerator.d.ts +36 -0
  8. package/dist/generators/agents/agentGenerator.d.ts.map +1 -0
  9. package/dist/generators/agents/agentGenerator.js +304 -0
  10. package/dist/generators/agents/agentGenerator.js.map +1 -0
  11. package/dist/generators/agents/agentTypes.d.ts +4 -0
  12. package/dist/generators/agents/agentTypes.d.ts.map +1 -0
  13. package/dist/generators/agents/agentTypes.js +25 -0
  14. package/dist/generators/agents/agentTypes.js.map +1 -0
  15. package/dist/generators/agents/index.d.ts +4 -0
  16. package/dist/generators/agents/index.d.ts.map +1 -0
  17. package/dist/generators/agents/index.js +12 -0
  18. package/dist/generators/agents/index.js.map +1 -0
  19. package/dist/generators/agents/templates/index.d.ts +3 -0
  20. package/dist/generators/agents/templates/index.d.ts.map +1 -0
  21. package/dist/generators/agents/templates/index.js +6 -0
  22. package/dist/generators/agents/templates/index.js.map +1 -0
  23. package/dist/generators/agents/templates/indexTemplate.d.ts +3 -0
  24. package/dist/generators/agents/templates/indexTemplate.d.ts.map +1 -0
  25. package/dist/generators/agents/templates/indexTemplate.js +36 -0
  26. package/dist/generators/agents/templates/indexTemplate.js.map +1 -0
  27. package/dist/generators/agents/templates/types.d.ts +22 -0
  28. package/dist/generators/agents/templates/types.d.ts.map +1 -0
  29. package/dist/generators/agents/templates/types.js +3 -0
  30. package/dist/generators/agents/templates/types.js.map +1 -0
  31. package/dist/generators/documentation/codebaseMapGenerator.d.ts +143 -0
  32. package/dist/generators/documentation/codebaseMapGenerator.d.ts.map +1 -0
  33. package/dist/generators/documentation/codebaseMapGenerator.js +666 -0
  34. package/dist/generators/documentation/codebaseMapGenerator.js.map +1 -0
  35. package/dist/generators/documentation/documentationGenerator.d.ts +22 -0
  36. package/dist/generators/documentation/documentationGenerator.d.ts.map +1 -0
  37. package/dist/generators/documentation/documentationGenerator.js +263 -0
  38. package/dist/generators/documentation/documentationGenerator.js.map +1 -0
  39. package/dist/generators/documentation/guideRegistry.d.ts +6 -0
  40. package/dist/generators/documentation/guideRegistry.d.ts.map +1 -0
  41. package/dist/generators/documentation/guideRegistry.js +74 -0
  42. package/dist/generators/documentation/guideRegistry.js.map +1 -0
  43. package/dist/generators/documentation/index.d.ts +4 -0
  44. package/dist/generators/documentation/index.d.ts.map +1 -0
  45. package/dist/generators/documentation/index.js +8 -0
  46. package/dist/generators/documentation/index.js.map +1 -0
  47. package/dist/generators/documentation/templates/common.d.ts +42 -0
  48. package/dist/generators/documentation/templates/common.d.ts.map +1 -0
  49. package/dist/generators/documentation/templates/common.js +194 -0
  50. package/dist/generators/documentation/templates/common.js.map +1 -0
  51. package/dist/generators/documentation/templates/index.d.ts +3 -0
  52. package/dist/generators/documentation/templates/index.d.ts.map +1 -0
  53. package/dist/generators/documentation/templates/index.js +6 -0
  54. package/dist/generators/documentation/templates/index.js.map +1 -0
  55. package/dist/generators/documentation/templates/indexTemplate.d.ts +3 -0
  56. package/dist/generators/documentation/templates/indexTemplate.d.ts.map +1 -0
  57. package/dist/generators/documentation/templates/indexTemplate.js +25 -0
  58. package/dist/generators/documentation/templates/indexTemplate.js.map +1 -0
  59. package/dist/generators/documentation/templates/types.d.ts +24 -0
  60. package/dist/generators/documentation/templates/types.d.ts.map +1 -0
  61. package/dist/generators/documentation/templates/types.js +3 -0
  62. package/dist/generators/documentation/templates/types.js.map +1 -0
  63. package/dist/generators/plans/index.d.ts +2 -0
  64. package/dist/generators/plans/index.d.ts.map +1 -0
  65. package/dist/generators/plans/index.js +6 -0
  66. package/dist/generators/plans/index.js.map +1 -0
  67. package/dist/generators/plans/planGenerator.d.ts +26 -0
  68. package/dist/generators/plans/planGenerator.d.ts.map +1 -0
  69. package/dist/generators/plans/planGenerator.js +137 -0
  70. package/dist/generators/plans/planGenerator.js.map +1 -0
  71. package/dist/generators/plans/templates/indexTemplate.d.ts +3 -0
  72. package/dist/generators/plans/templates/indexTemplate.d.ts.map +1 -0
  73. package/dist/generators/plans/templates/indexTemplate.js +28 -0
  74. package/dist/generators/plans/templates/indexTemplate.js.map +1 -0
  75. package/dist/generators/plans/templates/planTemplate.d.ts +14 -0
  76. package/dist/generators/plans/templates/planTemplate.d.ts.map +1 -0
  77. package/dist/generators/plans/templates/planTemplate.js +270 -0
  78. package/dist/generators/plans/templates/planTemplate.js.map +1 -0
  79. package/dist/generators/plans/templates/types.d.ts +29 -0
  80. package/dist/generators/plans/templates/types.d.ts.map +1 -0
  81. package/dist/generators/plans/templates/types.js +3 -0
  82. package/dist/generators/plans/templates/types.js.map +1 -0
  83. package/dist/generators/shared/contextGenerator.d.ts +7 -0
  84. package/dist/generators/shared/contextGenerator.d.ts.map +1 -0
  85. package/dist/generators/shared/contextGenerator.js +13 -0
  86. package/dist/generators/shared/contextGenerator.js.map +1 -0
  87. package/dist/generators/shared/directoryTemplateHelpers.d.ts +2 -0
  88. package/dist/generators/shared/directoryTemplateHelpers.d.ts.map +1 -0
  89. package/dist/generators/shared/directoryTemplateHelpers.js +12 -0
  90. package/dist/generators/shared/directoryTemplateHelpers.js.map +1 -0
  91. package/dist/generators/shared/generatorUtils.d.ts +16 -0
  92. package/dist/generators/shared/generatorUtils.d.ts.map +1 -0
  93. package/dist/generators/shared/generatorUtils.js +116 -0
  94. package/dist/generators/shared/generatorUtils.js.map +1 -0
  95. package/dist/generators/shared/index.d.ts +5 -0
  96. package/dist/generators/shared/index.d.ts.map +1 -0
  97. package/dist/generators/shared/index.js +26 -0
  98. package/dist/generators/shared/index.js.map +1 -0
  99. package/dist/generators/shared/scaffoldStructures.d.ts +13 -0
  100. package/dist/generators/shared/scaffoldStructures.d.ts.map +1 -0
  101. package/dist/generators/shared/scaffoldStructures.js +30 -0
  102. package/dist/generators/shared/scaffoldStructures.js.map +1 -0
  103. package/dist/generators/shared/structures/agents/definitions.d.ts +18 -0
  104. package/dist/generators/shared/structures/agents/definitions.d.ts.map +1 -0
  105. package/dist/generators/shared/structures/agents/definitions.js +561 -0
  106. package/dist/generators/shared/structures/agents/definitions.js.map +1 -0
  107. package/dist/generators/shared/structures/agents/factory.d.ts +25 -0
  108. package/dist/generators/shared/structures/agents/factory.d.ts.map +1 -0
  109. package/dist/generators/shared/structures/agents/factory.js +138 -0
  110. package/dist/generators/shared/structures/agents/factory.js.map +1 -0
  111. package/dist/generators/shared/structures/agents/index.d.ts +6 -0
  112. package/dist/generators/shared/structures/agents/index.d.ts.map +1 -0
  113. package/dist/generators/shared/structures/agents/index.js +24 -0
  114. package/dist/generators/shared/structures/agents/index.js.map +1 -0
  115. package/dist/generators/shared/structures/documentation/apiReference.d.ts +3 -0
  116. package/dist/generators/shared/structures/documentation/apiReference.d.ts.map +1 -0
  117. package/dist/generators/shared/structures/documentation/apiReference.js +100 -0
  118. package/dist/generators/shared/structures/documentation/apiReference.js.map +1 -0
  119. package/dist/generators/shared/structures/documentation/architecture.d.ts +3 -0
  120. package/dist/generators/shared/structures/documentation/architecture.d.ts.map +1 -0
  121. package/dist/generators/shared/structures/documentation/architecture.js +176 -0
  122. package/dist/generators/shared/structures/documentation/architecture.js.map +1 -0
  123. package/dist/generators/shared/structures/documentation/dataFlow.d.ts +3 -0
  124. package/dist/generators/shared/structures/documentation/dataFlow.d.ts.map +1 -0
  125. package/dist/generators/shared/structures/documentation/dataFlow.js +107 -0
  126. package/dist/generators/shared/structures/documentation/dataFlow.js.map +1 -0
  127. package/dist/generators/shared/structures/documentation/glossary.d.ts +3 -0
  128. package/dist/generators/shared/structures/documentation/glossary.d.ts.map +1 -0
  129. package/dist/generators/shared/structures/documentation/glossary.js +91 -0
  130. package/dist/generators/shared/structures/documentation/glossary.js.map +1 -0
  131. package/dist/generators/shared/structures/documentation/index.d.ts +16 -0
  132. package/dist/generators/shared/structures/documentation/index.d.ts.map +1 -0
  133. package/dist/generators/shared/structures/documentation/index.js +31 -0
  134. package/dist/generators/shared/structures/documentation/index.js.map +1 -0
  135. package/dist/generators/shared/structures/documentation/migration.d.ts +3 -0
  136. package/dist/generators/shared/structures/documentation/migration.d.ts.map +1 -0
  137. package/dist/generators/shared/structures/documentation/migration.js +113 -0
  138. package/dist/generators/shared/structures/documentation/migration.js.map +1 -0
  139. package/dist/generators/shared/structures/documentation/onboarding.d.ts +3 -0
  140. package/dist/generators/shared/structures/documentation/onboarding.d.ts.map +1 -0
  141. package/dist/generators/shared/structures/documentation/onboarding.js +99 -0
  142. package/dist/generators/shared/structures/documentation/onboarding.js.map +1 -0
  143. package/dist/generators/shared/structures/documentation/projectOverview.d.ts +3 -0
  144. package/dist/generators/shared/structures/documentation/projectOverview.d.ts.map +1 -0
  145. package/dist/generators/shared/structures/documentation/projectOverview.js +163 -0
  146. package/dist/generators/shared/structures/documentation/projectOverview.js.map +1 -0
  147. package/dist/generators/shared/structures/documentation/security.d.ts +3 -0
  148. package/dist/generators/shared/structures/documentation/security.d.ts.map +1 -0
  149. package/dist/generators/shared/structures/documentation/security.js +100 -0
  150. package/dist/generators/shared/structures/documentation/security.js.map +1 -0
  151. package/dist/generators/shared/structures/documentation/testing.d.ts +3 -0
  152. package/dist/generators/shared/structures/documentation/testing.d.ts.map +1 -0
  153. package/dist/generators/shared/structures/documentation/testing.js +130 -0
  154. package/dist/generators/shared/structures/documentation/testing.js.map +1 -0
  155. package/dist/generators/shared/structures/documentation/tooling.d.ts +3 -0
  156. package/dist/generators/shared/structures/documentation/tooling.d.ts.map +1 -0
  157. package/dist/generators/shared/structures/documentation/tooling.js +114 -0
  158. package/dist/generators/shared/structures/documentation/tooling.js.map +1 -0
  159. package/dist/generators/shared/structures/documentation/troubleshooting.d.ts +3 -0
  160. package/dist/generators/shared/structures/documentation/troubleshooting.d.ts.map +1 -0
  161. package/dist/generators/shared/structures/documentation/troubleshooting.js +91 -0
  162. package/dist/generators/shared/structures/documentation/troubleshooting.js.map +1 -0
  163. package/dist/generators/shared/structures/documentation/workflow.d.ts +3 -0
  164. package/dist/generators/shared/structures/documentation/workflow.d.ts.map +1 -0
  165. package/dist/generators/shared/structures/documentation/workflow.js +116 -0
  166. package/dist/generators/shared/structures/documentation/workflow.js.map +1 -0
  167. package/dist/generators/shared/structures/index.d.ts +15 -0
  168. package/dist/generators/shared/structures/index.d.ts.map +1 -0
  169. package/dist/generators/shared/structures/index.js +37 -0
  170. package/dist/generators/shared/structures/index.js.map +1 -0
  171. package/dist/generators/shared/structures/plans/index.d.ts +5 -0
  172. package/dist/generators/shared/structures/plans/index.d.ts.map +1 -0
  173. package/dist/generators/shared/structures/plans/index.js +9 -0
  174. package/dist/generators/shared/structures/plans/index.js.map +1 -0
  175. package/dist/generators/shared/structures/plans/planStructure.d.ts +6 -0
  176. package/dist/generators/shared/structures/plans/planStructure.d.ts.map +1 -0
  177. package/dist/generators/shared/structures/plans/planStructure.js +65 -0
  178. package/dist/generators/shared/structures/plans/planStructure.js.map +1 -0
  179. package/dist/generators/shared/structures/registry.d.ts +18 -0
  180. package/dist/generators/shared/structures/registry.d.ts.map +1 -0
  181. package/dist/generators/shared/structures/registry.js +104 -0
  182. package/dist/generators/shared/structures/registry.js.map +1 -0
  183. package/dist/generators/shared/structures/serialization.d.ts +15 -0
  184. package/dist/generators/shared/structures/serialization.d.ts.map +1 -0
  185. package/dist/generators/shared/structures/serialization.js +124 -0
  186. package/dist/generators/shared/structures/serialization.js.map +1 -0
  187. package/dist/generators/shared/structures/skills/definitions.d.ts +25 -0
  188. package/dist/generators/shared/structures/skills/definitions.d.ts.map +1 -0
  189. package/dist/generators/shared/structures/skills/definitions.js +427 -0
  190. package/dist/generators/shared/structures/skills/definitions.js.map +1 -0
  191. package/dist/generators/shared/structures/skills/factory.d.ts +18 -0
  192. package/dist/generators/shared/structures/skills/factory.d.ts.map +1 -0
  193. package/dist/generators/shared/structures/skills/factory.js +75 -0
  194. package/dist/generators/shared/structures/skills/factory.js.map +1 -0
  195. package/dist/generators/shared/structures/skills/index.d.ts +6 -0
  196. package/dist/generators/shared/structures/skills/index.d.ts.map +1 -0
  197. package/dist/generators/shared/structures/skills/index.js +30 -0
  198. package/dist/generators/shared/structures/skills/index.js.map +1 -0
  199. package/dist/generators/shared/structures/types.d.ts +61 -0
  200. package/dist/generators/shared/structures/types.d.ts.map +1 -0
  201. package/dist/generators/shared/structures/types.js +6 -0
  202. package/dist/generators/shared/structures/types.js.map +1 -0
  203. package/dist/generators/shared/structures/validation.d.ts +13 -0
  204. package/dist/generators/shared/structures/validation.d.ts.map +1 -0
  205. package/dist/generators/shared/structures/validation.js +51 -0
  206. package/dist/generators/shared/structures/validation.js.map +1 -0
  207. package/dist/generators/skills/index.d.ts +7 -0
  208. package/dist/generators/skills/index.d.ts.map +1 -0
  209. package/dist/generators/skills/index.js +15 -0
  210. package/dist/generators/skills/index.js.map +1 -0
  211. package/dist/generators/skills/skillGenerator.d.ts +58 -0
  212. package/dist/generators/skills/skillGenerator.d.ts.map +1 -0
  213. package/dist/generators/skills/skillGenerator.js +158 -0
  214. package/dist/generators/skills/skillGenerator.js.map +1 -0
  215. package/dist/generators/skills/templates/indexTemplate.d.ts +13 -0
  216. package/dist/generators/skills/templates/indexTemplate.d.ts.map +1 -0
  217. package/dist/generators/skills/templates/indexTemplate.js +102 -0
  218. package/dist/generators/skills/templates/indexTemplate.js.map +1 -0
  219. package/dist/generators/skills/templates/skillTemplate.d.ts +30 -0
  220. package/dist/generators/skills/templates/skillTemplate.d.ts.map +1 -0
  221. package/dist/generators/skills/templates/skillTemplate.js +95 -0
  222. package/dist/generators/skills/templates/skillTemplate.js.map +1 -0
  223. package/dist/index.d.ts +3 -0
  224. package/dist/index.d.ts.map +1 -0
  225. package/dist/index.js +1179 -0
  226. package/dist/index.js.map +1 -0
  227. package/dist/prompts/defaults.d.ts +8 -0
  228. package/dist/prompts/defaults.d.ts.map +1 -0
  229. package/dist/prompts/defaults.js +108 -0
  230. package/dist/prompts/defaults.js.map +1 -0
  231. package/dist/services/ai/aiSdkClient.d.ts +67 -0
  232. package/dist/services/ai/aiSdkClient.d.ts.map +1 -0
  233. package/dist/services/ai/aiSdkClient.js +143 -0
  234. package/dist/services/ai/aiSdkClient.js.map +1 -0
  235. package/dist/services/ai/index.d.ts +5 -0
  236. package/dist/services/ai/index.d.ts.map +1 -0
  237. package/dist/services/ai/index.js +40 -0
  238. package/dist/services/ai/index.js.map +1 -0
  239. package/dist/services/ai/providerFactory.d.ts +35 -0
  240. package/dist/services/ai/providerFactory.d.ts.map +1 -0
  241. package/dist/services/ai/providerFactory.js +107 -0
  242. package/dist/services/ai/providerFactory.js.map +1 -0
  243. package/dist/services/ai/schemas.d.ts +557 -0
  244. package/dist/services/ai/schemas.d.ts.map +1 -0
  245. package/dist/services/ai/schemas.js +357 -0
  246. package/dist/services/ai/schemas.js.map +1 -0
  247. package/dist/services/ai/toolRegistry.d.ts +27 -0
  248. package/dist/services/ai/toolRegistry.d.ts.map +1 -0
  249. package/dist/services/ai/toolRegistry.js +151 -0
  250. package/dist/services/ai/toolRegistry.js.map +1 -0
  251. package/dist/services/ai/tools/analyzeSymbolsTool.d.ts +33 -0
  252. package/dist/services/ai/tools/analyzeSymbolsTool.d.ts.map +1 -0
  253. package/dist/services/ai/tools/analyzeSymbolsTool.js +57 -0
  254. package/dist/services/ai/tools/analyzeSymbolsTool.js.map +1 -0
  255. package/dist/services/ai/tools/checkScaffoldingTool.d.ts +18 -0
  256. package/dist/services/ai/tools/checkScaffoldingTool.d.ts.map +1 -0
  257. package/dist/services/ai/tools/checkScaffoldingTool.js +89 -0
  258. package/dist/services/ai/tools/checkScaffoldingTool.js.map +1 -0
  259. package/dist/services/ai/tools/fillScaffoldingTool.d.ts +124 -0
  260. package/dist/services/ai/tools/fillScaffoldingTool.d.ts.map +1 -0
  261. package/dist/services/ai/tools/fillScaffoldingTool.js +397 -0
  262. package/dist/services/ai/tools/fillScaffoldingTool.js.map +1 -0
  263. package/dist/services/ai/tools/getCodebaseMapTool.d.ts +17 -0
  264. package/dist/services/ai/tools/getCodebaseMapTool.d.ts.map +1 -0
  265. package/dist/services/ai/tools/getCodebaseMapTool.js +122 -0
  266. package/dist/services/ai/tools/getCodebaseMapTool.js.map +1 -0
  267. package/dist/services/ai/tools/getFileStructureTool.d.ts +29 -0
  268. package/dist/services/ai/tools/getFileStructureTool.d.ts.map +1 -0
  269. package/dist/services/ai/tools/getFileStructureTool.js +48 -0
  270. package/dist/services/ai/tools/getFileStructureTool.js.map +1 -0
  271. package/dist/services/ai/tools/index.d.ts +21 -0
  272. package/dist/services/ai/tools/index.d.ts.map +1 -0
  273. package/dist/services/ai/tools/index.js +75 -0
  274. package/dist/services/ai/tools/index.js.map +1 -0
  275. package/dist/services/ai/tools/initializeContextTool.d.ts +135 -0
  276. package/dist/services/ai/tools/initializeContextTool.d.ts.map +1 -0
  277. package/dist/services/ai/tools/initializeContextTool.js +447 -0
  278. package/dist/services/ai/tools/initializeContextTool.js.map +1 -0
  279. package/dist/services/ai/tools/listFilesTool.d.ts +18 -0
  280. package/dist/services/ai/tools/listFilesTool.d.ts.map +1 -0
  281. package/dist/services/ai/tools/listFilesTool.js +34 -0
  282. package/dist/services/ai/tools/listFilesTool.js.map +1 -0
  283. package/dist/services/ai/tools/readFileTool.d.ts +17 -0
  284. package/dist/services/ai/tools/readFileTool.d.ts.map +1 -0
  285. package/dist/services/ai/tools/readFileTool.js +63 -0
  286. package/dist/services/ai/tools/readFileTool.js.map +1 -0
  287. package/dist/services/ai/tools/scaffoldPlanTool.d.ts +41 -0
  288. package/dist/services/ai/tools/scaffoldPlanTool.d.ts.map +1 -0
  289. package/dist/services/ai/tools/scaffoldPlanTool.js +183 -0
  290. package/dist/services/ai/tools/scaffoldPlanTool.js.map +1 -0
  291. package/dist/services/ai/tools/searchCodeTool.d.ts +25 -0
  292. package/dist/services/ai/tools/searchCodeTool.d.ts.map +1 -0
  293. package/dist/services/ai/tools/searchCodeTool.js +96 -0
  294. package/dist/services/ai/tools/searchCodeTool.js.map +1 -0
  295. package/dist/services/autoFill/autoFillService.d.ts +52 -0
  296. package/dist/services/autoFill/autoFillService.d.ts.map +1 -0
  297. package/dist/services/autoFill/autoFillService.js +473 -0
  298. package/dist/services/autoFill/autoFillService.js.map +1 -0
  299. package/dist/services/autoFill/index.d.ts +2 -0
  300. package/dist/services/autoFill/index.d.ts.map +1 -0
  301. package/dist/services/autoFill/index.js +6 -0
  302. package/dist/services/autoFill/index.js.map +1 -0
  303. package/dist/services/baseLLMClient.d.ts +12 -0
  304. package/dist/services/baseLLMClient.d.ts.map +1 -0
  305. package/dist/services/baseLLMClient.js +80 -0
  306. package/dist/services/baseLLMClient.js.map +1 -0
  307. package/dist/services/export/contextExportService.d.ts +45 -0
  308. package/dist/services/export/contextExportService.d.ts.map +1 -0
  309. package/dist/services/export/contextExportService.js +161 -0
  310. package/dist/services/export/contextExportService.js.map +1 -0
  311. package/dist/services/export/exportRulesService.d.ts +76 -0
  312. package/dist/services/export/exportRulesService.d.ts.map +1 -0
  313. package/dist/services/export/exportRulesService.js +306 -0
  314. package/dist/services/export/exportRulesService.js.map +1 -0
  315. package/dist/services/export/index.d.ts +7 -0
  316. package/dist/services/export/index.d.ts.map +1 -0
  317. package/dist/services/export/index.js +12 -0
  318. package/dist/services/export/index.js.map +1 -0
  319. package/dist/services/export/skillExportService.d.ts +69 -0
  320. package/dist/services/export/skillExportService.d.ts.map +1 -0
  321. package/dist/services/export/skillExportService.js +262 -0
  322. package/dist/services/export/skillExportService.js.map +1 -0
  323. package/dist/services/import/agentsDetector.d.ts +12 -0
  324. package/dist/services/import/agentsDetector.d.ts.map +1 -0
  325. package/dist/services/import/agentsDetector.js +183 -0
  326. package/dist/services/import/agentsDetector.js.map +1 -0
  327. package/dist/services/import/importAgentsService.d.ts +14 -0
  328. package/dist/services/import/importAgentsService.d.ts.map +1 -0
  329. package/dist/services/import/importAgentsService.js +194 -0
  330. package/dist/services/import/importAgentsService.js.map +1 -0
  331. package/dist/services/import/importRulesService.d.ts +17 -0
  332. package/dist/services/import/importRulesService.d.ts.map +1 -0
  333. package/dist/services/import/importRulesService.js +221 -0
  334. package/dist/services/import/importRulesService.js.map +1 -0
  335. package/dist/services/import/index.d.ts +7 -0
  336. package/dist/services/import/index.d.ts.map +1 -0
  337. package/dist/services/import/index.js +28 -0
  338. package/dist/services/import/index.js.map +1 -0
  339. package/dist/services/import/presets.d.ts +20 -0
  340. package/dist/services/import/presets.d.ts.map +1 -0
  341. package/dist/services/import/presets.js +56 -0
  342. package/dist/services/import/presets.js.map +1 -0
  343. package/dist/services/import/rulesDetector.d.ts +16 -0
  344. package/dist/services/import/rulesDetector.d.ts.map +1 -0
  345. package/dist/services/import/rulesDetector.js +278 -0
  346. package/dist/services/import/rulesDetector.js.map +1 -0
  347. package/dist/services/import/types.d.ts +72 -0
  348. package/dist/services/import/types.d.ts.map +1 -0
  349. package/dist/services/import/types.js +3 -0
  350. package/dist/services/import/types.js.map +1 -0
  351. package/dist/services/mcp/actionLogger.d.ts +19 -0
  352. package/dist/services/mcp/actionLogger.d.ts.map +1 -0
  353. package/dist/services/mcp/actionLogger.js +128 -0
  354. package/dist/services/mcp/actionLogger.js.map +1 -0
  355. package/dist/services/mcp/gateway/agent.d.ts +17 -0
  356. package/dist/services/mcp/gateway/agent.d.ts.map +1 -0
  357. package/dist/services/mcp/gateway/agent.js +147 -0
  358. package/dist/services/mcp/gateway/agent.js.map +1 -0
  359. package/dist/services/mcp/gateway/context.d.ts +21 -0
  360. package/dist/services/mcp/gateway/context.d.ts.map +1 -0
  361. package/dist/services/mcp/gateway/context.js +249 -0
  362. package/dist/services/mcp/gateway/context.js.map +1 -0
  363. package/dist/services/mcp/gateway/explore.d.ts +16 -0
  364. package/dist/services/mcp/gateway/explore.d.ts.map +1 -0
  365. package/dist/services/mcp/gateway/explore.js +60 -0
  366. package/dist/services/mcp/gateway/explore.js.map +1 -0
  367. package/dist/services/mcp/gateway/index.d.ts +24 -0
  368. package/dist/services/mcp/gateway/index.d.ts.map +1 -0
  369. package/dist/services/mcp/gateway/index.js +53 -0
  370. package/dist/services/mcp/gateway/index.js.map +1 -0
  371. package/dist/services/mcp/gateway/metrics.d.ts +56 -0
  372. package/dist/services/mcp/gateway/metrics.d.ts.map +1 -0
  373. package/dist/services/mcp/gateway/metrics.js +153 -0
  374. package/dist/services/mcp/gateway/metrics.js.map +1 -0
  375. package/dist/services/mcp/gateway/plan.d.ts +18 -0
  376. package/dist/services/mcp/gateway/plan.d.ts.map +1 -0
  377. package/dist/services/mcp/gateway/plan.js +273 -0
  378. package/dist/services/mcp/gateway/plan.js.map +1 -0
  379. package/dist/services/mcp/gateway/response.d.ts +45 -0
  380. package/dist/services/mcp/gateway/response.d.ts.map +1 -0
  381. package/dist/services/mcp/gateway/response.js +111 -0
  382. package/dist/services/mcp/gateway/response.js.map +1 -0
  383. package/dist/services/mcp/gateway/shared.d.ts +38 -0
  384. package/dist/services/mcp/gateway/shared.d.ts.map +1 -0
  385. package/dist/services/mcp/gateway/shared.js +39 -0
  386. package/dist/services/mcp/gateway/shared.js.map +1 -0
  387. package/dist/services/mcp/gateway/skill.d.ts +17 -0
  388. package/dist/services/mcp/gateway/skill.d.ts.map +1 -0
  389. package/dist/services/mcp/gateway/skill.js +323 -0
  390. package/dist/services/mcp/gateway/skill.js.map +1 -0
  391. package/dist/services/mcp/gateway/sync.d.ts +17 -0
  392. package/dist/services/mcp/gateway/sync.d.ts.map +1 -0
  393. package/dist/services/mcp/gateway/sync.js +219 -0
  394. package/dist/services/mcp/gateway/sync.js.map +1 -0
  395. package/dist/services/mcp/gateway/types.d.ts +116 -0
  396. package/dist/services/mcp/gateway/types.d.ts.map +1 -0
  397. package/dist/services/mcp/gateway/types.js +12 -0
  398. package/dist/services/mcp/gateway/types.js.map +1 -0
  399. package/dist/services/mcp/gateway/workflowAdvance.d.ts +25 -0
  400. package/dist/services/mcp/gateway/workflowAdvance.d.ts.map +1 -0
  401. package/dist/services/mcp/gateway/workflowAdvance.js +133 -0
  402. package/dist/services/mcp/gateway/workflowAdvance.js.map +1 -0
  403. package/dist/services/mcp/gateway/workflowInit.d.ts +28 -0
  404. package/dist/services/mcp/gateway/workflowInit.d.ts.map +1 -0
  405. package/dist/services/mcp/gateway/workflowInit.js +213 -0
  406. package/dist/services/mcp/gateway/workflowInit.js.map +1 -0
  407. package/dist/services/mcp/gateway/workflowManage.d.ts +31 -0
  408. package/dist/services/mcp/gateway/workflowManage.d.ts.map +1 -0
  409. package/dist/services/mcp/gateway/workflowManage.js +222 -0
  410. package/dist/services/mcp/gateway/workflowManage.js.map +1 -0
  411. package/dist/services/mcp/gateway/workflowStatus.d.ts +17 -0
  412. package/dist/services/mcp/gateway/workflowStatus.d.ts.map +1 -0
  413. package/dist/services/mcp/gateway/workflowStatus.js +91 -0
  414. package/dist/services/mcp/gateway/workflowStatus.js.map +1 -0
  415. package/dist/services/mcp/gatewayTools.d.ts +15 -0
  416. package/dist/services/mcp/gatewayTools.d.ts.map +1 -0
  417. package/dist/services/mcp/gatewayTools.js +38 -0
  418. package/dist/services/mcp/gatewayTools.js.map +1 -0
  419. package/dist/services/mcp/index.d.ts +9 -0
  420. package/dist/services/mcp/index.d.ts.map +1 -0
  421. package/dist/services/mcp/index.js +28 -0
  422. package/dist/services/mcp/index.js.map +1 -0
  423. package/dist/services/mcp/mcpInstallService.d.ts +56 -0
  424. package/dist/services/mcp/mcpInstallService.d.ts.map +1 -0
  425. package/dist/services/mcp/mcpInstallService.js +603 -0
  426. package/dist/services/mcp/mcpInstallService.js.map +1 -0
  427. package/dist/services/mcp/mcpServer.d.ts +101 -0
  428. package/dist/services/mcp/mcpServer.d.ts.map +1 -0
  429. package/dist/services/mcp/mcpServer.js +844 -0
  430. package/dist/services/mcp/mcpServer.js.map +1 -0
  431. package/dist/services/qa/index.d.ts +9 -0
  432. package/dist/services/qa/index.d.ts.map +1 -0
  433. package/dist/services/qa/index.js +15 -0
  434. package/dist/services/qa/index.js.map +1 -0
  435. package/dist/services/qa/patternInferer.d.ts +41 -0
  436. package/dist/services/qa/patternInferer.d.ts.map +1 -0
  437. package/dist/services/qa/patternInferer.js +366 -0
  438. package/dist/services/qa/patternInferer.js.map +1 -0
  439. package/dist/services/qa/qaService.d.ts +107 -0
  440. package/dist/services/qa/qaService.d.ts.map +1 -0
  441. package/dist/services/qa/qaService.js +874 -0
  442. package/dist/services/qa/qaService.js.map +1 -0
  443. package/dist/services/qa/topicDetector.d.ts +54 -0
  444. package/dist/services/qa/topicDetector.d.ts.map +1 -0
  445. package/dist/services/qa/topicDetector.js +306 -0
  446. package/dist/services/qa/topicDetector.js.map +1 -0
  447. package/dist/services/quickSync/index.d.ts +3 -0
  448. package/dist/services/quickSync/index.d.ts.map +1 -0
  449. package/dist/services/quickSync/index.js +7 -0
  450. package/dist/services/quickSync/index.js.map +1 -0
  451. package/dist/services/quickSync/quickSyncService.d.ts +70 -0
  452. package/dist/services/quickSync/quickSyncService.d.ts.map +1 -0
  453. package/dist/services/quickSync/quickSyncService.js +263 -0
  454. package/dist/services/quickSync/quickSyncService.js.map +1 -0
  455. package/dist/services/report/index.d.ts +3 -0
  456. package/dist/services/report/index.d.ts.map +1 -0
  457. package/dist/services/report/index.js +6 -0
  458. package/dist/services/report/index.js.map +1 -0
  459. package/dist/services/report/reportService.d.ts +131 -0
  460. package/dist/services/report/reportService.d.ts.map +1 -0
  461. package/dist/services/report/reportService.js +372 -0
  462. package/dist/services/report/reportService.js.map +1 -0
  463. package/dist/services/reverseSync/importSkillsService.d.ts +47 -0
  464. package/dist/services/reverseSync/importSkillsService.d.ts.map +1 -0
  465. package/dist/services/reverseSync/importSkillsService.js +362 -0
  466. package/dist/services/reverseSync/importSkillsService.js.map +1 -0
  467. package/dist/services/reverseSync/index.d.ts +12 -0
  468. package/dist/services/reverseSync/index.d.ts.map +1 -0
  469. package/dist/services/reverseSync/index.js +49 -0
  470. package/dist/services/reverseSync/index.js.map +1 -0
  471. package/dist/services/reverseSync/presets.d.ts +51 -0
  472. package/dist/services/reverseSync/presets.d.ts.map +1 -0
  473. package/dist/services/reverseSync/presets.js +77 -0
  474. package/dist/services/reverseSync/presets.js.map +1 -0
  475. package/dist/services/reverseSync/reverseQuickSyncService.d.ts +37 -0
  476. package/dist/services/reverseSync/reverseQuickSyncService.d.ts.map +1 -0
  477. package/dist/services/reverseSync/reverseQuickSyncService.js +265 -0
  478. package/dist/services/reverseSync/reverseQuickSyncService.js.map +1 -0
  479. package/dist/services/reverseSync/skillsDetector.d.ts +36 -0
  480. package/dist/services/reverseSync/skillsDetector.d.ts.map +1 -0
  481. package/dist/services/reverseSync/skillsDetector.js +287 -0
  482. package/dist/services/reverseSync/skillsDetector.js.map +1 -0
  483. package/dist/services/reverseSync/toolDetector.d.ts +36 -0
  484. package/dist/services/reverseSync/toolDetector.d.ts.map +1 -0
  485. package/dist/services/reverseSync/toolDetector.js +174 -0
  486. package/dist/services/reverseSync/toolDetector.js.map +1 -0
  487. package/dist/services/reverseSync/types.d.ts +203 -0
  488. package/dist/services/reverseSync/types.d.ts.map +1 -0
  489. package/dist/services/reverseSync/types.js +9 -0
  490. package/dist/services/reverseSync/types.js.map +1 -0
  491. package/dist/services/semantic/codebaseAnalyzer.d.ts +62 -0
  492. package/dist/services/semantic/codebaseAnalyzer.d.ts.map +1 -0
  493. package/dist/services/semantic/codebaseAnalyzer.js +1071 -0
  494. package/dist/services/semantic/codebaseAnalyzer.js.map +1 -0
  495. package/dist/services/semantic/contextBuilder.d.ts +86 -0
  496. package/dist/services/semantic/contextBuilder.d.ts.map +1 -0
  497. package/dist/services/semantic/contextBuilder.js +641 -0
  498. package/dist/services/semantic/contextBuilder.js.map +1 -0
  499. package/dist/services/semantic/contextCache.d.ts +67 -0
  500. package/dist/services/semantic/contextCache.d.ts.map +1 -0
  501. package/dist/services/semantic/contextCache.js +158 -0
  502. package/dist/services/semantic/contextCache.js.map +1 -0
  503. package/dist/services/semantic/index.d.ts +12 -0
  504. package/dist/services/semantic/index.d.ts.map +1 -0
  505. package/dist/services/semantic/index.js +33 -0
  506. package/dist/services/semantic/index.js.map +1 -0
  507. package/dist/services/semantic/lsp/index.d.ts +2 -0
  508. package/dist/services/semantic/lsp/index.d.ts.map +1 -0
  509. package/dist/services/semantic/lsp/index.js +6 -0
  510. package/dist/services/semantic/lsp/index.js.map +1 -0
  511. package/dist/services/semantic/lsp/lspLayer.d.ts +32 -0
  512. package/dist/services/semantic/lsp/lspLayer.d.ts.map +1 -0
  513. package/dist/services/semantic/lsp/lspLayer.js +378 -0
  514. package/dist/services/semantic/lsp/lspLayer.js.map +1 -0
  515. package/dist/services/semantic/treeSitter/index.d.ts +2 -0
  516. package/dist/services/semantic/treeSitter/index.d.ts.map +1 -0
  517. package/dist/services/semantic/treeSitter/index.js +6 -0
  518. package/dist/services/semantic/treeSitter/index.js.map +1 -0
  519. package/dist/services/semantic/treeSitter/treeSitterLayer.d.ts +37 -0
  520. package/dist/services/semantic/treeSitter/treeSitterLayer.d.ts.map +1 -0
  521. package/dist/services/semantic/treeSitter/treeSitterLayer.js +518 -0
  522. package/dist/services/semantic/treeSitter/treeSitterLayer.js.map +1 -0
  523. package/dist/services/semantic/types.d.ts +172 -0
  524. package/dist/services/semantic/types.d.ts.map +1 -0
  525. package/dist/services/semantic/types.js +33 -0
  526. package/dist/services/semantic/types.js.map +1 -0
  527. package/dist/services/shared/contentTypeRegistry.d.ts +66 -0
  528. package/dist/services/shared/contentTypeRegistry.d.ts.map +1 -0
  529. package/dist/services/shared/contentTypeRegistry.js +113 -0
  530. package/dist/services/shared/contentTypeRegistry.js.map +1 -0
  531. package/dist/services/shared/contextRootResolver.d.ts +57 -0
  532. package/dist/services/shared/contextRootResolver.d.ts.map +1 -0
  533. package/dist/services/shared/contextRootResolver.js +102 -0
  534. package/dist/services/shared/contextRootResolver.js.map +1 -0
  535. package/dist/services/shared/globPatterns.d.ts +48 -0
  536. package/dist/services/shared/globPatterns.d.ts.map +1 -0
  537. package/dist/services/shared/globPatterns.js +110 -0
  538. package/dist/services/shared/globPatterns.js.map +1 -0
  539. package/dist/services/shared/index.d.ts +13 -0
  540. package/dist/services/shared/index.d.ts.map +1 -0
  541. package/dist/services/shared/index.js +84 -0
  542. package/dist/services/shared/index.js.map +1 -0
  543. package/dist/services/shared/pathHelpers.d.ts +85 -0
  544. package/dist/services/shared/pathHelpers.d.ts.map +1 -0
  545. package/dist/services/shared/pathHelpers.js +187 -0
  546. package/dist/services/shared/pathHelpers.js.map +1 -0
  547. package/dist/services/shared/toolRegistry.d.ts +135 -0
  548. package/dist/services/shared/toolRegistry.d.ts.map +1 -0
  549. package/dist/services/shared/toolRegistry.js +545 -0
  550. package/dist/services/shared/toolRegistry.js.map +1 -0
  551. package/dist/services/shared/types.d.ts +68 -0
  552. package/dist/services/shared/types.d.ts.map +1 -0
  553. package/dist/services/shared/types.js +44 -0
  554. package/dist/services/shared/types.js.map +1 -0
  555. package/dist/services/shared/uiHelpers.d.ts +70 -0
  556. package/dist/services/shared/uiHelpers.d.ts.map +1 -0
  557. package/dist/services/shared/uiHelpers.js +131 -0
  558. package/dist/services/shared/uiHelpers.js.map +1 -0
  559. package/dist/services/stack/index.d.ts +6 -0
  560. package/dist/services/stack/index.d.ts.map +1 -0
  561. package/dist/services/stack/index.js +25 -0
  562. package/dist/services/stack/index.js.map +1 -0
  563. package/dist/services/stack/projectTypeClassifier.d.ts +59 -0
  564. package/dist/services/stack/projectTypeClassifier.d.ts.map +1 -0
  565. package/dist/services/stack/projectTypeClassifier.js +242 -0
  566. package/dist/services/stack/projectTypeClassifier.js.map +1 -0
  567. package/dist/services/stack/scaffoldFilter.d.ts +75 -0
  568. package/dist/services/stack/scaffoldFilter.d.ts.map +1 -0
  569. package/dist/services/stack/scaffoldFilter.js +222 -0
  570. package/dist/services/stack/scaffoldFilter.js.map +1 -0
  571. package/dist/services/stack/stackDetector.d.ts +43 -0
  572. package/dist/services/stack/stackDetector.d.ts.map +1 -0
  573. package/dist/services/stack/stackDetector.js +406 -0
  574. package/dist/services/stack/stackDetector.js.map +1 -0
  575. package/dist/services/state/index.d.ts +2 -0
  576. package/dist/services/state/index.d.ts.map +1 -0
  577. package/dist/services/state/index.js +6 -0
  578. package/dist/services/state/index.js.map +1 -0
  579. package/dist/services/state/stateDetector.d.ts +53 -0
  580. package/dist/services/state/stateDetector.d.ts.map +1 -0
  581. package/dist/services/state/stateDetector.js +189 -0
  582. package/dist/services/state/stateDetector.js.map +1 -0
  583. package/dist/services/sync/index.d.ts +6 -0
  584. package/dist/services/sync/index.d.ts.map +1 -0
  585. package/dist/services/sync/index.js +16 -0
  586. package/dist/services/sync/index.js.map +1 -0
  587. package/dist/services/sync/markdownReferenceHandler.d.ts +3 -0
  588. package/dist/services/sync/markdownReferenceHandler.d.ts.map +1 -0
  589. package/dist/services/sync/markdownReferenceHandler.js +133 -0
  590. package/dist/services/sync/markdownReferenceHandler.js.map +1 -0
  591. package/dist/services/sync/presets.d.ts +9 -0
  592. package/dist/services/sync/presets.d.ts.map +1 -0
  593. package/dist/services/sync/presets.js +52 -0
  594. package/dist/services/sync/presets.js.map +1 -0
  595. package/dist/services/sync/symlinkHandler.d.ts +7 -0
  596. package/dist/services/sync/symlinkHandler.d.ts.map +1 -0
  597. package/dist/services/sync/symlinkHandler.js +129 -0
  598. package/dist/services/sync/symlinkHandler.js.map +1 -0
  599. package/dist/services/sync/syncService.d.ts +23 -0
  600. package/dist/services/sync/syncService.d.ts.map +1 -0
  601. package/dist/services/sync/syncService.js +240 -0
  602. package/dist/services/sync/syncService.js.map +1 -0
  603. package/dist/services/sync/types.d.ts +62 -0
  604. package/dist/services/sync/types.d.ts.map +1 -0
  605. package/dist/services/sync/types.js +3 -0
  606. package/dist/services/sync/types.js.map +1 -0
  607. package/dist/services/workflow/autoAdvance.d.ts +38 -0
  608. package/dist/services/workflow/autoAdvance.d.ts.map +1 -0
  609. package/dist/services/workflow/autoAdvance.js +219 -0
  610. package/dist/services/workflow/autoAdvance.js.map +1 -0
  611. package/dist/services/workflow/index.d.ts +6 -0
  612. package/dist/services/workflow/index.d.ts.map +1 -0
  613. package/dist/services/workflow/index.js +11 -0
  614. package/dist/services/workflow/index.js.map +1 -0
  615. package/dist/services/workflow/workflowService.d.ts +151 -0
  616. package/dist/services/workflow/workflowService.d.ts.map +1 -0
  617. package/dist/services/workflow/workflowService.js +283 -0
  618. package/dist/services/workflow/workflowService.js.map +1 -0
  619. package/dist/types/scaffoldFrontmatter.d.ts +145 -0
  620. package/dist/types/scaffoldFrontmatter.d.ts.map +1 -0
  621. package/dist/types/scaffoldFrontmatter.js +172 -0
  622. package/dist/types/scaffoldFrontmatter.js.map +1 -0
  623. package/dist/types.d.ts +61 -0
  624. package/dist/types.d.ts.map +1 -0
  625. package/dist/types.js +3 -0
  626. package/dist/types.js.map +1 -0
  627. package/dist/utils/cliUI.d.ts +26 -0
  628. package/dist/utils/cliUI.d.ts.map +1 -0
  629. package/dist/utils/cliUI.js +216 -0
  630. package/dist/utils/cliUI.js.map +1 -0
  631. package/dist/utils/fileMapper.d.ts +13 -0
  632. package/dist/utils/fileMapper.d.ts.map +1 -0
  633. package/dist/utils/fileMapper.js +165 -0
  634. package/dist/utils/fileMapper.js.map +1 -0
  635. package/dist/utils/frontMatter.d.ts +104 -0
  636. package/dist/utils/frontMatter.d.ts.map +1 -0
  637. package/dist/utils/frontMatter.js +325 -0
  638. package/dist/utils/frontMatter.js.map +1 -0
  639. package/dist/utils/gitService.d.ts +76 -0
  640. package/dist/utils/gitService.d.ts.map +1 -0
  641. package/dist/utils/gitService.js +564 -0
  642. package/dist/utils/gitService.js.map +1 -0
  643. package/dist/utils/gitignoreManager.d.ts +61 -0
  644. package/dist/utils/gitignoreManager.d.ts.map +1 -0
  645. package/dist/utils/gitignoreManager.js +171 -0
  646. package/dist/utils/gitignoreManager.js.map +1 -0
  647. package/dist/utils/i18n.d.ts +530 -0
  648. package/dist/utils/i18n.d.ts.map +1 -0
  649. package/dist/utils/i18n.js +1179 -0
  650. package/dist/utils/i18n.js.map +1 -0
  651. package/dist/utils/pathSecurity.d.ts +55 -0
  652. package/dist/utils/pathSecurity.d.ts.map +1 -0
  653. package/dist/utils/pathSecurity.js +132 -0
  654. package/dist/utils/pathSecurity.js.map +1 -0
  655. package/dist/utils/prompts/configSummary.d.ts +7 -0
  656. package/dist/utils/prompts/configSummary.d.ts.map +1 -0
  657. package/dist/utils/prompts/configSummary.js +35 -0
  658. package/dist/utils/prompts/configSummary.js.map +1 -0
  659. package/dist/utils/prompts/index.d.ts +27 -0
  660. package/dist/utils/prompts/index.d.ts.map +1 -0
  661. package/dist/utils/prompts/index.js +114 -0
  662. package/dist/utils/prompts/index.js.map +1 -0
  663. package/dist/utils/prompts/smartDefaults.d.ts +15 -0
  664. package/dist/utils/prompts/smartDefaults.d.ts.map +1 -0
  665. package/dist/utils/prompts/smartDefaults.js +105 -0
  666. package/dist/utils/prompts/smartDefaults.js.map +1 -0
  667. package/dist/utils/prompts/types.d.ts +38 -0
  668. package/dist/utils/prompts/types.d.ts.map +1 -0
  669. package/dist/utils/prompts/types.js +3 -0
  670. package/dist/utils/prompts/types.js.map +1 -0
  671. package/dist/utils/splashScreen.d.ts +14 -0
  672. package/dist/utils/splashScreen.d.ts.map +1 -0
  673. package/dist/utils/splashScreen.js +106 -0
  674. package/dist/utils/splashScreen.js.map +1 -0
  675. package/dist/utils/theme.d.ts +69 -0
  676. package/dist/utils/theme.d.ts.map +1 -0
  677. package/dist/utils/theme.js +97 -0
  678. package/dist/utils/theme.js.map +1 -0
  679. package/dist/utils/themedPrompt.d.ts +46 -0
  680. package/dist/utils/themedPrompt.d.ts.map +1 -0
  681. package/dist/utils/themedPrompt.js +47 -0
  682. package/dist/utils/themedPrompt.js.map +1 -0
  683. package/dist/utils/versionChecker.d.ts +15 -0
  684. package/dist/utils/versionChecker.d.ts.map +1 -0
  685. package/dist/utils/versionChecker.js +49 -0
  686. package/dist/utils/versionChecker.js.map +1 -0
  687. package/dist/version.d.ts +8 -0
  688. package/dist/version.d.ts.map +1 -0
  689. package/dist/version.js +15 -0
  690. package/dist/version.js.map +1 -0
  691. package/dist/workflow/agents/agentRegistry.d.ts +82 -0
  692. package/dist/workflow/agents/agentRegistry.d.ts.map +1 -0
  693. package/dist/workflow/agents/agentRegistry.js +205 -0
  694. package/dist/workflow/agents/agentRegistry.js.map +1 -0
  695. package/dist/workflow/agents/index.d.ts +7 -0
  696. package/dist/workflow/agents/index.d.ts.map +1 -0
  697. package/dist/workflow/agents/index.js +14 -0
  698. package/dist/workflow/agents/index.js.map +1 -0
  699. package/dist/workflow/collaboration.d.ts +110 -0
  700. package/dist/workflow/collaboration.d.ts.map +1 -0
  701. package/dist/workflow/collaboration.js +301 -0
  702. package/dist/workflow/collaboration.js.map +1 -0
  703. package/dist/workflow/errors.d.ts +48 -0
  704. package/dist/workflow/errors.d.ts.map +1 -0
  705. package/dist/workflow/errors.js +52 -0
  706. package/dist/workflow/errors.js.map +1 -0
  707. package/dist/workflow/gates/gateChecker.d.ts +93 -0
  708. package/dist/workflow/gates/gateChecker.d.ts.map +1 -0
  709. package/dist/workflow/gates/gateChecker.js +197 -0
  710. package/dist/workflow/gates/gateChecker.js.map +1 -0
  711. package/dist/workflow/gates/index.d.ts +7 -0
  712. package/dist/workflow/gates/index.d.ts.map +1 -0
  713. package/dist/workflow/gates/index.js +13 -0
  714. package/dist/workflow/gates/index.js.map +1 -0
  715. package/dist/workflow/index.d.ts +27 -0
  716. package/dist/workflow/index.d.ts.map +1 -0
  717. package/dist/workflow/index.js +135 -0
  718. package/dist/workflow/index.js.map +1 -0
  719. package/dist/workflow/orchestration/agentOrchestrator.d.ts +68 -0
  720. package/dist/workflow/orchestration/agentOrchestrator.d.ts.map +1 -0
  721. package/dist/workflow/orchestration/agentOrchestrator.js +280 -0
  722. package/dist/workflow/orchestration/agentOrchestrator.js.map +1 -0
  723. package/dist/workflow/orchestration/documentLinker.d.ts +100 -0
  724. package/dist/workflow/orchestration/documentLinker.d.ts.map +1 -0
  725. package/dist/workflow/orchestration/documentLinker.js +266 -0
  726. package/dist/workflow/orchestration/documentLinker.js.map +1 -0
  727. package/dist/workflow/orchestration/index.d.ts +9 -0
  728. package/dist/workflow/orchestration/index.d.ts.map +1 -0
  729. package/dist/workflow/orchestration/index.js +25 -0
  730. package/dist/workflow/orchestration/index.js.map +1 -0
  731. package/dist/workflow/orchestrator.d.ts +188 -0
  732. package/dist/workflow/orchestrator.d.ts.map +1 -0
  733. package/dist/workflow/orchestrator.js +506 -0
  734. package/dist/workflow/orchestrator.js.map +1 -0
  735. package/dist/workflow/phases.d.ts +64 -0
  736. package/dist/workflow/phases.d.ts.map +1 -0
  737. package/dist/workflow/phases.js +151 -0
  738. package/dist/workflow/phases.js.map +1 -0
  739. package/dist/workflow/plans/index.d.ts +8 -0
  740. package/dist/workflow/plans/index.d.ts.map +1 -0
  741. package/dist/workflow/plans/index.js +27 -0
  742. package/dist/workflow/plans/index.js.map +1 -0
  743. package/dist/workflow/plans/planLinker.d.ts +195 -0
  744. package/dist/workflow/plans/planLinker.d.ts.map +1 -0
  745. package/dist/workflow/plans/planLinker.js +1018 -0
  746. package/dist/workflow/plans/planLinker.js.map +1 -0
  747. package/dist/workflow/plans/types.d.ts +231 -0
  748. package/dist/workflow/plans/types.d.ts.map +1 -0
  749. package/dist/workflow/plans/types.js +25 -0
  750. package/dist/workflow/plans/types.js.map +1 -0
  751. package/dist/workflow/prevcConfig.d.ts +27 -0
  752. package/dist/workflow/prevcConfig.d.ts.map +1 -0
  753. package/dist/workflow/prevcConfig.js +153 -0
  754. package/dist/workflow/prevcConfig.js.map +1 -0
  755. package/dist/workflow/roles.d.ts +50 -0
  756. package/dist/workflow/roles.d.ts.map +1 -0
  757. package/dist/workflow/roles.js +118 -0
  758. package/dist/workflow/roles.js.map +1 -0
  759. package/dist/workflow/scaling.d.ts +45 -0
  760. package/dist/workflow/scaling.d.ts.map +1 -0
  761. package/dist/workflow/scaling.js +215 -0
  762. package/dist/workflow/scaling.js.map +1 -0
  763. package/dist/workflow/skills/frontmatter.d.ts +23 -0
  764. package/dist/workflow/skills/frontmatter.d.ts.map +1 -0
  765. package/dist/workflow/skills/frontmatter.js +101 -0
  766. package/dist/workflow/skills/frontmatter.js.map +1 -0
  767. package/dist/workflow/skills/index.d.ts +10 -0
  768. package/dist/workflow/skills/index.d.ts.map +1 -0
  769. package/dist/workflow/skills/index.js +22 -0
  770. package/dist/workflow/skills/index.js.map +1 -0
  771. package/dist/workflow/skills/skillRegistry.d.ts +67 -0
  772. package/dist/workflow/skills/skillRegistry.d.ts.map +1 -0
  773. package/dist/workflow/skills/skillRegistry.js +276 -0
  774. package/dist/workflow/skills/skillRegistry.js.map +1 -0
  775. package/dist/workflow/skills/skillTemplates.d.ts +20 -0
  776. package/dist/workflow/skills/skillTemplates.d.ts.map +1 -0
  777. package/dist/workflow/skills/skillTemplates.js +111 -0
  778. package/dist/workflow/skills/skillTemplates.js.map +1 -0
  779. package/dist/workflow/skills/types.d.ts +72 -0
  780. package/dist/workflow/skills/types.d.ts.map +1 -0
  781. package/dist/workflow/skills/types.js +48 -0
  782. package/dist/workflow/skills/types.js.map +1 -0
  783. package/dist/workflow/status/statusManager.d.ts +137 -0
  784. package/dist/workflow/status/statusManager.d.ts.map +1 -0
  785. package/dist/workflow/status/statusManager.js +932 -0
  786. package/dist/workflow/status/statusManager.js.map +1 -0
  787. package/dist/workflow/status/templates.d.ts +49 -0
  788. package/dist/workflow/status/templates.d.ts.map +1 -0
  789. package/dist/workflow/status/templates.js +162 -0
  790. package/dist/workflow/status/templates.js.map +1 -0
  791. package/dist/workflow/types.d.ts +314 -0
  792. package/dist/workflow/types.d.ts.map +1 -0
  793. package/dist/workflow/types.js +24 -0
  794. package/dist/workflow/types.js.map +1 -0
  795. package/package.json +85 -0
  796. package/prompts/update_plan_prompt.md +41 -0
  797. package/prompts/update_scaffold_prompt.md +27 -0
@@ -0,0 +1,932 @@
1
+ "use strict";
2
+ /**
3
+ * PREVC Status Manager
4
+ *
5
+ * Manages the workflow status YAML file that tracks progress through phases.
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.PrevcStatusManager = void 0;
42
+ const fs = __importStar(require("fs-extra"));
43
+ const path = __importStar(require("path"));
44
+ const types_1 = require("../types");
45
+ const phases_1 = require("../phases");
46
+ const scaling_1 = require("../scaling");
47
+ const templates_1 = require("./templates");
48
+ const gates_1 = require("../gates");
49
+ /**
50
+ * Default status file path relative to .context directory
51
+ */
52
+ const STATUS_FILE = 'workflow/status.yaml';
53
+ /**
54
+ * PREVC Status Manager
55
+ *
56
+ * Handles reading and writing the workflow status file.
57
+ */
58
+ class PrevcStatusManager {
59
+ constructor(contextPath) {
60
+ this.cachedStatus = null;
61
+ this.contextPath = contextPath;
62
+ this.statusPath = path.join(contextPath, STATUS_FILE);
63
+ }
64
+ /**
65
+ * Check if a workflow status file exists
66
+ */
67
+ async exists() {
68
+ return fs.pathExists(this.statusPath);
69
+ }
70
+ /**
71
+ * Load the workflow status from disk
72
+ */
73
+ async load() {
74
+ if (!(await this.exists())) {
75
+ throw new Error('Workflow status not found. Run "workflow init" first.');
76
+ }
77
+ const content = await fs.readFile(this.statusPath, 'utf-8');
78
+ // Parse YAML manually (simple format)
79
+ let status = this.parseYaml(content);
80
+ // Apply migration for existing workflows
81
+ status = this.migrateStatus(status);
82
+ this.cachedStatus = status;
83
+ return this.cachedStatus;
84
+ }
85
+ /**
86
+ * Load status synchronously (for use in orchestrator)
87
+ */
88
+ loadSync() {
89
+ if (this.cachedStatus) {
90
+ return this.cachedStatus;
91
+ }
92
+ if (!fs.existsSync(this.statusPath)) {
93
+ throw new Error('Workflow status not found. Run "workflow init" first.');
94
+ }
95
+ const content = fs.readFileSync(this.statusPath, 'utf-8');
96
+ let status = this.parseYaml(content);
97
+ // Apply migration for existing workflows
98
+ status = this.migrateStatus(status);
99
+ this.cachedStatus = status;
100
+ return this.cachedStatus;
101
+ }
102
+ /**
103
+ * Save the workflow status to disk
104
+ */
105
+ async save(status) {
106
+ const dir = path.dirname(this.statusPath);
107
+ await fs.ensureDir(dir);
108
+ const content = this.serializeYaml(status);
109
+ await fs.writeFile(this.statusPath, content, 'utf-8');
110
+ this.cachedStatus = status;
111
+ }
112
+ /**
113
+ * Create a new workflow status
114
+ */
115
+ async create(options) {
116
+ const route = (0, scaling_1.getScaleRoute)(options.scale);
117
+ const phases = options.phases || route.phases;
118
+ const roles = options.roles || route.roles;
119
+ const status = (0, templates_1.createInitialStatus)({
120
+ name: options.name,
121
+ scale: options.scale,
122
+ phases,
123
+ roles,
124
+ });
125
+ await this.save(status);
126
+ return status;
127
+ }
128
+ /**
129
+ * Update a phase's status
130
+ */
131
+ async updatePhase(phase, update) {
132
+ const status = await this.load();
133
+ status.phases[phase] = {
134
+ ...status.phases[phase],
135
+ ...update,
136
+ };
137
+ await this.save(status);
138
+ }
139
+ /**
140
+ * Update a role's status
141
+ * @deprecated Use updateAgent instead
142
+ */
143
+ async updateRole(role, update) {
144
+ const status = await this.load();
145
+ if (!status.roles[role]) {
146
+ status.roles[role] = {};
147
+ }
148
+ status.roles[role] = {
149
+ ...status.roles[role],
150
+ ...update,
151
+ };
152
+ await this.save(status);
153
+ }
154
+ /**
155
+ * Update an agent's status (replaces updateRole)
156
+ */
157
+ async updateAgent(agentName, update) {
158
+ const status = await this.load();
159
+ const now = new Date().toISOString();
160
+ // Initialize agents if not present
161
+ if (!status.agents) {
162
+ status.agents = {};
163
+ }
164
+ const existingAgent = status.agents[agentName];
165
+ // Build agent status
166
+ const agentStatus = {
167
+ status: update.status ?? existingAgent?.status ?? 'pending',
168
+ started_at: existingAgent?.started_at,
169
+ completed_at: existingAgent?.completed_at,
170
+ outputs: update.outputs ?? existingAgent?.outputs,
171
+ };
172
+ // Track timestamps based on status changes
173
+ if (update.status === 'in_progress' && !existingAgent?.started_at) {
174
+ agentStatus.started_at = now;
175
+ }
176
+ if (update.status === 'completed' && !existingAgent?.completed_at) {
177
+ agentStatus.completed_at = now;
178
+ }
179
+ status.agents[agentName] = agentStatus;
180
+ await this.save(status);
181
+ }
182
+ /**
183
+ * Transition to a new phase
184
+ */
185
+ async transitionToPhase(phase) {
186
+ const status = await this.load();
187
+ const now = new Date().toISOString();
188
+ // Update current phase
189
+ status.project.current_phase = phase;
190
+ // Mark new phase as in_progress
191
+ status.phases[phase] = {
192
+ ...status.phases[phase],
193
+ status: 'in_progress',
194
+ started_at: now,
195
+ };
196
+ // Add history entry
197
+ if (!status.execution) {
198
+ status.execution = {
199
+ history: [],
200
+ last_activity: now,
201
+ resume_context: '',
202
+ };
203
+ }
204
+ status.execution.history.push({
205
+ timestamp: now,
206
+ phase,
207
+ action: 'started',
208
+ });
209
+ status.execution.last_activity = now;
210
+ status.execution.resume_context = (0, templates_1.generateResumeContext)(phase, 'started');
211
+ await this.save(status);
212
+ }
213
+ /**
214
+ * Mark a phase as complete
215
+ */
216
+ async markPhaseComplete(phase, outputs) {
217
+ const status = await this.load();
218
+ const now = new Date().toISOString();
219
+ const phaseStatus = {
220
+ ...status.phases[phase],
221
+ status: 'completed',
222
+ completed_at: now,
223
+ };
224
+ if (outputs) {
225
+ phaseStatus.outputs = outputs.map((p) => ({ path: p, status: 'filled' }));
226
+ }
227
+ status.phases[phase] = phaseStatus;
228
+ // Add history entry
229
+ if (!status.execution) {
230
+ status.execution = {
231
+ history: [],
232
+ last_activity: now,
233
+ resume_context: '',
234
+ };
235
+ }
236
+ status.execution.history.push({
237
+ timestamp: now,
238
+ phase,
239
+ action: 'completed',
240
+ });
241
+ status.execution.last_activity = now;
242
+ status.execution.resume_context = (0, templates_1.generateResumeContext)(phase, 'completed');
243
+ await this.save(status);
244
+ }
245
+ /**
246
+ * Get the current phase
247
+ */
248
+ async getCurrentPhase() {
249
+ const status = await this.load();
250
+ return status.project.current_phase;
251
+ }
252
+ /**
253
+ * Get the active role (if any)
254
+ */
255
+ async getActiveRole() {
256
+ const status = await this.load();
257
+ for (const [role, roleStatus] of Object.entries(status.roles)) {
258
+ if (roleStatus.status === 'in_progress') {
259
+ return role;
260
+ }
261
+ }
262
+ return null;
263
+ }
264
+ /**
265
+ * Get the next phase that should be executed
266
+ */
267
+ async getNextPhase() {
268
+ const status = await this.load();
269
+ const currentIndex = phases_1.PREVC_PHASE_ORDER.indexOf(status.project.current_phase);
270
+ for (let i = currentIndex + 1; i < phases_1.PREVC_PHASE_ORDER.length; i++) {
271
+ const phase = phases_1.PREVC_PHASE_ORDER[i];
272
+ if (status.phases[phase].status !== 'skipped') {
273
+ return phase;
274
+ }
275
+ }
276
+ return null;
277
+ }
278
+ /**
279
+ * Check if the workflow is complete
280
+ */
281
+ async isComplete() {
282
+ const status = await this.load();
283
+ for (const phase of phases_1.PREVC_PHASE_ORDER) {
284
+ const phaseStatus = status.phases[phase];
285
+ if (phaseStatus.status !== 'completed' &&
286
+ phaseStatus.status !== 'skipped') {
287
+ return false;
288
+ }
289
+ }
290
+ return true;
291
+ }
292
+ /**
293
+ * Set workflow settings
294
+ */
295
+ async setSettings(settings) {
296
+ const status = await this.load();
297
+ const defaults = (0, gates_1.getDefaultSettings)(status.project.scale);
298
+ const currentSettings = status.project.settings || defaults;
299
+ const newSettings = {
300
+ autonomous_mode: settings.autonomous_mode ?? currentSettings.autonomous_mode,
301
+ require_plan: settings.require_plan ?? currentSettings.require_plan,
302
+ require_approval: settings.require_approval ?? currentSettings.require_approval,
303
+ };
304
+ status.project.settings = newSettings;
305
+ await this.save(status);
306
+ return newSettings;
307
+ }
308
+ /**
309
+ * Get workflow settings (with defaults applied)
310
+ */
311
+ async getSettings() {
312
+ const status = await this.load();
313
+ const defaults = (0, gates_1.getDefaultSettings)(status.project.scale);
314
+ return status.project.settings || defaults;
315
+ }
316
+ /**
317
+ * Mark that a plan has been created/linked
318
+ */
319
+ async markPlanCreated(planSlug) {
320
+ const status = await this.load();
321
+ const now = new Date().toISOString();
322
+ if (!status.approval) {
323
+ status.approval = {
324
+ plan_created: false,
325
+ plan_approved: false,
326
+ };
327
+ }
328
+ status.approval.plan_created = true;
329
+ status.project.plan = planSlug;
330
+ // Add history entry
331
+ if (!status.execution) {
332
+ status.execution = {
333
+ history: [],
334
+ last_activity: now,
335
+ resume_context: '',
336
+ };
337
+ }
338
+ status.execution.history.push({
339
+ timestamp: now,
340
+ phase: status.project.current_phase,
341
+ action: 'plan_linked',
342
+ plan: planSlug,
343
+ });
344
+ status.execution.last_activity = now;
345
+ status.execution.resume_context = (0, templates_1.generateResumeContext)(status.project.current_phase, 'plan_linked');
346
+ await this.save(status);
347
+ }
348
+ /**
349
+ * Approve the plan
350
+ */
351
+ async approvePlan(approver, notes) {
352
+ const status = await this.load();
353
+ const now = new Date().toISOString();
354
+ if (!status.approval) {
355
+ status.approval = {
356
+ plan_created: false,
357
+ plan_approved: false,
358
+ };
359
+ }
360
+ status.approval.plan_approved = true;
361
+ status.approval.approved_by = approver;
362
+ status.approval.approved_at = now;
363
+ if (notes) {
364
+ status.approval.approval_notes = notes;
365
+ }
366
+ // Add history entry
367
+ if (!status.execution) {
368
+ status.execution = {
369
+ history: [],
370
+ last_activity: now,
371
+ resume_context: '',
372
+ };
373
+ }
374
+ status.execution.history.push({
375
+ timestamp: now,
376
+ phase: status.project.current_phase,
377
+ action: 'plan_approved',
378
+ approved_by: String(approver),
379
+ });
380
+ status.execution.last_activity = now;
381
+ status.execution.resume_context = (0, templates_1.generateResumeContext)(status.project.current_phase, 'plan_approved');
382
+ await this.save(status);
383
+ return status.approval;
384
+ }
385
+ /**
386
+ * Get approval status
387
+ */
388
+ async getApproval() {
389
+ const status = await this.load();
390
+ return status.approval;
391
+ }
392
+ /**
393
+ * Add an entry to the execution history
394
+ */
395
+ async addHistoryEntry(entry) {
396
+ const status = await this.load();
397
+ const now = new Date().toISOString();
398
+ // Ensure execution exists
399
+ if (!status.execution) {
400
+ status.execution = {
401
+ history: [],
402
+ last_activity: now,
403
+ resume_context: '',
404
+ };
405
+ }
406
+ // Add new entry
407
+ const fullEntry = {
408
+ ...entry,
409
+ timestamp: now,
410
+ };
411
+ status.execution.history.push(fullEntry);
412
+ status.execution.last_activity = now;
413
+ status.execution.resume_context = (0, templates_1.generateResumeContext)(entry.phase, entry.action);
414
+ await this.save(status);
415
+ }
416
+ /**
417
+ * Add a step-level entry to the execution history (breadcrumb trail)
418
+ */
419
+ async addStepHistoryEntry(entry) {
420
+ const status = await this.load();
421
+ const now = new Date().toISOString();
422
+ // Ensure execution exists
423
+ if (!status.execution) {
424
+ status.execution = {
425
+ history: [],
426
+ last_activity: now,
427
+ resume_context: '',
428
+ };
429
+ }
430
+ // Add new step entry
431
+ const fullEntry = {
432
+ timestamp: now,
433
+ phase: status.project.current_phase,
434
+ action: entry.action,
435
+ plan: entry.plan,
436
+ planPhase: entry.planPhase,
437
+ stepIndex: entry.stepIndex,
438
+ stepDescription: entry.stepDescription,
439
+ output: entry.output,
440
+ notes: entry.notes,
441
+ };
442
+ status.execution.history.push(fullEntry);
443
+ status.execution.last_activity = now;
444
+ status.execution.resume_context = (0, templates_1.generateResumeContext)(status.project.current_phase, entry.action, { planPhase: entry.planPhase, stepIndex: entry.stepIndex, stepDescription: entry.stepDescription });
445
+ await this.save(status);
446
+ }
447
+ /**
448
+ * Get execution history
449
+ */
450
+ async getExecutionHistory() {
451
+ const status = await this.load();
452
+ return status.execution;
453
+ }
454
+ /**
455
+ * Apply migration logic for existing workflows
456
+ * - Add default settings based on scale
457
+ * - Initialize approval tracking based on current state
458
+ * - Initialize execution history for old workflows
459
+ * - Initialize agents object for old workflows
460
+ */
461
+ migrateStatus(status) {
462
+ // Add default settings if missing
463
+ if (!status.project.settings) {
464
+ status.project.settings = (0, gates_1.getDefaultSettings)(status.project.scale);
465
+ }
466
+ // Initialize agents if missing (migration from old workflows)
467
+ if (!status.agents) {
468
+ status.agents = {};
469
+ }
470
+ // Initialize approval tracking if missing
471
+ if (!status.approval) {
472
+ const hasPlan = Boolean(status.project.plan || (status.project.plans && status.project.plans.length > 0));
473
+ const isPastReview = ['E', 'V', 'C'].includes(status.project.current_phase) ||
474
+ status.phases['R'].status === 'completed';
475
+ status.approval = {
476
+ plan_created: hasPlan,
477
+ // Auto-approve if already past R phase (grandfather clause)
478
+ plan_approved: isPastReview,
479
+ approved_by: isPastReview ? 'system-migration' : undefined,
480
+ approved_at: isPastReview ? new Date().toISOString() : undefined,
481
+ };
482
+ }
483
+ // Initialize execution history if missing (migration from old workflows)
484
+ if (!status.execution) {
485
+ const now = new Date().toISOString();
486
+ const currentPhase = status.project.current_phase;
487
+ const history = [];
488
+ // Reconstruct history from phase data
489
+ for (const phase of phases_1.PREVC_PHASE_ORDER) {
490
+ const phaseStatus = status.phases[phase];
491
+ if (phaseStatus.started_at) {
492
+ history.push({
493
+ timestamp: phaseStatus.started_at,
494
+ phase,
495
+ action: 'started',
496
+ });
497
+ }
498
+ if (phaseStatus.completed_at) {
499
+ history.push({
500
+ timestamp: phaseStatus.completed_at,
501
+ phase,
502
+ action: 'completed',
503
+ });
504
+ }
505
+ if (phaseStatus.status === 'skipped') {
506
+ history.push({
507
+ timestamp: now,
508
+ phase,
509
+ action: 'phase_skipped',
510
+ });
511
+ }
512
+ }
513
+ // Sort by timestamp
514
+ history.sort((a, b) => a.timestamp.localeCompare(b.timestamp));
515
+ // Determine resume context based on current state
516
+ let resumeContext = (0, templates_1.generateResumeContext)(currentPhase, 'started');
517
+ if (status.approval?.plan_approved) {
518
+ resumeContext = (0, templates_1.generateResumeContext)(currentPhase, 'plan_approved');
519
+ }
520
+ else if (status.approval?.plan_created) {
521
+ resumeContext = (0, templates_1.generateResumeContext)(currentPhase, 'plan_linked');
522
+ }
523
+ status.execution = {
524
+ history: history.length > 0 ? history : [{
525
+ timestamp: status.project.started || now,
526
+ phase: currentPhase,
527
+ action: 'started',
528
+ description: 'Migrated from legacy workflow',
529
+ }],
530
+ last_activity: history.length > 0 ? history[history.length - 1].timestamp : now,
531
+ resume_context: resumeContext,
532
+ };
533
+ }
534
+ return status;
535
+ }
536
+ /**
537
+ * Parse YAML content to PrevcStatus object
538
+ * Simple implementation for the specific format
539
+ */
540
+ parseYaml(content) {
541
+ // Basic YAML parsing - for production, use a proper YAML library
542
+ const lines = content.split('\n');
543
+ const result = {
544
+ project: {
545
+ name: '',
546
+ scale: types_1.ProjectScale.MEDIUM,
547
+ started: new Date().toISOString(),
548
+ current_phase: 'P',
549
+ },
550
+ phases: {
551
+ P: { status: 'pending' },
552
+ R: { status: 'pending' },
553
+ E: { status: 'pending' },
554
+ V: { status: 'pending' },
555
+ C: { status: 'pending' },
556
+ },
557
+ agents: {},
558
+ roles: {},
559
+ };
560
+ let currentSection = '';
561
+ let currentPhase = '';
562
+ let currentRole = '';
563
+ let currentAgent = '';
564
+ for (const line of lines) {
565
+ const trimmed = line.trim();
566
+ if (!trimmed || trimmed.startsWith('#'))
567
+ continue;
568
+ if (line.startsWith('project:')) {
569
+ currentSection = 'project';
570
+ }
571
+ else if (line.startsWith('phases:')) {
572
+ currentSection = 'phases';
573
+ }
574
+ else if (line.startsWith('agents:')) {
575
+ currentSection = 'agents';
576
+ }
577
+ else if (line.startsWith('roles:')) {
578
+ currentSection = 'roles';
579
+ }
580
+ else if (line.startsWith('settings:')) {
581
+ currentSection = 'settings';
582
+ }
583
+ else if (line.startsWith('approval:')) {
584
+ currentSection = 'approval';
585
+ }
586
+ else if (line.startsWith('execution:')) {
587
+ currentSection = 'execution';
588
+ }
589
+ else if (currentSection === 'project' && line.startsWith(' ')) {
590
+ const [key, ...valueParts] = trimmed.split(':');
591
+ const value = valueParts.join(':').trim().replace(/^["']|["']$/g, '');
592
+ if (key === 'name')
593
+ result.project.name = value;
594
+ if (key === 'scale') {
595
+ const scaleMap = {
596
+ QUICK: types_1.ProjectScale.QUICK,
597
+ SMALL: types_1.ProjectScale.SMALL,
598
+ MEDIUM: types_1.ProjectScale.MEDIUM,
599
+ LARGE: types_1.ProjectScale.LARGE,
600
+ ENTERPRISE: types_1.ProjectScale.LARGE, // Legacy migration - map to LARGE
601
+ };
602
+ result.project.scale = scaleMap[value] ?? types_1.ProjectScale.MEDIUM;
603
+ }
604
+ if (key === 'started')
605
+ result.project.started = value;
606
+ if (key === 'current_phase')
607
+ result.project.current_phase = value;
608
+ }
609
+ else if (currentSection === 'phases') {
610
+ if (line.match(/^ [PREVC]:/)) {
611
+ currentPhase = trimmed.replace(':', '');
612
+ }
613
+ else if (currentPhase && line.startsWith(' ')) {
614
+ const [key, ...valueParts] = trimmed.split(':');
615
+ const value = valueParts.join(':').trim().replace(/^["']|["']$/g, '');
616
+ if (key === 'status') {
617
+ result.phases[currentPhase].status = value;
618
+ }
619
+ if (key === 'started_at') {
620
+ result.phases[currentPhase].started_at = value;
621
+ }
622
+ if (key === 'completed_at') {
623
+ result.phases[currentPhase].completed_at = value;
624
+ }
625
+ if (key === 'reason') {
626
+ result.phases[currentPhase].reason = value;
627
+ }
628
+ }
629
+ }
630
+ else if (currentSection === 'agents') {
631
+ if (line.match(/^ [a-z-]+:/)) {
632
+ currentAgent = trimmed.replace(':', '');
633
+ result.agents[currentAgent] = { status: 'pending' };
634
+ }
635
+ else if (currentAgent && line.startsWith(' ')) {
636
+ const [key, ...valueParts] = trimmed.split(':');
637
+ const value = valueParts.join(':').trim().replace(/^["']|["']$/g, '');
638
+ const agentStatus = result.agents[currentAgent] || { status: 'pending' };
639
+ if (key === 'status') {
640
+ agentStatus.status = value;
641
+ }
642
+ if (key === 'started_at') {
643
+ agentStatus.started_at = value;
644
+ }
645
+ if (key === 'completed_at') {
646
+ agentStatus.completed_at = value;
647
+ }
648
+ // Parse outputs array (simplified - single line format: [a, b, c])
649
+ if (key === 'outputs') {
650
+ const outputsMatch = value.match(/^\[(.*)\]$/);
651
+ if (outputsMatch) {
652
+ agentStatus.outputs = outputsMatch[1]
653
+ .split(',')
654
+ .map(s => s.trim().replace(/^["']|["']$/g, ''))
655
+ .filter(s => s);
656
+ }
657
+ }
658
+ result.agents[currentAgent] = agentStatus;
659
+ }
660
+ }
661
+ else if (currentSection === 'roles') {
662
+ if (line.match(/^ [a-z-]+:/)) {
663
+ currentRole = trimmed.replace(':', '');
664
+ result.roles[currentRole] = {};
665
+ }
666
+ else if (currentRole && line.startsWith(' ')) {
667
+ const [key, ...valueParts] = trimmed.split(':');
668
+ const value = valueParts.join(':').trim().replace(/^["']|["']$/g, '');
669
+ const roleStatus = result.roles[currentRole] || {};
670
+ if (key === 'status') {
671
+ roleStatus.status = value;
672
+ }
673
+ if (key === 'phase') {
674
+ roleStatus.phase = value;
675
+ }
676
+ if (key === 'last_active') {
677
+ roleStatus.last_active = value;
678
+ }
679
+ if (key === 'current_task') {
680
+ roleStatus.current_task = value;
681
+ }
682
+ result.roles[currentRole] = roleStatus;
683
+ }
684
+ }
685
+ else if (currentSection === 'settings' && line.startsWith(' ')) {
686
+ if (!result.project.settings) {
687
+ result.project.settings = {
688
+ autonomous_mode: false,
689
+ require_plan: true,
690
+ require_approval: true,
691
+ };
692
+ }
693
+ const [key, ...valueParts] = trimmed.split(':');
694
+ const value = valueParts.join(':').trim().replace(/^["']|["']$/g, '');
695
+ if (key === 'autonomous_mode') {
696
+ result.project.settings.autonomous_mode = value === 'true';
697
+ }
698
+ if (key === 'require_plan') {
699
+ result.project.settings.require_plan = value === 'true';
700
+ }
701
+ if (key === 'require_approval') {
702
+ result.project.settings.require_approval = value === 'true';
703
+ }
704
+ }
705
+ else if (currentSection === 'approval' && line.startsWith(' ')) {
706
+ if (!result.approval) {
707
+ result.approval = {
708
+ plan_created: false,
709
+ plan_approved: false,
710
+ };
711
+ }
712
+ const [key, ...valueParts] = trimmed.split(':');
713
+ const value = valueParts.join(':').trim().replace(/^["']|["']$/g, '');
714
+ if (key === 'plan_created') {
715
+ result.approval.plan_created = value === 'true';
716
+ }
717
+ if (key === 'plan_approved') {
718
+ result.approval.plan_approved = value === 'true';
719
+ }
720
+ if (key === 'approved_by') {
721
+ result.approval.approved_by = value || undefined;
722
+ }
723
+ if (key === 'approved_at') {
724
+ result.approval.approved_at = value || undefined;
725
+ }
726
+ if (key === 'approval_notes') {
727
+ result.approval.approval_notes = value || undefined;
728
+ }
729
+ }
730
+ else if (currentSection === 'execution' && line.startsWith(' ')) {
731
+ if (!result.execution) {
732
+ result.execution = {
733
+ history: [],
734
+ last_activity: '',
735
+ resume_context: '',
736
+ };
737
+ }
738
+ const [key, ...valueParts] = trimmed.split(':');
739
+ const value = valueParts.join(':').trim().replace(/^["']|["']$/g, '');
740
+ if (key === 'last_activity') {
741
+ result.execution.last_activity = value;
742
+ }
743
+ if (key === 'resume_context') {
744
+ result.execution.resume_context = value;
745
+ }
746
+ // Note: history parsing is simplified - for complex arrays, use a YAML library
747
+ // History entries are primarily written by the system, not manually edited
748
+ }
749
+ }
750
+ return result;
751
+ }
752
+ /**
753
+ * Serialize PrevcStatus object to YAML string
754
+ */
755
+ serializeYaml(status) {
756
+ const lines = [];
757
+ // Project section
758
+ lines.push('project:');
759
+ lines.push(` name: "${status.project.name}"`);
760
+ const scaleName = typeof status.project.scale === 'number'
761
+ ? types_1.ProjectScale[status.project.scale]
762
+ : status.project.scale;
763
+ lines.push(` scale: ${scaleName}`);
764
+ lines.push(` started: "${status.project.started}"`);
765
+ lines.push(` current_phase: ${status.project.current_phase}`);
766
+ lines.push('');
767
+ // Phases section
768
+ lines.push('phases:');
769
+ for (const phase of phases_1.PREVC_PHASE_ORDER) {
770
+ const phaseStatus = status.phases[phase];
771
+ lines.push(` ${phase}:`);
772
+ lines.push(` status: ${phaseStatus.status}`);
773
+ if (phaseStatus.started_at) {
774
+ lines.push(` started_at: "${phaseStatus.started_at}"`);
775
+ }
776
+ if (phaseStatus.completed_at) {
777
+ lines.push(` completed_at: "${phaseStatus.completed_at}"`);
778
+ }
779
+ if (phaseStatus.role) {
780
+ lines.push(` role: ${phaseStatus.role}`);
781
+ }
782
+ if (phaseStatus.current_task) {
783
+ lines.push(` current_task: "${phaseStatus.current_task}"`);
784
+ }
785
+ if (phaseStatus.reason) {
786
+ lines.push(` reason: "${phaseStatus.reason}"`);
787
+ }
788
+ if (phaseStatus.outputs && phaseStatus.outputs.length > 0) {
789
+ lines.push(' outputs:');
790
+ for (const output of phaseStatus.outputs) {
791
+ lines.push(` - path: "${output.path}"`);
792
+ lines.push(` status: ${output.status}`);
793
+ }
794
+ }
795
+ }
796
+ lines.push('');
797
+ // Agents section (replaces roles as primary tracking)
798
+ const agentsWithData = [];
799
+ if (status.agents) {
800
+ for (const [agentName, agentStatus] of Object.entries(status.agents)) {
801
+ if (agentStatus) {
802
+ agentsWithData.push([agentName, agentStatus]);
803
+ }
804
+ }
805
+ }
806
+ if (agentsWithData.length > 0) {
807
+ lines.push('agents:');
808
+ for (const [agentName, agentStatus] of agentsWithData) {
809
+ lines.push(` ${agentName}:`);
810
+ lines.push(` status: ${agentStatus.status}`);
811
+ if (agentStatus.started_at) {
812
+ lines.push(` started_at: "${agentStatus.started_at}"`);
813
+ }
814
+ if (agentStatus.completed_at) {
815
+ lines.push(` completed_at: "${agentStatus.completed_at}"`);
816
+ }
817
+ if (agentStatus.outputs && agentStatus.outputs.length > 0) {
818
+ lines.push(` outputs: [${agentStatus.outputs.map((o) => `"${o}"`).join(', ')}]`);
819
+ }
820
+ }
821
+ lines.push('');
822
+ }
823
+ // Roles section (legacy - kept for backward compatibility)
824
+ const rolesWithData = [];
825
+ if (status.roles) {
826
+ for (const [role, roleStatus] of Object.entries(status.roles)) {
827
+ if (roleStatus && Object.keys(roleStatus).length > 0) {
828
+ rolesWithData.push([role, roleStatus]);
829
+ }
830
+ }
831
+ }
832
+ if (rolesWithData.length > 0) {
833
+ lines.push('roles:');
834
+ for (const [role, roleStatus] of rolesWithData) {
835
+ lines.push(` ${role}:`);
836
+ if (roleStatus.status) {
837
+ lines.push(` status: ${roleStatus.status}`);
838
+ }
839
+ if (roleStatus.phase) {
840
+ lines.push(` phase: ${roleStatus.phase}`);
841
+ }
842
+ if (roleStatus.last_active) {
843
+ lines.push(` last_active: "${roleStatus.last_active}"`);
844
+ }
845
+ if (roleStatus.current_task) {
846
+ lines.push(` current_task: "${roleStatus.current_task}"`);
847
+ }
848
+ if (roleStatus.outputs && roleStatus.outputs.length > 0) {
849
+ lines.push(` outputs: [${roleStatus.outputs.map((o) => `"${o}"`).join(', ')}]`);
850
+ }
851
+ }
852
+ lines.push('');
853
+ }
854
+ // Execution section (new - replaces roles as primary tracking)
855
+ if (status.execution && status.execution.history.length > 0) {
856
+ lines.push('execution:');
857
+ lines.push(' history:');
858
+ for (const entry of status.execution.history) {
859
+ lines.push(` - timestamp: "${entry.timestamp}"`);
860
+ lines.push(` phase: ${entry.phase}`);
861
+ lines.push(` action: ${entry.action}`);
862
+ if (entry.plan) {
863
+ lines.push(` plan: "${entry.plan}"`);
864
+ }
865
+ if (entry.approved_by) {
866
+ lines.push(` approved_by: "${entry.approved_by}"`);
867
+ }
868
+ if (entry.description) {
869
+ lines.push(` description: "${entry.description}"`);
870
+ }
871
+ // Step-level breadcrumb fields
872
+ if (entry.planPhase) {
873
+ lines.push(` planPhase: "${entry.planPhase}"`);
874
+ }
875
+ if (entry.stepIndex !== undefined) {
876
+ lines.push(` stepIndex: ${entry.stepIndex}`);
877
+ }
878
+ if (entry.stepDescription) {
879
+ lines.push(` stepDescription: "${entry.stepDescription}"`);
880
+ }
881
+ if (entry.output) {
882
+ lines.push(` output: "${entry.output}"`);
883
+ }
884
+ if (entry.notes) {
885
+ lines.push(` notes: "${entry.notes}"`);
886
+ }
887
+ }
888
+ lines.push(` last_activity: "${status.execution.last_activity}"`);
889
+ lines.push(` resume_context: "${status.execution.resume_context}"`);
890
+ lines.push('');
891
+ }
892
+ // Settings section
893
+ const defaultSettings = (0, gates_1.getDefaultSettings)(status.project.scale);
894
+ const settings = status.project.settings;
895
+ const shouldWriteSettings = settings
896
+ && (settings.autonomous_mode !== defaultSettings.autonomous_mode ||
897
+ settings.require_plan !== defaultSettings.require_plan ||
898
+ settings.require_approval !== defaultSettings.require_approval);
899
+ if (shouldWriteSettings && settings) {
900
+ lines.push('settings:');
901
+ lines.push(` autonomous_mode: ${settings.autonomous_mode}`);
902
+ lines.push(` require_plan: ${settings.require_plan}`);
903
+ lines.push(` require_approval: ${settings.require_approval}`);
904
+ lines.push('');
905
+ }
906
+ // Approval section
907
+ const approval = status.approval;
908
+ const shouldWriteApproval = approval && (approval.plan_created ||
909
+ approval.plan_approved ||
910
+ Boolean(approval.approved_by) ||
911
+ Boolean(approval.approved_at) ||
912
+ Boolean(approval.approval_notes));
913
+ if (shouldWriteApproval && approval) {
914
+ lines.push('approval:');
915
+ lines.push(` plan_created: ${approval.plan_created}`);
916
+ lines.push(` plan_approved: ${approval.plan_approved}`);
917
+ if (approval.approved_by) {
918
+ lines.push(` approved_by: "${approval.approved_by}"`);
919
+ }
920
+ if (approval.approved_at) {
921
+ lines.push(` approved_at: "${approval.approved_at}"`);
922
+ }
923
+ if (approval.approval_notes) {
924
+ lines.push(` approval_notes: "${approval.approval_notes}"`);
925
+ }
926
+ lines.push('');
927
+ }
928
+ return lines.join('\n') + '\n';
929
+ }
930
+ }
931
+ exports.PrevcStatusManager = PrevcStatusManager;
932
+ //# sourceMappingURL=statusManager.js.map