agentstudio 0.3.1 → 0.3.2

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 (1366) hide show
  1. package/README.md +24 -176
  2. package/bin/agentstudio.d.ts +3 -0
  3. package/bin/agentstudio.d.ts.map +1 -0
  4. package/bin/agentstudio.js +427 -0
  5. package/bin/agentstudio.js.map +1 -0
  6. package/bin/serviceManager.d.ts +16 -0
  7. package/bin/serviceManager.d.ts.map +1 -0
  8. package/bin/serviceManager.js +434 -0
  9. package/bin/serviceManager.js.map +1 -0
  10. package/config/index.d.ts +74 -0
  11. package/config/index.d.ts.map +1 -0
  12. package/config/index.js +166 -0
  13. package/config/index.js.map +1 -0
  14. package/config/paths.d.ts +81 -0
  15. package/config/paths.d.ts.map +1 -0
  16. package/config/paths.js +98 -0
  17. package/config/paths.js.map +1 -0
  18. package/config/sdkConfig.d.ts +62 -0
  19. package/config/sdkConfig.d.ts.map +1 -0
  20. package/config/sdkConfig.js +157 -0
  21. package/config/sdkConfig.js.map +1 -0
  22. package/index.d.ts +4 -0
  23. package/index.d.ts.map +1 -0
  24. package/index.js +428 -0
  25. package/index.js.map +1 -0
  26. package/jobs/taskTimeoutMonitor.d.ts +25 -0
  27. package/jobs/taskTimeoutMonitor.d.ts.map +1 -0
  28. package/jobs/taskTimeoutMonitor.js +94 -0
  29. package/jobs/taskTimeoutMonitor.js.map +1 -0
  30. package/middleware/a2aAuth.d.ts +38 -0
  31. package/middleware/a2aAuth.d.ts.map +1 -0
  32. package/middleware/a2aAuth.js +134 -0
  33. package/middleware/a2aAuth.js.map +1 -0
  34. package/middleware/auth.d.ts +9 -0
  35. package/middleware/auth.d.ts.map +1 -0
  36. package/middleware/auth.js +35 -0
  37. package/middleware/auth.js.map +1 -0
  38. package/middleware/httpsOnly.d.ts +75 -0
  39. package/middleware/httpsOnly.d.ts.map +1 -0
  40. package/middleware/httpsOnly.js +189 -0
  41. package/middleware/httpsOnly.js.map +1 -0
  42. package/middleware/rateLimiting.d.ts +37 -0
  43. package/middleware/rateLimiting.d.ts.map +1 -0
  44. package/middleware/rateLimiting.js +118 -0
  45. package/middleware/rateLimiting.js.map +1 -0
  46. package/package.json +49 -38
  47. package/public/assets/AgentsPage-ChTeSZQM.js +10 -0
  48. package/public/assets/Button-Bd_ElvlE.js +1 -0
  49. package/public/assets/ChatPage-4A05aP3x.js +471 -0
  50. package/public/assets/ChatPage-BvQmXfcP.css +1 -0
  51. package/public/assets/CommandForm-C8RL-p7h.js +7 -0
  52. package/public/assets/CommandsPage-BMqBL5Ss.js +1 -0
  53. package/public/assets/DashboardPage-C13k8VA6.js +1 -0
  54. package/public/assets/FileBrowser-BbQchc_7.js +6 -0
  55. package/public/assets/FileExplorer-DFQ7ynXa.js +1 -0
  56. package/public/assets/GeneralSettingsPage-D1tdeoEo.js +1 -0
  57. package/public/assets/LandingPage-B4lDvIdq.js +1 -0
  58. package/public/assets/LoginPage-BZckHH8M.js +16 -0
  59. package/public/assets/McpAdminSettingsPage-KVRY0MqF.js +7 -0
  60. package/public/assets/McpPage-DztfuUC4.js +20 -0
  61. package/public/assets/MemorySettingsPage-Cn-HSyWt.js +1 -0
  62. package/public/assets/PluginsPage-BGWVTQOf.js +1 -0
  63. package/public/assets/ProjectSelector-GmS-1-C-.js +1 -0
  64. package/public/assets/ProjectsPage-v58WHxJc.js +21 -0
  65. package/public/assets/ScheduledTasksPage-DKG8bjzx.js +1 -0
  66. package/public/assets/SettingsLayout-_m4X7JF9.js +1 -0
  67. package/public/assets/SkillsPage-CZAxG8SU.js +18 -0
  68. package/public/assets/SubagentForm-CSRBsxUE.js +7 -0
  69. package/public/assets/SubagentsPage-DW0COnVY.js +1 -0
  70. package/public/assets/SystemInfoPage-ogvHiOrs.js +1 -0
  71. package/public/assets/TelemetrySettingsPage-r9NhMxSu.js +1 -0
  72. package/public/assets/ToastTestPage-DJBKYs9_.js +1 -0
  73. package/public/assets/ToolsList-Ci2lqPin.js +1 -0
  74. package/public/assets/UnifiedToolSelector-CKjY_qjS.js +1 -0
  75. package/public/assets/VersionSettingsPage-DTIgBhQ_.js +5 -0
  76. package/public/assets/WebSocketTunnelPage-C3mRJxS2.js +1 -0
  77. package/public/assets/_basePickBy-BTSO2Pkt.js +1 -0
  78. package/public/assets/_baseUniq-D89fR3NG.js +1 -0
  79. package/public/assets/agents-DG431Wop.js +1 -0
  80. package/public/assets/agents-DwCY2K8p.css +1 -0
  81. package/public/assets/arc-XgUOTLxV.js +1 -0
  82. package/public/assets/architectureDiagram-VXUJARFQ-DrSsIdf2.js +36 -0
  83. package/public/assets/blockDiagram-VD42YOAC-DnsJI7gJ.js +122 -0
  84. package/public/assets/c4Diagram-YG6GDRKO-Dcw9Cs9G.js +10 -0
  85. package/public/assets/channel-CUQXq8tY.js +1 -0
  86. package/public/assets/chunk-4BX2VUAB-CuAIZ2Cr.js +1 -0
  87. package/public/assets/chunk-55IACEB6-CO5u6wMx.js +1 -0
  88. package/public/assets/chunk-B4BG7PRW-C4JF4UyZ.js +165 -0
  89. package/public/assets/chunk-DI55MBZ5-bfTEspLo.js +220 -0
  90. package/public/assets/chunk-FMBD7UC4-BN14QGw5.js +15 -0
  91. package/public/assets/chunk-QN33PNHL-xWN6BqD9.js +1 -0
  92. package/public/assets/chunk-QZHKN3VN-5-grYB4H.js +1 -0
  93. package/public/assets/chunk-TZMSLE5B-C2vW6017.js +1 -0
  94. package/public/assets/classDiagram-2ON5EDUG-Ivmc_BXS.js +1 -0
  95. package/public/assets/classDiagram-v2-WZHVMYZB-Ivmc_BXS.js +1 -0
  96. package/public/assets/clone-DTBJjony.js +1 -0
  97. package/public/assets/cose-bilkent-S5V4N54A-D4tCdQ5W.js +1 -0
  98. package/public/assets/cytoscape.esm-DtBltrT8.js +331 -0
  99. package/public/assets/dagre-6UL2VRFP-BGaPpMOL.js +4 -0
  100. package/public/assets/data-structures-C0h9Oap1.js +27 -0
  101. package/public/assets/dateFormat-CXa8VnEC.js +1 -0
  102. package/public/assets/defaultLocale-C4B-KCzX.js +1 -0
  103. package/public/assets/diagram-PSM6KHXK-B5MJHcOR.js +24 -0
  104. package/public/assets/diagram-QEK2KX5R-W49QXse-.js +43 -0
  105. package/public/assets/diagram-S2PKOQOG-J_VMf6C2.js +24 -0
  106. package/public/assets/erDiagram-Q2GNP2WA-CgK8jP0L.js +60 -0
  107. package/public/assets/flowDiagram-NV44I4VS-CXavqXYu.js +162 -0
  108. package/public/assets/ganttDiagram-LVOFAZNH-DdA4uXow.js +267 -0
  109. package/public/assets/gitGraphDiagram-NY62KEGX-BHeHA2_6.js +65 -0
  110. package/public/assets/graph-CkRZhtax.js +1 -0
  111. package/public/assets/index-BgR-BTTw.css +1 -0
  112. package/public/assets/index-UPEozv-J.js +297 -0
  113. package/public/assets/infoDiagram-F6ZHWCRC-Cefi13nY.js +2 -0
  114. package/public/assets/init-Gi6I4Gst.js +1 -0
  115. package/public/assets/journeyDiagram-XKPGCS4Q-CAfRMHa8.js +139 -0
  116. package/public/assets/kanban-definition-3W4ZIXB7-DW5IlHJE.js +89 -0
  117. package/public/assets/katex-qrhCpa0F.js +261 -0
  118. package/public/assets/layout-nYP7m9RV.js +1 -0
  119. package/public/assets/linear--koZbfLt.js +1 -0
  120. package/public/assets/mindmap-definition-VGOIOE7T-BIt3RkSU.js +68 -0
  121. package/public/assets/monaco-editor-DHKm5-VF.js +19 -0
  122. package/public/assets/ordinal-Cboi1Yqb.js +1 -0
  123. package/public/assets/pieDiagram-ADFJNKIX-Dgv5DD0S.js +30 -0
  124. package/public/assets/quadrantDiagram-AYHSOK5B-BDAI4LQZ.js +7 -0
  125. package/public/assets/requirementDiagram-UZGBJVZJ-BtlBBsGB.js +64 -0
  126. package/public/assets/sankeyDiagram-TZEHDZUN-C5CTA-m2.js +10 -0
  127. package/public/assets/sequenceDiagram-WL72ISMW-Zxi4nOIv.js +145 -0
  128. package/public/assets/stateDiagram-FKZM4ZOC-XoPlf0Vy.js +1 -0
  129. package/public/assets/stateDiagram-v2-4FDKWEC3-r4Duovdx.js +1 -0
  130. package/public/assets/syntax-highlighting-CnREyncB.js +24 -0
  131. package/public/assets/table-BWrnBcPF.js +1 -0
  132. package/public/assets/timeline-definition-IT6M3QCI-UHDY1Jjf.js +61 -0
  133. package/public/assets/tools-C0JOzoE_.js +1 -0
  134. package/public/assets/treemap-KMMF4GRG-CBW5iWMJ.js +128 -0
  135. package/public/assets/ui-components-CRCmgMKc.js +646 -0
  136. package/public/assets/useAgents-Bp5Ry-Dk.js +2 -0
  137. package/public/assets/useClaudeVersions-DYM2HCGW.js +1 -0
  138. package/public/assets/useCommands-B0s3JzZs.js +1 -0
  139. package/public/assets/useProjects-DuCnMeYt.js +1 -0
  140. package/public/assets/useSessions-EknKfdIv.js +1 -0
  141. package/public/assets/xychartDiagram-PRI3JC2R-C2ylYAJK.js +7 -0
  142. package/public/index.html +70 -0
  143. package/routes/__tests__/a2a.integration.test.d.ts +11 -0
  144. package/routes/__tests__/a2a.integration.test.d.ts.map +1 -0
  145. package/routes/__tests__/a2a.integration.test.js +314 -0
  146. package/routes/__tests__/a2a.integration.test.js.map +1 -0
  147. package/routes/__tests__/a2a.test.d.ts +6 -0
  148. package/routes/__tests__/a2a.test.d.ts.map +1 -0
  149. package/routes/__tests__/a2a.test.js +622 -0
  150. package/routes/__tests__/a2a.test.js.map +1 -0
  151. package/routes/__tests__/agents.test.d.ts +6 -0
  152. package/routes/__tests__/agents.test.d.ts.map +1 -0
  153. package/routes/__tests__/agents.test.js +315 -0
  154. package/routes/__tests__/agents.test.js.map +1 -0
  155. package/routes/__tests__/sessions.test.d.ts +7 -0
  156. package/routes/__tests__/sessions.test.d.ts.map +1 -0
  157. package/routes/__tests__/sessions.test.js +330 -0
  158. package/routes/__tests__/sessions.test.js.map +1 -0
  159. package/routes/a2a.d.ts +18 -0
  160. package/routes/a2a.d.ts.map +1 -0
  161. package/routes/a2a.js +718 -0
  162. package/routes/a2a.js.map +1 -0
  163. package/routes/a2a.streaming.test.d.ts +2 -0
  164. package/routes/a2a.streaming.test.d.ts.map +1 -0
  165. package/routes/a2a.streaming.test.js +167 -0
  166. package/routes/a2a.streaming.test.js.map +1 -0
  167. package/routes/a2aManagement.d.ts +21 -0
  168. package/routes/a2aManagement.d.ts.map +1 -0
  169. package/routes/a2aManagement.js +466 -0
  170. package/routes/a2aManagement.js.map +1 -0
  171. package/routes/agents.d.ts +4 -0
  172. package/routes/agents.d.ts.map +1 -0
  173. package/routes/agents.js +1026 -0
  174. package/routes/agents.js.map +1 -0
  175. package/routes/auth.d.ts +4 -0
  176. package/routes/auth.d.ts.map +1 -0
  177. package/routes/auth.js +135 -0
  178. package/routes/auth.js.map +1 -0
  179. package/routes/cloudflareTunnel.d.ts +4 -0
  180. package/routes/cloudflareTunnel.d.ts.map +1 -0
  181. package/routes/cloudflareTunnel.js +250 -0
  182. package/routes/cloudflareTunnel.js.map +1 -0
  183. package/routes/commands.d.ts +4 -0
  184. package/routes/commands.d.ts.map +1 -0
  185. package/routes/commands.js +481 -0
  186. package/routes/commands.js.map +1 -0
  187. package/routes/config.d.ts +4 -0
  188. package/routes/config.d.ts.map +1 -0
  189. package/routes/config.js +211 -0
  190. package/routes/config.js.map +1 -0
  191. package/routes/files.d.ts +4 -0
  192. package/routes/files.d.ts.map +1 -0
  193. package/routes/files.js +361 -0
  194. package/routes/files.js.map +1 -0
  195. package/routes/mcp.d.ts +26 -0
  196. package/routes/mcp.d.ts.map +1 -0
  197. package/routes/mcp.js +795 -0
  198. package/routes/mcp.js.map +1 -0
  199. package/routes/mcpAdmin.d.ts +16 -0
  200. package/routes/mcpAdmin.d.ts.map +1 -0
  201. package/routes/mcpAdmin.js +308 -0
  202. package/routes/mcpAdmin.js.map +1 -0
  203. package/routes/mcpAdminManagement.d.ts +17 -0
  204. package/routes/mcpAdminManagement.d.ts.map +1 -0
  205. package/routes/mcpAdminManagement.js +345 -0
  206. package/routes/mcpAdminManagement.js.map +1 -0
  207. package/routes/media.d.ts +5 -0
  208. package/routes/media.d.ts.map +1 -0
  209. package/routes/media.js +127 -0
  210. package/routes/media.js.map +1 -0
  211. package/routes/mediaAuth.d.ts +8 -0
  212. package/routes/mediaAuth.d.ts.map +1 -0
  213. package/routes/mediaAuth.js +136 -0
  214. package/routes/mediaAuth.js.map +1 -0
  215. package/routes/network.d.ts +9 -0
  216. package/routes/network.d.ts.map +1 -0
  217. package/routes/network.js +60 -0
  218. package/routes/network.js.map +1 -0
  219. package/routes/plugins.d.ts +4 -0
  220. package/routes/plugins.d.ts.map +1 -0
  221. package/routes/plugins.js +339 -0
  222. package/routes/plugins.js.map +1 -0
  223. package/routes/projects.d.ts +4 -0
  224. package/routes/projects.d.ts.map +1 -0
  225. package/routes/projects.js +1000 -0
  226. package/routes/projects.js.map +1 -0
  227. package/routes/scheduledTasks.d.ts +9 -0
  228. package/routes/scheduledTasks.d.ts.map +1 -0
  229. package/routes/scheduledTasks.js +386 -0
  230. package/routes/scheduledTasks.js.map +1 -0
  231. package/routes/sessions.d.ts +4 -0
  232. package/routes/sessions.d.ts.map +1 -0
  233. package/routes/sessions.js +966 -0
  234. package/routes/sessions.js.map +1 -0
  235. package/routes/settings.d.ts +4 -0
  236. package/routes/settings.d.ts.map +1 -0
  237. package/routes/settings.js +500 -0
  238. package/routes/settings.js.map +1 -0
  239. package/routes/skills.d.ts +4 -0
  240. package/routes/skills.d.ts.map +1 -0
  241. package/routes/skills.js +272 -0
  242. package/routes/skills.js.map +1 -0
  243. package/routes/slack.d.ts +10 -0
  244. package/routes/slack.d.ts.map +1 -0
  245. package/routes/slack.js +189 -0
  246. package/routes/slack.js.map +1 -0
  247. package/routes/slides.d.ts +4 -0
  248. package/routes/slides.d.ts.map +1 -0
  249. package/routes/slides.js +148 -0
  250. package/routes/slides.js.map +1 -0
  251. package/routes/subagents.d.ts +4 -0
  252. package/routes/subagents.d.ts.map +1 -0
  253. package/routes/subagents.js +333 -0
  254. package/routes/subagents.js.map +1 -0
  255. package/routes/taskExecutor.d.ts +9 -0
  256. package/routes/taskExecutor.d.ts.map +1 -0
  257. package/routes/taskExecutor.js +224 -0
  258. package/routes/taskExecutor.js.map +1 -0
  259. package/routes/tunnel.d.ts +10 -0
  260. package/routes/tunnel.d.ts.map +1 -0
  261. package/routes/tunnel.js +296 -0
  262. package/routes/tunnel.js.map +1 -0
  263. package/routes/version.d.ts +4 -0
  264. package/routes/version.d.ts.map +1 -0
  265. package/routes/version.js +222 -0
  266. package/routes/version.js.map +1 -0
  267. package/schemas/a2a.d.ts +946 -0
  268. package/schemas/a2a.d.ts.map +1 -0
  269. package/schemas/a2a.js +316 -0
  270. package/schemas/a2a.js.map +1 -0
  271. package/scripts/postinstall.js +10 -0
  272. package/services/__tests__/pluginInstaller.test.d.ts +5 -0
  273. package/services/__tests__/pluginInstaller.test.d.ts.map +1 -0
  274. package/services/__tests__/pluginInstaller.test.js +290 -0
  275. package/services/__tests__/pluginInstaller.test.js.map +1 -0
  276. package/services/__tests__/pluginParser.test.d.ts +5 -0
  277. package/services/__tests__/pluginParser.test.d.ts.map +1 -0
  278. package/services/__tests__/pluginParser.test.js +272 -0
  279. package/services/__tests__/pluginParser.test.js.map +1 -0
  280. package/services/__tests__/pluginPaths.test.d.ts +5 -0
  281. package/services/__tests__/pluginPaths.test.d.ts.map +1 -0
  282. package/services/__tests__/pluginPaths.test.js +221 -0
  283. package/services/__tests__/pluginPaths.test.js.map +1 -0
  284. package/services/__tests__/pluginScanner.test.d.ts +5 -0
  285. package/services/__tests__/pluginScanner.test.d.ts.map +1 -0
  286. package/services/__tests__/pluginScanner.test.js +272 -0
  287. package/services/__tests__/pluginScanner.test.js.map +1 -0
  288. package/services/__tests__/pluginSymlink.test.d.ts +5 -0
  289. package/services/__tests__/pluginSymlink.test.d.ts.map +1 -0
  290. package/services/__tests__/pluginSymlink.test.js +318 -0
  291. package/services/__tests__/pluginSymlink.test.js.map +1 -0
  292. package/services/__tests__/projectMetadataStorage.test.d.ts +5 -0
  293. package/services/__tests__/projectMetadataStorage.test.d.ts.map +1 -0
  294. package/services/__tests__/projectMetadataStorage.test.js +154 -0
  295. package/services/__tests__/projectMetadataStorage.test.js.map +1 -0
  296. package/services/__tests__/sessionConcurrency.test.d.ts +7 -0
  297. package/services/__tests__/sessionConcurrency.test.d.ts.map +1 -0
  298. package/services/__tests__/sessionConcurrency.test.js +110 -0
  299. package/services/__tests__/sessionConcurrency.test.js.map +1 -0
  300. package/services/__tests__/slackAIService.test.d.ts +5 -0
  301. package/services/__tests__/slackAIService.test.d.ts.map +1 -0
  302. package/services/__tests__/slackAIService.test.js +479 -0
  303. package/services/__tests__/slackAIService.test.js.map +1 -0
  304. package/services/__tests__/slackThreadMapper.test.d.ts +5 -0
  305. package/services/__tests__/slackThreadMapper.test.d.ts.map +1 -0
  306. package/services/__tests__/slackThreadMapper.test.js +194 -0
  307. package/services/__tests__/slackThreadMapper.test.js.map +1 -0
  308. package/services/a2a/__tests__/a2aClientTool.integration.test.d.ts +6 -0
  309. package/services/a2a/__tests__/a2aClientTool.integration.test.d.ts.map +1 -0
  310. package/services/a2a/__tests__/a2aClientTool.integration.test.js +264 -0
  311. package/services/a2a/__tests__/a2aClientTool.integration.test.js.map +1 -0
  312. package/services/a2a/__tests__/a2aClientTool.test.d.ts +6 -0
  313. package/services/a2a/__tests__/a2aClientTool.test.d.ts.map +1 -0
  314. package/services/a2a/__tests__/a2aClientTool.test.js +592 -0
  315. package/services/a2a/__tests__/a2aClientTool.test.js.map +1 -0
  316. package/services/a2a/__tests__/a2aConfigService.test.d.ts +6 -0
  317. package/services/a2a/__tests__/a2aConfigService.test.d.ts.map +1 -0
  318. package/services/a2a/__tests__/a2aConfigService.test.js +431 -0
  319. package/services/a2a/__tests__/a2aConfigService.test.js.map +1 -0
  320. package/services/a2a/__tests__/a2aConfigServicePath.test.d.ts +2 -0
  321. package/services/a2a/__tests__/a2aConfigServicePath.test.d.ts.map +1 -0
  322. package/services/a2a/__tests__/a2aConfigServicePath.test.js +49 -0
  323. package/services/a2a/__tests__/a2aConfigServicePath.test.js.map +1 -0
  324. package/services/a2a/__tests__/a2aSdkMcp.test.d.ts +10 -0
  325. package/services/a2a/__tests__/a2aSdkMcp.test.d.ts.map +1 -0
  326. package/services/a2a/__tests__/a2aSdkMcp.test.js +239 -0
  327. package/services/a2a/__tests__/a2aSdkMcp.test.js.map +1 -0
  328. package/services/a2a/__tests__/agentCardService.test.d.ts +6 -0
  329. package/services/a2a/__tests__/agentCardService.test.d.ts.map +1 -0
  330. package/services/a2a/__tests__/agentCardService.test.js +292 -0
  331. package/services/a2a/__tests__/agentCardService.test.js.map +1 -0
  332. package/services/a2a/__tests__/apiKeyService.test.d.ts +6 -0
  333. package/services/a2a/__tests__/apiKeyService.test.d.ts.map +1 -0
  334. package/services/a2a/__tests__/apiKeyService.test.js +284 -0
  335. package/services/a2a/__tests__/apiKeyService.test.js.map +1 -0
  336. package/services/a2a/__tests__/buildQueryOptionsIntegration.test.d.ts +2 -0
  337. package/services/a2a/__tests__/buildQueryOptionsIntegration.test.d.ts.map +1 -0
  338. package/services/a2a/__tests__/buildQueryOptionsIntegration.test.js +70 -0
  339. package/services/a2a/__tests__/buildQueryOptionsIntegration.test.js.map +1 -0
  340. package/services/a2a/__tests__/dynamic_config_verification.test.d.ts +2 -0
  341. package/services/a2a/__tests__/dynamic_config_verification.test.d.ts.map +1 -0
  342. package/services/a2a/__tests__/dynamic_config_verification.test.js +67 -0
  343. package/services/a2a/__tests__/dynamic_config_verification.test.js.map +1 -0
  344. package/services/a2a/__tests__/integrateA2AMcpServer.test.d.ts +2 -0
  345. package/services/a2a/__tests__/integrateA2AMcpServer.test.d.ts.map +1 -0
  346. package/services/a2a/__tests__/integrateA2AMcpServer.test.js +112 -0
  347. package/services/a2a/__tests__/integrateA2AMcpServer.test.js.map +1 -0
  348. package/services/a2a/__tests__/taskManager.integration.test.d.ts +7 -0
  349. package/services/a2a/__tests__/taskManager.integration.test.d.ts.map +1 -0
  350. package/services/a2a/__tests__/taskManager.integration.test.js +346 -0
  351. package/services/a2a/__tests__/taskManager.integration.test.js.map +1 -0
  352. package/services/a2a/__tests__/taskManager.test.d.ts +7 -0
  353. package/services/a2a/__tests__/taskManager.test.d.ts.map +1 -0
  354. package/services/a2a/__tests__/taskManager.test.js +423 -0
  355. package/services/a2a/__tests__/taskManager.test.js.map +1 -0
  356. package/services/a2a/__tests__/webhookService.test.d.ts +6 -0
  357. package/services/a2a/__tests__/webhookService.test.d.ts.map +1 -0
  358. package/services/a2a/__tests__/webhookService.test.js +196 -0
  359. package/services/a2a/__tests__/webhookService.test.js.map +1 -0
  360. package/services/a2a/a2aClientTool.d.ts +73 -0
  361. package/services/a2a/a2aClientTool.d.ts.map +1 -0
  362. package/services/a2a/a2aClientTool.js +595 -0
  363. package/services/a2a/a2aClientTool.js.map +1 -0
  364. package/services/a2a/a2aConfigService.d.ts +50 -0
  365. package/services/a2a/a2aConfigService.d.ts.map +1 -0
  366. package/services/a2a/a2aConfigService.js +187 -0
  367. package/services/a2a/a2aConfigService.js.map +1 -0
  368. package/services/a2a/a2aHistoryService.d.ts +32 -0
  369. package/services/a2a/a2aHistoryService.d.ts.map +1 -0
  370. package/services/a2a/a2aHistoryService.js +108 -0
  371. package/services/a2a/a2aHistoryService.js.map +1 -0
  372. package/services/a2a/a2aIntegration.d.ts +10 -0
  373. package/services/a2a/a2aIntegration.d.ts.map +1 -0
  374. package/services/a2a/a2aIntegration.js +42 -0
  375. package/services/a2a/a2aIntegration.js.map +1 -0
  376. package/services/a2a/a2aQueryService.d.ts +71 -0
  377. package/services/a2a/a2aQueryService.d.ts.map +1 -0
  378. package/services/a2a/a2aQueryService.js +209 -0
  379. package/services/a2a/a2aQueryService.js.map +1 -0
  380. package/services/a2a/a2aSdkMcp.d.ts +52 -0
  381. package/services/a2a/a2aSdkMcp.d.ts.map +1 -0
  382. package/services/a2a/a2aSdkMcp.js +188 -0
  383. package/services/a2a/a2aSdkMcp.js.map +1 -0
  384. package/services/a2a/a2aStreamEvents.d.ts +94 -0
  385. package/services/a2a/a2aStreamEvents.d.ts.map +1 -0
  386. package/services/a2a/a2aStreamEvents.js +92 -0
  387. package/services/a2a/a2aStreamEvents.js.map +1 -0
  388. package/services/a2a/agentCardService.d.ts +34 -0
  389. package/services/a2a/agentCardService.d.ts.map +1 -0
  390. package/services/a2a/agentCardService.js +228 -0
  391. package/services/a2a/agentCardService.js.map +1 -0
  392. package/services/a2a/agentMappingService.d.ts +53 -0
  393. package/services/a2a/agentMappingService.d.ts.map +1 -0
  394. package/services/a2a/agentMappingService.js +185 -0
  395. package/services/a2a/agentMappingService.js.map +1 -0
  396. package/services/a2a/apiKeyService.d.ts +101 -0
  397. package/services/a2a/apiKeyService.d.ts.map +1 -0
  398. package/services/a2a/apiKeyService.js +314 -0
  399. package/services/a2a/apiKeyService.js.map +1 -0
  400. package/services/a2a/taskCleanup.d.ts +30 -0
  401. package/services/a2a/taskCleanup.d.ts.map +1 -0
  402. package/services/a2a/taskCleanup.js +184 -0
  403. package/services/a2a/taskCleanup.js.map +1 -0
  404. package/services/a2a/taskManager.d.ts +87 -0
  405. package/services/a2a/taskManager.d.ts.map +1 -0
  406. package/services/a2a/taskManager.js +265 -0
  407. package/services/a2a/taskManager.js.map +1 -0
  408. package/services/a2a/webhookService.d.ts +30 -0
  409. package/services/a2a/webhookService.d.ts.map +1 -0
  410. package/services/a2a/webhookService.js +113 -0
  411. package/services/a2a/webhookService.js.map +1 -0
  412. package/services/agentStorage.d.ts +27 -0
  413. package/services/agentStorage.d.ts.map +1 -0
  414. package/services/agentStorage.js +487 -0
  415. package/services/agentStorage.js.map +1 -0
  416. package/services/askUserQuestion/askUserQuestionIntegration.d.ts +24 -0
  417. package/services/askUserQuestion/askUserQuestionIntegration.d.ts.map +1 -0
  418. package/services/askUserQuestion/askUserQuestionIntegration.js +52 -0
  419. package/services/askUserQuestion/askUserQuestionIntegration.js.map +1 -0
  420. package/services/askUserQuestion/askUserQuestionMcp.d.ts +103 -0
  421. package/services/askUserQuestion/askUserQuestionMcp.d.ts.map +1 -0
  422. package/services/askUserQuestion/askUserQuestionMcp.js +129 -0
  423. package/services/askUserQuestion/askUserQuestionMcp.js.map +1 -0
  424. package/services/askUserQuestion/index.d.ts +13 -0
  425. package/services/askUserQuestion/index.d.ts.map +1 -0
  426. package/services/askUserQuestion/index.js +35 -0
  427. package/services/askUserQuestion/index.js.map +1 -0
  428. package/services/askUserQuestion/init.d.ts +17 -0
  429. package/services/askUserQuestion/init.d.ts.map +1 -0
  430. package/services/askUserQuestion/init.js +47 -0
  431. package/services/askUserQuestion/init.js.map +1 -0
  432. package/services/askUserQuestion/notificationChannel.d.ts +97 -0
  433. package/services/askUserQuestion/notificationChannel.d.ts.map +1 -0
  434. package/services/askUserQuestion/notificationChannel.js +147 -0
  435. package/services/askUserQuestion/notificationChannel.js.map +1 -0
  436. package/services/askUserQuestion/slackNotificationChannel.d.ts +35 -0
  437. package/services/askUserQuestion/slackNotificationChannel.d.ts.map +1 -0
  438. package/services/askUserQuestion/slackNotificationChannel.js +129 -0
  439. package/services/askUserQuestion/slackNotificationChannel.js.map +1 -0
  440. package/services/askUserQuestion/sseNotificationChannel.d.ts +36 -0
  441. package/services/askUserQuestion/sseNotificationChannel.d.ts.map +1 -0
  442. package/services/askUserQuestion/sseNotificationChannel.js +88 -0
  443. package/services/askUserQuestion/sseNotificationChannel.js.map +1 -0
  444. package/services/askUserQuestion/userInputRegistry.d.ts +107 -0
  445. package/services/askUserQuestion/userInputRegistry.d.ts.map +1 -0
  446. package/services/askUserQuestion/userInputRegistry.js +253 -0
  447. package/services/askUserQuestion/userInputRegistry.js.map +1 -0
  448. package/services/claudeSession.d.ts +113 -0
  449. package/services/claudeSession.d.ts.map +1 -0
  450. package/services/claudeSession.js +375 -0
  451. package/services/claudeSession.js.map +1 -0
  452. package/services/claudeVersionStorage.d.ts +20 -0
  453. package/services/claudeVersionStorage.d.ts.map +1 -0
  454. package/services/claudeVersionStorage.js +331 -0
  455. package/services/claudeVersionStorage.js.map +1 -0
  456. package/services/mcpAdmin/__tests__/adminApiKeyService.test.d.ts +5 -0
  457. package/services/mcpAdmin/__tests__/adminApiKeyService.test.d.ts.map +1 -0
  458. package/services/mcpAdmin/__tests__/adminApiKeyService.test.js +289 -0
  459. package/services/mcpAdmin/__tests__/adminApiKeyService.test.js.map +1 -0
  460. package/services/mcpAdmin/__tests__/mcpAdminRoutes.test.d.ts +5 -0
  461. package/services/mcpAdmin/__tests__/mcpAdminRoutes.test.d.ts.map +1 -0
  462. package/services/mcpAdmin/__tests__/mcpAdminRoutes.test.js +345 -0
  463. package/services/mcpAdmin/__tests__/mcpAdminRoutes.test.js.map +1 -0
  464. package/services/mcpAdmin/__tests__/mcpAdminServer.test.d.ts +5 -0
  465. package/services/mcpAdmin/__tests__/mcpAdminServer.test.d.ts.map +1 -0
  466. package/services/mcpAdmin/__tests__/mcpAdminServer.test.js +453 -0
  467. package/services/mcpAdmin/__tests__/mcpAdminServer.test.js.map +1 -0
  468. package/services/mcpAdmin/__tests__/providerTools.test.d.ts +7 -0
  469. package/services/mcpAdmin/__tests__/providerTools.test.d.ts.map +1 -0
  470. package/services/mcpAdmin/__tests__/providerTools.test.js +258 -0
  471. package/services/mcpAdmin/__tests__/providerTools.test.js.map +1 -0
  472. package/services/mcpAdmin/__tests__/tools.test.d.ts +5 -0
  473. package/services/mcpAdmin/__tests__/tools.test.d.ts.map +1 -0
  474. package/services/mcpAdmin/__tests__/tools.test.js +389 -0
  475. package/services/mcpAdmin/__tests__/tools.test.js.map +1 -0
  476. package/services/mcpAdmin/adminApiKeyService.d.ts +61 -0
  477. package/services/mcpAdmin/adminApiKeyService.d.ts.map +1 -0
  478. package/services/mcpAdmin/adminApiKeyService.js +270 -0
  479. package/services/mcpAdmin/adminApiKeyService.js.map +1 -0
  480. package/services/mcpAdmin/index.d.ts +10 -0
  481. package/services/mcpAdmin/index.d.ts.map +1 -0
  482. package/services/mcpAdmin/index.js +43 -0
  483. package/services/mcpAdmin/index.js.map +1 -0
  484. package/services/mcpAdmin/mcpAdminServer.d.ts +76 -0
  485. package/services/mcpAdmin/mcpAdminServer.d.ts.map +1 -0
  486. package/services/mcpAdmin/mcpAdminServer.js +243 -0
  487. package/services/mcpAdmin/mcpAdminServer.js.map +1 -0
  488. package/services/mcpAdmin/tools/agentTools.d.ts +27 -0
  489. package/services/mcpAdmin/tools/agentTools.d.ts.map +1 -0
  490. package/services/mcpAdmin/tools/agentTools.js +352 -0
  491. package/services/mcpAdmin/tools/agentTools.js.map +1 -0
  492. package/services/mcpAdmin/tools/index.d.ts +16 -0
  493. package/services/mcpAdmin/tools/index.d.ts.map +1 -0
  494. package/services/mcpAdmin/tools/index.js +34 -0
  495. package/services/mcpAdmin/tools/index.js.map +1 -0
  496. package/services/mcpAdmin/tools/mcpServerTools.d.ts +27 -0
  497. package/services/mcpAdmin/tools/mcpServerTools.d.ts.map +1 -0
  498. package/services/mcpAdmin/tools/mcpServerTools.js +334 -0
  499. package/services/mcpAdmin/tools/mcpServerTools.js.map +1 -0
  500. package/services/mcpAdmin/tools/projectTools.d.ts +27 -0
  501. package/services/mcpAdmin/tools/projectTools.d.ts.map +1 -0
  502. package/services/mcpAdmin/tools/projectTools.js +382 -0
  503. package/services/mcpAdmin/tools/projectTools.js.map +1 -0
  504. package/services/mcpAdmin/tools/providerTools.d.ts +40 -0
  505. package/services/mcpAdmin/tools/providerTools.d.ts.map +1 -0
  506. package/services/mcpAdmin/tools/providerTools.js +581 -0
  507. package/services/mcpAdmin/tools/providerTools.js.map +1 -0
  508. package/services/mcpAdmin/tools/systemTools.d.ts +23 -0
  509. package/services/mcpAdmin/tools/systemTools.d.ts.map +1 -0
  510. package/services/mcpAdmin/tools/systemTools.js +241 -0
  511. package/services/mcpAdmin/tools/systemTools.js.map +1 -0
  512. package/services/mcpAdmin/types.d.ts +124 -0
  513. package/services/mcpAdmin/types.d.ts.map +1 -0
  514. package/services/mcpAdmin/types.js +18 -0
  515. package/services/mcpAdmin/types.js.map +1 -0
  516. package/services/messageQueue.d.ts +31 -0
  517. package/services/messageQueue.d.ts.map +1 -0
  518. package/services/messageQueue.js +80 -0
  519. package/services/messageQueue.js.map +1 -0
  520. package/services/pluginInstaller.d.ts +58 -0
  521. package/services/pluginInstaller.d.ts.map +1 -0
  522. package/services/pluginInstaller.js +321 -0
  523. package/services/pluginInstaller.js.map +1 -0
  524. package/services/pluginParser.d.ts +45 -0
  525. package/services/pluginParser.d.ts.map +1 -0
  526. package/services/pluginParser.js +437 -0
  527. package/services/pluginParser.js.map +1 -0
  528. package/services/pluginPaths.d.ts +83 -0
  529. package/services/pluginPaths.d.ts.map +1 -0
  530. package/services/pluginPaths.js +277 -0
  531. package/services/pluginPaths.js.map +1 -0
  532. package/services/pluginScanner.d.ts +36 -0
  533. package/services/pluginScanner.d.ts.map +1 -0
  534. package/services/pluginScanner.js +251 -0
  535. package/services/pluginScanner.js.map +1 -0
  536. package/services/pluginSymlink.d.ts +54 -0
  537. package/services/pluginSymlink.d.ts.map +1 -0
  538. package/services/pluginSymlink.js +223 -0
  539. package/services/pluginSymlink.js.map +1 -0
  540. package/services/projectMetadataStorage.d.ts +121 -0
  541. package/services/projectMetadataStorage.d.ts.map +1 -0
  542. package/services/projectMetadataStorage.js +810 -0
  543. package/services/projectMetadataStorage.js.map +1 -0
  544. package/services/scheduledTaskStorage.d.ts +63 -0
  545. package/services/scheduledTaskStorage.d.ts.map +1 -0
  546. package/services/scheduledTaskStorage.js +351 -0
  547. package/services/scheduledTaskStorage.js.map +1 -0
  548. package/services/schedulerService.d.ts +91 -0
  549. package/services/schedulerService.d.ts.map +1 -0
  550. package/services/schedulerService.js +590 -0
  551. package/services/schedulerService.js.map +1 -0
  552. package/services/sessionManager.d.ts +176 -0
  553. package/services/sessionManager.d.ts.map +1 -0
  554. package/services/sessionManager.js +646 -0
  555. package/services/sessionManager.js.map +1 -0
  556. package/services/skillStorage.d.ts +60 -0
  557. package/services/skillStorage.d.ts.map +1 -0
  558. package/services/skillStorage.js +399 -0
  559. package/services/skillStorage.js.map +1 -0
  560. package/services/slackAIService.d.ts +81 -0
  561. package/services/slackAIService.d.ts.map +1 -0
  562. package/services/slackAIService.js +1137 -0
  563. package/services/slackAIService.js.map +1 -0
  564. package/services/slackClient.d.ts +46 -0
  565. package/services/slackClient.d.ts.map +1 -0
  566. package/services/slackClient.js +85 -0
  567. package/services/slackClient.js.map +1 -0
  568. package/services/slackSessionLock.d.ts +79 -0
  569. package/services/slackSessionLock.d.ts.map +1 -0
  570. package/services/slackSessionLock.js +353 -0
  571. package/services/slackSessionLock.js.map +1 -0
  572. package/services/slackThreadMapper.d.ts +57 -0
  573. package/services/slackThreadMapper.d.ts.map +1 -0
  574. package/services/slackThreadMapper.js +140 -0
  575. package/services/slackThreadMapper.js.map +1 -0
  576. package/services/taskExecutor/BuiltinExecutor.d.ts +44 -0
  577. package/services/taskExecutor/BuiltinExecutor.d.ts.map +1 -0
  578. package/services/taskExecutor/BuiltinExecutor.js +513 -0
  579. package/services/taskExecutor/BuiltinExecutor.js.map +1 -0
  580. package/services/taskExecutor/__tests__/a2a-tasks.test.d.ts +7 -0
  581. package/services/taskExecutor/__tests__/a2a-tasks.test.d.ts.map +1 -0
  582. package/services/taskExecutor/__tests__/a2a-tasks.test.js +328 -0
  583. package/services/taskExecutor/__tests__/a2a-tasks.test.js.map +1 -0
  584. package/services/taskExecutor/__tests__/e2e-workflows.test.d.ts +7 -0
  585. package/services/taskExecutor/__tests__/e2e-workflows.test.d.ts.map +1 -0
  586. package/services/taskExecutor/__tests__/e2e-workflows.test.js +446 -0
  587. package/services/taskExecutor/__tests__/e2e-workflows.test.js.map +1 -0
  588. package/services/taskExecutor/__tests__/error-handling.test.d.ts +7 -0
  589. package/services/taskExecutor/__tests__/error-handling.test.d.ts.map +1 -0
  590. package/services/taskExecutor/__tests__/error-handling.test.js +387 -0
  591. package/services/taskExecutor/__tests__/error-handling.test.js.map +1 -0
  592. package/services/taskExecutor/__tests__/stress.test.d.ts +7 -0
  593. package/services/taskExecutor/__tests__/stress.test.d.ts.map +1 -0
  594. package/services/taskExecutor/__tests__/stress.test.js +329 -0
  595. package/services/taskExecutor/__tests__/stress.test.js.map +1 -0
  596. package/services/taskExecutor/__tests__/taskExecutor.integration.test.d.ts +7 -0
  597. package/services/taskExecutor/__tests__/taskExecutor.integration.test.d.ts.map +1 -0
  598. package/services/taskExecutor/__tests__/taskExecutor.integration.test.js +205 -0
  599. package/services/taskExecutor/__tests__/taskExecutor.integration.test.js.map +1 -0
  600. package/services/taskExecutor/__tests__/timeout-cancellation.test.d.ts +7 -0
  601. package/services/taskExecutor/__tests__/timeout-cancellation.test.d.ts.map +1 -0
  602. package/services/taskExecutor/__tests__/timeout-cancellation.test.js +319 -0
  603. package/services/taskExecutor/__tests__/timeout-cancellation.test.js.map +1 -0
  604. package/services/taskExecutor/index.d.ts +40 -0
  605. package/services/taskExecutor/index.d.ts.map +1 -0
  606. package/services/taskExecutor/index.js +166 -0
  607. package/services/taskExecutor/index.js.map +1 -0
  608. package/services/taskExecutor/taskWorker.d.ts +11 -0
  609. package/services/taskExecutor/taskWorker.d.ts.map +1 -0
  610. package/services/taskExecutor/taskWorker.js +171 -0
  611. package/services/taskExecutor/taskWorker.js.map +1 -0
  612. package/services/taskExecutor/types.d.ts +145 -0
  613. package/services/taskExecutor/types.d.ts.map +1 -0
  614. package/services/taskExecutor/types.js +9 -0
  615. package/services/taskExecutor/types.js.map +1 -0
  616. package/services/telemetry.d.ts +40 -0
  617. package/services/telemetry.d.ts.map +1 -0
  618. package/services/telemetry.js +245 -0
  619. package/services/telemetry.js.map +1 -0
  620. package/services/tunnelService.d.ts +165 -0
  621. package/services/tunnelService.d.ts.map +1 -0
  622. package/services/tunnelService.js +493 -0
  623. package/services/tunnelService.js.map +1 -0
  624. package/types/a2a.d.ts +293 -0
  625. package/types/a2a.d.ts.map +1 -0
  626. package/types/a2a.js +23 -0
  627. package/types/a2a.js.map +1 -0
  628. package/types/agents.d.ts +94 -0
  629. package/types/agents.d.ts.map +1 -0
  630. package/types/agents.js +45 -0
  631. package/types/agents.js.map +1 -0
  632. package/types/claude-history.d.ts +62 -0
  633. package/types/claude-history.d.ts.map +1 -0
  634. package/types/claude-history.js +4 -0
  635. package/types/claude-history.js.map +1 -0
  636. package/types/claude-versions.d.ts +36 -0
  637. package/types/claude-versions.d.ts.map +1 -0
  638. package/types/claude-versions.js +3 -0
  639. package/types/claude-versions.js.map +1 -0
  640. package/types/commands.d.ts +50 -0
  641. package/types/commands.d.ts.map +1 -0
  642. package/types/commands.js +23 -0
  643. package/types/commands.js.map +1 -0
  644. package/types/plugins.d.ts +144 -0
  645. package/types/plugins.d.ts.map +1 -0
  646. package/types/plugins.js +8 -0
  647. package/types/plugins.js.map +1 -0
  648. package/types/projects.d.ts +46 -0
  649. package/types/projects.d.ts.map +1 -0
  650. package/types/projects.js +4 -0
  651. package/types/projects.js.map +1 -0
  652. package/types/scheduledTasks.d.ts +168 -0
  653. package/types/scheduledTasks.d.ts.map +1 -0
  654. package/types/scheduledTasks.js +17 -0
  655. package/types/scheduledTasks.js.map +1 -0
  656. package/types/skills.d.ts +91 -0
  657. package/types/skills.d.ts.map +1 -0
  658. package/types/skills.js +6 -0
  659. package/types/skills.js.map +1 -0
  660. package/types/slack.d.ts +97 -0
  661. package/types/slack.d.ts.map +1 -0
  662. package/types/slack.js +8 -0
  663. package/types/slack.js.map +1 -0
  664. package/types/streaming.d.ts +12 -0
  665. package/types/streaming.d.ts.map +1 -0
  666. package/types/streaming.js +8 -0
  667. package/types/streaming.js.map +1 -0
  668. package/types/subagents.d.ts +26 -0
  669. package/types/subagents.d.ts.map +1 -0
  670. package/types/subagents.js +3 -0
  671. package/types/subagents.js.map +1 -0
  672. package/utils/__tests__/claudeUtils.test.d.ts +5 -0
  673. package/utils/__tests__/claudeUtils.test.d.ts.map +1 -0
  674. package/utils/__tests__/claudeUtils.test.js +283 -0
  675. package/utils/__tests__/claudeUtils.test.js.map +1 -0
  676. package/utils/__tests__/configResolver.test.d.ts +7 -0
  677. package/utils/__tests__/configResolver.test.d.ts.map +1 -0
  678. package/utils/__tests__/configResolver.test.js +211 -0
  679. package/utils/__tests__/configResolver.test.js.map +1 -0
  680. package/utils/__tests__/sessionUtils.test.d.ts +5 -0
  681. package/utils/__tests__/sessionUtils.test.d.ts.map +1 -0
  682. package/utils/__tests__/sessionUtils.test.js +296 -0
  683. package/utils/__tests__/sessionUtils.test.js.map +1 -0
  684. package/utils/agentCardCache.d.ts +93 -0
  685. package/utils/agentCardCache.d.ts.map +1 -0
  686. package/utils/agentCardCache.js +212 -0
  687. package/utils/agentCardCache.js.map +1 -0
  688. package/utils/claudeUtils.d.ts +55 -0
  689. package/utils/claudeUtils.d.ts.map +1 -0
  690. package/utils/claudeUtils.js +355 -0
  691. package/utils/claudeUtils.js.map +1 -0
  692. package/utils/configResolver.d.ts +57 -0
  693. package/utils/configResolver.d.ts.map +1 -0
  694. package/utils/configResolver.js +130 -0
  695. package/utils/configResolver.js.map +1 -0
  696. package/utils/fileUtils.d.ts +2 -0
  697. package/utils/fileUtils.d.ts.map +1 -0
  698. package/utils/fileUtils.js +11 -0
  699. package/utils/fileUtils.js.map +1 -0
  700. package/utils/jwt.d.ts +30 -0
  701. package/utils/jwt.d.ts.map +1 -0
  702. package/utils/jwt.js +95 -0
  703. package/utils/jwt.js.map +1 -0
  704. package/utils/networkUtils.d.ts +25 -0
  705. package/utils/networkUtils.d.ts.map +1 -0
  706. package/utils/networkUtils.js +65 -0
  707. package/utils/networkUtils.js.map +1 -0
  708. package/utils/sessionUtils.d.ts +67 -0
  709. package/utils/sessionUtils.d.ts.map +1 -0
  710. package/utils/sessionUtils.js +296 -0
  711. package/utils/sessionUtils.js.map +1 -0
  712. package/.dockerignore +0 -53
  713. package/.mcp.json +0 -8
  714. package/CLAUDE.md +0 -359
  715. package/DOCKER.md +0 -270
  716. package/Dockerfile +0 -42
  717. package/JSONL_TOOLS_README.md +0 -301
  718. package/LICENSE +0 -603
  719. package/QUICKSTART.md +0 -253
  720. package/README.zh-CN.md +0 -200
  721. package/SOLUTION_SUMMARY.md +0 -249
  722. package/backend/comprehensive-session-check.js +0 -142
  723. package/backend/debug-sessions.js +0 -60
  724. package/backend/docs/chat-clean-1.svg +0 -1
  725. package/backend/docs/chat-clean.md +0 -60
  726. package/backend/docs/chat-comprehensive-1.svg +0 -1
  727. package/backend/docs/chat-comprehensive.md +0 -166
  728. package/backend/docs/chat_api_sequence_diagram.md +0 -58
  729. package/backend/docs/command-detection-logic.md +0 -306
  730. package/backend/docs/command-detection-sequence.md +0 -186
  731. package/backend/eslint.config.js +0 -25
  732. package/backend/package.json +0 -103
  733. package/backend/scripts/README.md +0 -156
  734. package/backend/scripts/fix-project-names.js +0 -113
  735. package/backend/scripts/migrate-projects.js +0 -159
  736. package/backend/src/bin/agentstudio.ts +0 -318
  737. package/backend/src/bin/serviceManager.ts +0 -469
  738. package/backend/src/config/index.ts +0 -184
  739. package/backend/src/config/paths.ts +0 -105
  740. package/backend/src/config/sdkConfig.ts +0 -126
  741. package/backend/src/index.ts +0 -434
  742. package/backend/src/jobs/taskTimeoutMonitor.ts +0 -106
  743. package/backend/src/middleware/a2aAuth.ts +0 -159
  744. package/backend/src/middleware/auth.ts +0 -39
  745. package/backend/src/middleware/httpsOnly.ts +0 -205
  746. package/backend/src/middleware/rateLimiting.ts +0 -130
  747. package/backend/src/routes/__tests__/a2a.integration.test.ts +0 -377
  748. package/backend/src/routes/__tests__/a2a.test.ts +0 -677
  749. package/backend/src/routes/__tests__/agents.test.ts +0 -327
  750. package/backend/src/routes/__tests__/sessions.test.ts +0 -345
  751. package/backend/src/routes/a2a.streaming.test.ts +0 -185
  752. package/backend/src/routes/a2a.ts +0 -840
  753. package/backend/src/routes/a2aManagement.ts +0 -545
  754. package/backend/src/routes/agents.ts +0 -1176
  755. package/backend/src/routes/auth.ts +0 -151
  756. package/backend/src/routes/cloudflareTunnel.ts +0 -306
  757. package/backend/src/routes/commands.ts +0 -524
  758. package/backend/src/routes/config.ts +0 -193
  759. package/backend/src/routes/files.ts +0 -375
  760. package/backend/src/routes/mcp.ts +0 -866
  761. package/backend/src/routes/mcpAdmin.ts +0 -369
  762. package/backend/src/routes/mcpAdminManagement.ts +0 -338
  763. package/backend/src/routes/media.ts +0 -140
  764. package/backend/src/routes/mediaAuth.ts +0 -150
  765. package/backend/src/routes/network.ts +0 -68
  766. package/backend/src/routes/plugins.ts +0 -368
  767. package/backend/src/routes/projects.ts +0 -1100
  768. package/backend/src/routes/scheduledTasks.ts +0 -442
  769. package/backend/src/routes/sessions.ts +0 -1054
  770. package/backend/src/routes/settings.ts +0 -552
  771. package/backend/src/routes/skills.ts +0 -319
  772. package/backend/src/routes/slack.ts +0 -193
  773. package/backend/src/routes/slides.ts +0 -166
  774. package/backend/src/routes/subagents.ts +0 -366
  775. package/backend/src/routes/taskExecutor.ts +0 -243
  776. package/backend/src/routes/tunnel.ts +0 -317
  777. package/backend/src/routes/version.ts +0 -239
  778. package/backend/src/schemas/a2a.ts +0 -352
  779. package/backend/src/services/__tests__/pluginInstaller.test.ts +0 -316
  780. package/backend/src/services/__tests__/pluginParser.test.ts +0 -285
  781. package/backend/src/services/__tests__/pluginPaths.test.ts +0 -212
  782. package/backend/src/services/__tests__/pluginScanner.test.ts +0 -287
  783. package/backend/src/services/__tests__/pluginSymlink.test.ts +0 -340
  784. package/backend/src/services/__tests__/projectMetadataStorage.test.ts +0 -158
  785. package/backend/src/services/__tests__/sessionConcurrency.test.ts +0 -132
  786. package/backend/src/services/__tests__/slackAIService.test.ts +0 -561
  787. package/backend/src/services/__tests__/slackThreadMapper.test.ts +0 -228
  788. package/backend/src/services/a2a/__tests__/a2aClientTool.integration.test.ts +0 -347
  789. package/backend/src/services/a2a/__tests__/a2aClientTool.test.ts +0 -710
  790. package/backend/src/services/a2a/__tests__/a2aConfigService.test.ts +0 -526
  791. package/backend/src/services/a2a/__tests__/a2aConfigServicePath.test.ts +0 -55
  792. package/backend/src/services/a2a/__tests__/a2aSdkMcp.test.ts +0 -254
  793. package/backend/src/services/a2a/__tests__/agentCardService.test.ts +0 -357
  794. package/backend/src/services/a2a/__tests__/apiKeyService.test.ts +0 -378
  795. package/backend/src/services/a2a/__tests__/buildQueryOptionsIntegration.test.ts +0 -41
  796. package/backend/src/services/a2a/__tests__/dynamic_config_verification.test.ts +0 -71
  797. package/backend/src/services/a2a/__tests__/integrateA2AMcpServer.test.ts +0 -97
  798. package/backend/src/services/a2a/__tests__/taskManager.integration.test.ts +0 -417
  799. package/backend/src/services/a2a/__tests__/taskManager.test.ts +0 -511
  800. package/backend/src/services/a2a/__tests__/webhookService.test.ts +0 -258
  801. package/backend/src/services/a2a/a2aClientTool.ts +0 -723
  802. package/backend/src/services/a2a/a2aConfigService.ts +0 -194
  803. package/backend/src/services/a2a/a2aHistoryService.ts +0 -111
  804. package/backend/src/services/a2a/a2aIntegration.ts +0 -40
  805. package/backend/src/services/a2a/a2aQueryService.ts +0 -275
  806. package/backend/src/services/a2a/a2aSdkMcp.ts +0 -208
  807. package/backend/src/services/a2a/a2aStreamEvents.ts +0 -166
  808. package/backend/src/services/a2a/agentCardService.ts +0 -256
  809. package/backend/src/services/a2a/agentMappingService.ts +0 -202
  810. package/backend/src/services/a2a/apiKeyService.ts +0 -361
  811. package/backend/src/services/a2a/taskCleanup.ts +0 -199
  812. package/backend/src/services/a2a/taskManager.ts +0 -327
  813. package/backend/src/services/a2a/webhookService.ts +0 -161
  814. package/backend/src/services/agentStorage.ts +0 -506
  815. package/backend/src/services/askUserQuestion/askUserQuestionIntegration.ts +0 -68
  816. package/backend/src/services/askUserQuestion/askUserQuestionMcp.ts +0 -173
  817. package/backend/src/services/askUserQuestion/index.ts +0 -48
  818. package/backend/src/services/askUserQuestion/init.ts +0 -53
  819. package/backend/src/services/askUserQuestion/notificationChannel.ts +0 -218
  820. package/backend/src/services/askUserQuestion/slackNotificationChannel.ts +0 -150
  821. package/backend/src/services/askUserQuestion/sseNotificationChannel.ts +0 -102
  822. package/backend/src/services/askUserQuestion/userInputRegistry.ts +0 -307
  823. package/backend/src/services/claudeSession.ts +0 -421
  824. package/backend/src/services/claudeVersionStorage.ts +0 -389
  825. package/backend/src/services/mcpAdmin/__tests__/adminApiKeyService.test.ts +0 -385
  826. package/backend/src/services/mcpAdmin/__tests__/mcpAdminRoutes.test.ts +0 -356
  827. package/backend/src/services/mcpAdmin/__tests__/mcpAdminServer.test.ts +0 -541
  828. package/backend/src/services/mcpAdmin/__tests__/providerTools.test.ts +0 -347
  829. package/backend/src/services/mcpAdmin/__tests__/tools.test.ts +0 -463
  830. package/backend/src/services/mcpAdmin/adminApiKeyService.ts +0 -329
  831. package/backend/src/services/mcpAdmin/index.ts +0 -19
  832. package/backend/src/services/mcpAdmin/mcpAdminServer.ts +0 -318
  833. package/backend/src/services/mcpAdmin/tools/agentTools.ts +0 -390
  834. package/backend/src/services/mcpAdmin/tools/index.ts +0 -29
  835. package/backend/src/services/mcpAdmin/tools/mcpServerTools.ts +0 -368
  836. package/backend/src/services/mcpAdmin/tools/projectTools.ts +0 -415
  837. package/backend/src/services/mcpAdmin/tools/providerTools.ts +0 -649
  838. package/backend/src/services/mcpAdmin/tools/systemTools.ts +0 -254
  839. package/backend/src/services/mcpAdmin/types.ts +0 -155
  840. package/backend/src/services/messageQueue.ts +0 -80
  841. package/backend/src/services/pluginInstaller.ts +0 -329
  842. package/backend/src/services/pluginParser.ts +0 -441
  843. package/backend/src/services/pluginPaths.ts +0 -270
  844. package/backend/src/services/pluginScanner.ts +0 -245
  845. package/backend/src/services/pluginSymlink.ts +0 -241
  846. package/backend/src/services/projectMetadataStorage.ts +0 -871
  847. package/backend/src/services/scheduledTaskStorage.ts +0 -377
  848. package/backend/src/services/schedulerService.ts +0 -668
  849. package/backend/src/services/sessionManager.ts +0 -738
  850. package/backend/src/services/skillStorage.ts +0 -521
  851. package/backend/src/services/slackAIService.ts +0 -1395
  852. package/backend/src/services/slackClient.ts +0 -110
  853. package/backend/src/services/slackSessionLock.ts +0 -364
  854. package/backend/src/services/slackThreadMapper.ts +0 -170
  855. package/backend/src/services/taskExecutor/BuiltinExecutor.ts +0 -611
  856. package/backend/src/services/taskExecutor/__tests__/a2a-tasks.test.ts +0 -382
  857. package/backend/src/services/taskExecutor/__tests__/e2e-workflows.test.ts +0 -528
  858. package/backend/src/services/taskExecutor/__tests__/error-handling.test.ts +0 -458
  859. package/backend/src/services/taskExecutor/__tests__/stress.test.ts +0 -400
  860. package/backend/src/services/taskExecutor/__tests__/taskExecutor.integration.test.ts +0 -240
  861. package/backend/src/services/taskExecutor/__tests__/timeout-cancellation.test.ts +0 -384
  862. package/backend/src/services/taskExecutor/index.ts +0 -168
  863. package/backend/src/services/taskExecutor/taskWorker.ts +0 -222
  864. package/backend/src/services/taskExecutor/types.ts +0 -179
  865. package/backend/src/services/telemetry.ts +0 -234
  866. package/backend/src/services/tunnelService.ts +0 -614
  867. package/backend/src/types/a2a.ts +0 -372
  868. package/backend/src/types/agents.ts +0 -161
  869. package/backend/src/types/claude-history.ts +0 -81
  870. package/backend/src/types/claude-versions.ts +0 -39
  871. package/backend/src/types/commands.ts +0 -63
  872. package/backend/src/types/plugins.ts +0 -157
  873. package/backend/src/types/projects.ts +0 -64
  874. package/backend/src/types/scheduledTasks.ts +0 -214
  875. package/backend/src/types/skills.ts +0 -130
  876. package/backend/src/types/slack.ts +0 -112
  877. package/backend/src/types/streaming.ts +0 -13
  878. package/backend/src/types/subagents.ts +0 -29
  879. package/backend/src/utils/__tests__/claudeUtils.test.ts +0 -312
  880. package/backend/src/utils/__tests__/configResolver.test.ts +0 -255
  881. package/backend/src/utils/__tests__/sessionUtils.test.ts +0 -384
  882. package/backend/src/utils/agentCardCache.ts +0 -245
  883. package/backend/src/utils/claudeUtils.ts +0 -377
  884. package/backend/src/utils/configResolver.ts +0 -175
  885. package/backend/src/utils/fileUtils.ts +0 -5
  886. package/backend/src/utils/jwt.ts +0 -104
  887. package/backend/src/utils/networkUtils.ts +0 -68
  888. package/backend/src/utils/sessionUtils.ts +0 -303
  889. package/backend/tsconfig.json +0 -25
  890. package/backend/vitest.config.ts +0 -29
  891. package/docker-compose.traefik.yml +0 -59
  892. package/docker-compose.yml +0 -38
  893. package/docker-entrypoint.sh +0 -30
  894. package/docs/CLOUDFLARE_TUNNEL.md +0 -233
  895. package/docs/CLOUDFLARE_TUNNEL_ARCHITECTURE.md +0 -406
  896. package/docs/LAVS-IMPLEMENTATION.md +0 -1973
  897. package/docs/LAVS-SPEC.md +0 -951
  898. package/docs/QUICK_START_CLOUDFLARE_TUNNEL.md +0 -304
  899. package/docs/SCHEDULER_CONTROL.md +0 -142
  900. package/docs/SCHEDULER_STATUS_DISPLAY.md +0 -86
  901. package/docs/USER_MANUAL.md +0 -1726
  902. package/docs/USER_MANUAL_EN.md +0 -1408
  903. package/docs/VERSION_COMPATIBILITY.md +0 -616
  904. package/docs/api/a2a-endpoints.md +0 -891
  905. package/docs/guides/unified-task-executor-summary.md +0 -365
  906. package/docs/guides/unified-task-executor.md +0 -304
  907. package/docs/screenshots/01-homepage.png +0 -0
  908. package/docs/screenshots/02-dashboard.png +0 -0
  909. package/docs/screenshots/03-projects.png +0 -0
  910. package/docs/screenshots/04-agents.png +0 -0
  911. package/docs/screenshots/05-mcp-services.png +0 -0
  912. package/docs/screenshots/06-commands.png +0 -0
  913. package/docs/screenshots/07-chat.png +0 -0
  914. package/docs/screenshots/08-skills.png +0 -0
  915. package/docs/screenshots/09-settings.png +0 -0
  916. package/docs/screenshots/10-suppliers.png +0 -0
  917. package/docs/screenshots/11-plugins.png +0 -0
  918. package/docs/screenshots/agent-create-dialog.png +0 -0
  919. package/docs/screenshots/agent-edit-dialog.png +0 -0
  920. package/docs/screenshots/agent-list-overview.png +0 -0
  921. package/docs/screenshots/agent-tools-selection.png +0 -0
  922. package/docs/screenshots/agents-management.png +0 -0
  923. package/docs/screenshots/auto-compacted-session.png +0 -0
  924. package/docs/screenshots/chat-interface.png +0 -0
  925. package/docs/screenshots/chat-session-debug.png +0 -0
  926. package/docs/screenshots/chat-session-history.png +0 -0
  927. package/docs/screenshots/chat-tools-selection.png +0 -0
  928. package/docs/screenshots/commands-create-dialog.png +0 -0
  929. package/docs/screenshots/commands-overview.png +0 -0
  930. package/docs/screenshots/create-project-dialog.png +0 -0
  931. package/docs/screenshots/dashboard-overview.png +0 -0
  932. package/docs/screenshots/file-browser-interface.png +0 -0
  933. package/docs/screenshots/import-project-dialog.png +0 -0
  934. package/docs/screenshots/mcp-add-service-dialog.png +0 -0
  935. package/docs/screenshots/mcp-admin-settings.png +0 -0
  936. package/docs/screenshots/mcp-import-claude-code.png +0 -0
  937. package/docs/screenshots/mcp-list-overview.png +0 -0
  938. package/docs/screenshots/mcp-services-page.png +0 -0
  939. package/docs/screenshots/password-management-modal.png +0 -0
  940. package/docs/screenshots/plugins-add-market.png +0 -0
  941. package/docs/screenshots/plugins-browse.png +0 -0
  942. package/docs/screenshots/plugins-overview.png +0 -0
  943. package/docs/screenshots/ppt-editor-chat-interface.png +0 -0
  944. package/docs/screenshots/project-commands-dialog.png +0 -0
  945. package/docs/screenshots/project-list-overview.png +0 -0
  946. package/docs/screenshots/project-memory-dialog.png +0 -0
  947. package/docs/screenshots/project-settings-dialog.png +0 -0
  948. package/docs/screenshots/project-subagent-dialog.png +0 -0
  949. package/docs/screenshots/projects-management.png +0 -0
  950. package/docs/screenshots/projects-overview.png +0 -0
  951. package/docs/screenshots/scheduled-tasks-create-dialog.png +0 -0
  952. package/docs/screenshots/scheduled-tasks-execution-history.png +0 -0
  953. package/docs/screenshots/scheduled-tasks-overview.png +0 -0
  954. package/docs/screenshots/session-display-issue.png +0 -0
  955. package/docs/screenshots/session-messages-fix.png +0 -0
  956. package/docs/screenshots/session-messages-loaded.png +0 -0
  957. package/docs/screenshots/settings-general.png +0 -0
  958. package/docs/screenshots/settings-memory.png +0 -0
  959. package/docs/screenshots/skills-create-dialog.png +0 -0
  960. package/docs/screenshots/skills-list-overview.png +0 -0
  961. package/docs/screenshots/skills-view-detail.png +0 -0
  962. package/docs/screenshots/slide-preview-after-fix.png +0 -0
  963. package/docs/screenshots/storybook-basetool-full.png +0 -0
  964. package/docs/screenshots/storybook-fixed.png +0 -0
  965. package/docs/screenshots/storybook-tasktool.png +0 -0
  966. package/docs/screenshots/supplier-add-dialog.png +0 -0
  967. package/docs/screenshots/supplier-edit-dialog.png +0 -0
  968. package/docs/screenshots/suppliers-overview.png +0 -0
  969. package/docs/screenshots/telemetry-settings.png +0 -0
  970. package/docs/screenshots/version-management-page.png +0 -0
  971. package/docs-site/.vitepress/cache/deps/@theme_index.js +0 -275
  972. package/docs-site/.vitepress/cache/deps/@theme_index.js.map +0 -7
  973. package/docs-site/.vitepress/cache/deps/_metadata.json +0 -58
  974. package/docs-site/.vitepress/cache/deps/chunk-CN42XFKG.js +0 -12824
  975. package/docs-site/.vitepress/cache/deps/chunk-CN42XFKG.js.map +0 -7
  976. package/docs-site/.vitepress/cache/deps/chunk-Y3A3J5YD.js +0 -9719
  977. package/docs-site/.vitepress/cache/deps/chunk-Y3A3J5YD.js.map +0 -7
  978. package/docs-site/.vitepress/cache/deps/package.json +0 -3
  979. package/docs-site/.vitepress/cache/deps/vitepress___@vue_devtools-api.js +0 -4505
  980. package/docs-site/.vitepress/cache/deps/vitepress___@vue_devtools-api.js.map +0 -7
  981. package/docs-site/.vitepress/cache/deps/vitepress___@vueuse_core.js +0 -583
  982. package/docs-site/.vitepress/cache/deps/vitepress___@vueuse_core.js.map +0 -7
  983. package/docs-site/.vitepress/cache/deps/vitepress___@vueuse_integrations_useFocusTrap.js +0 -1352
  984. package/docs-site/.vitepress/cache/deps/vitepress___@vueuse_integrations_useFocusTrap.js.map +0 -7
  985. package/docs-site/.vitepress/cache/deps/vitepress___mark__js_src_vanilla__js.js +0 -1665
  986. package/docs-site/.vitepress/cache/deps/vitepress___mark__js_src_vanilla__js.js.map +0 -7
  987. package/docs-site/.vitepress/cache/deps/vitepress___minisearch.js +0 -1813
  988. package/docs-site/.vitepress/cache/deps/vitepress___minisearch.js.map +0 -7
  989. package/docs-site/.vitepress/cache/deps/vue.js +0 -347
  990. package/docs-site/.vitepress/cache/deps/vue.js.map +0 -7
  991. package/docs-site/src/.vitepress/cache/deps/_metadata.json +0 -52
  992. package/docs-site/src/.vitepress/cache/deps/chunk-CN42XFKG.js +0 -12824
  993. package/docs-site/src/.vitepress/cache/deps/chunk-CN42XFKG.js.map +0 -7
  994. package/docs-site/src/.vitepress/cache/deps/chunk-Y3A3J5YD.js +0 -9719
  995. package/docs-site/src/.vitepress/cache/deps/chunk-Y3A3J5YD.js.map +0 -7
  996. package/docs-site/src/.vitepress/cache/deps/package.json +0 -3
  997. package/docs-site/src/.vitepress/cache/deps/vitepress___@vue_devtools-api.js +0 -4505
  998. package/docs-site/src/.vitepress/cache/deps/vitepress___@vue_devtools-api.js.map +0 -7
  999. package/docs-site/src/.vitepress/cache/deps/vitepress___@vueuse_core.js +0 -583
  1000. package/docs-site/src/.vitepress/cache/deps/vitepress___@vueuse_core.js.map +0 -7
  1001. package/docs-site/src/.vitepress/cache/deps/vitepress___@vueuse_integrations_useFocusTrap.js +0 -1352
  1002. package/docs-site/src/.vitepress/cache/deps/vitepress___@vueuse_integrations_useFocusTrap.js.map +0 -7
  1003. package/docs-site/src/.vitepress/cache/deps/vitepress___mark__js_src_vanilla__js.js +0 -1665
  1004. package/docs-site/src/.vitepress/cache/deps/vitepress___mark__js_src_vanilla__js.js.map +0 -7
  1005. package/docs-site/src/.vitepress/cache/deps/vitepress___minisearch.js +0 -1813
  1006. package/docs-site/src/.vitepress/cache/deps/vitepress___minisearch.js.map +0 -7
  1007. package/docs-site/src/.vitepress/cache/deps/vue.js +0 -347
  1008. package/docs-site/src/.vitepress/cache/deps/vue.js.map +0 -7
  1009. package/frontend/.storybook/main.ts +0 -22
  1010. package/frontend/.storybook/preview.ts +0 -27
  1011. package/frontend/.storybook/vitest.setup.ts +0 -7
  1012. package/frontend/README.md +0 -69
  1013. package/frontend/components.json +0 -17
  1014. package/frontend/eslint.config.js +0 -26
  1015. package/frontend/index.html +0 -62
  1016. package/frontend/package-lock.json +0 -7922
  1017. package/frontend/package.json +0 -90
  1018. package/frontend/pnpm-lock.yaml +0 -4714
  1019. package/frontend/postcss.config.js +0 -6
  1020. package/frontend/scripts/extract-chinese.js +0 -146
  1021. package/frontend/src/App.css +0 -42
  1022. package/frontend/src/App.tsx +0 -201
  1023. package/frontend/src/__tests__/smoke.test.tsx +0 -15
  1024. package/frontend/src/agents/README.md +0 -136
  1025. package/frontend/src/agents/chat/index.ts +0 -17
  1026. package/frontend/src/agents/registry.ts +0 -22
  1027. package/frontend/src/agents/slides/components/SlidePreview.tsx +0 -287
  1028. package/frontend/src/agents/slides/components/SlidePreviewPanel.tsx +0 -120
  1029. package/frontend/src/agents/slides/hooks/useSlides.ts +0 -245
  1030. package/frontend/src/agents/slides/index.ts +0 -17
  1031. package/frontend/src/agents/slides/stores/useSlidesStore.ts +0 -56
  1032. package/frontend/src/agents/types.ts +0 -18
  1033. package/frontend/src/api/skills.ts +0 -184
  1034. package/frontend/src/assets/react.svg +0 -1
  1035. package/frontend/src/components/AgentChatPanel.tsx +0 -901
  1036. package/frontend/src/components/ApiSettingsModal.tsx +0 -267
  1037. package/frontend/src/components/BackendOnboardingWizard.tsx +0 -255
  1038. package/frontend/src/components/BackendServiceSwitcher.tsx +0 -356
  1039. package/frontend/src/components/CSVPreview.tsx +0 -465
  1040. package/frontend/src/components/ChatMessageRenderer.tsx +0 -279
  1041. package/frontend/src/components/CommandForm.tsx +0 -560
  1042. package/frontend/src/components/CommandSelector.tsx +0 -218
  1043. package/frontend/src/components/CompactSummary.tsx +0 -52
  1044. package/frontend/src/components/ConfirmDialog.tsx +0 -69
  1045. package/frontend/src/components/DiffViewer.css +0 -78
  1046. package/frontend/src/components/DiffViewer.tsx +0 -89
  1047. package/frontend/src/components/EnvVarsConfig.tsx +0 -113
  1048. package/frontend/src/components/ErrorBoundary.tsx +0 -100
  1049. package/frontend/src/components/ErrorMessage.tsx +0 -197
  1050. package/frontend/src/components/FileBrowser.tsx +0 -480
  1051. package/frontend/src/components/FileContentViewer.tsx +0 -155
  1052. package/frontend/src/components/FileExplorer/FileIcon.tsx +0 -32
  1053. package/frontend/src/components/FileExplorer/FilePreview.tsx +0 -130
  1054. package/frontend/src/components/FileExplorer/FileTabs.tsx +0 -104
  1055. package/frontend/src/components/FileExplorer/FileTreeToolbar.tsx +0 -30
  1056. package/frontend/src/components/FileExplorer/ImagePreview.tsx +0 -86
  1057. package/frontend/src/components/FileExplorer/REFACTOR_SUMMARY.md +0 -117
  1058. package/frontend/src/components/FileExplorer/TabDropdown.tsx +0 -59
  1059. package/frontend/src/components/FileExplorer/TreeNode.tsx +0 -73
  1060. package/frontend/src/components/FileExplorer/constants.ts +0 -16
  1061. package/frontend/src/components/FileExplorer/fileTypes.ts +0 -156
  1062. package/frontend/src/components/FileExplorer/hooks/index.ts +0 -2
  1063. package/frontend/src/components/FileExplorer/hooks/useFileTabs.ts +0 -120
  1064. package/frontend/src/components/FileExplorer/hooks/useLazyFileTree.ts +0 -260
  1065. package/frontend/src/components/FileExplorer/index.ts +0 -15
  1066. package/frontend/src/components/FileExplorer.tsx +0 -1124
  1067. package/frontend/src/components/FloatingToggle.tsx +0 -66
  1068. package/frontend/src/components/ImagePreview.tsx +0 -369
  1069. package/frontend/src/components/JSONLPreview.tsx +0 -421
  1070. package/frontend/src/components/LanguageSwitcher.tsx +0 -32
  1071. package/frontend/src/components/Layout.tsx +0 -57
  1072. package/frontend/src/components/MarkdownMessage.tsx +0 -136
  1073. package/frontend/src/components/McpStatusModal.tsx +0 -272
  1074. package/frontend/src/components/MermaidDiagram.tsx +0 -423
  1075. package/frontend/src/components/MobileChatInput.tsx +0 -158
  1076. package/frontend/src/components/MobileChatToolbar.tsx +0 -164
  1077. package/frontend/src/components/MobileNavigation.tsx +0 -101
  1078. package/frontend/src/components/MobileSettingsModal.tsx +0 -272
  1079. package/frontend/src/components/MobileSidebar.tsx +0 -56
  1080. package/frontend/src/components/PanelToggle.tsx +0 -69
  1081. package/frontend/src/components/ProjectA2AModal.tsx +0 -1430
  1082. package/frontend/src/components/ProjectCommandsModal.tsx +0 -453
  1083. package/frontend/src/components/ProjectMemoryModal.tsx +0 -178
  1084. package/frontend/src/components/ProjectSelector.tsx +0 -498
  1085. package/frontend/src/components/ProjectSettingsModal.tsx +0 -210
  1086. package/frontend/src/components/ProjectSubAgentsModal.tsx +0 -421
  1087. package/frontend/src/components/ProjectTable.tsx +0 -387
  1088. package/frontend/src/components/ProtectedRoute.tsx +0 -123
  1089. package/frontend/src/components/RecentActivity.tsx +0 -145
  1090. package/frontend/src/components/ResponsiveTable.tsx +0 -164
  1091. package/frontend/src/components/RightPanelHeader.tsx +0 -87
  1092. package/frontend/src/components/RightPanelWrapper.tsx +0 -74
  1093. package/frontend/src/components/ScheduledTaskEditor.tsx +0 -718
  1094. package/frontend/src/components/ServiceManagementModal.tsx +0 -794
  1095. package/frontend/src/components/ServiceStatusIndicator.tsx +0 -334
  1096. package/frontend/src/components/SessionsDashboard.tsx +0 -295
  1097. package/frontend/src/components/SessionsDropdown.tsx +0 -168
  1098. package/frontend/src/components/SettingsDropdown.tsx +0 -236
  1099. package/frontend/src/components/SettingsLayout.tsx +0 -16
  1100. package/frontend/src/components/Sidebar.tsx +0 -283
  1101. package/frontend/src/components/SplitLayout.tsx +0 -261
  1102. package/frontend/src/components/SubagentForm.tsx +0 -468
  1103. package/frontend/src/components/SwipeActions.tsx +0 -413
  1104. package/frontend/src/components/SystemPromptEditor.tsx +0 -126
  1105. package/frontend/src/components/TaskExecutionHistory.tsx +0 -373
  1106. package/frontend/src/components/TelemetryProvider.tsx +0 -157
  1107. package/frontend/src/components/ToolUsage.tsx +0 -34
  1108. package/frontend/src/components/ToolsList.tsx +0 -86
  1109. package/frontend/src/components/UnifiedToolSelector.tsx +0 -508
  1110. package/frontend/src/components/UpdateNotification.tsx +0 -105
  1111. package/frontend/src/components/agentChat/AgentChatInput.tsx +0 -249
  1112. package/frontend/src/components/agentChat/AgentChatMobileInput.tsx +0 -266
  1113. package/frontend/src/components/agentChat/AgentCommandSelector.tsx +0 -226
  1114. package/frontend/src/components/agentChat/AgentInputArea.tsx +0 -573
  1115. package/frontend/src/components/agentChat/ChatMessageList.tsx +0 -125
  1116. package/frontend/src/components/agentChat/index.ts +0 -7
  1117. package/frontend/src/components/onboarding/BackendDetectingStep.tsx +0 -42
  1118. package/frontend/src/components/onboarding/BackendFoundStep.tsx +0 -75
  1119. package/frontend/src/components/onboarding/BackendNotFoundStep.tsx +0 -249
  1120. package/frontend/src/components/onboarding/OnboardingCompleteStep.tsx +0 -90
  1121. package/frontend/src/components/onboarding/WelcomeStep.tsx +0 -93
  1122. package/frontend/src/components/plugins/AddMarketplaceModal.tsx +0 -186
  1123. package/frontend/src/components/plugins/BrowsePluginsTab.tsx +0 -262
  1124. package/frontend/src/components/plugins/InstalledPluginsTab.tsx +0 -246
  1125. package/frontend/src/components/plugins/MarketplacesTab.tsx +0 -168
  1126. package/frontend/src/components/plugins/PluginDetailModal.tsx +0 -307
  1127. package/frontend/src/components/settings/version/ClaudeVersionForm.tsx +0 -266
  1128. package/frontend/src/components/settings/version/ClaudeVersionList.tsx +0 -61
  1129. package/frontend/src/components/settings/version/EnvironmentVariablesSection.tsx +0 -173
  1130. package/frontend/src/components/settings/version/ModelConfigSection.tsx +0 -129
  1131. package/frontend/src/components/settings/version/VersionListItem.tsx +0 -133
  1132. package/frontend/src/components/settings/version/VersionTemplateSelector.tsx +0 -53
  1133. package/frontend/src/components/skills/CreateSkillModal.tsx +0 -702
  1134. package/frontend/src/components/skills/SkillDetailModal.tsx +0 -180
  1135. package/frontend/src/components/skills/SkillFileBrowserModal.tsx +0 -67
  1136. package/frontend/src/components/skills/SkillPreview.tsx +0 -150
  1137. package/frontend/src/components/skills/SkillsPage.tsx +0 -329
  1138. package/frontend/src/components/skills/index.ts +0 -4
  1139. package/frontend/src/components/tools/A2ACallTool.tsx +0 -733
  1140. package/frontend/src/components/tools/AskUserQuestionTool.stories.tsx +0 -223
  1141. package/frontend/src/components/tools/AskUserQuestionTool.tsx +0 -546
  1142. package/frontend/src/components/tools/BaseToolComponent.stories.tsx +0 -316
  1143. package/frontend/src/components/tools/BaseToolComponent.tsx +0 -226
  1144. package/frontend/src/components/tools/BashOutputTool.stories.tsx +0 -106
  1145. package/frontend/src/components/tools/BashOutputTool.tsx +0 -198
  1146. package/frontend/src/components/tools/BashTool.stories.tsx +0 -163
  1147. package/frontend/src/components/tools/BashTool.tsx +0 -80
  1148. package/frontend/src/components/tools/EditTool.stories.tsx +0 -109
  1149. package/frontend/src/components/tools/EditTool.tsx +0 -60
  1150. package/frontend/src/components/tools/ExitPlanModeTool.stories.tsx +0 -118
  1151. package/frontend/src/components/tools/ExitPlanModeTool.tsx +0 -34
  1152. package/frontend/src/components/tools/GlobTool.stories.tsx +0 -122
  1153. package/frontend/src/components/tools/GlobTool.tsx +0 -50
  1154. package/frontend/src/components/tools/GrepTool.stories.tsx +0 -125
  1155. package/frontend/src/components/tools/GrepTool.tsx +0 -87
  1156. package/frontend/src/components/tools/KillBashTool.stories.tsx +0 -120
  1157. package/frontend/src/components/tools/KillBashTool.tsx +0 -112
  1158. package/frontend/src/components/tools/LSTool.stories.tsx +0 -132
  1159. package/frontend/src/components/tools/LSTool.tsx +0 -41
  1160. package/frontend/src/components/tools/ListMcpResourcesTool.stories.tsx +0 -125
  1161. package/frontend/src/components/tools/ListMcpResourcesTool.tsx +0 -84
  1162. package/frontend/src/components/tools/McpTool.stories.tsx +0 -140
  1163. package/frontend/src/components/tools/McpTool.tsx +0 -266
  1164. package/frontend/src/components/tools/MultiEditTool.stories.tsx +0 -127
  1165. package/frontend/src/components/tools/MultiEditTool.tsx +0 -59
  1166. package/frontend/src/components/tools/NotebookEditTool.stories.tsx +0 -137
  1167. package/frontend/src/components/tools/NotebookEditTool.tsx +0 -57
  1168. package/frontend/src/components/tools/NotebookReadTool.stories.tsx +0 -134
  1169. package/frontend/src/components/tools/NotebookReadTool.tsx +0 -25
  1170. package/frontend/src/components/tools/README.md +0 -677
  1171. package/frontend/src/components/tools/ReadMcpResourceTool.stories.tsx +0 -125
  1172. package/frontend/src/components/tools/ReadMcpResourceTool.tsx +0 -126
  1173. package/frontend/src/components/tools/ReadTool.stories.tsx +0 -116
  1174. package/frontend/src/components/tools/ReadTool.tsx +0 -37
  1175. package/frontend/src/components/tools/SkillTool.tsx +0 -91
  1176. package/frontend/src/components/tools/SubAgentMessageFlow.tsx +0 -172
  1177. package/frontend/src/components/tools/TaskTool.stories.tsx +0 -483
  1178. package/frontend/src/components/tools/TaskTool.tsx +0 -199
  1179. package/frontend/src/components/tools/TimeMachineTool.stories.tsx +0 -254
  1180. package/frontend/src/components/tools/TimeMachineTool.tsx +0 -126
  1181. package/frontend/src/components/tools/TodoWriteTool.stories.tsx +0 -128
  1182. package/frontend/src/components/tools/TodoWriteTool.tsx +0 -74
  1183. package/frontend/src/components/tools/ToolRenderer.stories.tsx +0 -460
  1184. package/frontend/src/components/tools/ToolRenderer.tsx +0 -147
  1185. package/frontend/src/components/tools/WebFetchTool.stories.tsx +0 -114
  1186. package/frontend/src/components/tools/WebFetchTool.tsx +0 -50
  1187. package/frontend/src/components/tools/WebSearchTool.stories.tsx +0 -124
  1188. package/frontend/src/components/tools/WebSearchTool.tsx +0 -67
  1189. package/frontend/src/components/tools/WriteTool.stories.tsx +0 -115
  1190. package/frontend/src/components/tools/WriteTool.tsx +0 -41
  1191. package/frontend/src/components/tools/__mocks__/toolTestData.ts +0 -557
  1192. package/frontend/src/components/tools/customMcpTools.tsx +0 -17
  1193. package/frontend/src/components/tools/index.stories.tsx +0 -107
  1194. package/frontend/src/components/tools/index.ts +0 -24
  1195. package/frontend/src/components/tools/mcpUtils.ts +0 -27
  1196. package/frontend/src/components/tools/sdk-types.ts +0 -327
  1197. package/frontend/src/components/tools/types.ts +0 -218
  1198. package/frontend/src/components/ui/Button.tsx +0 -39
  1199. package/frontend/src/components/ui/Input.tsx +0 -24
  1200. package/frontend/src/components/ui/Textarea.tsx +0 -23
  1201. package/frontend/src/components/ui/VersionInfo.tsx +0 -116
  1202. package/frontend/src/components/ui/dialog.tsx +0 -90
  1203. package/frontend/src/components/ui/index.ts +0 -4
  1204. package/frontend/src/components/ui/label.tsx +0 -19
  1205. package/frontend/src/components/ui/select.tsx +0 -121
  1206. package/frontend/src/components/ui/table.tsx +0 -117
  1207. package/frontend/src/components/ui/tabs.tsx +0 -124
  1208. package/frontend/src/components/ui/toast.tsx +0 -127
  1209. package/frontend/src/components/ui/toaster.tsx +0 -33
  1210. package/frontend/src/contexts/MobileContext.tsx +0 -109
  1211. package/frontend/src/hooks/__tests__/useAIStreamHandler.test.ts +0 -1198
  1212. package/frontend/src/hooks/agentChat/index.ts +0 -10
  1213. package/frontend/src/hooks/agentChat/useAIStreamHandler.ts +0 -1594
  1214. package/frontend/src/hooks/agentChat/useClaudeVersionManager.ts +0 -99
  1215. package/frontend/src/hooks/agentChat/useCommandCompletion.ts +0 -253
  1216. package/frontend/src/hooks/agentChat/useImageUpload.ts +0 -176
  1217. package/frontend/src/hooks/agentChat/useMessageSender.ts +0 -391
  1218. package/frontend/src/hooks/agentChat/useScrollManagement.ts +0 -66
  1219. package/frontend/src/hooks/agentChat/useSessionManager.ts +0 -110
  1220. package/frontend/src/hooks/agentChat/useToolSelector.ts +0 -82
  1221. package/frontend/src/hooks/agentChat/useUIState.ts +0 -103
  1222. package/frontend/src/hooks/index.ts +0 -3
  1223. package/frontend/src/hooks/use-toast.ts +0 -194
  1224. package/frontend/src/hooks/useA2AConfig.ts +0 -224
  1225. package/frontend/src/hooks/useA2AManagement.ts +0 -456
  1226. package/frontend/src/hooks/useAI.ts +0 -264
  1227. package/frontend/src/hooks/useAgents.ts +0 -411
  1228. package/frontend/src/hooks/useApiBase.ts +0 -31
  1229. package/frontend/src/hooks/useAuth.ts +0 -454
  1230. package/frontend/src/hooks/useBackendServices.ts +0 -58
  1231. package/frontend/src/hooks/useClaudeVersions.ts +0 -128
  1232. package/frontend/src/hooks/useCommands.ts +0 -312
  1233. package/frontend/src/hooks/useDashboardStats.ts +0 -61
  1234. package/frontend/src/hooks/useFileSystem.ts +0 -349
  1235. package/frontend/src/hooks/useFiles.ts +0 -80
  1236. package/frontend/src/hooks/useMarketplaces.ts +0 -120
  1237. package/frontend/src/hooks/useMobile.tsx +0 -110
  1238. package/frontend/src/hooks/usePlugins.ts +0 -239
  1239. package/frontend/src/hooks/useProjects.ts +0 -45
  1240. package/frontend/src/hooks/useResponsiveSettings.tsx +0 -22
  1241. package/frontend/src/hooks/useScheduledTasks.ts +0 -483
  1242. package/frontend/src/hooks/useSessionHeartbeat.ts +0 -173
  1243. package/frontend/src/hooks/useSessionHeartbeatOnSuccess.ts +0 -80
  1244. package/frontend/src/hooks/useSessions.ts +0 -96
  1245. package/frontend/src/hooks/useSkills.ts +0 -197
  1246. package/frontend/src/hooks/useSubagents.ts +0 -274
  1247. package/frontend/src/hooks/useTabNotification.ts +0 -155
  1248. package/frontend/src/hooks/useVersionCheck.ts +0 -164
  1249. package/frontend/src/i18n/index.ts +0 -66
  1250. package/frontend/src/i18n/locales/en-US/agents.json +0 -85
  1251. package/frontend/src/i18n/locales/en-US/common.json +0 -155
  1252. package/frontend/src/i18n/locales/en-US/components.json +0 -1197
  1253. package/frontend/src/i18n/locales/en-US/errors.json +0 -56
  1254. package/frontend/src/i18n/locales/en-US/home.json +0 -27
  1255. package/frontend/src/i18n/locales/en-US/onboarding.json +0 -122
  1256. package/frontend/src/i18n/locales/en-US/pages.json +0 -1409
  1257. package/frontend/src/i18n/locales/en-US/skills.json +0 -120
  1258. package/frontend/src/i18n/locales/zh-CN/agents.json +0 -85
  1259. package/frontend/src/i18n/locales/zh-CN/common.json +0 -155
  1260. package/frontend/src/i18n/locales/zh-CN/components.json +0 -1199
  1261. package/frontend/src/i18n/locales/zh-CN/errors.json +0 -56
  1262. package/frontend/src/i18n/locales/zh-CN/home.json +0 -27
  1263. package/frontend/src/i18n/locales/zh-CN/onboarding.json +0 -122
  1264. package/frontend/src/i18n/locales/zh-CN/pages.json +0 -1540
  1265. package/frontend/src/i18n/locales/zh-CN/pages.json.tmp +0 -0
  1266. package/frontend/src/i18n/locales/zh-CN/pages_new.json +0 -0
  1267. package/frontend/src/i18n/locales/zh-CN/skills.json +0 -120
  1268. package/frontend/src/i18n/types.ts +0 -19
  1269. package/frontend/src/index.css +0 -112
  1270. package/frontend/src/lib/authFetch.ts +0 -183
  1271. package/frontend/src/lib/config.ts +0 -120
  1272. package/frontend/src/lib/utils.ts +0 -6
  1273. package/frontend/src/main.tsx +0 -13
  1274. package/frontend/src/pages/AgentsPage.tsx +0 -781
  1275. package/frontend/src/pages/AnalyticsPage.tsx +0 -363
  1276. package/frontend/src/pages/ChatPage.tsx +0 -286
  1277. package/frontend/src/pages/CommandsPage.tsx +0 -445
  1278. package/frontend/src/pages/DashboardPage.tsx +0 -519
  1279. package/frontend/src/pages/HomePage.tsx +0 -223
  1280. package/frontend/src/pages/LandingPage.tsx +0 -607
  1281. package/frontend/src/pages/LoginPage.tsx +0 -510
  1282. package/frontend/src/pages/McpPage.tsx +0 -1049
  1283. package/frontend/src/pages/PluginsPage.tsx +0 -98
  1284. package/frontend/src/pages/ProjectSettings/A2AConfigTab.tsx +0 -468
  1285. package/frontend/src/pages/ProjectsPage.tsx +0 -818
  1286. package/frontend/src/pages/ScheduledTasksPage.tsx +0 -574
  1287. package/frontend/src/pages/SkillsPage.tsx +0 -6
  1288. package/frontend/src/pages/ToastTestPage.tsx +0 -33
  1289. package/frontend/src/pages/index.ts +0 -3
  1290. package/frontend/src/pages/settings/ApiSettingsPage.tsx +0 -240
  1291. package/frontend/src/pages/settings/CloudflareTunnelPage.tsx +0 -730
  1292. package/frontend/src/pages/settings/GeneralSettingsPage.tsx +0 -456
  1293. package/frontend/src/pages/settings/McpAdminSettingsPage.tsx +0 -1088
  1294. package/frontend/src/pages/settings/MemorySettingsPage.tsx +0 -153
  1295. package/frontend/src/pages/settings/SubagentsPage.tsx +0 -412
  1296. package/frontend/src/pages/settings/SystemInfoPage.tsx +0 -268
  1297. package/frontend/src/pages/settings/TelemetrySettingsPage.tsx +0 -175
  1298. package/frontend/src/pages/settings/VersionSettingsPage.tsx +0 -366
  1299. package/frontend/src/pages/settings/WebSocketTunnelPage.tsx +0 -1578
  1300. package/frontend/src/stores/authStore.ts +0 -99
  1301. package/frontend/src/stores/useAgentStore.ts +0 -426
  1302. package/frontend/src/stores/useSubAgentStore.ts +0 -207
  1303. package/frontend/src/styles/mobile.css +0 -156
  1304. package/frontend/src/test/setup.ts +0 -64
  1305. package/frontend/src/types/agents.ts +0 -109
  1306. package/frontend/src/types/backendServices.ts +0 -20
  1307. package/frontend/src/types/claude-versions.ts +0 -45
  1308. package/frontend/src/types/commands.ts +0 -63
  1309. package/frontend/src/types/index.ts +0 -171
  1310. package/frontend/src/types/plugins.ts +0 -128
  1311. package/frontend/src/types/scheduledTasks.ts +0 -140
  1312. package/frontend/src/types/skills.ts +0 -161
  1313. package/frontend/src/types/subagents.ts +0 -48
  1314. package/frontend/src/types/versionTemplates.ts +0 -270
  1315. package/frontend/src/utils/authHelpers.ts +0 -89
  1316. package/frontend/src/utils/backendServiceStorage.ts +0 -100
  1317. package/frontend/src/utils/commandFormatter.ts +0 -100
  1318. package/frontend/src/utils/commandGenerator.ts +0 -72
  1319. package/frontend/src/utils/commandHandler.ts +0 -205
  1320. package/frontend/src/utils/dateFormat.ts +0 -35
  1321. package/frontend/src/utils/eventBus.ts +0 -53
  1322. package/frontend/src/utils/index.ts +0 -34
  1323. package/frontend/src/utils/onboardingStorage.ts +0 -40
  1324. package/frontend/src/utils/smartNavigation.ts +0 -244
  1325. package/frontend/src/utils/streamReader.ts +0 -32
  1326. package/frontend/src/utils/systemCommands.ts +0 -49
  1327. package/frontend/src/utils/tabManager.ts +0 -816
  1328. package/frontend/src/utils/toast.ts +0 -49
  1329. package/frontend/src/utils/toolMapping.ts +0 -83
  1330. package/frontend/src/vite-env.d.ts +0 -3
  1331. package/frontend/tailwind.config.js +0 -119
  1332. package/frontend/tsconfig.app.json +0 -33
  1333. package/frontend/tsconfig.json +0 -7
  1334. package/frontend/tsconfig.node.json +0 -25
  1335. package/frontend/vite.config.ts +0 -73
  1336. package/frontend/vitest.config.ts +0 -39
  1337. package/frontend/vitest.shims.d.ts +0 -1
  1338. package/nginx.conf +0 -153
  1339. package/pnpm-workspace.yaml +0 -3
  1340. package/scripts/API_KEY_GENERATION_README.md +0 -181
  1341. package/scripts/README-nginx.md +0 -327
  1342. package/scripts/README.md +0 -259
  1343. package/scripts/build-complete.js +0 -98
  1344. package/scripts/build-npm.js +0 -251
  1345. package/scripts/check-system.sh +0 -153
  1346. package/scripts/cloudflare_tunnel.py +0 -292
  1347. package/scripts/deploy-feature.sh +0 -265
  1348. package/scripts/generate-api-key.ts +0 -59
  1349. package/scripts/install-linux.sh +0 -1507
  1350. package/scripts/install-macos.sh +0 -1194
  1351. package/scripts/remote-install.sh +0 -244
  1352. package/scripts/remove-feature.sh +0 -214
  1353. package/scripts/remove.sh +0 -390
  1354. package/scripts/requirements.txt +0 -1
  1355. package/scripts/restore.sh +0 -331
  1356. package/scripts/setup-nginx-ssl.sh +0 -242
  1357. package/scripts/setup_nginx.sh +0 -110
  1358. package/scripts/windows-install-simple.bat +0 -277
  1359. package/scripts/windows-install.ps1 +0 -620
  1360. package/tsconfig.json +0 -30
  1361. package/vercel.json +0 -44
  1362. /package/{frontend/public → public}/cc-studio.png +0 -0
  1363. /package/{frontend/public → public}/screenshot-chat.png +0 -0
  1364. /package/{frontend/public → public}/screenshot-mcp.png +0 -0
  1365. /package/{frontend/public → public}/vite.svg +0 -0
  1366. /package/{frontend/public → public}/wechat-qr-code.png +0 -0
