agentstudio 0.3.3 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (371) hide show
  1. package/bin/agentstudio.js +44 -4
  2. package/bin/agentstudio.js.map +1 -1
  3. package/bin/serviceManager.d.ts.map +1 -1
  4. package/bin/serviceManager.js +312 -28
  5. package/bin/serviceManager.js.map +1 -1
  6. package/config/engineConfig.d.ts +96 -0
  7. package/config/engineConfig.d.ts.map +1 -0
  8. package/config/engineConfig.js +429 -0
  9. package/config/engineConfig.js.map +1 -0
  10. package/engines/claude/__tests__/supportedModels.test.d.ts +10 -0
  11. package/engines/claude/__tests__/supportedModels.test.d.ts.map +1 -0
  12. package/engines/claude/__tests__/supportedModels.test.js +89 -0
  13. package/engines/claude/__tests__/supportedModels.test.js.map +1 -0
  14. package/engines/claude/aguiAdapter.d.ts +101 -0
  15. package/engines/claude/aguiAdapter.d.ts.map +1 -0
  16. package/engines/claude/aguiAdapter.js +382 -0
  17. package/engines/claude/aguiAdapter.js.map +1 -0
  18. package/engines/claude/claudeEngine.d.ts +42 -0
  19. package/engines/claude/claudeEngine.d.ts.map +1 -0
  20. package/engines/claude/claudeEngine.js +325 -0
  21. package/engines/claude/claudeEngine.js.map +1 -0
  22. package/engines/claude/index.d.ts +8 -0
  23. package/engines/claude/index.d.ts.map +1 -0
  24. package/engines/claude/index.js +14 -0
  25. package/engines/claude/index.js.map +1 -0
  26. package/engines/cursor/__tests__/a2aAdapter.test.d.ts +6 -0
  27. package/engines/cursor/__tests__/a2aAdapter.test.d.ts.map +1 -0
  28. package/engines/cursor/__tests__/a2aAdapter.test.js +376 -0
  29. package/engines/cursor/__tests__/a2aAdapter.test.js.map +1 -0
  30. package/engines/cursor/a2aAdapter.d.ts +180 -0
  31. package/engines/cursor/a2aAdapter.d.ts.map +1 -0
  32. package/engines/cursor/a2aAdapter.js +405 -0
  33. package/engines/cursor/a2aAdapter.js.map +1 -0
  34. package/engines/cursor/aguiAdapter.d.ts +97 -0
  35. package/engines/cursor/aguiAdapter.d.ts.map +1 -0
  36. package/engines/cursor/aguiAdapter.js +507 -0
  37. package/engines/cursor/aguiAdapter.js.map +1 -0
  38. package/engines/cursor/cursorEngine.d.ts +68 -0
  39. package/engines/cursor/cursorEngine.d.ts.map +1 -0
  40. package/engines/cursor/cursorEngine.js +465 -0
  41. package/engines/cursor/cursorEngine.js.map +1 -0
  42. package/engines/cursor/index.d.ts +11 -0
  43. package/engines/cursor/index.d.ts.map +1 -0
  44. package/engines/cursor/index.js +21 -0
  45. package/engines/cursor/index.js.map +1 -0
  46. package/engines/engineManager.d.ts +80 -0
  47. package/engines/engineManager.d.ts.map +1 -0
  48. package/engines/engineManager.js +137 -0
  49. package/engines/engineManager.js.map +1 -0
  50. package/engines/index.d.ts +26 -0
  51. package/engines/index.d.ts.map +1 -0
  52. package/engines/index.js +81 -0
  53. package/engines/index.js.map +1 -0
  54. package/engines/types.d.ts +319 -0
  55. package/engines/types.d.ts.map +1 -0
  56. package/engines/types.js +69 -0
  57. package/engines/types.js.map +1 -0
  58. package/index.d.ts.map +1 -1
  59. package/index.js +178 -25
  60. package/index.js.map +1 -1
  61. package/middleware/auth.d.ts.map +1 -1
  62. package/middleware/auth.js +4 -0
  63. package/middleware/auth.js.map +1 -1
  64. package/package.json +7 -1
  65. package/public/assets/AgentsPage-D462iGRy.js +10 -0
  66. package/public/assets/{Button-BoiVlafj.js → Button-B_6lGF64.js} +1 -1
  67. package/public/assets/ChatPage-NjuRQPaL.js +478 -0
  68. package/public/assets/{CommandForm-Se4iemMp.js → CommandForm-DwGvE9A_.js} +1 -1
  69. package/public/assets/CommandsPage-DeUS8fhJ.js +1 -0
  70. package/public/assets/CursorConfigPage-Bl1Blrbr.js +1 -0
  71. package/public/assets/{DashboardPage-DbCVzPKz.js → DashboardPage-DH-2iuqf.js} +1 -1
  72. package/public/assets/EngineGate-DxTYx9wb.js +1 -0
  73. package/public/assets/{FileBrowser-DcoBWzKK.js → FileBrowser-CeGsJnUL.js} +5 -5
  74. package/public/assets/{FileExplorer-B41BB0LM.js → FileExplorer-x5R0Tcmk.js} +1 -1
  75. package/public/assets/GeneralSettingsPage-lhNEJQD_.js +1 -0
  76. package/public/assets/HooksPage-9fingjdz.js +1 -0
  77. package/public/assets/LandingPage-BAzi8PDo.js +1 -0
  78. package/public/assets/LoginPage-kQ_NWy8p.js +16 -0
  79. package/public/assets/McpAdminSettingsPage-DQHpWHRC.js +7 -0
  80. package/public/assets/McpPage-DLHfmhSJ.js +20 -0
  81. package/public/assets/{MemorySettingsPage-DYSuz-hU.js → MemorySettingsPage-CRIPja9X.js} +1 -1
  82. package/public/assets/ModelsPage-Bb5vSsuc.js +1 -0
  83. package/public/assets/PluginsPage-BhKM7gV7.js +12 -0
  84. package/public/assets/ProjectSelector-Cbct6pnn.js +1 -0
  85. package/public/assets/ProjectsPage-lQo7-7dt.js +21 -0
  86. package/public/assets/RulesPage-BRnB7__3.js +1 -0
  87. package/public/assets/ScheduledTasksPage-CZiABTSb.js +1 -0
  88. package/public/assets/SettingsLayout-BfG7ftoT.js +1 -0
  89. package/public/assets/SkillsPage-CL6MKxQ9.js +18 -0
  90. package/public/assets/{SubagentForm-C0R084ja.js → SubagentForm-BzzeWg0W.js} +2 -2
  91. package/public/assets/{SubagentsPage-BKFNmqxg.js → SubagentsPage-DhFP2kDE.js} +1 -1
  92. package/public/assets/SystemInfoPage-CFHUN3j8.js +1 -0
  93. package/public/assets/{TelemetrySettingsPage-Ck2btMol.js → TelemetrySettingsPage-BcZFVBXN.js} +1 -1
  94. package/public/assets/{ToastTestPage-B79DFhqI.js → ToastTestPage-BtGnZdyk.js} +1 -1
  95. package/public/assets/{ToolsList-Kfxwp80g.js → ToolsList-CTsQr53G.js} +1 -1
  96. package/public/assets/{UnifiedToolSelector-CkafUbz3.js → UnifiedToolSelector-BP6fuyzG.js} +1 -1
  97. package/public/assets/VersionSettingsPage-DjOjyL3X.js +5 -0
  98. package/public/assets/VoiceSettingsPage-d3l9AWBn.js +1 -0
  99. package/public/assets/WebSocketTunnelPage-CfHtJR9r.js +1 -0
  100. package/public/assets/_basePickBy-Bac3af5O.js +1 -0
  101. package/public/assets/{_baseUniq-COj5YnAO.js → _baseUniq-Dvh9sZ-T.js} +1 -1
  102. package/public/assets/{agents-3mB536QF.js → agents-KlPdWQ8K.js} +1 -1
  103. package/public/assets/arc-CRR5EPpK.js +1 -0
  104. package/public/assets/{architectureDiagram-VXUJARFQ-DD1BwT1T.js → architectureDiagram-VXUJARFQ-Ct1p8kmV.js} +1 -1
  105. package/public/assets/{blockDiagram-VD42YOAC-DFKUIZc6.js → blockDiagram-VD42YOAC-CX_8YiYn.js} +1 -1
  106. package/public/assets/{c4Diagram-YG6GDRKO-B0VVIIvh.js → c4Diagram-YG6GDRKO-BIBVWIY4.js} +1 -1
  107. package/public/assets/channel-CPs-2Y_m.js +1 -0
  108. package/public/assets/{chunk-4BX2VUAB-DM8J7YO9.js → chunk-4BX2VUAB-CQNNXsb5.js} +1 -1
  109. package/public/assets/{chunk-55IACEB6-BjhdmGlM.js → chunk-55IACEB6-N_ZrGhOu.js} +1 -1
  110. package/public/assets/{chunk-B4BG7PRW-1RJ6n2xv.js → chunk-B4BG7PRW-CI6DkhbM.js} +1 -1
  111. package/public/assets/{chunk-DI55MBZ5-1-EHSO67.js → chunk-DI55MBZ5-Dgj-Eo9U.js} +1 -1
  112. package/public/assets/{chunk-FMBD7UC4-DV3SMJK_.js → chunk-FMBD7UC4-o4B0HzSK.js} +1 -1
  113. package/public/assets/{chunk-QN33PNHL-IlsCTdDq.js → chunk-QN33PNHL-DXlfdPIk.js} +1 -1
  114. package/public/assets/{chunk-QZHKN3VN-DJXs-Fqo.js → chunk-QZHKN3VN-ZCBUGD7e.js} +1 -1
  115. package/public/assets/{chunk-TZMSLE5B-BxHO9wa1.js → chunk-TZMSLE5B-N3lZ106d.js} +1 -1
  116. package/public/assets/classDiagram-2ON5EDUG-DCwNRxvC.js +1 -0
  117. package/public/assets/classDiagram-v2-WZHVMYZB-DCwNRxvC.js +1 -0
  118. package/public/assets/clone-C3DcKvhB.js +1 -0
  119. package/public/assets/{cose-bilkent-S5V4N54A-BVJXoW_K.js → cose-bilkent-S5V4N54A-Crc39J9q.js} +1 -1
  120. package/public/assets/{dagre-6UL2VRFP-DHDnVshA.js → dagre-6UL2VRFP-nC3WLCf7.js} +1 -1
  121. package/public/assets/{diagram-PSM6KHXK-40qGxDeg.js → diagram-PSM6KHXK-B5DQIDQ3.js} +1 -1
  122. package/public/assets/diagram-QEK2KX5R-BccDOQuz.js +43 -0
  123. package/public/assets/{diagram-S2PKOQOG-D7AX72a5.js → diagram-S2PKOQOG-D-Cv16WE.js} +1 -1
  124. package/public/assets/{erDiagram-Q2GNP2WA-BHsgeBpL.js → erDiagram-Q2GNP2WA-Dr0ZgvnS.js} +1 -1
  125. package/public/assets/{flowDiagram-NV44I4VS-BYqChOSE.js → flowDiagram-NV44I4VS-DGbbfVi5.js} +1 -1
  126. package/public/assets/{ganttDiagram-LVOFAZNH-CZFFSLKX.js → ganttDiagram-LVOFAZNH-C-3Wnf96.js} +1 -1
  127. package/public/assets/{gitGraphDiagram-NY62KEGX-C5Bgrf0J.js → gitGraphDiagram-NY62KEGX--Q8whT5z.js} +1 -1
  128. package/public/assets/{graph-BP5lFRBg.js → graph-CO1DMS2E.js} +1 -1
  129. package/public/assets/{index-BEPv9Bqe.js → index-B5hSSnK3.js} +58 -58
  130. package/public/assets/index-gbHlIp96.css +1 -0
  131. package/public/assets/infoDiagram-F6ZHWCRC-DSR9cM2B.js +2 -0
  132. package/public/assets/{journeyDiagram-XKPGCS4Q--abC1RHz.js → journeyDiagram-XKPGCS4Q-Cc00zHNt.js} +1 -1
  133. package/public/assets/{kanban-definition-3W4ZIXB7-BJeChfWu.js → kanban-definition-3W4ZIXB7-BF_gHshF.js} +6 -6
  134. package/public/assets/{layout-DjAix4WK.js → layout-BxoLV88o.js} +1 -1
  135. package/public/assets/{linear-Cw0z8VNY.js → linear-Y8e2e012.js} +1 -1
  136. package/public/assets/{mindmap-definition-VGOIOE7T-U_T9xIUk.js → mindmap-definition-VGOIOE7T-CzpuQA4p.js} +1 -1
  137. package/public/assets/{pieDiagram-ADFJNKIX-B0mT9OgH.js → pieDiagram-ADFJNKIX-B22MhIcy.js} +2 -2
  138. package/public/assets/{quadrantDiagram-AYHSOK5B-BWdlgO0u.js → quadrantDiagram-AYHSOK5B-CTT9bIA8.js} +1 -1
  139. package/public/assets/{requirementDiagram-UZGBJVZJ-B-8LxsGB.js → requirementDiagram-UZGBJVZJ-B_vjXDH9.js} +1 -1
  140. package/public/assets/{sankeyDiagram-TZEHDZUN-OXuxkgGA.js → sankeyDiagram-TZEHDZUN-CKfZ4633.js} +1 -1
  141. package/public/assets/{sequenceDiagram-WL72ISMW-Bt5twlzi.js → sequenceDiagram-WL72ISMW-BmTPN6j6.js} +1 -1
  142. package/public/assets/{stateDiagram-FKZM4ZOC-Dmph7TeW.js → stateDiagram-FKZM4ZOC-y2fQE1C7.js} +1 -1
  143. package/public/assets/stateDiagram-v2-4FDKWEC3-C4CM6z52.js +1 -0
  144. package/public/assets/{table-DjMdAdjH.js → table-BJUz-ck5.js} +1 -1
  145. package/public/assets/{timeline-definition-IT6M3QCI-CcV8nyIH.js → timeline-definition-IT6M3QCI-DsXlR68n.js} +1 -1
  146. package/public/assets/{tools-BAI9XHGS.js → tools-BZTR2NP1.js} +1 -1
  147. package/public/assets/{treemap-KMMF4GRG-DBuwkj4f.js → treemap-KMMF4GRG-Cecs9uxX.js} +1 -1
  148. package/public/assets/{ui-components-DaGtjl0g.js → ui-components-DjgDPiqV.js} +153 -128
  149. package/public/assets/useAgents-8KXN6U61.js +2 -0
  150. package/public/assets/{useClaudeVersions-Cy71v4HE.js → useClaudeVersions-DicHLV6A.js} +1 -1
  151. package/public/assets/useCommands-DbSH48ba.js +1 -0
  152. package/public/assets/{useProjects-XgfgISgV.js → useProjects-Bbh6hJMM.js} +1 -1
  153. package/public/assets/{useSessions-CQgq4d84.js → useSessions-DOa4-xiB.js} +1 -1
  154. package/public/assets/{xychartDiagram-PRI3JC2R-Bo9K-U2S.js → xychartDiagram-PRI3JC2R-C2IWhyM7.js} +1 -1
  155. package/public/index.html +5 -5
  156. package/routes/a2a.d.ts +7 -0
  157. package/routes/a2a.d.ts.map +1 -1
  158. package/routes/a2a.js +193 -21
  159. package/routes/a2a.js.map +1 -1
  160. package/routes/agents.d.ts.map +1 -1
  161. package/routes/agents.js +45 -2
  162. package/routes/agents.js.map +1 -1
  163. package/routes/agui.d.ts +16 -0
  164. package/routes/agui.d.ts.map +1 -0
  165. package/routes/agui.js +520 -0
  166. package/routes/agui.js.map +1 -0
  167. package/routes/commands.d.ts.map +1 -1
  168. package/routes/commands.js +35 -3
  169. package/routes/commands.js.map +1 -1
  170. package/routes/cursorA2a.d.ts +18 -0
  171. package/routes/cursorA2a.d.ts.map +1 -0
  172. package/routes/cursorA2a.js +393 -0
  173. package/routes/cursorA2a.js.map +1 -0
  174. package/routes/engine.d.ts +12 -0
  175. package/routes/engine.d.ts.map +1 -0
  176. package/routes/engine.js +178 -0
  177. package/routes/engine.js.map +1 -0
  178. package/routes/gitVersions.d.ts +10 -0
  179. package/routes/gitVersions.d.ts.map +1 -0
  180. package/routes/gitVersions.js +147 -0
  181. package/routes/gitVersions.js.map +1 -0
  182. package/routes/hooks.d.ts +11 -0
  183. package/routes/hooks.d.ts.map +1 -0
  184. package/routes/hooks.js +303 -0
  185. package/routes/hooks.js.map +1 -0
  186. package/routes/mcp.d.ts.map +1 -1
  187. package/routes/mcp.js +28 -3
  188. package/routes/mcp.js.map +1 -1
  189. package/routes/plugins.d.ts.map +1 -1
  190. package/routes/plugins.js +317 -4
  191. package/routes/plugins.js.map +1 -1
  192. package/routes/rules.d.ts +9 -0
  193. package/routes/rules.d.ts.map +1 -0
  194. package/routes/rules.js +470 -0
  195. package/routes/rules.js.map +1 -0
  196. package/routes/sessions.d.ts.map +1 -1
  197. package/routes/sessions.js +68 -32
  198. package/routes/sessions.js.map +1 -1
  199. package/routes/speechToText.d.ts +8 -0
  200. package/routes/speechToText.d.ts.map +1 -0
  201. package/routes/speechToText.js +216 -0
  202. package/routes/speechToText.js.map +1 -0
  203. package/schemas/a2a.d.ts +2 -2
  204. package/services/__tests__/agentImporter.test.d.ts +5 -0
  205. package/services/__tests__/agentImporter.test.d.ts.map +1 -0
  206. package/services/__tests__/agentImporter.test.js +379 -0
  207. package/services/__tests__/agentImporter.test.js.map +1 -0
  208. package/services/__tests__/marketplaceUpdateService.test.d.ts +5 -0
  209. package/services/__tests__/marketplaceUpdateService.test.d.ts.map +1 -0
  210. package/services/__tests__/marketplaceUpdateService.test.js +227 -0
  211. package/services/__tests__/marketplaceUpdateService.test.js.map +1 -0
  212. package/services/__tests__/pluginInstaller.test.js +172 -0
  213. package/services/__tests__/pluginInstaller.test.js.map +1 -1
  214. package/services/__tests__/projectMetadataStorage.test.js +19 -4
  215. package/services/__tests__/projectMetadataStorage.test.js.map +1 -1
  216. package/services/a2a/__tests__/agentCardService.test.js +224 -0
  217. package/services/a2a/__tests__/agentCardService.test.js.map +1 -1
  218. package/services/a2a/__tests__/cursorA2aService.test.d.ts +6 -0
  219. package/services/a2a/__tests__/cursorA2aService.test.d.ts.map +1 -0
  220. package/services/a2a/__tests__/cursorA2aService.test.js +359 -0
  221. package/services/a2a/__tests__/cursorA2aService.test.js.map +1 -0
  222. package/services/a2a/agentCardService.d.ts +22 -0
  223. package/services/a2a/agentCardService.d.ts.map +1 -1
  224. package/services/a2a/agentCardService.js +246 -0
  225. package/services/a2a/agentCardService.js.map +1 -1
  226. package/services/a2a/cursorA2aService.d.ts +126 -0
  227. package/services/a2a/cursorA2aService.d.ts.map +1 -0
  228. package/services/a2a/cursorA2aService.js +336 -0
  229. package/services/a2a/cursorA2aService.js.map +1 -0
  230. package/services/agentImporter.d.ts +62 -0
  231. package/services/agentImporter.d.ts.map +1 -0
  232. package/services/agentImporter.js +335 -0
  233. package/services/agentImporter.js.map +1 -0
  234. package/services/cursorConfigService.d.ts +75 -0
  235. package/services/cursorConfigService.d.ts.map +1 -0
  236. package/services/cursorConfigService.js +538 -0
  237. package/services/cursorConfigService.js.map +1 -0
  238. package/services/gitVersionService.d.ts +52 -0
  239. package/services/gitVersionService.d.ts.map +1 -0
  240. package/services/gitVersionService.js +377 -0
  241. package/services/gitVersionService.js.map +1 -0
  242. package/services/marketplaceUpdateService.d.ts +66 -0
  243. package/services/marketplaceUpdateService.d.ts.map +1 -0
  244. package/services/marketplaceUpdateService.js +364 -0
  245. package/services/marketplaceUpdateService.js.map +1 -0
  246. package/services/mcpAdmin/__tests__/scheduledTaskTools.test.d.ts +5 -0
  247. package/services/mcpAdmin/__tests__/scheduledTaskTools.test.d.ts.map +1 -0
  248. package/services/mcpAdmin/__tests__/scheduledTaskTools.test.js +429 -0
  249. package/services/mcpAdmin/__tests__/scheduledTaskTools.test.js.map +1 -0
  250. package/services/mcpAdmin/tools/index.d.ts +1 -0
  251. package/services/mcpAdmin/tools/index.d.ts.map +1 -1
  252. package/services/mcpAdmin/tools/index.js +5 -1
  253. package/services/mcpAdmin/tools/index.js.map +1 -1
  254. package/services/mcpAdmin/tools/scheduledTaskTools.d.ts +64 -0
  255. package/services/mcpAdmin/tools/scheduledTaskTools.d.ts.map +1 -0
  256. package/services/mcpAdmin/tools/scheduledTaskTools.js +1002 -0
  257. package/services/mcpAdmin/tools/scheduledTaskTools.js.map +1 -0
  258. package/services/mcpAdmin/types.d.ts +1 -1
  259. package/services/mcpAdmin/types.d.ts.map +1 -1
  260. package/services/pluginInstaller.d.ts +55 -1
  261. package/services/pluginInstaller.d.ts.map +1 -1
  262. package/services/pluginInstaller.js +437 -13
  263. package/services/pluginInstaller.js.map +1 -1
  264. package/services/projectMetadataStorage.d.ts.map +1 -1
  265. package/services/projectMetadataStorage.js +4 -2
  266. package/services/projectMetadataStorage.js.map +1 -1
  267. package/services/sessionEventBus.d.ts +67 -0
  268. package/services/sessionEventBus.d.ts.map +1 -0
  269. package/services/sessionEventBus.js +106 -0
  270. package/services/sessionEventBus.js.map +1 -0
  271. package/services/sessionManager.d.ts.map +1 -1
  272. package/services/sessionManager.js +4 -2
  273. package/services/sessionManager.js.map +1 -1
  274. package/services/speechToText/__tests__/speechToText.test.d.ts +5 -0
  275. package/services/speechToText/__tests__/speechToText.test.d.ts.map +1 -0
  276. package/services/speechToText/__tests__/speechToText.test.js +208 -0
  277. package/services/speechToText/__tests__/speechToText.test.js.map +1 -0
  278. package/services/speechToText/index.d.ts +25 -0
  279. package/services/speechToText/index.d.ts.map +1 -0
  280. package/services/speechToText/index.js +228 -0
  281. package/services/speechToText/index.js.map +1 -0
  282. package/services/speechToText/providers/aliyun.d.ts +22 -0
  283. package/services/speechToText/providers/aliyun.d.ts.map +1 -0
  284. package/services/speechToText/providers/aliyun.js +185 -0
  285. package/services/speechToText/providers/aliyun.js.map +1 -0
  286. package/services/speechToText/providers/google.d.ts +24 -0
  287. package/services/speechToText/providers/google.d.ts.map +1 -0
  288. package/services/speechToText/providers/google.js +205 -0
  289. package/services/speechToText/providers/google.js.map +1 -0
  290. package/services/speechToText/providers/openaiCompatible.d.ts +22 -0
  291. package/services/speechToText/providers/openaiCompatible.d.ts.map +1 -0
  292. package/services/speechToText/providers/openaiCompatible.js +198 -0
  293. package/services/speechToText/providers/openaiCompatible.js.map +1 -0
  294. package/services/speechToText/providers/tencent.d.ts +23 -0
  295. package/services/speechToText/providers/tencent.d.ts.map +1 -0
  296. package/services/speechToText/providers/tencent.js +215 -0
  297. package/services/speechToText/providers/tencent.js.map +1 -0
  298. package/services/speechToText/types.d.ts +102 -0
  299. package/services/speechToText/types.d.ts.map +1 -0
  300. package/services/speechToText/types.js +43 -0
  301. package/services/speechToText/types.js.map +1 -0
  302. package/services/taskExecutor/__tests__/mcp-tools-integration.test.d.ts +8 -2
  303. package/services/taskExecutor/__tests__/mcp-tools-integration.test.d.ts.map +1 -1
  304. package/services/taskExecutor/__tests__/mcp-tools-integration.test.js +215 -72
  305. package/services/taskExecutor/__tests__/mcp-tools-integration.test.js.map +1 -1
  306. package/services/taskExecutor/taskWorker.js +9 -1
  307. package/services/taskExecutor/taskWorker.js.map +1 -1
  308. package/services/telemetry.js +1 -1
  309. package/types/a2a.d.ts +20 -0
  310. package/types/a2a.d.ts.map +1 -1
  311. package/types/engine.d.ts +314 -0
  312. package/types/engine.d.ts.map +1 -0
  313. package/types/engine.js +14 -0
  314. package/types/engine.js.map +1 -0
  315. package/types/hooks.d.ts +45 -0
  316. package/types/hooks.d.ts.map +1 -0
  317. package/types/hooks.js +9 -0
  318. package/types/hooks.js.map +1 -0
  319. package/types/plugins.d.ts +86 -2
  320. package/types/plugins.d.ts.map +1 -1
  321. package/types/plugins.js +1 -0
  322. package/types/plugins.js.map +1 -1
  323. package/types/rules.d.ts +51 -0
  324. package/types/rules.d.ts.map +1 -0
  325. package/types/rules.js +9 -0
  326. package/types/rules.js.map +1 -0
  327. package/utils/__tests__/cursorIdeAgentParser.test.d.ts +7 -0
  328. package/utils/__tests__/cursorIdeAgentParser.test.d.ts.map +1 -0
  329. package/utils/__tests__/cursorIdeAgentParser.test.js +289 -0
  330. package/utils/__tests__/cursorIdeAgentParser.test.js.map +1 -0
  331. package/utils/claudeUtils.d.ts +3 -1
  332. package/utils/claudeUtils.d.ts.map +1 -1
  333. package/utils/claudeUtils.js +26 -12
  334. package/utils/claudeUtils.js.map +1 -1
  335. package/utils/cursorCliHistoryParser.d.ts +58 -0
  336. package/utils/cursorCliHistoryParser.d.ts.map +1 -0
  337. package/utils/cursorCliHistoryParser.js +664 -0
  338. package/utils/cursorCliHistoryParser.js.map +1 -0
  339. package/utils/cursorIdeAgentParser.d.ts +49 -0
  340. package/utils/cursorIdeAgentParser.d.ts.map +1 -0
  341. package/utils/cursorIdeAgentParser.js +332 -0
  342. package/utils/cursorIdeAgentParser.js.map +1 -0
  343. package/public/assets/AgentsPage-gSnkPp2k.js +0 -10
  344. package/public/assets/ChatPage-BMrfVkpt.js +0 -471
  345. package/public/assets/CommandsPage-B6u4IO7L.js +0 -1
  346. package/public/assets/GeneralSettingsPage-BbEbWJUQ.js +0 -1
  347. package/public/assets/LandingPage-DFPm2d4Y.js +0 -1
  348. package/public/assets/LoginPage-D5kZJqhk.js +0 -16
  349. package/public/assets/McpAdminSettingsPage-D32iUEjH.js +0 -7
  350. package/public/assets/McpPage-QT4qs391.js +0 -20
  351. package/public/assets/PluginsPage-BotzuK9f.js +0 -1
  352. package/public/assets/ProjectSelector-DujNObqr.js +0 -1
  353. package/public/assets/ProjectsPage-CRWe6HPl.js +0 -21
  354. package/public/assets/ScheduledTasksPage-Beeurg-w.js +0 -1
  355. package/public/assets/SettingsLayout-BfkBUyI_.js +0 -1
  356. package/public/assets/SkillsPage-B59bAr6W.js +0 -18
  357. package/public/assets/SystemInfoPage-D89s7PjE.js +0 -1
  358. package/public/assets/VersionSettingsPage-CaB4PH6h.js +0 -5
  359. package/public/assets/WebSocketTunnelPage-Cbru_-hL.js +0 -1
  360. package/public/assets/_basePickBy-5fAM04Ra.js +0 -1
  361. package/public/assets/arc-C2gTU2ZR.js +0 -1
  362. package/public/assets/channel-DcVTcy-S.js +0 -1
  363. package/public/assets/classDiagram-2ON5EDUG-BXVT6Q7h.js +0 -1
  364. package/public/assets/classDiagram-v2-WZHVMYZB-BXVT6Q7h.js +0 -1
  365. package/public/assets/clone-Bp6orjIq.js +0 -1
  366. package/public/assets/diagram-QEK2KX5R-BfMGeeRo.js +0 -43
  367. package/public/assets/index-BgR-BTTw.css +0 -1
  368. package/public/assets/infoDiagram-F6ZHWCRC-C6OApgqf.js +0 -2
  369. package/public/assets/stateDiagram-v2-4FDKWEC3-DyE8O3Kx.js +0 -1
  370. package/public/assets/useAgents-D5EDAc_E.js +0 -2
  371. package/public/assets/useCommands-BgoCfyuu.js +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursorCliHistoryParser.js","sourceRoot":"","sources":["../../src/utils/cursorCliHistoryParser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * Cursor Agent Transcript Parser
