agentstudio 0.4.2 → 0.4.3

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 (280) hide show
  1. package/config/engineConfig.d.ts +15 -0
  2. package/config/engineConfig.d.ts.map +1 -1
  3. package/config/engineConfig.js +30 -0
  4. package/config/engineConfig.js.map +1 -1
  5. package/config/index.d.ts.map +1 -1
  6. package/config/index.js +14 -0
  7. package/config/index.js.map +1 -1
  8. package/config/paths.d.ts +5 -0
  9. package/config/paths.d.ts.map +1 -1
  10. package/config/paths.js +6 -1
  11. package/config/paths.js.map +1 -1
  12. package/engines/claude/__tests__/supportedModels.test.d.ts +6 -4
  13. package/engines/claude/__tests__/supportedModels.test.d.ts.map +1 -1
  14. package/engines/claude/__tests__/supportedModels.test.js +55 -13
  15. package/engines/claude/__tests__/supportedModels.test.js.map +1 -1
  16. package/engines/claude/aguiAdapter.d.ts.map +1 -1
  17. package/engines/claude/aguiAdapter.js +8 -0
  18. package/engines/claude/aguiAdapter.js.map +1 -1
  19. package/engines/claude/claudeEngine.d.ts +36 -3
  20. package/engines/claude/claudeEngine.d.ts.map +1 -1
  21. package/engines/claude/claudeEngine.js +132 -13
  22. package/engines/claude/claudeEngine.js.map +1 -1
  23. package/index.d.ts.map +1 -1
  24. package/index.js +29 -2
  25. package/index.js.map +1 -1
  26. package/middleware/callChain.d.ts +10 -0
  27. package/middleware/callChain.d.ts.map +1 -0
  28. package/middleware/callChain.js +24 -0
  29. package/middleware/callChain.js.map +1 -0
  30. package/middleware/requestId.d.ts +8 -0
  31. package/middleware/requestId.d.ts.map +1 -0
  32. package/middleware/requestId.js +18 -0
  33. package/middleware/requestId.js.map +1 -0
  34. package/package.json +1 -1
  35. package/prompts/gameDevSystemPrompt.d.ts +15 -0
  36. package/prompts/gameDevSystemPrompt.d.ts.map +1 -0
  37. package/prompts/gameDevSystemPrompt.js +37 -0
  38. package/prompts/gameDevSystemPrompt.js.map +1 -0
  39. package/prompts/vibeGamingPrompt.d.ts +13 -0
  40. package/prompts/vibeGamingPrompt.d.ts.map +1 -0
  41. package/prompts/vibeGamingPrompt.js +125 -0
  42. package/prompts/vibeGamingPrompt.js.map +1 -0
  43. package/public/assets/{AgentsPage-BsZdkqzM.js → AgentsPage-CHee5mUh.js} +1 -1
  44. package/public/assets/{Button-CMTSYiKV.js → Button-D5qiS7CR.js} +1 -1
  45. package/public/assets/ChatPage-B7-rn9mH.js +478 -0
  46. package/public/assets/{CommandForm-DwGvE9A_.js → CommandForm-CMfgHNm5.js} +1 -1
  47. package/public/assets/{CommandsPage-qDWzq8xp.js → CommandsPage-B4rjtVWk.js} +1 -1
  48. package/public/assets/{CursorConfigPage-DpUdJzRi.js → CursorConfigPage-DQ-3b3ti.js} +1 -1
  49. package/public/assets/{DashboardPage-BhqKOzob.js → DashboardPage-BowdW2Xj.js} +1 -1
  50. package/public/assets/{EngineGate-BjHJu955.js → EngineGate-DYNvEEbW.js} +1 -1
  51. package/public/assets/{FileBrowser-DboOOM_v.js → FileBrowser-DHyCacM6.js} +1 -1
  52. package/public/assets/{FileExplorer-x5R0Tcmk.js → FileExplorer-BprfeAH_.js} +1 -1
  53. package/public/assets/GeneralSettingsPage-C6hJ_zTw.js +1 -0
  54. package/public/assets/{HooksPage-DDGc0GGV.js → HooksPage-BwE2Zm3X.js} +1 -1
  55. package/public/assets/{LandingPage-CvY4n9Rh.js → LandingPage-DKvwbGX1.js} +1 -1
  56. package/public/assets/{LoginPage-C-PZfjYC.js → LoginPage-BpZhqRAN.js} +1 -1
  57. package/public/assets/{McpAdminSettingsPage-CIILVzB8.js → McpAdminSettingsPage-DuvsM5TX.js} +1 -1
  58. package/public/assets/{McpPage-B4nQUJag.js → McpPage-Hu8vyMhX.js} +1 -1
  59. package/public/assets/{MemorySettingsPage-eu6tsuUh.js → MemorySettingsPage-gIWSsrES.js} +1 -1
  60. package/public/assets/{ModelsPage-Bb5vSsuc.js → ModelsPage-Cosb3hHI.js} +1 -1
  61. package/public/assets/PluginsPage-CuNui9NV.js +12 -0
  62. package/public/assets/{ProjectSelector-CybrDbBY.js → ProjectSelector-CyBlHb2H.js} +1 -1
  63. package/public/assets/{ProjectsPage-DRl-0B4G.js → ProjectsPage-DYhCvH07.js} +1 -1
  64. package/public/assets/{RulesPage-DUt33RkX.js → RulesPage-C32P_Aqz.js} +1 -1
  65. package/public/assets/{ScheduledTasksPage-CTDYYRIN.js → ScheduledTasksPage-ixn5qoiD.js} +1 -1
  66. package/public/assets/SettingsLayout-C_7jR0Te.js +1 -0
  67. package/public/assets/{SkillsPage-Lzw8I9vR.js → SkillsPage-C-WS4N1Y.js} +1 -1
  68. package/public/assets/{SubagentForm-BzzeWg0W.js → SubagentForm-BbxljQUp.js} +1 -1
  69. package/public/assets/{SubagentsPage-bX2XWdJ0.js → SubagentsPage-D66TBaeN.js} +1 -1
  70. package/public/assets/{SystemInfoPage-nEIQbtwG.js → SystemInfoPage-DXVUncTe.js} +1 -1
  71. package/public/assets/{TelemetrySettingsPage-q167I4G9.js → TelemetrySettingsPage-Cp3vOu7X.js} +1 -1
  72. package/public/assets/{ToastTestPage-j224d3QR.js → ToastTestPage-03up9yZR.js} +1 -1
  73. package/public/assets/{ToolsList-CTsQr53G.js → ToolsList-BZFBEuvQ.js} +1 -1
  74. package/public/assets/UnifiedToolSelector-DJN7ASu1.js +1 -0
  75. package/public/assets/{VersionSettingsPage-BwpwiLyl.js → VersionSettingsPage-DppWaX--.js} +1 -1
  76. package/public/assets/{VoiceSettingsPage-d3l9AWBn.js → VoiceSettingsPage-BWJLeedX.js} +1 -1
  77. package/public/assets/{WebSocketTunnelPage-BqEUE7mr.js → WebSocketTunnelPage-BPeSTgEZ.js} +1 -1
  78. package/public/assets/{_basePickBy-DHabY031.js → _basePickBy-0UeYrifO.js} +1 -1
  79. package/public/assets/{_baseUniq-B1lmu3qr.js → _baseUniq-Q0NUbuSr.js} +1 -1
  80. package/public/assets/{agents-KlPdWQ8K.js → agents-DR9EZMs5.js} +1 -1
  81. package/public/assets/{arc-6sRLTBcr.js → arc-BV8erW1-.js} +1 -1
  82. package/public/assets/{architectureDiagram-VXUJARFQ-kwdTmjuB.js → architectureDiagram-VXUJARFQ-BIodTu6s.js} +1 -1
  83. package/public/assets/{blockDiagram-VD42YOAC-CYO9EYkJ.js → blockDiagram-VD42YOAC-4H3KjsGf.js} +1 -1
  84. package/public/assets/{c4Diagram-YG6GDRKO-gAp3--Ee.js → c4Diagram-YG6GDRKO-J2ovCYEr.js} +1 -1
  85. package/public/assets/channel-gveiJv4S.js +1 -0
  86. package/public/assets/{chunk-4BX2VUAB-DQVsL-J6.js → chunk-4BX2VUAB-D7Mc44O6.js} +1 -1
  87. package/public/assets/{chunk-55IACEB6-DVsfnY5X.js → chunk-55IACEB6-CMASo37Z.js} +1 -1
  88. package/public/assets/{chunk-B4BG7PRW-BNmOvuIn.js → chunk-B4BG7PRW-2T3W2IB6.js} +1 -1
  89. package/public/assets/{chunk-DI55MBZ5-BkucWe8Y.js → chunk-DI55MBZ5-FR9qswmO.js} +1 -1
  90. package/public/assets/{chunk-FMBD7UC4-BsvfEdnB.js → chunk-FMBD7UC4-Bz2LO9q3.js} +1 -1
  91. package/public/assets/{chunk-QN33PNHL-DSecsNtM.js → chunk-QN33PNHL-D7mfK9Pm.js} +1 -1
  92. package/public/assets/{chunk-QZHKN3VN-DhvrZSqy.js → chunk-QZHKN3VN-AkuNbqQU.js} +1 -1
  93. package/public/assets/{chunk-TZMSLE5B-BqQ674GC.js → chunk-TZMSLE5B-DtY3rhWy.js} +1 -1
  94. package/public/assets/classDiagram-2ON5EDUG-f-lJUj27.js +1 -0
  95. package/public/assets/classDiagram-v2-WZHVMYZB-f-lJUj27.js +1 -0
  96. package/public/assets/clone-D5-Tsf9e.js +1 -0
  97. package/public/assets/{cose-bilkent-S5V4N54A-D9ZC6LmB.js → cose-bilkent-S5V4N54A-BuEw-qDX.js} +1 -1
  98. package/public/assets/{dagre-6UL2VRFP-s7YD2ZcY.js → dagre-6UL2VRFP-D-NrLBGh.js} +1 -1
  99. package/public/assets/{diagram-PSM6KHXK-C7jhP5tx.js → diagram-PSM6KHXK-BFjWOHNz.js} +1 -1
  100. package/public/assets/{diagram-QEK2KX5R-B348GmS1.js → diagram-QEK2KX5R-C0YlDb8t.js} +1 -1
  101. package/public/assets/{diagram-S2PKOQOG-Cu-zjwc9.js → diagram-S2PKOQOG-BLKbR12g.js} +1 -1
  102. package/public/assets/{erDiagram-Q2GNP2WA-tM4HKBpy.js → erDiagram-Q2GNP2WA-Cov6xnUk.js} +1 -1
  103. package/public/assets/{flowDiagram-NV44I4VS-DjCIshpi.js → flowDiagram-NV44I4VS-DTMKSJI1.js} +1 -1
  104. package/public/assets/{ganttDiagram-LVOFAZNH-Q6plkI5G.js → ganttDiagram-LVOFAZNH-DR0bcfHY.js} +1 -1
  105. package/public/assets/{gitGraphDiagram-NY62KEGX-B3Uw90Yt.js → gitGraphDiagram-NY62KEGX-CvxYSabY.js} +1 -1
  106. package/public/assets/{graph-Bp0jlxBT.js → graph-BYXvelIL.js} +1 -1
  107. package/public/assets/{index-f67nhEoX.js → index-BIGPvi1D.js} +44 -44
  108. package/public/assets/infoDiagram-F6ZHWCRC-CL9g-UgS.js +2 -0
  109. package/public/assets/{journeyDiagram-XKPGCS4Q-CgQogtHU.js → journeyDiagram-XKPGCS4Q-Df8G0pW8.js} +1 -1
  110. package/public/assets/{kanban-definition-3W4ZIXB7-Cv7kVxyy.js → kanban-definition-3W4ZIXB7-DhoP7TG_.js} +1 -1
  111. package/public/assets/{layout-6bkH32V1.js → layout-CgO4Vp_y.js} +1 -1
  112. package/public/assets/{linear-DWoZ6Tbm.js → linear-CaY74pOB.js} +1 -1
  113. package/public/assets/{mindmap-definition-VGOIOE7T-D5wd9HsH.js → mindmap-definition-VGOIOE7T-CVK2y0WQ.js} +1 -1
  114. package/public/assets/{pieDiagram-ADFJNKIX-8vPxErLm.js → pieDiagram-ADFJNKIX-BQt_waQk.js} +1 -1
  115. package/public/assets/{quadrantDiagram-AYHSOK5B-Pn0NZ9k7.js → quadrantDiagram-AYHSOK5B-DvLFoDeH.js} +1 -1
  116. package/public/assets/{requirementDiagram-UZGBJVZJ-C7u8MiN1.js → requirementDiagram-UZGBJVZJ-C4lqjEUP.js} +1 -1
  117. package/public/assets/{sankeyDiagram-TZEHDZUN-C660O4mw.js → sankeyDiagram-TZEHDZUN-BKIDyl6M.js} +1 -1
  118. package/public/assets/{sequenceDiagram-WL72ISMW-pXBA2_3B.js → sequenceDiagram-WL72ISMW-BeyhJ61U.js} +1 -1
  119. package/public/assets/{stateDiagram-FKZM4ZOC-CxZMM1Lf.js → stateDiagram-FKZM4ZOC-CKyn6eKl.js} +1 -1
  120. package/public/assets/stateDiagram-v2-4FDKWEC3-DogBVcJE.js +1 -0
  121. package/public/assets/{table-Clz57edU.js → table-BgVewkB5.js} +1 -1
  122. package/public/assets/{timeline-definition-IT6M3QCI-Crg44TaP.js → timeline-definition-IT6M3QCI-Cm5SIAmT.js} +1 -1
  123. package/public/assets/tools-crrPnehB.js +1 -0
  124. package/public/assets/{treemap-KMMF4GRG-bFxwBWXw.js → treemap-KMMF4GRG-CUMeoVWM.js} +1 -1
  125. package/public/assets/{ui-components-DjgDPiqV.js → ui-components-D1pZO0y-.js} +1 -1
  126. package/public/assets/{useAgents-8KXN6U61.js → useAgents-M4lcWvy0.js} +1 -1
  127. package/public/assets/{useClaudeVersions-DicHLV6A.js → useClaudeVersions-CKT_fq1t.js} +1 -1
  128. package/public/assets/{useCommands-DbSH48ba.js → useCommands-vaoVPEDI.js} +1 -1
  129. package/public/assets/{useProjects-Bbh6hJMM.js → useProjects-D1ElB-WS.js} +1 -1
  130. package/public/assets/{useSessions-DOa4-xiB.js → useSessions-Dp1kUl43.js} +1 -1
  131. package/public/assets/{xychartDiagram-PRI3JC2R-DG3KmjD-.js → xychartDiagram-PRI3JC2R-Cy-SHDyX.js} +1 -1
  132. package/public/index.html +4 -4
  133. package/routes/a2a.d.ts.map +1 -1
  134. package/routes/a2a.js +27 -7
  135. package/routes/a2a.js.map +1 -1
  136. package/routes/agents.d.ts.map +1 -1
  137. package/routes/agents.js +234 -38
  138. package/routes/agents.js.map +1 -1
  139. package/routes/agui.d.ts.map +1 -1
  140. package/routes/agui.js +44 -1
  141. package/routes/agui.js.map +1 -1
  142. package/routes/gitVersions.d.ts.map +1 -1
  143. package/routes/gitVersions.js +80 -1
  144. package/routes/gitVersions.js.map +1 -1
  145. package/routes/marketplaceSkills.d.ts +18 -0
  146. package/routes/marketplaceSkills.d.ts.map +1 -0
  147. package/routes/marketplaceSkills.js +190 -0
  148. package/routes/marketplaceSkills.js.map +1 -0
  149. package/routes/plugins.d.ts.map +1 -1
  150. package/routes/plugins.js +48 -7
  151. package/routes/plugins.js.map +1 -1
  152. package/routes/projects.d.ts.map +1 -1
  153. package/routes/projects.js +34 -0
  154. package/routes/projects.js.map +1 -1
  155. package/schemas/a2a.d.ts +35 -4
  156. package/schemas/a2a.d.ts.map +1 -1
  157. package/schemas/a2a.js +9 -1
  158. package/schemas/a2a.js.map +1 -1
  159. package/services/__tests__/agentImporter.test.js +197 -0
  160. package/services/__tests__/agentImporter.test.js.map +1 -1
  161. package/services/__tests__/pluginInstaller.test.js +2 -1
  162. package/services/__tests__/pluginInstaller.test.js.map +1 -1
  163. package/services/agentImporter.d.ts +7 -0
  164. package/services/agentImporter.d.ts.map +1 -1
  165. package/services/agentImporter.js +57 -4
  166. package/services/agentImporter.js.map +1 -1
  167. package/services/builtinMarketplaceService.d.ts +56 -0
  168. package/services/builtinMarketplaceService.d.ts.map +1 -0
  169. package/services/builtinMarketplaceService.js +328 -0
  170. package/services/builtinMarketplaceService.js.map +1 -0
  171. package/services/claudeSession.d.ts.map +1 -1
  172. package/services/claudeSession.js +15 -4
  173. package/services/claudeSession.js.map +1 -1
  174. package/services/claudeVersionStorage.js +6 -6
  175. package/services/claudeVersionStorage.js.map +1 -1
  176. package/services/gitVersionService.d.ts +22 -0
  177. package/services/gitVersionService.d.ts.map +1 -1
  178. package/services/gitVersionService.js +117 -19
  179. package/services/gitVersionService.js.map +1 -1
  180. package/services/marketplaceSkillService.d.ts +129 -0
  181. package/services/marketplaceSkillService.d.ts.map +1 -0
  182. package/services/marketplaceSkillService.js +358 -0
  183. package/services/marketplaceSkillService.js.map +1 -0
  184. package/services/marketplaceUpdateService.d.ts.map +1 -1
  185. package/services/marketplaceUpdateService.js +29 -2
  186. package/services/marketplaceUpdateService.js.map +1 -1
  187. package/services/pluginCopyInstall.d.ts +60 -0
  188. package/services/pluginCopyInstall.d.ts.map +1 -0
  189. package/services/pluginCopyInstall.js +290 -0
  190. package/services/pluginCopyInstall.js.map +1 -0
  191. package/services/pluginInstallStrategy.d.ts +39 -0
  192. package/services/pluginInstallStrategy.d.ts.map +1 -0
  193. package/services/pluginInstallStrategy.js +50 -0
  194. package/services/pluginInstallStrategy.js.map +1 -0
  195. package/services/pluginInstaller.d.ts +10 -0
  196. package/services/pluginInstaller.d.ts.map +1 -1
  197. package/services/pluginInstaller.js +70 -20
  198. package/services/pluginInstaller.js.map +1 -1
  199. package/services/pluginParser.d.ts +17 -1
  200. package/services/pluginParser.d.ts.map +1 -1
  201. package/services/pluginParser.js +161 -84
  202. package/services/pluginParser.js.map +1 -1
  203. package/services/pluginPaths.d.ts +3 -3
  204. package/services/pluginPaths.d.ts.map +1 -1
  205. package/services/pluginPaths.js +33 -14
  206. package/services/pluginPaths.js.map +1 -1
  207. package/services/pluginScanner.js +2 -2
  208. package/services/pluginScanner.js.map +1 -1
  209. package/services/pluginSymlink.d.ts +10 -0
  210. package/services/pluginSymlink.d.ts.map +1 -1
  211. package/services/pluginSymlink.js +117 -1
  212. package/services/pluginSymlink.js.map +1 -1
  213. package/services/preSendGuard/__tests__/preSendGuard.test.d.ts +2 -0
  214. package/services/preSendGuard/__tests__/preSendGuard.test.d.ts.map +1 -0
  215. package/services/preSendGuard/__tests__/preSendGuard.test.js +102 -0
  216. package/services/preSendGuard/__tests__/preSendGuard.test.js.map +1 -0
  217. package/services/preSendGuard/configResolver.d.ts +8 -0
  218. package/services/preSendGuard/configResolver.d.ts.map +1 -0
  219. package/services/preSendGuard/configResolver.js +181 -0
  220. package/services/preSendGuard/configResolver.js.map +1 -0
  221. package/services/preSendGuard/index.d.ts +9 -0
  222. package/services/preSendGuard/index.d.ts.map +1 -0
  223. package/services/preSendGuard/index.js +165 -0
  224. package/services/preSendGuard/index.js.map +1 -0
  225. package/services/preSendGuard/providers/httpAuditProvider.d.ts +3 -0
  226. package/services/preSendGuard/providers/httpAuditProvider.d.ts.map +1 -0
  227. package/services/preSendGuard/providers/httpAuditProvider.js +98 -0
  228. package/services/preSendGuard/providers/httpAuditProvider.js.map +1 -0
  229. package/services/preSendGuard/providers/noopProvider.d.ts +3 -0
  230. package/services/preSendGuard/providers/noopProvider.d.ts.map +1 -0
  231. package/services/preSendGuard/providers/noopProvider.js +13 -0
  232. package/services/preSendGuard/providers/noopProvider.js.map +1 -0
  233. package/services/runFinishedHooks.d.ts +29 -0
  234. package/services/runFinishedHooks.d.ts.map +1 -0
  235. package/services/runFinishedHooks.js +57 -0
  236. package/services/runFinishedHooks.js.map +1 -0
  237. package/testing/index.d.ts +18 -0
  238. package/testing/index.d.ts.map +1 -0
  239. package/testing/index.js +25 -0
  240. package/testing/index.js.map +1 -0
  241. package/testing/mockSdkQuery.d.ts +49 -0
  242. package/testing/mockSdkQuery.d.ts.map +1 -0
  243. package/testing/mockSdkQuery.js +209 -0
  244. package/testing/mockSdkQuery.js.map +1 -0
  245. package/testing/scenarioLoader.d.ts +71 -0
  246. package/testing/scenarioLoader.d.ts.map +1 -0
  247. package/testing/scenarioLoader.js +224 -0
  248. package/testing/scenarioLoader.js.map +1 -0
  249. package/types/a2a.d.ts +5 -0
  250. package/types/a2a.d.ts.map +1 -1
  251. package/types/agents.d.ts +32 -0
  252. package/types/agents.d.ts.map +1 -1
  253. package/types/agents.js +1 -0
  254. package/types/agents.js.map +1 -1
  255. package/types/engine.d.ts +6 -0
  256. package/types/engine.d.ts.map +1 -1
  257. package/types/plugins.d.ts +12 -2
  258. package/types/plugins.d.ts.map +1 -1
  259. package/types/preSendGuard.d.ts +51 -0
  260. package/types/preSendGuard.d.ts.map +1 -0
  261. package/types/preSendGuard.js +3 -0
  262. package/types/preSendGuard.js.map +1 -0
  263. package/utils/__tests__/claudeUtils.test.js +89 -1
  264. package/utils/__tests__/claudeUtils.test.js.map +1 -1
  265. package/utils/claudeUtils.d.ts +1 -1
  266. package/utils/claudeUtils.d.ts.map +1 -1
  267. package/utils/claudeUtils.js +92 -37
  268. package/utils/claudeUtils.js.map +1 -1
  269. package/public/assets/ChatPage-D8buVhfb.js +0 -478
  270. package/public/assets/GeneralSettingsPage-DYdwai51.js +0 -1
  271. package/public/assets/PluginsPage-DD92Xk6X.js +0 -12
  272. package/public/assets/SettingsLayout-LGC-0pQl.js +0 -1
  273. package/public/assets/UnifiedToolSelector-BP6fuyzG.js +0 -1
  274. package/public/assets/channel-D9wyZF1L.js +0 -1
  275. package/public/assets/classDiagram-2ON5EDUG-DwEqkkEb.js +0 -1
  276. package/public/assets/classDiagram-v2-WZHVMYZB-DwEqkkEb.js +0 -1
  277. package/public/assets/clone-3wFPaI2j.js +0 -1
  278. package/public/assets/infoDiagram-F6ZHWCRC-HUfwv_JT.js +0 -2
  279. package/public/assets/stateDiagram-v2-4FDKWEC3-CmurzrWf.js +0 -1
  280. package/public/assets/tools-BZTR2NP1.js +0 -1