@@ -0,0 +1,810 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.ProjectMetadataStorage = void 0;
37
+ const fs = __importStar(require("fs"));
38
+ const path = __importStar(require("path"));
39
+ const agentStorage_1 = require("./agentStorage");
40
+ const paths_js_1 = require("../config/paths.js");
41
+ const sdkConfig_js_1 = require("../config/sdkConfig.js");
42
+ class ProjectMetadataStorage {
43
+ metadataFilePath; // ~/.claude-agent/projects.json
44
+ projectsDir; // e.g., ~/.claude/projects/ or ~/.claude-internal/projects/
45
+ claudeConfigPath; // e.g., ~/.claude.json or ~/.claude-internal.json
46
+ agentStorage;
47
+ metadataCache = null;
48
+ constructor() {
49
+ this.metadataFilePath = paths_js_1.PROJECTS_METADATA_FILE;
50
+ this.projectsDir = (0, sdkConfig_js_1.getProjectsDir)();
51
+ this.claudeConfigPath = (0, sdkConfig_js_1.getSdkConfigPath)();
52
+ this.agentStorage = new agentStorage_1.AgentStorage();
53
+ // Ensure directories exist
54
+ this.ensureDirectoriesExist();
55
+ }
56
+ ensureDirectoriesExist() {
57
+ if (!fs.existsSync(paths_js_1.CLAUDE_AGENT_DIR)) {
58
+ fs.mkdirSync(paths_js_1.CLAUDE_AGENT_DIR, { recursive: true });
59
+ }
60
+ if (!fs.existsSync(this.projectsDir)) {
61
+ fs.mkdirSync(this.projectsDir, { recursive: true });
62
+ }
63
+ }
64
+ /**
65
+ * Load all metadata from the single JSON file
66
+ */
67
+ loadMetadata() {
68
+ if (this.metadataCache) {
69
+ return this.metadataCache;
70
+ }
71
+ try {
72
+ if (fs.existsSync(this.metadataFilePath)) {
73
+ const content = fs.readFileSync(this.metadataFilePath, 'utf-8');
74
+ this.metadataCache = JSON.parse(content);
75
+ return this.metadataCache;
76
+ }
77
+ }
78
+ catch (error) {
79
+ console.error('Failed to load project metadata:', error);
80
+ }
81
+ // If file doesn't exist, try to migrate from old format
82
+ console.log('📦 Migrating project metadata from old format...');
83
+ this.metadataCache = this.migrateFromOldFormat();
84
+ // Save the migrated data
85
+ if (Object.keys(this.metadataCache).length > 0) {
86
+ this.saveMetadata(this.metadataCache);
87
+ console.log(`✅ Migrated ${Object.keys(this.metadataCache).length} projects`);
88
+ }
89
+ else {
90
+ this.metadataCache = {};
91
+ }
92
+ return this.metadataCache;
93
+ }
94
+ /**
95
+ * Migrate from old format (~/.claude-agent/projects/*.json) to new format
96
+ */
97
+ migrateFromOldFormat() {
98
+ const oldProjectsDir = path.join(path.dirname(this.metadataFilePath), 'projects');
99
+ const store = {};
100
+ if (!fs.existsSync(oldProjectsDir)) {
101
+ return store;
102
+ }
103
+ try {
104
+ const files = fs.readdirSync(oldProjectsDir);
105
+ for (const file of files) {
106
+ if (!file.endsWith('.json'))
107
+ continue;
108
+ try {
109
+ const filePath = path.join(oldProjectsDir, file);
110
+ const content = fs.readFileSync(filePath, 'utf-8');
111
+ const metadata = JSON.parse(content);
112
+ // The old metadata.path points to ~/.claude/projects/{encoded-name}
113
+ // We need to extract the real project path from session files
114
+ const realPath = this.extractRealProjectPath(metadata.path);
115
+ if (realPath) {
116
+ // Update metadata with real path
117
+ metadata.path = realPath;
118
+ store[realPath] = metadata;
119
+ console.log(` ✓ Migrated: ${metadata.name} (${realPath})`);
120
+ }
121
+ else {
122
+ console.warn(` ⚠ Could not find real path for ${metadata.name}`);
123
+ }
124
+ }
125
+ catch (error) {
126
+ console.warn(` ⚠ Failed to migrate ${file}:`, error);
127
+ }
128
+ }
129
+ }
130
+ catch (error) {
131
+ console.error('Failed to read old projects directory:', error);
132
+ }
133
+ return store;
134
+ }
135
+ /**
136
+ * Extract real project path from session files in ~/.claude/projects/
137
+ */
138
+ extractRealProjectPath(claudeProjectDir) {
139
+ try {
140
+ if (!fs.existsSync(claudeProjectDir)) {
141
+ return null;
142
+ }
143
+ // Find all jsonl files in the project directory
144
+ const files = fs.readdirSync(claudeProjectDir).filter(file => file.endsWith('.jsonl'));
145
+ for (const file of files) {
146
+ try {
147
+ const filePath = path.join(claudeProjectDir, file);
148
+ const content = fs.readFileSync(filePath, 'utf-8');
149
+ const firstLine = content.split('\n')[0];
150
+ if (firstLine) {
151
+ const message = JSON.parse(firstLine);
152
+ if (message.cwd) {
153
+ return message.cwd;
154
+ }
155
+ }
156
+ }
157
+ catch {
158
+ // Skip this file and try the next one
159
+ continue;
160
+ }
161
+ }
162
+ }
163
+ catch {
164
+ // Directory doesn't exist or can't be read
165
+ }
166
+ return null;
167
+ }
168
+ /**
169
+ * Save all metadata to the single JSON file
170
+ */
171
+ saveMetadata(metadata) {
172
+ try {
173
+ fs.writeFileSync(this.metadataFilePath, JSON.stringify(metadata, null, 2), 'utf-8');
174
+ this.metadataCache = metadata;
175
+ }
176
+ catch (error) {
177
+ console.error('Failed to save project metadata:', error);
178
+ throw error;
179
+ }
180
+ }
181
+ /**
182
+ * Read all project paths from ~/.claude.json
183
+ */
184
+ getClaudeProjects() {
185
+ try {
186
+ if (fs.existsSync(this.claudeConfigPath)) {
187
+ const content = fs.readFileSync(this.claudeConfigPath, 'utf-8');
188
+ const config = JSON.parse(content);
189
+ if (config.projects && typeof config.projects === 'object') {
190
+ return Object.keys(config.projects);
191
+ }
192
+ }
193
+ }
194
+ catch (error) {
195
+ console.error('Failed to read Claude config:', error);
196
+ }
197
+ return [];
198
+ }
199
+ /**
200
+ * Get or create metadata for a project path
201
+ * Always resolves symlinks to use the real path for storage
202
+ */
203
+ getOrCreateMetadataForPath(projectPath) {
204
+ // Resolve symlinks to get the real path
205
+ const realPath = this.resolveRealPath(projectPath);
206
+ if (realPath !== projectPath) {
207
+ console.log(`🔗 [getOrCreateMetadataForPath] Resolved symlink: ${projectPath} -> ${realPath}`);
208
+ }
209
+ const allMetadata = this.loadMetadata();
210
+ // Check if metadata exists for the real path
211
+ if (allMetadata[realPath]) {
212
+ const existing = allMetadata[realPath];
213
+ let shouldUpdate = false;
214
+ // Always get fresh timestamps to compare with stored ones
215
+ const timestamps = this.getProjectTimestamps(realPath);
216
+ // Check if we need to refresh timestamps
217
+ const refreshConditions = [
218
+ // Condition 1: Migration artifacts (same timestamps)
219
+ existing.createdAt === existing.lastAccessed,
220
+ // Condition 2: Session directory is newer than stored lastAccessed
221
+ (() => {
222
+ const sessionDirPath = this.findClaudeSessionDir(realPath);
223
+ if (sessionDirPath && fs.existsSync(sessionDirPath)) {
224
+ const sessionStats = fs.statSync(sessionDirPath);
225
+ const sessionTime = new Date(sessionStats.mtime).getTime();
226
+ const storedTime = new Date(existing.lastAccessed).getTime();
227
+ return sessionTime > storedTime + 60000; // More than 1 minute newer
228
+ }
229
+ return false;
230
+ })(),
231
+ // Condition 3: Creation time looks wrong (much older than reasonable)
232
+ (() => {
233
+ const storedCreatedTime = new Date(existing.createdAt).getTime();
234
+ const filesystemCreatedTime = new Date(timestamps.createdAt).getTime();
235
+ const timeDiff = Math.abs(storedCreatedTime - filesystemCreatedTime);
236
+ return timeDiff > 24 * 60 * 60 * 1000; // More than 1 day difference
237
+ })()
238
+ ];
239
+ shouldUpdate = refreshConditions.some(condition => condition);
240
+ if (shouldUpdate) {
241
+ // Only update if we got better timestamps (not current time)
242
+ const now = new Date();
243
+ const timestampDate = new Date(timestamps.createdAt);
244
+ const timeDiff = Math.abs(now.getTime() - timestampDate.getTime());
245
+ // If timestamp is more than 1 minute old, it's likely from filesystem
246
+ if (timeDiff > 60000) {
247
+ existing.createdAt = timestamps.createdAt;
248
+ existing.lastAccessed = timestamps.lastAccessed;
249
+ allMetadata[realPath] = existing;
250
+ this.saveMetadata(allMetadata);
251
+ console.log(`🔄 Refreshed timestamps for: ${realPath}`);
252
+ console.log(` Created: ${existing.createdAt}`);
253
+ console.log(` Accessed: ${existing.lastAccessed}`);
254
+ }
255
+ }
256
+ return existing;
257
+ }
258
+ // Create new metadata if not found
259
+ // Try to get real timestamps from filesystem
260
+ const timestamps = this.getProjectTimestamps(realPath);
261
+ const metadataId = `project_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
262
+ const metadata = {
263
+ id: metadataId,
264
+ name: path.basename(realPath),
265
+ description: '',
266
+ path: realPath, // Store the real path (symlinks resolved)
267
+ createdAt: timestamps.createdAt,
268
+ lastAccessed: timestamps.lastAccessed,
269
+ agents: {},
270
+ defaultAgent: '',
271
+ skills: {},
272
+ tags: [],
273
+ metadata: {}
274
+ };
275
+ // Save to store using the real path as key
276
+ allMetadata[realPath] = metadata;
277
+ this.saveMetadata(allMetadata);
278
+ return metadata;
279
+ }
280
+ /**
281
+ * Get project timestamps from filesystem
282
+ */
283
+ getProjectTimestamps(projectPath) {
284
+ const now = new Date().toISOString();
285
+ let createdAt = now;
286
+ let lastAccessed = now;
287
+ try {
288
+ // Strategy 1: Try to get last accessed time from Claude sessions directory FIRST
289
+ // This is the most accurate for when the project was actually used
290
+ const sessionDirPath = this.findClaudeSessionDir(projectPath);
291
+ if (sessionDirPath && fs.existsSync(sessionDirPath)) {
292
+ const sessionStats = fs.statSync(sessionDirPath);
293
+ lastAccessed = sessionStats.mtime.toISOString();
294
+ }
295
+ // Strategy 2: Try to get creation time from real project directory
296
+ if (fs.existsSync(projectPath)) {
297
+ const stats = fs.statSync(projectPath);
298
+ createdAt = stats.birthtime.toISOString();
299
+ // Only use project directory mtime if we don't have session time
300
+ if (lastAccessed === now) {
301
+ lastAccessed = stats.mtime.toISOString();
302
+ }
303
+ }
304
+ else {
305
+ // Strategy 3: If project directory doesn't exist, try parent directory
306
+ // This helps for projects that were deleted but still exist in ~/.claude.json
307
+ const parentDir = path.dirname(projectPath);
308
+ if (fs.existsSync(parentDir)) {
309
+ const parentStats = fs.statSync(parentDir);
310
+ createdAt = parentStats.birthtime.toISOString();
311
+ // Only use parent directory mtime if we don't have session time
312
+ if (lastAccessed === now) {
313
+ lastAccessed = parentStats.mtime.toISOString();
314
+ }
315
+ console.log(`📁 Using parent directory timestamps for missing project: ${projectPath}`);
316
+ }
317
+ }
318
+ }
319
+ catch (error) {
320
+ console.warn(`Failed to get timestamps for ${projectPath}:`, error);
321
+ }
322
+ return { createdAt, lastAccessed };
323
+ }
324
+ /**
325
+ * Find the Claude session directory for a project path
326
+ */
327
+ findClaudeSessionDir(projectPath) {
328
+ try {
329
+ // First, try to resolve symlinks to get the real path
330
+ // This is important because Claude CLI stores sessions using the real path
331
+ let resolvedPath = projectPath;
332
+ try {
333
+ resolvedPath = fs.realpathSync(projectPath);
334
+ if (resolvedPath !== projectPath) {
335
+ console.log(`🔗 [ProjectMetadata] Resolved symlink: ${projectPath} -> ${resolvedPath}`);
336
+ }
337
+ }
338
+ catch {
339
+ // If can't resolve, use original path
340
+ }
341
+ // The session directory name is the encoded project path
342
+ // For example: /Users/kongjie/Desktop/.workspace2.nosync -> -Users-kongjie-Desktop--workspace2-nosync
343
+ // Claude CLI replaces both '/' and '.' with '-'
344
+ const encoded = resolvedPath.replace(/[\/\.]/g, '-');
345
+ const sessionDir = path.join(this.projectsDir, encoded);
346
+ if (fs.existsSync(sessionDir)) {
347
+ return sessionDir;
348
+ }
349
+ // Also try the original path in case the symlink resolution changed the result
350
+ if (resolvedPath !== projectPath) {
351
+ const originalEncoded = projectPath.replace(/[\/\.]/g, '-');
352
+ const originalSessionDir = path.join(this.projectsDir, originalEncoded);
353
+ if (fs.existsSync(originalSessionDir)) {
354
+ return originalSessionDir;
355
+ }
356
+ }
357
+ }
358
+ catch (error) {
359
+ // Ignore errors
360
+ }
361
+ return null;
362
+ }
363
+ /**
364
+ * Resolve a path to its real path (following symlinks)
365
+ */
366
+ resolveRealPath(projectPath) {
367
+ try {
368
+ return fs.realpathSync(projectPath);
369
+ }
370
+ catch {
371
+ // If path doesn't exist or can't be resolved, return original
372
+ return projectPath;
373
+ }
374
+ }
375
+ /**
376
+ * Get all projects by reading from both ~/.claude.json and AgentStudio metadata
377
+ * Deduplicates projects that point to the same real path (symlinks)
378
+ */
379
+ getAllProjects() {
380
+ const claudeProjectPaths = this.getClaudeProjects();
381
+ const allMetadata = this.loadMetadata();
382
+ const projects = [];
383
+ const processedPaths = new Set();
384
+ // Track real paths to deduplicate symlinks pointing to the same location
385
+ const processedRealPaths = new Set();
386
+ // First, process projects from Claude config (active projects)
387
+ for (const projectPath of claudeProjectPaths) {
388
+ try {
389
+ // Resolve symlinks to get real path for deduplication
390
+ const realPath = this.resolveRealPath(projectPath);
391
+ // Skip if we've already processed a project pointing to the same real path
392
+ if (processedRealPaths.has(realPath)) {
393
+ console.log(`🔗 [Dedup] Skipping duplicate project (same real path): ${projectPath} -> ${realPath}`);
394
+ continue;
395
+ }
396
+ // Get or create metadata for this project
397
+ const metadata = this.getOrCreateMetadataForPath(projectPath);
398
+ // Enrich with agent info
399
+ const enriched = this.enrichProjectWithAgentInfo(metadata);
400
+ projects.push(enriched);
401
+ processedPaths.add(projectPath);
402
+ processedRealPaths.add(realPath);
403
+ }
404
+ catch (error) {
405
+ console.error(`Failed to process project ${projectPath}:`, error);
406
+ }
407
+ }
408
+ // Then, process projects that only exist in AgentStudio metadata (created but not yet used)
409
+ for (const projectPath of Object.keys(allMetadata)) {
410
+ if (!processedPaths.has(projectPath)) {
411
+ try {
412
+ // Resolve symlinks to get real path for deduplication
413
+ const realPath = this.resolveRealPath(projectPath);
414
+ // Skip if we've already processed a project pointing to the same real path
415
+ if (processedRealPaths.has(realPath)) {
416
+ console.log(`🔗 [Dedup] Skipping duplicate AgentStudio project (same real path): ${projectPath} -> ${realPath}`);
417
+ continue;
418
+ }
419
+ const metadata = allMetadata[projectPath];
420
+ // Only include if the project has agents associated (active projects)
421
+ if (Object.keys(metadata.agents).length > 0) {
422
+ const enriched = this.enrichProjectWithAgentInfo(metadata);
423
+ projects.push(enriched);
424
+ processedRealPaths.add(realPath);
425
+ console.log(`📋 Added AgentStudio-only project: ${metadata.name}`);
426
+ }
427
+ }
428
+ catch (error) {
429
+ console.error(`Failed to process AgentStudio project ${projectPath}:`, error);
430
+ }
431
+ }
432
+ }
433
+ return projects.sort((a, b) => new Date(b.lastAccessed).getTime() - new Date(a.lastAccessed).getTime());
434
+ }
435
+ /**
436
+ * Get project metadata by path
437
+ */
438
+ getProjectMetadata(projectPath) {
439
+ const realPath = this.resolveRealPath(projectPath); // Resolve symlinks for lookup
440
+ const allMetadata = this.loadMetadata();
441
+ return allMetadata[realPath] || null;
442
+ }
443
+ /**
444
+ * Save project metadata for a specific path
445
+ */
446
+ saveProjectMetadata(projectPath, metadata) {
447
+ const realPath = this.resolveRealPath(projectPath); // Resolve symlinks for storage
448
+ const allMetadata = this.loadMetadata();
449
+ allMetadata[realPath] = metadata;
450
+ this.saveMetadata(allMetadata);
451
+ }
452
+ /**
453
+ * Get project directory last modified time from filesystem by path
454
+ */
455
+ getProjectLastModifiedByPath(projectPath, metadata) {
456
+ try {
457
+ // Priority 1: Use session directory time (most accurate for last activity)
458
+ const sessionDirPath = this.findClaudeSessionDir(projectPath);
459
+ if (sessionDirPath && fs.existsSync(sessionDirPath)) {
460
+ const sessionStats = fs.statSync(sessionDirPath);
461
+ return sessionStats.mtime.toISOString();
462
+ }
463
+ // Priority 2: Use project directory time
464
+ if (fs.existsSync(projectPath)) {
465
+ const stats = fs.statSync(projectPath);
466
+ return stats.mtime.toISOString();
467
+ }
468
+ }
469
+ catch (error) {
470
+ console.warn(`Failed to get filesystem time for project ${projectPath}:`, error);
471
+ }
472
+ // Fallback to metadata lastAccessed if filesystem time is unavailable
473
+ return metadata.lastAccessed;
474
+ }
475
+ /**
476
+ * Enrich project metadata with agent information
477
+ */
478
+ enrichProjectWithAgentInfo(metadata) {
479
+ const enabledAgents = Object.keys(metadata.agents).filter(agentId => metadata.agents[agentId].enabled);
480
+ // Get default agent info
481
+ let defaultAgent = metadata.defaultAgent;
482
+ let defaultAgentName = '';
483
+ let defaultAgentIcon = '';
484
+ if (defaultAgent && metadata.agents[defaultAgent]?.enabled) {
485
+ const agent = this.agentStorage.getAgent(defaultAgent);
486
+ if (agent) {
487
+ defaultAgentName = agent.name;
488
+ defaultAgentIcon = agent.ui.icon;
489
+ }
490
+ }
491
+ else if (enabledAgents.length > 0) {
492
+ // Use the most recently used agent as default
493
+ defaultAgent = enabledAgents.reduce((latest, agentId) => {
494
+ const latestTime = metadata.agents[latest]?.lastUsed || '';
495
+ const currentTime = metadata.agents[agentId]?.lastUsed || '';
496
+ return currentTime > latestTime ? agentId : latest;
497
+ }, enabledAgents[0]);
498
+ const agent = this.agentStorage.getAgent(defaultAgent);
499
+ if (agent) {
500
+ defaultAgentName = agent.name;
501
+ defaultAgentIcon = agent.ui.icon;
502
+ // Update metadata with new default
503
+ metadata.defaultAgent = defaultAgent;
504
+ const allMetadata = this.loadMetadata();
505
+ allMetadata[metadata.path] = metadata;
506
+ this.saveMetadata(allMetadata);
507
+ }
508
+ }
509
+ else {
510
+ // No agents assigned, use claude-code as default fallback
511
+ const fallbackAgent = this.agentStorage.getAgent('claude-code');
512
+ if (fallbackAgent && fallbackAgent.enabled) {
513
+ defaultAgent = 'claude-code';
514
+ defaultAgentName = fallbackAgent.name;
515
+ defaultAgentIcon = fallbackAgent.ui.icon;
516
+ console.log(`📋 Using fallback agent (claude-code) for project: ${metadata.name}`);
517
+ }
518
+ }
519
+ // Use the path from metadata (which is the real project path)
520
+ const projectPath = metadata.path;
521
+ // Get actual last modified time from filesystem
522
+ const lastAccessed = this.getProjectLastModifiedByPath(projectPath, metadata);
523
+ // Extract directory name from path for compatibility
524
+ const dirName = path.basename(projectPath);
525
+ return {
526
+ id: metadata.id,
527
+ name: metadata.name,
528
+ dirName,
529
+ path: projectPath,
530
+ realPath: projectPath,
531
+ description: metadata.description,
532
+ createdAt: metadata.createdAt,
533
+ lastAccessed: lastAccessed,
534
+ agents: enabledAgents,
535
+ defaultAgent,
536
+ defaultAgentName,
537
+ defaultAgentIcon,
538
+ defaultProviderId: metadata.defaultProviderId,
539
+ defaultModel: metadata.defaultModel,
540
+ tags: metadata.tags,
541
+ metadata: metadata.metadata
542
+ };
543
+ }
544
+ /**
545
+ * Add an agent to a project
546
+ */
547
+ addAgentToProject(projectPath, agentId) {
548
+ const metadata = this.getProjectMetadata(projectPath);
549
+ if (!metadata)
550
+ return;
551
+ const now = new Date().toISOString();
552
+ if (!metadata.agents[agentId]) {
553
+ metadata.agents[agentId] = {
554
+ enabled: true,
555
+ lastUsed: now,
556
+ sessionCount: 0,
557
+ customConfig: {}
558
+ };
559
+ }
560
+ else {
561
+ metadata.agents[agentId].enabled = true;
562
+ metadata.agents[agentId].lastUsed = now;
563
+ }
564
+ // Set as default if no default agent exists
565
+ if (!metadata.defaultAgent) {
566
+ metadata.defaultAgent = agentId;
567
+ }
568
+ metadata.lastAccessed = now;
569
+ this.saveProjectMetadata(projectPath, metadata);
570
+ }
571
+ /**
572
+ * Remove an agent from a project
573
+ */
574
+ removeAgentFromProject(projectPath, agentId) {
575
+ const metadata = this.getProjectMetadata(projectPath);
576
+ if (!metadata)
577
+ return;
578
+ if (metadata.agents[agentId]) {
579
+ metadata.agents[agentId].enabled = false;
580
+ // If this was the default agent, find a new default
581
+ if (metadata.defaultAgent === agentId) {
582
+ const enabledAgents = Object.keys(metadata.agents).filter(id => id !== agentId && metadata.agents[id].enabled);
583
+ metadata.defaultAgent = enabledAgents.length > 0 ? enabledAgents[0] : '';
584
+ }
585
+ metadata.lastAccessed = new Date().toISOString();
586
+ this.saveProjectMetadata(projectPath, metadata);
587
+ }
588
+ }
589
+ /**
590
+ * Set default agent for a project
591
+ */
592
+ setDefaultAgent(projectPath, agentId) {
593
+ const metadata = this.getProjectMetadata(projectPath);
594
+ if (!metadata)
595
+ return;
596
+ // Ensure the agent is enabled for this project
597
+ if (!metadata.agents[agentId]) {
598
+ this.addAgentToProject(projectPath, agentId);
599
+ return;
600
+ }
601
+ if (metadata.agents[agentId].enabled) {
602
+ metadata.defaultAgent = agentId;
603
+ metadata.lastAccessed = new Date().toISOString();
604
+ this.saveProjectMetadata(projectPath, metadata);
605
+ }
606
+ }
607
+ /**
608
+ * Update project tags
609
+ */
610
+ updateProjectTags(projectPath, tags) {
611
+ const metadata = this.getProjectMetadata(projectPath);
612
+ if (!metadata)
613
+ return;
614
+ metadata.tags = tags;
615
+ metadata.lastAccessed = new Date().toISOString();
616
+ this.saveProjectMetadata(projectPath, metadata);
617
+ }
618
+ /**
619
+ * Update project custom metadata
620
+ */
621
+ updateProjectMetadata(projectPath, customMetadata) {
622
+ const metadata = this.getProjectMetadata(projectPath);
623
+ if (!metadata)
624
+ return;
625
+ metadata.metadata = { ...metadata.metadata, ...customMetadata };
626
+ metadata.lastAccessed = new Date().toISOString();
627
+ this.saveProjectMetadata(projectPath, metadata);
628
+ }
629
+ /**
630
+ * Update project basic info
631
+ */
632
+ updateProjectInfo(projectPath, updates) {
633
+ const metadata = this.getProjectMetadata(projectPath);
634
+ if (!metadata)
635
+ return;
636
+ if (updates.name !== undefined) {
637
+ metadata.name = updates.name;
638
+ }
639
+ if (updates.description !== undefined) {
640
+ metadata.description = updates.description;
641
+ }
642
+ metadata.lastAccessed = new Date().toISOString();
643
+ this.saveProjectMetadata(projectPath, metadata);
644
+ }
645
+ /**
646
+ * Record agent usage for a project
647
+ */
648
+ recordAgentUsage(projectPath, agentId) {
649
+ const metadata = this.getProjectMetadata(projectPath);
650
+ if (!metadata)
651
+ return;
652
+ const now = new Date().toISOString();
653
+ if (!metadata.agents[agentId]) {
654
+ metadata.agents[agentId] = {
655
+ enabled: true,
656
+ lastUsed: now,
657
+ sessionCount: 1,
658
+ customConfig: {}
659
+ };
660
+ }
661
+ else {
662
+ metadata.agents[agentId].lastUsed = now;
663
+ metadata.agents[agentId].sessionCount += 1;
664
+ metadata.agents[agentId].enabled = true;
665
+ }
666
+ // Update default agent to the most recently used
667
+ metadata.defaultAgent = agentId;
668
+ metadata.lastAccessed = now;
669
+ this.saveProjectMetadata(projectPath, metadata);
670
+ }
671
+ /**
672
+ * Create a new project metadata entry
673
+ * @param projectPath The project path (will be resolved to real path if it's a symlink)
674
+ * @param initialData Initial project data including name, description, agentId, etc.
675
+ */
676
+ createProject(projectPath, initialData) {
677
+ // Resolve symlinks to always store the real path
678
+ const realPath = this.resolveRealPath(projectPath);
679
+ if (realPath !== projectPath) {
680
+ console.log(`🔗 [createProject] Resolved symlink: ${projectPath} -> ${realPath}`);
681
+ }
682
+ const now = new Date().toISOString();
683
+ // Generate a unique metadata ID
684
+ const metadataId = `project_${Date.now()}_${Math.random().toString(36).substr(2, 9)}`;
685
+ const metadata = {
686
+ id: metadataId,
687
+ name: initialData.name || path.basename(realPath),
688
+ description: initialData.description || '',
689
+ path: realPath, // Store the real project path (symlinks resolved)
690
+ createdAt: now,
691
+ lastAccessed: now,
692
+ agents: {},
693
+ defaultAgent: '',
694
+ skills: {},
695
+ tags: initialData.tags || [],
696
+ metadata: initialData.metadata || {}
697
+ };
698
+ // Add initial agent if specified
699
+ if (initialData.agentId) {
700
+ metadata.agents[initialData.agentId] = {
701
+ enabled: true,
702
+ lastUsed: now,
703
+ sessionCount: 0,
704
+ customConfig: {}
705
+ };
706
+ metadata.defaultAgent = initialData.agentId;
707
+ }
708
+ // Save metadata using the real path
709
+ this.saveProjectMetadata(realPath, metadata);
710
+ return metadata;
711
+ }
712
+ /**
713
+ * Delete a project (remove metadata, claude config entry, and session directory)
714
+ * Handles both symlink paths and real paths for backward compatibility
715
+ */
716
+ deleteProject(projectPath) {
717
+ try {
718
+ const realPath = this.resolveRealPath(projectPath); // Resolve symlinks for deletion
719
+ let deletedSomething = false;
720
+ console.log(`🗑️ [deleteProject] Attempting to delete: ${projectPath}`);
721
+ console.log(`🗑️ [deleteProject] Resolved real path: ${realPath}`);
722
+ // 1. Delete from AgentStudio metadata
723
+ // Check both the real path and the original path (for backward compatibility with old data)
724
+ const allMetadata = this.loadMetadata();
725
+ // Try real path first
726
+ if (allMetadata[realPath]) {
727
+ delete allMetadata[realPath];
728
+ this.saveMetadata(allMetadata);
729
+ deletedSomething = true;
730
+ console.log(`🗑️ Removed project metadata (real path): ${realPath}`);
731
+ }
732
+ // Also try the original path if different (backward compatibility)
733
+ else if (projectPath !== realPath && allMetadata[projectPath]) {
734
+ delete allMetadata[projectPath];
735
+ this.saveMetadata(allMetadata);
736
+ deletedSomething = true;
737
+ console.log(`🗑️ Removed project metadata (original path): ${projectPath}`);
738
+ }
739
+ // 2. Remove from Claude's config file (~/.claude.json)
740
+ try {
741
+ if (fs.existsSync(this.claudeConfigPath)) {
742
+ const content = fs.readFileSync(this.claudeConfigPath, 'utf-8');
743
+ const config = JSON.parse(content);
744
+ // Try to remove both the symlink path and real path from Claude config
745
+ let removed = false;
746
+ if (config.projects && config.projects[realPath]) {
747
+ delete config.projects[realPath];
748
+ removed = true;
749
+ }
750
+ if (config.projects && config.projects[projectPath] && projectPath !== realPath) {
751
+ delete config.projects[projectPath];
752
+ removed = true;
753
+ }
754
+ if (removed) {
755
+ fs.writeFileSync(this.claudeConfigPath, JSON.stringify(config, null, 2));
756
+ deletedSomething = true;
757
+ console.log(`🗑️ Removed from Claude config: ${realPath}`);
758
+ }
759
+ }
760
+ }
761
+ catch (error) {
762
+ console.warn(`Failed to remove from Claude config:`, error);
763
+ }
764
+ // 3. Remove Claude session directory
765
+ // Try both real path and original path for backward compatibility
766
+ try {
767
+ let sessionDirPath = this.findClaudeSessionDir(realPath);
768
+ if (sessionDirPath && fs.existsSync(sessionDirPath)) {
769
+ fs.rmSync(sessionDirPath, { recursive: true, force: true });
770
+ deletedSomething = true;
771
+ console.log(`🗑️ Removed session directory (real path): ${sessionDirPath}`);
772
+ }
773
+ // Also try original path if different
774
+ if (projectPath !== realPath) {
775
+ sessionDirPath = this.findClaudeSessionDir(projectPath);
776
+ if (sessionDirPath && fs.existsSync(sessionDirPath)) {
777
+ fs.rmSync(sessionDirPath, { recursive: true, force: true });
778
+ deletedSomething = true;
779
+ console.log(`🗑️ Removed session directory (original path): ${sessionDirPath}`);
780
+ }
781
+ }
782
+ }
783
+ catch (error) {
784
+ console.warn(`Failed to remove session directory:`, error);
785
+ }
786
+ return deletedSomething;
787
+ }
788
+ catch (error) {
789
+ console.error(`Failed to delete project ${projectPath}:`, error);
790
+ return false;
791
+ }
792
+ }
793
+ /**
794
+ * Get project by path
795
+ */
796
+ getProject(projectPath) {
797
+ try {
798
+ const metadata = this.getProjectMetadata(projectPath);
799
+ if (!metadata)
800
+ return null;
801
+ return this.enrichProjectWithAgentInfo(metadata);
802
+ }
803
+ catch (error) {
804
+ console.error(`Failed to get project ${projectPath}:`, error);
805
+ return null;
806
+ }
807
+ }
808
+ }
809
+ exports.ProjectMetadataStorage = ProjectMetadataStorage;
810
+ //# sourceMappingURL=projectMetadataStorage.js.map