3
+ *
4
+ * Parses Cursor CLI agent transcript files (.txt) from ~/.cursor/projects/<path>/agent-transcripts/
5
+ * and converts them to a unified session format compatible with the existing session system.
6
+ *
7
+ * Transcript format:
8
+ * - `user:` followed by user message content
9
+ * - `assistant:` followed by assistant message content
10
+ * - `[Thinking]` followed by thinking/reasoning content
11
+ * - `[Tool call] ToolName` followed by tool parameters
12
+ * - `[Tool result] ToolName` followed by tool result
13
+ */
14
+ export interface CursorTranscriptMessage {
15
+ id: string;
16
+ role: 'user' | 'assistant';
17
+ content: string;
18
+ timestamp: number;
19
+ messageParts: CursorMessagePart[];
20
+ }
21
+ export interface CursorMessagePart {
22
+ id: string;
23
+ type: 'text' | 'thinking' | 'tool';
24
+ content?: string;
25
+ order: number;
26
+ toolData?: {
27
+ id: string;
28
+ toolName: string;
29
+ toolInput: Record<string, unknown>;
30
+ toolResult?: string;
31
+ isError?: boolean;
32
+ };
33
+ }
34
+ export interface CursorSession {
35
+ id: string;
36
+ title: string;
37
+ createdAt: string;
38
+ lastUpdated: string;
39
+ messages: CursorTranscriptMessage[];
40
+ }
41
+ /**
42
+ * Read all Cursor transcript sessions for a project
43
+ */
44
+ export declare function readCursorHistorySessions(projectPath: string): CursorSession[];
45
+ /**
46
+ * Read a single Cursor session by ID
47
+ */
48
+ export declare function readCursorSession(projectPath: string, sessionId: string): CursorSession | null;
49
+ //# sourceMappingURL=cursorIdeAgentParser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursorIdeAgentParser.d.ts","sourceRoot":"","sources":["../../src/utils/cursorIdeAgentParser.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAOH,MAAM,WAAW,uBAAuB;IACtC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,iBAAiB,EAAE,CAAC;CACnC;AAED,MAAM,WAAW,iBAAiB;IAChC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,GAAG,UAAU,GAAG,MAAM,CAAC;IACnC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE;QACT,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,OAAO,CAAC,EAAE,OAAO,CAAC;KACnB,CAAC;CACH;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,uBAAuB,EAAE,CAAC;CACrC;AA8PD;;GAEG;AACH,wBAAgB,yBAAyB,CAAC,WAAW,EAAE,MAAM,GAAG,aAAa,EAAE,CA2C9E;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CAqB9F"}
@@ -0,0 +1,332 @@
1
+ "use strict";
2
+ /**
3
+ * Cursor Agent Transcript Parser
4
+ *
5
+ * Parses Cursor CLI agent transcript files (.txt) from ~/.cursor/projects/<path>/agent-transcripts/
6
+ * and converts them to a unified session format compatible with the existing session system.
7
+ *
8
+ * Transcript format:
9
+ * - `user:` followed by user message content
10
+ * - `assistant:` followed by assistant message content
11
+ * - `[Thinking]` followed by thinking/reasoning content
12
+ * - `[Tool call] ToolName` followed by tool parameters
13
+ * - `[Tool result] ToolName` followed by tool result
14
+ */
15
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ var desc = Object.getOwnPropertyDescriptor(m, k);
18
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
19
+ desc = { enumerable: true, get: function() { return m[k]; } };
20
+ }
21
+ Object.defineProperty(o, k2, desc);
22
+ }) : (function(o, m, k, k2) {
23
+ if (k2 === undefined) k2 = k;
24
+ o[k2] = m[k];
25
+ }));
26
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
27
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
28
+ }) : function(o, v) {
29
+ o["default"] = v;
30
+ });
31
+ var __importStar = (this && this.__importStar) || (function () {
32
+ var ownKeys = function(o) {
33
+ ownKeys = Object.getOwnPropertyNames || function (o) {
34
+ var ar = [];
35
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
36
+ return ar;
37
+ };
38
+ return ownKeys(o);
39
+ };
40
+ return function (mod) {
41
+ if (mod && mod.__esModule) return mod;
42
+ var result = {};
43
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
44
+ __setModuleDefault(result, mod);
45
+ return result;
46
+ };
47
+ })();
48
+ Object.defineProperty(exports, "__esModule", { value: true });
49
+ exports.readCursorHistorySessions = readCursorHistorySessions;
50
+ exports.readCursorSession = readCursorSession;
51
+ const fs = __importStar(require("fs"));
52
+ const path = __importStar(require("path"));
53
+ const os = __importStar(require("os"));
54
+ /**
55
+ * Convert project path to Cursor's directory format
56
+ * /Users/kongjie/projects/agent-studio → Users-kongjie-projects-agent-studio
57
+ */
58
+ function convertProjectPathToCursorFormat(projectPath) {
59
+ // Resolve symlinks first
60
+ let resolvedPath = projectPath;
61
+ try {
62
+ resolvedPath = fs.realpathSync(projectPath);
63
+ }
64
+ catch {
65
+ // If path doesn't exist, use original
66
+ }
67
+ // Replace path separators with dashes (Cursor's format)
68
+ return resolvedPath.replace(/^\//, '').replace(/[\/\\]/g, '-');
69
+ }
70
+ /**
71
+ * Get the Cursor projects directory
72
+ */
73
+ function getCursorProjectsDir() {
74
+ return path.join(os.homedir(), '.cursor', 'projects');
75
+ }
76
+ /**
77
+ * Parse a single transcript file
78
+ */
79
+ function parseTranscriptFile(filePath, sessionId) {
80
+ try {
81
+ const content = fs.readFileSync(filePath, 'utf-8');
82
+ const lines = content.split('\n');
83
+ const messages = [];
84
+ let currentRole = null;
85
+ let currentContent = [];
86
+ let currentParts = [];
87
+ let partOrder = 0;
88
+ let messageIndex = 0;
89
+ // Track tool call IDs for matching with results
90
+ const pendingToolCalls = new Map();
91
+ const finishCurrentMessage = () => {
92
+ if (currentRole && (currentContent.length > 0 || currentParts.length > 0)) {
93
+ // Add any remaining text content as a part
94
+ const textContent = currentContent.join('\n').trim();
95
+ if (textContent && !currentParts.some(p => p.type === 'text' && p.content === textContent)) {
96
+ // Check if we already have text parts - if so, append to last one
97
+ const lastTextPart = [...currentParts].reverse().find(p => p.type === 'text');
98
+ if (lastTextPart && lastTextPart.content) {
99
+ lastTextPart.content = (lastTextPart.content + '\n' + textContent).trim();
100
+ }
101
+ else {
102
+ currentParts.push({
103
+ id: `part_${messageIndex}_text_${partOrder}`,
104
+ type: 'text',
105
+ content: textContent,
106
+ order: partOrder++
107
+ });
108
+ }
109
+ }
110
+ messages.push({
111
+ id: `msg_${sessionId}_${messageIndex}`,
112
+ role: currentRole,
113
+ content: currentParts
114
+ .filter(p => p.type === 'text')
115
+ .map(p => p.content)
116
+ .join('\n'),
117
+ timestamp: Date.now() - (1000 * (100 - messageIndex)), // Approximate timestamps
118
+ messageParts: currentParts
119
+ });
120
+ messageIndex++;
121
+ }
122
+ currentRole = null;
123
+ currentContent = [];
124
+ currentParts = [];
125
+ partOrder = 0;
126
+ };
127
+ for (let i = 0; i < lines.length; i++) {
128
+ const line = lines[i];
129
+ // Check for role markers
130
+ if (line.startsWith('user:')) {
131
+ finishCurrentMessage();
132
+ currentRole = 'user';
133
+ const afterMarker = line.substring(5).trim();
134
+ if (afterMarker) {
135
+ currentContent.push(afterMarker);
136
+ }
137
+ continue;
138
+ }
139
+ if (line.startsWith('assistant:')) {
140
+ finishCurrentMessage();
141
+ currentRole = 'assistant';
142
+ const afterMarker = line.substring(10).trim();
143
+ if (afterMarker) {
144
+ currentContent.push(afterMarker);
145
+ }
146
+ continue;
147
+ }
148
+ // Parse content within current message
149
+ if (currentRole) {
150
+ // Check for [Thinking] block
151
+ if (line.startsWith('[Thinking]')) {
152
+ // Save current text content first
153
+ const textContent = currentContent.join('\n').trim();
154
+ if (textContent) {
155
+ currentParts.push({
156
+ id: `part_${messageIndex}_text_${partOrder}`,
157
+ type: 'text',
158
+ content: textContent,
159
+ order: partOrder++
160
+ });
161
+ currentContent = [];
162
+ }
163
+ // Extract thinking content
164
+ const thinkingContent = line.substring(10).trim();
165
+ currentParts.push({
166
+ id: `part_${messageIndex}_thinking_${partOrder}`,
167
+ type: 'thinking',
168
+ content: thinkingContent,
169
+ order: partOrder++
170
+ });
171
+ continue;
172
+ }
173
+ // Check for [Tool call] block
174
+ if (line.startsWith('[Tool call]')) {
175
+ // Save current text content first
176
+ const textContent = currentContent.join('\n').trim();
177
+ if (textContent) {
178
+ currentParts.push({
179
+ id: `part_${messageIndex}_text_${partOrder}`,
180
+ type: 'text',
181
+ content: textContent,
182
+ order: partOrder++
183
+ });
184
+ currentContent = [];
185
+ }
186
+ // Parse tool name from the line
187
+ const toolNameMatch = line.match(/\[Tool call\]\s+(\w+)/);
188
+ const toolName = toolNameMatch ? toolNameMatch[1] : 'Unknown';
189
+ // Collect tool parameters from following lines
190
+ const toolParams = {};
191
+ let j = i + 1;
192
+ while (j < lines.length && lines[j].startsWith(' ')) {
193
+ const paramLine = lines[j].trim();
194
+ const colonIndex = paramLine.indexOf(':');
195
+ if (colonIndex > 0) {
196
+ const key = paramLine.substring(0, colonIndex).trim();
197
+ const value = paramLine.substring(colonIndex + 1).trim();
198
+ toolParams[key] = value;
199
+ }
200
+ j++;
201
+ }
202
+ i = j - 1; // Skip processed lines
203
+ const toolPartId = `part_${messageIndex}_tool_${partOrder}`;
204
+ const toolPart = {
205
+ id: toolPartId,
206
+ type: 'tool',
207
+ order: partOrder++,
208
+ toolData: {
209
+ id: `tool_${messageIndex}_${partOrder}`,
210
+ toolName,
211
+ toolInput: toolParams,
212
+ toolResult: undefined,
213
+ isError: false
214
+ }
215
+ };
216
+ currentParts.push(toolPart);
217
+ pendingToolCalls.set(toolName, toolPart);
218
+ continue;
219
+ }
220
+ // Check for [Tool result] block
221
+ if (line.startsWith('[Tool result]')) {
222
+ const toolNameMatch = line.match(/\[Tool result\]\s+(\w+)/);
223
+ const toolName = toolNameMatch ? toolNameMatch[1] : 'Unknown';
224
+ // Find corresponding tool call and update its result
225
+ const toolPart = pendingToolCalls.get(toolName);
226
+ if (toolPart && toolPart.toolData) {
227
+ // Collect result from following lines
228
+ const resultLines = [];
229
+ let j = i + 1;
230
+ while (j < lines.length &&
231
+ !lines[j].startsWith('[Tool call]') &&
232
+ !lines[j].startsWith('[Tool result]') &&
233
+ !lines[j].startsWith('[Thinking]') &&
234
+ !lines[j].startsWith('user:') &&
235
+ !lines[j].startsWith('assistant:')) {
236
+ resultLines.push(lines[j]);
237
+ j++;
238
+ }
239
+ i = j - 1; // Skip processed lines
240
+ toolPart.toolData.toolResult = resultLines.join('\n').trim() || '(empty result)';
241
+ }
242
+ continue;
243
+ }
244
+ // Regular content line
245
+ currentContent.push(line);
246
+ }
247
+ }
248
+ // Finish last message
249
+ finishCurrentMessage();
250
+ if (messages.length === 0) {
251
+ return null;
252
+ }
253
+ // Extract title from first user message
254
+ const firstUserMessage = messages.find(m => m.role === 'user');
255
+ let title = firstUserMessage?.content?.substring(0, 50) || `Session ${sessionId.substring(0, 8)}`;
256
+ if (title.length >= 50) {
257
+ title += '...';
258
+ }
259
+ // Clean up title - remove XML tags and special characters
260
+ title = title.replace(/<[^>]+>/g, '').replace(/\n/g, ' ').trim();
261
+ if (!title) {
262
+ title = `Session ${sessionId.substring(0, 8)}`;
263
+ }
264
+ // Get file stats for timestamps
265
+ const stats = fs.statSync(filePath);
266
+ return {
267
+ id: sessionId,
268
+ title,
269
+ createdAt: stats.birthtime.toISOString(),
270
+ lastUpdated: stats.mtime.toISOString(),
271
+ messages
272
+ };
273
+ }
274
+ catch (error) {
275
+ console.error(`Failed to parse transcript file ${filePath}:`, error);
276
+ return null;
277
+ }
278
+ }
279
+ /**
280
+ * Read all Cursor transcript sessions for a project
281
+ */
282
+ function readCursorHistorySessions(projectPath) {
283
+ try {
284
+ const cursorProjectPath = convertProjectPathToCursorFormat(projectPath);
285
+ const transcriptsDir = path.join(getCursorProjectsDir(), cursorProjectPath, 'agent-transcripts');
286
+ console.log(`📂 [CURSOR] Reading transcripts from: ${transcriptsDir}`);
287
+ if (!fs.existsSync(transcriptsDir)) {
288
+ console.log(`❌ [CURSOR] Transcripts directory not found: ${transcriptsDir}`);
289
+ return [];
290
+ }
291
+ const files = fs.readdirSync(transcriptsDir)
292
+ .filter(file => file.endsWith('.txt'))
293
+ .filter(file => !file.startsWith('.'));
294
+ console.log(`📋 [CURSOR] Found ${files.length} transcript files`);
295
+ const sessions = [];
296
+ for (const filename of files) {
297
+ const sessionId = filename.replace('.txt', '');
298
+ const filePath = path.join(transcriptsDir, filename);
299
+ const session = parseTranscriptFile(filePath, sessionId);
300
+ if (session) {
301
+ sessions.push(session);
302
+ }
303
+ }
304
+ // Sort by lastUpdated descending
305
+ sessions.sort((a, b) => new Date(b.lastUpdated).getTime() - new Date(a.lastUpdated).getTime());
306
+ console.log(`✅ [CURSOR] Parsed ${sessions.length} sessions successfully`);
307
+ return sessions;
308
+ }
309
+ catch (error) {
310
+ console.error('Failed to read Cursor history sessions:', error);
311
+ return [];
312
+ }
313
+ }
314
+ /**
315
+ * Read a single Cursor session by ID
316
+ */
317
+ function readCursorSession(projectPath, sessionId) {
318
+ try {
319
+ const cursorProjectPath = convertProjectPathToCursorFormat(projectPath);
320
+ const filePath = path.join(getCursorProjectsDir(), cursorProjectPath, 'agent-transcripts', `${sessionId}.txt`);
321
+ if (!fs.existsSync(filePath)) {
322
+ console.log(`❌ [CURSOR] Session file not found: ${filePath}`);
323
+ return null;
324
+ }
325
+ return parseTranscriptFile(filePath, sessionId);
326
+ }
327
+ catch (error) {
328
+ console.error(`Failed to read Cursor session ${sessionId}:`, error);
329
+ return null;
330
+ }
331
+ }
332
+ //# sourceMappingURL=cursorIdeAgentParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursorIdeAgentParser.js","sourceRoot":"","sources":["../../src/utils/cursorIdeAgentParser.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import{j as e}from"./data-structures-ChC1tqVg.js";import{r as o}from"./monaco-editor-BWfQfpij.js";import{T as ae,a as re,b as W,c as E,d as te,e as A}from"./table-DjMdAdjH.js";import{u as le,d as ne,e as oe,f as de}from"./useAgents-D5EDAc_E.js";import{u as ie}from"./agents-3mB536QF.js";import{P as ce}from"./ProjectSelector-DujNObqr.js";import{U as xe}from"./UnifiedToolSelector-CkafUbz3.js";import{b as me,a as $}from"./index-BEPv9Bqe.js";import{T as K}from"./ToolsList-Kfxwp80g.js";import{u as ue}from"./tools-BAI9XHGS.js";import{g as ge,v as he,af as z,J as Y,y as H,r as pe,ab as be,E as ye,a8 as fe,a3 as je,X as ve}from"./ui-components-DaGtjl0g.js";import"./syntax-highlighting-DGbNjS3S.js";import"./FileBrowser-DcoBWzKK.js";const Ne=({value:t,onChange:u,disabled:i=!1})=>{const[h,b]=o.useState(typeof t=="string"?"custom":"preset"),v=n=>{b(n),u(n==="custom"?"":{type:"preset",preset:"claude_code"})},N=n=>{u({type:"preset",preset:t?.preset||"claude_code",append:n})},y=n=>{u(n)};return e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{className:"flex items-center space-x-4",children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300",children:"提示词类型:"}),e.jsxs("div",{className:"flex space-x-2",children:[e.jsx("button",{type:"button",onClick:()=>v("custom"),disabled:i,className:`px-3 py-1 rounded-md text-sm font-medium transition-colors ${h==="custom"?"bg-blue-600 text-white":"bg-gray-200 text-gray-700 hover:bg-gray-300"} ${i?"opacity-50 cursor-not-allowed":""}`,children:"自定义"}),e.jsx("button",{type:"button",onClick:()=>v("preset"),disabled:i,className:`px-3 py-1 rounded-md text-sm font-medium transition-colors ${h==="preset"?"bg-blue-600 text-white":"bg-gray-200 text-gray-700 hover:bg-gray-300"} ${i?"opacity-50 cursor-not-allowed":""}`,children:"预设"})]})]}),h==="custom"&&e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"系统提示词"}),e.jsx("textarea",{value:typeof t=="string"?t:"",onChange:n=>y(n.target.value),disabled:i,rows:8,className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 font-mono text-sm dark:bg-gray-700 dark:text-white",placeholder:"输入助手的系统提示词..."})]}),h==="preset"&&e.jsxs("div",{className:"space-y-3",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"预设类型"}),e.jsx("div",{className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg bg-gray-50 dark:bg-gray-700 text-sm dark:text-white",children:"Claude Code 预设 (使用 Claude Code SDK 的默认提示词)"}),e.jsx("p",{className:"mt-1 text-xs text-gray-500 dark:text-gray-400",children:"所有预设都基于 Claude Code SDK 的默认提示词,通过追加内容来定制不同用途"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"追加提示词 (可选)"}),e.jsx("textarea",{value:t?.append||"",onChange:n=>N(n.target.value),disabled:i,rows:4,className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 font-mono text-sm dark:bg-gray-700 dark:text-white",placeholder:"在预设提示词后追加自定义内容..."}),e.jsx("p",{className:"mt-1 text-xs text-gray-500 dark:text-gray-400",children:"这段内容将追加到 Claude Code 默认提示词的后面"})]})]})]})},Ue=()=>{const{t}=ue("pages"),{isMobile:u}=me(),{data:i,isLoading:h}=le(),b=ne(),v=oe(),N=de(),y=ie(),[n,f]=o.useState(null),[a,d]=o.useState({}),[c,k]=o.useState(!1),[J,w]=o.useState(!1),[R,x]=o.useState(null),[T,S]=o.useState(null),[p,X]=o.useState(""),[I,U]=o.useState(!1),[C,D]=o.useState([]),[j,P]=o.useState([]),[B,M]=o.useState(!1),[L,O]=o.useState({}),q=i?.agents||[],F=q.filter(s=>s.name.toLowerCase().includes(p.toLowerCase())||s.description.toLowerCase().includes(p.toLowerCase())),Z=s=>{if(T){const r=new URLSearchParams;r.set("project",s);const l=`/chat/${T.id}?${r.toString()}`;window.open(l,"_blank")}w(!1),S(null)},V=async s=>{try{await b.mutateAsync({agentId:s.id,data:{enabled:!s.enabled}}),y.invalidateQueries({queryKey:["agents"]})}catch(r){console.error("Failed to toggle agent:",r),$(t("agents.errors.toggleFailed"))}},G=s=>{f(s),d(s),k(!1);const r=s.allowedTools?.filter(g=>g.enabled).map(g=>g.name)||[],l=r.filter(g=>!g.startsWith("mcp__")),m=r.filter(g=>g.startsWith("mcp__"));D(l),P(m),M(m.length>0)},_=()=>{const s=q.find(m=>m.id==="general-chat"),r={id:`agent-${Date.now()}`,name:"",description:"",version:"1.0.0",systemPrompt:s?.systemPrompt||`You are a general-purpose AI assistant. You can help with:
2
- - General questions and conversations
3
- - Problem-solving and brainstorming
4
- - Information and explanations
5
- - Creative tasks and writing
6
- - Analysis and research
7
- - File operations when needed
8
-
9
- You are helpful, harmless, and honest. Always strive to provide accurate and useful information.
10
- Please respond in Chinese unless the user specifically requests another language.`,maxTurns:s?.maxTurns||void 0,permissionMode:s?.permissionMode||"bypassPermissions",allowedTools:s?.allowedTools||[{name:"Write",enabled:!0},{name:"Read",enabled:!0},{name:"Edit",enabled:!0},{name:"Glob",enabled:!0},{name:"MultiEdit",enabled:!0},{name:"Bash",enabled:!0},{name:"Task",enabled:!0},{name:"WebFetch",enabled:!0},{name:"WebSearch",enabled:!0}],ui:{icon:"🤖",headerTitle:"",headerDescription:""},author:"User",tags:["custom"],enabled:!0};f(null),d(r),k(!0);const l=r.allowedTools?.filter(m=>m.enabled).map(m=>m.name)||[];D(l),P([]),M(!1)},ee=()=>{const s=[...C];return B&&s.push(...j),s.map(l=>({name:l,enabled:!0}))},se=async()=>{if(!a||!a.name?.trim()){x(t("agents.form.nameRequired"));return}if(a.maxTurns!==void 0&&(a.maxTurns<1||a.maxTurns>100)){x(t("agents.form.maxTurnsError"));return}x(null);try{const s=ee();if(c){if(!a.id||a.id.trim()===""){x("请输入 Agent ID");return}if(!/^[a-zA-Z0-9_-]+$/.test(a.id)){x("ID 只能包含字母、数字、连字符和下划线");return}const l={...a,allowedTools:s,maxTurns:a.maxTurns,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString(),ui:{...a.ui,headerTitle:a.ui?.headerTitle||a.name,headerDescription:a.ui?.headerDescription||a.description}};await N.mutateAsync(l)}else{if(!n)return;const r={...a,allowedTools:s,maxTurns:a.maxTurns!==void 0?a.maxTurns:null,enabled:n.enabled};await b.mutateAsync({agentId:n.id,data:r})}f(null),d({}),k(!1),x(null),y.invalidateQueries({queryKey:["agents"]})}catch(s){console.error("Failed to save agent:",s);let r=t(c?"agents.errors.createFailed":"agents.errors.saveFailed");if(s?.response?.data?.details?.issues?.length>0){const l=s.response.data.details.issues[0];l.path.includes("maxTurns")&&l.code==="too_big"?r=t("agents.form.maxTurnsExceeded",{maximum:l.maximum}):r=l.message||r}else s?.response?.data?.error?r=s.response.data.error:s?.message&&(r=s.message);x(r)}},Q=async s=>{if(console.log("🗑️ [FRONTEND DEBUG] Attempting to delete agent:",{id:s.id,name:s.name,author:s.author}),s.author==="System"){console.log(`🛑 [FRONTEND DEBUG] Blocked deletion of system agent: ${s.id}`),$("System agents cannot be deleted");return}if(!window.confirm(t("agents.confirmDelete",{name:s.name}))){console.log("❌ [FRONTEND DEBUG] User cancelled deletion");return}console.log("✅ [FRONTEND DEBUG] User confirmed deletion, calling API...");try{await v.mutateAsync(s.id),console.log("✅ [FRONTEND DEBUG] Delete API call successful"),y.invalidateQueries({queryKey:["agents"]}),console.log("🔄 [FRONTEND DEBUG] Invalidated agents query")}catch(l){console.error("❌ [FRONTEND DEBUG] Failed to delete agent:",l),$(t("agents.errors.deleteFailed"))}};return h?e.jsx("div",{className:"p-8 flex items-center justify-center",children:e.jsxs("div",{className:"text-center",children:[e.jsx("div",{className:"animate-spin rounded-full h-12 w-12 border-b-2 border-blue-600 mx-auto mb-4"}),e.jsx("div",{className:"text-gray-600 dark:text-gray-400",children:t("agents.loading")})]})}):e.jsxs("div",{className:"p-8",children:[e.jsxs("div",{className:"mb-8",children:[e.jsx("div",{className:"flex items-center justify-between mb-6",children:e.jsxs("div",{children:[e.jsx("h1",{className:"text-3xl font-bold text-gray-900 dark:text-white",children:t("agents.title")}),e.jsx("p",{className:"text-gray-600 dark:text-gray-400 mt-2",children:t("agents.subtitle")})]})}),e.jsxs("div",{className:"flex items-center space-x-4",children:[e.jsxs("div",{className:"flex-1 relative",children:[e.jsx(ge,{className:"absolute left-3 top-1/2 transform -translate-y-1/2 text-gray-400 w-5 h-5"}),e.jsx("input",{type:"text",placeholder:t("agents.searchPlaceholder"),value:p,onChange:s=>X(s.target.value),className:"pl-10 pr-4 py-3 w-full border border-gray-300 dark:border-gray-600 rounded-lg focus:ring-2 focus:ring-blue-500 focus:border-transparent dark:bg-gray-700 dark:text-white"})]}),e.jsxs("button",{onClick:_,className:"flex items-center space-x-2 px-6 py-3 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors whitespace-nowrap",children:[e.jsx(he,{className:"w-5 h-5"}),e.jsx("span",{children:t("agents.createButton")})]})]})]}),F.length===0?e.jsxs("div",{className:"text-center py-16 bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700",children:[e.jsx("div",{className:"text-6xl mb-4",children:"🤖"}),e.jsx("h3",{className:"text-xl font-medium text-gray-900 dark:text-white mb-2",children:t(p?"agents.noAgentsSearch":"agents.noAgents")}),e.jsx("p",{className:"text-gray-600 dark:text-gray-400 mb-6",children:t(p?"agents.adjustSearch":"agents.createFirst")}),!p&&e.jsx("button",{onClick:_,className:"px-6 py-3 bg-blue-600 text-white rounded-lg hover:bg-blue-700 transition-colors",children:t("agents.createButton")})]}):e.jsxs(e.Fragment,{children:[u&&e.jsx("div",{className:"space-y-4",children:F.map(s=>e.jsxs("div",{className:"bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700 p-4",children:[e.jsxs("div",{className:"flex items-start space-x-3 mb-4",children:[e.jsx("div",{className:`text-2xl ${s.enabled?"":"opacity-50"}`,children:s.ui.icon}),e.jsxs("div",{className:"flex-1 min-w-0",children:[e.jsx("h3",{className:`text-base font-medium ${s.enabled?"text-gray-900 dark:text-white":"text-gray-600 dark:text-gray-400"} truncate`,children:s.name}),e.jsx("p",{className:`text-sm ${s.enabled?"text-gray-500 dark:text-gray-400":"text-gray-400 dark:text-gray-500"} truncate mt-1`,children:s.description})]})]}),e.jsx("div",{className:"space-y-2 text-sm mb-4",children:e.jsx("div",{className:"mb-3",children:e.jsxs("div",{className:"flex items-start text-sm",children:[e.jsx("span",{className:"text-gray-500 dark:text-gray-400 mr-2 mt-1",children:"工具:"}),e.jsx("div",{className:"flex-1",children:e.jsx(K,{tools:s.allowedTools?.filter(r=>r.enabled).map(r=>r.name)||[],id:s.id,expandedTools:L,setExpandedTools:O,isMobile:!0,emptyMessage:"未启用工具"})})]})})}),e.jsxs("div",{className:"flex items-center justify-between border-t border-gray-200 dark:border-gray-700 pt-3",children:[s.enabled&&e.jsxs("button",{onClick:()=>{S(s),w(!0)},className:"flex items-center space-x-1 px-3 py-1 text-xs text-primary-foreground bg-primary rounded-md",children:[e.jsx(z,{className:"w-3 h-3"}),e.jsx("span",{children:"使用"})]}),e.jsx("button",{onClick:()=>G(s),className:"p-1 text-blue-600 hover:bg-blue-50 dark:hover:bg-blue-900/50 rounded",title:"编辑助手",children:e.jsx(Y,{className:"w-4 h-4"})}),e.jsx("button",{onClick:()=>Q(s),className:"p-1 text-red-600 hover:bg-red-50 dark:hover:bg-red-900/50 rounded",title:"删除助手",disabled:s.author==="System",children:e.jsx(H,{className:"w-4 h-4"})})]})]},s.id))}),!u&&e.jsx("div",{className:"bg-white dark:bg-gray-800 rounded-lg border border-gray-200 dark:border-gray-700 overflow-hidden",children:e.jsxs(ae,{children:[e.jsx(re,{children:e.jsxs(W,{children:[e.jsx(E,{className:"px-6 py-3 text-xs font-medium text-gray-500 uppercase tracking-wider w-48",children:t("agents.table.agent")}),e.jsx(E,{className:"px-6 py-3 text-xs font-medium text-gray-500 uppercase tracking-wider w-48",children:t("agents.table.config")}),e.jsx(E,{className:"px-6 py-3 text-xs font-medium text-gray-500 uppercase tracking-wider w-96",children:"工具"}),e.jsx(E,{className:"px-6 py-3 text-xs font-medium text-gray-500 uppercase tracking-wider w-48",children:t("agents.table.actions")})]})}),e.jsx(te,{children:F.map(s=>e.jsxs(W,{className:"hover:bg-gray-50 dark:hover:bg-gray-700/50 transition-colors",children:[e.jsx(A,{className:"px-6 py-4 whitespace-nowrap w-48",children:e.jsxs("div",{className:"flex items-center",children:[e.jsx("div",{className:`text-2xl mr-4 ${s.enabled?"":"opacity-50"}`,children:s.ui.icon}),e.jsxs("div",{className:"min-w-0",children:[e.jsx("div",{className:`text-sm font-medium ${s.enabled?"text-gray-900 dark:text-white":"text-gray-600 dark:text-gray-400"} truncate`,children:s.name}),e.jsx("div",{className:`text-sm ${s.enabled?"text-gray-500 dark:text-gray-400":"text-gray-400 dark:text-gray-500"} truncate`,children:s.description})]})]})}),e.jsx(A,{className:"px-6 py-4 whitespace-nowrap text-sm text-gray-900 dark:text-white w-48",children:e.jsxs("div",{className:"space-y-1",children:[e.jsxs("div",{className:"flex items-center",children:[e.jsx(pe,{className:"w-3 h-3 mr-1 text-gray-400"}),e.jsxs("span",{children:["最大轮次: ",s.maxTurns!==void 0?s.maxTurns:"不限制"]})]}),e.jsxs("div",{className:"flex items-center",children:[e.jsx(be,{className:"w-3 h-3 mr-1 text-gray-400"}),e.jsxs("span",{children:["权限: ",s.permissionMode==="default"?"默认":s.permissionMode==="acceptEdits"?"自动接受编辑":s.permissionMode==="bypassPermissions"?"绕过权限":s.permissionMode==="plan"?"规划模式":"默认"]})]})]})}),e.jsx(A,{className:"px-6 py-4 w-96",children:e.jsx(K,{tools:s.allowedTools?.filter(r=>r.enabled).map(r=>r.name)||[],id:s.id,expandedTools:L,setExpandedTools:O,isMobile:!1,emptyMessage:"未启用工具"})}),e.jsx(A,{className:"px-6 py-4 whitespace-nowrap text-right text-sm font-medium w-48",children:e.jsxs("div",{className:"flex items-center space-x-2",children:[s.enabled&&e.jsxs("button",{onClick:()=>{S(s),w(!0)},className:"flex items-center space-x-1 px-3 py-1 text-xs text-primary-foreground bg-primary rounded-md transition-colors hover:opacity-90",title:"开始使用助手",children:[e.jsx(z,{className:"w-3 h-3"}),e.jsx("span",{children:"使用"})]}),e.jsx("button",{onClick:()=>V(s),className:`p-1 rounded transition-colors ${s.enabled?"text-green-600 hover:bg-green-50 dark:hover:bg-green-900/50":"text-gray-400 hover:bg-gray-100 dark:hover:bg-gray-700"}`,title:s.enabled?"禁用助手":"启用助手",children:s.enabled?e.jsx(ye,{className:"w-4 h-4"}):e.jsx(fe,{className:"w-4 h-4"})}),e.jsx("button",{onClick:()=>G(s),className:"p-1 text-blue-600 hover:bg-blue-50 dark:hover:bg-blue-900/50 rounded transition-colors",title:"编辑助手",children:e.jsx(Y,{className:"w-4 h-4"})}),e.jsx("button",{onClick:()=>Q(s),className:"p-1 text-red-600 hover:bg-red-50 dark:hover:bg-red-900/50 rounded transition-colors",title:"删除助手",disabled:s.author==="System",children:e.jsx(H,{className:"w-4 h-4"})})]})})]},s.id))})]})})]}),(n||c)&&e.jsx("div",{className:"fixed inset-0 bg-black bg-opacity-50 flex items-center justify-center z-50 p-4",children:e.jsxs("div",{className:"bg-white dark:bg-gray-800 rounded-lg max-w-4xl w-full max-h-[90vh] overflow-hidden",children:[e.jsxs("div",{className:"flex items-center justify-between p-6 border-b border-gray-200 dark:border-gray-700",children:[e.jsx("h1",{className:"text-xl font-semibold text-gray-900 dark:text-white",children:c?"创建助手":`编辑助手:${n?.name}`}),e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsxs("button",{onClick:se,disabled:b.isPending||N.isPending,className:"flex items-center space-x-2 px-4 py-2 bg-blue-600 text-white rounded-lg hover:bg-blue-700 disabled:opacity-50",children:[e.jsx(je,{className:"w-4 h-4"}),e.jsx("span",{children:"保存"})]}),e.jsxs("button",{onClick:()=>{f(null),d({}),k(!1),x(null)},className:"flex items-center space-x-2 px-4 py-2 border border-gray-300 dark:border-gray-600 rounded-lg hover:bg-gray-50 dark:hover:bg-gray-700",children:[e.jsx(ve,{className:"w-4 h-4"}),e.jsx("span",{children:"取消"})]})]})]}),R&&e.jsx("div",{className:"p-4 bg-red-50 dark:bg-red-900/50 border-b border-red-200 dark:border-red-800",children:e.jsxs("div",{className:"flex items-center",children:[e.jsx("div",{className:"flex-shrink-0",children:e.jsx("svg",{className:"h-5 w-5 text-red-400",viewBox:"0 0 20 20",fill:"currentColor",children:e.jsx("path",{fillRule:"evenodd",d:"M10 18a8 8 0 100-16 8 8 0 000 16zM8.707 7.293a1 1 0 00-1.414 1.414L8.586 10l-1.293 1.293a1 1 0 101.414 1.414L10 11.414l1.293 1.293a1 1 0 001.414-1.414L11.414 10l1.293-1.293a1 1 0 00-1.414-1.414L10 8.586 8.707 7.293z",clipRule:"evenodd"})})}),e.jsx("div",{className:"ml-3",children:e.jsx("p",{className:"text-sm text-red-800 dark:text-red-200",children:R})})]})}),e.jsx("div",{className:"p-6 overflow-y-auto max-h-[calc(90vh-80px)]",children:e.jsxs("div",{className:"space-y-6",children:[e.jsxs("div",{className:"grid grid-cols-1 md:grid-cols-2 gap-6",children:[e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"ID"}),e.jsx("input",{type:"text",value:a.id||"",onChange:s=>d({...a,id:s.target.value}),disabled:!c,placeholder:c?"例如: my-custom-agent":"ID 在编辑模式下不可修改",className:`w-full px-3 py-2 border rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 dark:bg-gray-700 dark:text-white ${c?"border-gray-300 dark:border-gray-600":"bg-gray-100 border-gray-300 text-gray-500 cursor-not-allowed"}`}),c&&e.jsx("p",{className:"mt-1 text-xs text-gray-500 dark:text-gray-400",children:"ID 用于唯一标识这个助手,只能包含字母、数字和连字符"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"名称"}),e.jsx("input",{type:"text",value:a.name||"",onChange:s=>d({...a,name:s.target.value}),className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 dark:bg-gray-700 dark:text-white"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"描述"}),e.jsx("textarea",{value:a.description||"",onChange:s=>d({...a,description:s.target.value}),rows:6,className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 dark:bg-gray-700 dark:text-white"})]})]}),e.jsxs("div",{className:"space-y-4",children:[e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"最大轮次"}),e.jsx("input",{type:"number",min:"1",max:"100",value:a.maxTurns!==void 0?a.maxTurns:"",placeholder:"不限制",onChange:s=>{const r=s.target.value;if(r==="")d({...a,maxTurns:void 0});else{const l=parseInt(r);isNaN(l)||d({...a,maxTurns:l})}},className:`w-full px-3 py-2 border rounded-lg focus:outline-none focus:ring-2 dark:bg-gray-700 dark:text-white ${a.maxTurns!==void 0&&(a.maxTurns<1||a.maxTurns>100)?"border-red-500 focus:ring-red-500":"border-gray-300 dark:border-gray-600 focus:ring-blue-500"}`}),a.maxTurns!==void 0&&(a.maxTurns<1||a.maxTurns>100)&&e.jsx("p",{className:"text-red-500 dark:text-red-400 text-sm mt-1",children:"最大轮次必须在1-100之间"})]}),e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"权限模式"}),e.jsxs("select",{value:a.permissionMode||"default",onChange:s=>d({...a,permissionMode:s.target.value}),className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 dark:bg-gray-700 dark:text-white",children:[e.jsx("option",{value:"default",children:"默认"}),e.jsx("option",{value:"acceptEdits",children:"自动接受编辑"}),e.jsx("option",{value:"bypassPermissions",children:"绕过权限检查"}),e.jsx("option",{value:"plan",children:"规划模式"})]})]}),e.jsx("div",{className:"grid grid-cols-2 gap-4",children:e.jsxs("div",{children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300 mb-1",children:"图标"}),e.jsx("input",{type:"text",value:a.ui?.icon||"",onChange:s=>d({...a,ui:{...a.ui,icon:s.target.value}}),placeholder:"🤖",className:"w-full px-3 py-2 border border-gray-300 dark:border-gray-600 rounded-lg focus:outline-none focus:ring-2 focus:ring-blue-500 dark:bg-gray-700 dark:text-white"})]})})]})]}),e.jsxs("div",{className:"space-y-2",children:[e.jsx("label",{className:"block text-sm font-medium text-gray-700 dark:text-gray-300",children:"启用的工具"}),e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx("button",{type:"button",onClick:()=>U(!I),className:"px-3 py-2 bg-gray-100 dark:bg-gray-700 hover:bg-gray-200 dark:hover:bg-gray-600 text-gray-700 dark:text-gray-300 rounded-lg transition-colors text-sm",children:"选择工具"}),(C.length>0||j.length>0)&&e.jsxs("span",{className:"text-sm text-gray-600 dark:text-gray-400",children:["常规工具 ",C.length," 个",j.length>0&&`, MCP工具 ${j.length} 个`]}),e.jsx(xe,{isOpen:I,onClose:()=>U(!1),selectedRegularTools:C,onRegularToolsChange:D,selectedMcpTools:j,onMcpToolsChange:P,mcpToolsEnabled:B,onMcpEnabledChange:M})]})]}),e.jsx("div",{children:e.jsx(Ne,{value:a.systemPrompt||"",onChange:s=>d({...a,systemPrompt:s}),disabled:n?.id==="claude-code"})})]})})]})}),J&&T&&e.jsx(ce,{agent:T,onProjectSelect:Z,onClose:()=>{w(!1),S(null)}})]})};export{Ue as AgentsPage};