package/routes/agui.js CHANGED
@@ -22,8 +22,12 @@ const crypto_1 = require("crypto");
22
22
  const index_js_1 = require("../engines/index.js");
23
23
  const projectMetadataStorage_js_1 = require("../services/projectMetadataStorage.js");
24
24
  const sessionEventBus_js_1 = require("../services/sessionEventBus.js");
25
+ const runFinishedHooks_js_1 = require("../services/runFinishedHooks.js");
26
+ const agentStorage_js_1 = require("../services/agentStorage.js");
25
27
  // Project storage for resolving project names to paths
26
28
  const projectStorage = new projectMetadataStorage_js_1.ProjectMetadataStorage();
29
+ // Agent storage for reading agent hooks config
30
+ const agentStorage = new agentStorage_js_1.AgentStorage();
27
31
  const router = express_1.default.Router();
28
32
  // Initialize engines on module load
29
33
  try {
@@ -197,6 +201,15 @@ router.post('/chat', async (req, res) => {
197
201
  }, 5000);
198
202
  // Track session ID for event bus broadcasting
199
203
  let activeSessionId = sessionId || null;
204
+ // Resolve agent hooks (if an agentId-like identifier is available from the request)
205
+ // For AGUI, we try to find an agent whose hooks should apply.
206
+ // The request body may carry an agentId field (forwarded by the frontend).
207
+ const requestAgentId = req.body?.agentId;
208
+ const aguiAgent = requestAgentId ? agentStorage.getAgent(requestAgentId) : null;
209
+ const onRunFinishedHook = aguiAgent?.hooks?.onRunFinished;
210
+ // If there's an onRunFinished hook, we intercept RUN_FINISHED so we can
211
+ // execute the hook and emit its events before the run-finished signal.
212
+ let pendingRunFinished = null;
200
213
  // AGUI event callback (used by Cursor engine)
201
214
  const onAguiEvent = (event) => {
202
215
  if (isConnectionClosed)
@@ -205,6 +218,11 @@ router.post('/chat', async (req, res) => {
205
218
  if (event.type === index_js_1.AGUIEventType.RUN_STARTED && 'threadId' in event) {
206
219
  activeSessionId = event.threadId || activeSessionId;
207
220
  }
221
+ // Intercept RUN_FINISHED when an onRunFinished hook is configured
222
+ if (event.type === index_js_1.AGUIEventType.RUN_FINISHED && onRunFinishedHook && resolvedWorkspace) {
223
+ pendingRunFinished = event;
224
+ return; // Don't write yet — will be sent after hook execution
225
+ }
208
226
  try {
209
227
  res.write((0, index_js_1.formatAguiEventAsSSE)(event));
210
228
  }
@@ -229,6 +247,30 @@ router.post('/chat', async (req, res) => {
229
247
  timeout,
230
248
  }, onAguiEvent);
231
249
  console.log(`✅ [AGUI] Cursor request completed, sessionId: ${result.sessionId}`);
250
+ // Execute onRunFinished hook (if configured) before sending RUN_FINISHED
251
+ if (pendingRunFinished && onRunFinishedHook && resolvedWorkspace && !isConnectionClosed) {
252
+ try {
253
+ const hookEvents = await (0, runFinishedHooks_js_1.runOnRunFinishedHook)(onRunFinishedHook, {
254
+ projectPath: resolvedWorkspace,
255
+ agentId: requestAgentId || 'cursor',
256
+ sessionId: activeSessionId || sessionId,
257
+ });
258
+ for (const hookEvent of hookEvents) {
259
+ res.write((0, index_js_1.formatAguiEventAsSSE)(hookEvent));
260
+ }
261
+ }
262
+ catch (hookError) {
263
+ console.warn(`[onRunFinished hook] Error: ${hookError.message}`);
264
+ }
265
+ // Now send the deferred RUN_FINISHED
266
+ try {
267
+ res.write((0, index_js_1.formatAguiEventAsSSE)(pendingRunFinished));
268
+ }
269
+ catch (error) {
270
+ console.error('[AGUI] Error writing deferred RUN_FINISHED:', error);
271
+ }
272
+ pendingRunFinished = null;
273
+ }
232
274
  }
233
275
  else {
234
276
  // Claude engine: Redirect to /api/agents/chat with outputFormat=agui
@@ -443,7 +485,8 @@ router.post('/sessions/:sessionId/inject', async (req, res) => {
443
485
  router.get('/sessions/:sessionId/observe', (req, res) => {
444
486
  const { sessionId } = req.params;
445
487
  const clientId = req.query.clientId || (0, crypto_1.randomUUID)();
446
- console.log(`👁️ [AGUI] Observe request for session ${sessionId} from client ${clientId}`);
488
+ const userId = req.headers['x-sandboxproxy-auth-oid'];
489
+ console.log(`👁️ [AGUI] Observe request for session ${sessionId} from client ${clientId}${userId ? ` user ${userId}` : ''}`);
447
490
  // Set up SSE headers
448
491
  res.setHeader('Content-Type', 'text/event-stream');
449
492
  res.setHeader('Cache-Control', 'no-cache');
@@ -1 +1 @@
1
- {"version":3,"file":"agui.js","sourceRoot":"","sources":["../../src/routes/agui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"agui.js","sourceRoot":"","sources":["../../src/routes/agui.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"gitVersions.d.ts","sourceRoot":"","sources":["../../src/routes/gitVersions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,OAAO,MAAM,SAAS,CAAC;AAe9B,QAAA,MAAM,MAAM,EAAE,OAAO,CAAC,MAA8C,CAAC;AAsJrE,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"gitVersions.d.ts","sourceRoot":"","sources":["../../src/routes/gitVersions.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,OAAO,MAAM,SAAS,CAAC;AAmB9B,QAAA,MAAM,MAAM,EAAE,OAAO,CAAC,MAA8C,CAAC;AA4OrE,eAAe,MAAM,CAAC"}
@@ -10,6 +10,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  const express_1 = __importDefault(require("express"));
13
+ const path_1 = __importDefault(require("path"));
13
14
  const projectMetadataStorage_1 = require("../services/projectMetadataStorage");
14
15
  const gitVersionService_1 = require("../services/gitVersionService");
15
16
  const router = express_1.default.Router({ mergeParams: true });
@@ -20,13 +21,14 @@ const projectStorage = new projectMetadataStorage_1.ProjectMetadataStorage();
20
21
  */
21
22
  function resolveProjectPath(projectId) {
22
23
  const decodedPath = decodeURIComponent(projectId);
24
+ const normalizedPath = path_1.default.isAbsolute(decodedPath) ? decodedPath : `/${decodedPath}`;
23
25
  // Try to look up the project to get the real path
24
26
  const project = projectStorage.getProject(decodedPath);
25
27
  if (project && project.path) {
26
28
  return project.path;
27
29
  }
28
30
  // Fallback: use decoded path directly
29
- return decodedPath;
31
+ return normalizedPath;
30
32
  }
31
33
  // ========================================
32
34
  // GET /api/projects/:projectId/versions
@@ -59,6 +61,21 @@ router.get('/status', async (req, res) => {
59
61
  }
60
62
  });
61
63
  // ========================================
64
+ // GET /api/projects/:projectId/versions/commit
65
+ // Get current HEAD commit hash
66
+ // ========================================
67
+ router.get('/commit', async (req, res) => {
68
+ try {
69
+ const projectPath = resolveProjectPath(req.params.projectId);
70
+ const commitHash = await (0, gitVersionService_1.getCurrentCommitHash)(projectPath);
71
+ res.json({ commitHash });
72
+ }
73
+ catch (error) {
74
+ console.error('[GitVersion] Error getting current commit hash:', error.message);
75
+ res.status(500).json({ error: error.message || 'Failed to get current commit hash' });
76
+ }
77
+ });
78
+ // ========================================
62
79
  // POST /api/projects/:projectId/versions
63
80
  // Create a new version
64
81
  // Body: { message: string }
@@ -66,6 +83,11 @@ router.get('/status', async (req, res) => {
66
83
  router.post('/', async (req, res) => {
67
84
  try {
68
85
  const projectPath = resolveProjectPath(req.params.projectId);
86
+ console.log('[GitVersion] createVersion request', {
87
+ projectId: req.params.projectId,
88
+ decodedProjectId: decodeURIComponent(req.params.projectId),
89
+ resolvedProjectPath: projectPath,
90
+ });
69
91
  const { message } = req.body;
70
92
  if (!message || typeof message !== 'string' || !message.trim()) {
71
93
  return res.status(400).json({ error: 'Version message is required' });
@@ -86,6 +108,33 @@ router.post('/', async (req, res) => {
86
108
  }
87
109
  });
88
110
  // ========================================
111
+ // POST /api/projects/:projectId/versions/tag
112
+ // Create a tag for current HEAD without creating a commit
113
+ // Body: { message?: string }
114
+ // ========================================
115
+ router.post('/tag', async (req, res) => {
116
+ try {
117
+ const projectPath = resolveProjectPath(req.params.projectId);
118
+ const { tag, message } = req.body;
119
+ if (!tag || typeof tag !== 'string' || !tag.trim()) {
120
+ return res.status(400).json({ error: 'Tag is required' });
121
+ }
122
+ if (message !== undefined && typeof message !== 'string') {
123
+ return res.status(400).json({ error: 'Tag message must be a string' });
124
+ }
125
+ const result = await (0, gitVersionService_1.createTagOnly)(projectPath, tag.trim(), message?.trim());
126
+ console.log(`[GitVersion] Created tag ${result.tag} for project: ${projectPath}`);
127
+ res.json({
128
+ success: true,
129
+ version: result,
130
+ });
131
+ }
132
+ catch (error) {
133
+ console.error('[GitVersion] Error creating tag:', error.message);
134
+ res.status(500).json({ error: error.message || 'Failed to create tag' });
135
+ }
136
+ });
137
+ // ========================================
89
138
  // POST /api/projects/:projectId/versions/checkout
90
139
  // Switch to a specific version
91
140
  // Body: { tag: string, force?: boolean }
@@ -121,6 +170,36 @@ router.post('/checkout', async (req, res) => {
121
170
  }
122
171
  });
123
172
  // ========================================
173
+ // POST /api/projects/:projectId/versions/rollback
174
+ // Rollback to a specific commit (creates a new commit + tag matching that state)
175
+ // Body: { hash: string }
176
+ // ========================================
177
+ router.post('/rollback', async (req, res) => {
178
+ try {
179
+ const projectPath = resolveProjectPath(req.params.projectId);
180
+ const { hash } = req.body;
181
+ if (!hash || typeof hash !== 'string') {
182
+ return res.status(400).json({ error: 'Commit hash is required' });
183
+ }
184
+ const result = await (0, gitVersionService_1.rollbackVersion)(projectPath, hash.trim());
185
+ console.log(`[GitVersion] Rolled back to commit ${hash} → new version ${result.tag} for project: ${projectPath}`);
186
+ res.json({
187
+ success: true,
188
+ version: result,
189
+ });
190
+ }
191
+ catch (error) {
192
+ console.error('[GitVersion] Error rolling back version:', error.message);
193
+ if (error.message.includes('not found')) {
194
+ return res.status(404).json({ error: error.message });
195
+ }
196
+ if (error.message.includes('Rollback failed')) {
197
+ return res.status(409).json({ error: error.message });
198
+ }
199
+ res.status(500).json({ error: error.message || 'Failed to rollback version' });
200
+ }
201
+ });
202
+ // ========================================
124
203
  // DELETE /api/projects/:projectId/versions/:tag
125
204
  // Delete a version tag
126
205
  // ========================================
@@ -1 +1 @@
1
- {"version":3,"file":"gitVersions.js","sourceRoot":"","sources":["../../src/routes/gitVersions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"gitVersions.js","sourceRoot":"","sources":["../../src/routes/gitVersions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * Marketplace Skills Routes
3
+ *
4
+ * Provides skill-level management API for marketplace plugins.
5
+ * Skills are grouped by plugin (as categories) and can be individually
6
+ * enabled/disabled.
7
+ *
8
+ * API Endpoints:
9
+ * - GET /api/marketplace-skills - List all skills grouped by plugin
10
+ * - POST /api/marketplace-skills/toggle - Toggle a single skill
11
+ * - POST /api/marketplace-skills/batch - Batch toggle multiple skills
12
+ * - POST /api/marketplace-skills/group/:marketplaceName/:pluginName/enable-all - Enable all skills in a group
13
+ * - POST /api/marketplace-skills/group/:marketplaceName/:pluginName/disable-all - Disable all skills in a group
14
+ */
15
+ import express from 'express';
16
+ declare const router: express.Router;
17
+ export default router;
18
+ //# sourceMappingURL=marketplaceSkills.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marketplaceSkills.d.ts","sourceRoot":"","sources":["../../src/routes/marketplaceSkills.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,OAAO,MAAM,SAAS,CAAC;AAG9B,QAAA,MAAM,MAAM,EAAE,OAAO,CAAC,MAAyB,CAAC;AAiLhD,eAAe,MAAM,CAAC"}
@@ -0,0 +1,190 @@
1
+ "use strict";
2
+ /**
3
+ * Marketplace Skills Routes
4
+ *
5
+ * Provides skill-level management API for marketplace plugins.
6
+ * Skills are grouped by plugin (as categories) and can be individually
7
+ * enabled/disabled.
8
+ *
9
+ * API Endpoints:
10
+ * - GET /api/marketplace-skills - List all skills grouped by plugin
11
+ * - POST /api/marketplace-skills/toggle - Toggle a single skill
12
+ * - POST /api/marketplace-skills/batch - Batch toggle multiple skills
13
+ * - POST /api/marketplace-skills/group/:marketplaceName/:pluginName/enable-all - Enable all skills in a group
14
+ * - POST /api/marketplace-skills/group/:marketplaceName/:pluginName/disable-all - Disable all skills in a group
15
+ */
16
+ var __importDefault = (this && this.__importDefault) || function (mod) {
17
+ return (mod && mod.__esModule) ? mod : { "default": mod };
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ const express_1 = __importDefault(require("express"));
21
+ const marketplaceSkillService_1 = require("../services/marketplaceSkillService");
22
+ const router = express_1.default.Router();
23
+ /**
24
+ * GET /api/marketplace-skills
25
+ * List all marketplace skills grouped by plugin.
26
+ *
27
+ * Query params:
28
+ * - search: Optional search string to filter skills
29
+ *
30
+ * Response: {
31
+ * totalCount: number,
32
+ * enabledCount: number,
33
+ * groups: [{
34
+ * name: string,
35
+ * pluginName: string,
36
+ * marketplaceName: string,
37
+ * description?: string,
38
+ * totalCount: number,
39
+ * enabledCount: number,
40
+ * skills: [{
41
+ * id: string, // "marketplaceName/pluginName/skillName"
42
+ * name: string,
43
+ * description?: string,
44
+ * enabled: boolean,
45
+ * pluginName: string,
46
+ * marketplaceName: string,
47
+ * }]
48
+ * }]
49
+ * }
50
+ */
51
+ router.get('/', async (req, res) => {
52
+ try {
53
+ const { search } = req.query;
54
+ const result = await marketplaceSkillService_1.marketplaceSkillService.getGroupedSkills(search);
55
+ res.json(result);
56
+ }
57
+ catch (error) {
58
+ console.error('Failed to get marketplace skills:', error);
59
+ res.status(500).json({
60
+ error: 'Failed to retrieve marketplace skills',
61
+ details: error instanceof Error ? error.message : 'Unknown error',
62
+ });
63
+ }
64
+ });
65
+ /**
66
+ * POST /api/marketplace-skills/toggle
67
+ * Toggle a single skill's enabled state.
68
+ *
69
+ * Body: {
70
+ * skillId: string, // "marketplaceName/pluginName/skillName"
71
+ * enabled: boolean,
72
+ * }
73
+ *
74
+ * Response: {
75
+ * success: boolean,
76
+ * skillId: string,
77
+ * enabled: boolean,
78
+ * error?: string,
79
+ * }
80
+ */
81
+ router.post('/toggle', async (req, res) => {
82
+ try {
83
+ const { skillId, enabled } = req.body;
84
+ if (!skillId || typeof enabled !== 'boolean') {
85
+ return res.status(400).json({
86
+ error: 'Missing required fields: skillId (string) and enabled (boolean)',
87
+ });
88
+ }
89
+ const result = await marketplaceSkillService_1.marketplaceSkillService.toggleSkill(skillId, enabled);
90
+ if (!result.success) {
91
+ return res.status(400).json(result);
92
+ }
93
+ res.json(result);
94
+ }
95
+ catch (error) {
96
+ console.error('Failed to toggle marketplace skill:', error);
97
+ res.status(500).json({
98
+ error: 'Failed to toggle skill',
99
+ details: error instanceof Error ? error.message : 'Unknown error',
100
+ });
101
+ }
102
+ });
103
+ /**
104
+ * POST /api/marketplace-skills/batch
105
+ * Batch toggle multiple skills.
106
+ *
107
+ * Body: {
108
+ * actions: [{
109
+ * skillId: string,
110
+ * enabled: boolean,
111
+ * }]
112
+ * }
113
+ *
114
+ * Response: {
115
+ * results: [{ success, skillId, enabled, error? }],
116
+ * successCount: number,
117
+ * failCount: number,
118
+ * }
119
+ */
120
+ router.post('/batch', async (req, res) => {
121
+ try {
122
+ const { actions } = req.body;
123
+ if (!actions || !Array.isArray(actions)) {
124
+ return res.status(400).json({
125
+ error: 'Missing required field: actions (array of { skillId, enabled })',
126
+ });
127
+ }
128
+ // Validate each action
129
+ for (const action of actions) {
130
+ if (!action.skillId || typeof action.enabled !== 'boolean') {
131
+ return res.status(400).json({
132
+ error: 'Each action must have skillId (string) and enabled (boolean)',
133
+ });
134
+ }
135
+ }
136
+ const result = await marketplaceSkillService_1.marketplaceSkillService.batchToggle({ actions });
137
+ res.json(result);
138
+ }
139
+ catch (error) {
140
+ console.error('Failed to batch toggle marketplace skills:', error);
141
+ res.status(500).json({
142
+ error: 'Failed to batch toggle skills',
143
+ details: error instanceof Error ? error.message : 'Unknown error',
144
+ });
145
+ }
146
+ });
147
+ /**
148
+ * POST /api/marketplace-skills/group/:marketplaceName/:pluginName/enable-all
149
+ * Enable all skills in a plugin group.
150
+ */
151
+ router.post('/group/:marketplaceName/:pluginName/enable-all', async (req, res) => {
152
+ try {
153
+ const { marketplaceName, pluginName } = req.params;
154
+ const result = await marketplaceSkillService_1.marketplaceSkillService.enableAllInGroup(marketplaceName, pluginName);
155
+ res.json({
156
+ ...result,
157
+ message: `Enabled ${result.successCount} skills in ${pluginName}`,
158
+ });
159
+ }
160
+ catch (error) {
161
+ console.error('Failed to enable all skills in group:', error);
162
+ res.status(500).json({
163
+ error: 'Failed to enable all skills in group',
164
+ details: error instanceof Error ? error.message : 'Unknown error',
165
+ });
166
+ }
167
+ });
168
+ /**
169
+ * POST /api/marketplace-skills/group/:marketplaceName/:pluginName/disable-all
170
+ * Disable all skills in a plugin group.
171
+ */
172
+ router.post('/group/:marketplaceName/:pluginName/disable-all', async (req, res) => {
173
+ try {
174
+ const { marketplaceName, pluginName } = req.params;
175
+ const result = await marketplaceSkillService_1.marketplaceSkillService.disableAllInGroup(marketplaceName, pluginName);
176
+ res.json({
177
+ ...result,
178
+ message: `Disabled ${result.successCount} skills in ${pluginName}`,
179
+ });
180
+ }
181
+ catch (error) {
182
+ console.error('Failed to disable all skills in group:', error);
183
+ res.status(500).json({
184
+ error: 'Failed to disable all skills in group',
185
+ details: error instanceof Error ? error.message : 'Unknown error',
186
+ });
187
+ }
188
+ });
189
+ exports.default = router;
190
+ //# sourceMappingURL=marketplaceSkills.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"marketplaceSkills.js","sourceRoot":"","sources":["../../src/routes/marketplaceSkills.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/routes/plugins.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAiB9B,QAAA,MAAM,MAAM,EAAE,OAAO,CAAC,MAAyB,CAAC;AAorBhD,eAAe,MAAM,CAAC"}
1
+ {"version":3,"file":"plugins.d.ts","sourceRoot":"","sources":["../../src/routes/plugins.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,SAAS,CAAC;AAkB9B,QAAA,MAAM,MAAM,EAAE,OAAO,CAAC,MAAyB,CAAC;AA8tBhD,eAAe,MAAM,CAAC"}
package/routes/plugins.js CHANGED
@@ -10,8 +10,9 @@ const pluginParser_1 = require("../services/pluginParser");
10
10
  const pluginPaths_1 = require("../services/pluginPaths");
11
11
  const agentImporter_1 = require("../services/agentImporter");
12
12
  const marketplaceUpdateService_1 = require("../services/marketplaceUpdateService");
13
+ const builtinMarketplaceService_1 = require("../services/builtinMarketplaceService");
13
14
  // Valid marketplace types
14
- const VALID_MARKETPLACE_TYPES = ['git', 'github', 'local', 'cos', 'archive'];
15
+ const VALID_MARKETPLACE_TYPES = ['git', 'github', 'local', 'cos'];
15
16
  const router = express_1.default.Router();
16
17
  // ============================================
17
18
  // Marketplace Routes
@@ -57,12 +58,8 @@ router.post('/marketplaces', async (req, res) => {
57
58
  error: 'COS marketplace requires a source URL',
58
59
  });
59
60
  }
60
- // Validate archive URL
61
- if (request.type === 'archive' && !request.source.startsWith('http')) {
62
- return res.status(400).json({
63
- error: 'Archive marketplace requires a valid HTTP/HTTPS URL',
64
- });
65
- }
61
+ // Note: archive type has been removed. COS downloads should be handled
62
+ // externally (e.g., by as-mate) and treated as local type.
66
63
  const result = await pluginInstaller_1.pluginInstaller.addMarketplace(request);
67
64
  if (!result.success) {
68
65
  return res.status(400).json({
@@ -169,6 +166,50 @@ router.get('/marketplaces/check-all-updates', async (req, res) => {
169
166
  });
170
167
  }
171
168
  });
169
+ /**
170
+ * POST /api/plugins/marketplaces/reinitialize-builtin
171
+ * Re-run builtin marketplace initialization (same as startup flow).
172
+ * Uses file lock to prevent concurrent runs.
173
+ * Called by as-mate after COS sync completes, or manually.
174
+ *
175
+ * Optional body: { builtinPaths: string }
176
+ * - If provided, uses this path instead of BUILTIN_MARKETPLACES env var.
177
+ * - This allows as-mate to pass the current marketplace directory path,
178
+ * which may differ from what was set at process startup time.
179
+ */
180
+ router.post('/marketplaces/reinitialize-builtin', async (req, res) => {
181
+ try {
182
+ const builtinPaths = req.body?.builtinPaths;
183
+ const result = await (0, builtinMarketplaceService_1.syncBuiltinMarketplaces)(builtinPaths);
184
+ if (!result.success && result.error === 'Sync already in progress') {
185
+ res.status(409).json(result); // Conflict
186
+ return;
187
+ }
188
+ res.json(result);
189
+ }
190
+ catch (error) {
191
+ console.error('Failed to reinitialize builtin marketplaces:', error);
192
+ res.status(500).json({
193
+ error: 'Failed to reinitialize builtin marketplaces',
194
+ details: error instanceof Error ? error.message : 'Unknown error',
195
+ });
196
+ }
197
+ });
198
+ /**
199
+ * GET /api/plugin-marketplaces/builtin-status
200
+ * Get the current status of builtin marketplace sync
201
+ */
202
+ router.get('/marketplaces/builtin-status', async (req, res) => {
203
+ try {
204
+ const status = (0, builtinMarketplaceService_1.getBuiltinMarketplaceStatus)();
205
+ res.json(status);
206
+ }
207
+ catch (error) {
208
+ res.status(500).json({
209
+ error: 'Failed to get builtin marketplace status',
210
+ });
211
+ }
212
+ });
172
213
  /**
173
214
  * GET /api/plugin-marketplaces/auto-update-list
174
215
  * Get list of marketplaces with auto-update enabled