agentstudio 0.3.0 → 0.3.1

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 (1362) hide show
  1. package/.dockerignore +53 -0
  2. package/.mcp.json +8 -0
  3. package/CLAUDE.md +359 -0
  4. package/DOCKER.md +270 -0
  5. package/Dockerfile +42 -0
  6. package/JSONL_TOOLS_README.md +301 -0
  7. package/LICENSE +603 -0
  8. package/QUICKSTART.md +253 -0
  9. package/README.md +176 -24
  10. package/README.zh-CN.md +200 -0
  11. package/SOLUTION_SUMMARY.md +249 -0
  12. package/backend/comprehensive-session-check.js +142 -0
  13. package/backend/debug-sessions.js +60 -0
  14. package/backend/docs/chat-clean-1.svg +1 -0
  15. package/backend/docs/chat-clean.md +60 -0
  16. package/backend/docs/chat-comprehensive-1.svg +1 -0
  17. package/backend/docs/chat-comprehensive.md +166 -0
  18. package/backend/docs/chat_api_sequence_diagram.md +58 -0
  19. package/backend/docs/command-detection-logic.md +306 -0
  20. package/backend/docs/command-detection-sequence.md +186 -0
  21. package/backend/eslint.config.js +25 -0
  22. package/backend/package.json +103 -0
  23. package/backend/scripts/README.md +156 -0
  24. package/backend/scripts/fix-project-names.js +113 -0
  25. package/backend/scripts/migrate-projects.js +159 -0
  26. package/backend/src/bin/agentstudio.ts +318 -0
  27. package/backend/src/bin/serviceManager.ts +469 -0
  28. package/backend/src/config/index.ts +184 -0
  29. package/backend/src/config/paths.ts +105 -0
  30. package/backend/src/config/sdkConfig.ts +126 -0
  31. package/backend/src/index.ts +434 -0
  32. package/backend/src/jobs/taskTimeoutMonitor.ts +106 -0
  33. package/backend/src/middleware/a2aAuth.ts +159 -0
  34. package/backend/src/middleware/auth.ts +39 -0
  35. package/backend/src/middleware/httpsOnly.ts +205 -0
  36. package/backend/src/middleware/rateLimiting.ts +130 -0
  37. package/backend/src/routes/__tests__/a2a.integration.test.ts +377 -0
  38. package/backend/src/routes/__tests__/a2a.test.ts +677 -0
  39. package/backend/src/routes/__tests__/agents.test.ts +327 -0
  40. package/backend/src/routes/__tests__/sessions.test.ts +345 -0
  41. package/backend/src/routes/a2a.streaming.test.ts +185 -0
  42. package/backend/src/routes/a2a.ts +840 -0
  43. package/backend/src/routes/a2aManagement.ts +545 -0
  44. package/backend/src/routes/agents.ts +1176 -0
  45. package/backend/src/routes/auth.ts +151 -0
  46. package/backend/src/routes/cloudflareTunnel.ts +306 -0
  47. package/backend/src/routes/commands.ts +524 -0
  48. package/backend/src/routes/config.ts +193 -0
  49. package/backend/src/routes/files.ts +375 -0
  50. package/backend/src/routes/mcp.ts +866 -0
  51. package/backend/src/routes/mcpAdmin.ts +369 -0
  52. package/backend/src/routes/mcpAdminManagement.ts +338 -0
  53. package/backend/src/routes/media.ts +140 -0
  54. package/backend/src/routes/mediaAuth.ts +150 -0
  55. package/backend/src/routes/network.ts +68 -0
  56. package/backend/src/routes/plugins.ts +368 -0
  57. package/backend/src/routes/projects.ts +1100 -0
  58. package/backend/src/routes/scheduledTasks.ts +442 -0
  59. package/backend/src/routes/sessions.ts +1054 -0
  60. package/backend/src/routes/settings.ts +552 -0
  61. package/backend/src/routes/skills.ts +319 -0
  62. package/backend/src/routes/slack.ts +193 -0
  63. package/backend/src/routes/slides.ts +166 -0
  64. package/backend/src/routes/subagents.ts +366 -0
  65. package/backend/src/routes/taskExecutor.ts +243 -0
  66. package/backend/src/routes/tunnel.ts +317 -0
  67. package/backend/src/routes/version.ts +239 -0
  68. package/backend/src/schemas/a2a.ts +352 -0
  69. package/backend/src/services/__tests__/pluginInstaller.test.ts +316 -0
  70. package/backend/src/services/__tests__/pluginParser.test.ts +285 -0
  71. package/backend/src/services/__tests__/pluginPaths.test.ts +212 -0
  72. package/backend/src/services/__tests__/pluginScanner.test.ts +287 -0
  73. package/backend/src/services/__tests__/pluginSymlink.test.ts +340 -0
  74. package/backend/src/services/__tests__/projectMetadataStorage.test.ts +158 -0
  75. package/backend/src/services/__tests__/sessionConcurrency.test.ts +132 -0
  76. package/backend/src/services/__tests__/slackAIService.test.ts +561 -0
  77. package/backend/src/services/__tests__/slackThreadMapper.test.ts +228 -0
  78. package/backend/src/services/a2a/__tests__/a2aClientTool.integration.test.ts +347 -0
  79. package/backend/src/services/a2a/__tests__/a2aClientTool.test.ts +710 -0
  80. package/backend/src/services/a2a/__tests__/a2aConfigService.test.ts +526 -0
  81. package/backend/src/services/a2a/__tests__/a2aConfigServicePath.test.ts +55 -0
  82. package/backend/src/services/a2a/__tests__/a2aSdkMcp.test.ts +254 -0
  83. package/backend/src/services/a2a/__tests__/agentCardService.test.ts +357 -0
  84. package/backend/src/services/a2a/__tests__/apiKeyService.test.ts +378 -0
  85. package/backend/src/services/a2a/__tests__/buildQueryOptionsIntegration.test.ts +41 -0
  86. package/backend/src/services/a2a/__tests__/dynamic_config_verification.test.ts +71 -0
  87. package/backend/src/services/a2a/__tests__/integrateA2AMcpServer.test.ts +97 -0
  88. package/backend/src/services/a2a/__tests__/taskManager.integration.test.ts +417 -0
  89. package/backend/src/services/a2a/__tests__/taskManager.test.ts +511 -0
  90. package/backend/src/services/a2a/__tests__/webhookService.test.ts +258 -0
  91. package/backend/src/services/a2a/a2aClientTool.ts +723 -0
  92. package/backend/src/services/a2a/a2aConfigService.ts +194 -0
  93. package/backend/src/services/a2a/a2aHistoryService.ts +111 -0
  94. package/backend/src/services/a2a/a2aIntegration.ts +40 -0
  95. package/backend/src/services/a2a/a2aQueryService.ts +275 -0
  96. package/backend/src/services/a2a/a2aSdkMcp.ts +208 -0
  97. package/backend/src/services/a2a/a2aStreamEvents.ts +166 -0
  98. package/backend/src/services/a2a/agentCardService.ts +256 -0
  99. package/backend/src/services/a2a/agentMappingService.ts +202 -0
  100. package/backend/src/services/a2a/apiKeyService.ts +361 -0
  101. package/backend/src/services/a2a/taskCleanup.ts +199 -0
  102. package/backend/src/services/a2a/taskManager.ts +327 -0
  103. package/backend/src/services/a2a/webhookService.ts +161 -0
  104. package/backend/src/services/agentStorage.ts +506 -0
  105. package/backend/src/services/askUserQuestion/askUserQuestionIntegration.ts +68 -0
  106. package/backend/src/services/askUserQuestion/askUserQuestionMcp.ts +173 -0
  107. package/backend/src/services/askUserQuestion/index.ts +48 -0
  108. package/backend/src/services/askUserQuestion/init.ts +53 -0
  109. package/backend/src/services/askUserQuestion/notificationChannel.ts +218 -0
  110. package/backend/src/services/askUserQuestion/slackNotificationChannel.ts +150 -0
  111. package/backend/src/services/askUserQuestion/sseNotificationChannel.ts +102 -0
  112. package/backend/src/services/askUserQuestion/userInputRegistry.ts +307 -0
  113. package/backend/src/services/claudeSession.ts +421 -0
  114. package/backend/src/services/claudeVersionStorage.ts +389 -0
  115. package/backend/src/services/mcpAdmin/__tests__/adminApiKeyService.test.ts +385 -0
  116. package/backend/src/services/mcpAdmin/__tests__/mcpAdminRoutes.test.ts +356 -0
  117. package/backend/src/services/mcpAdmin/__tests__/mcpAdminServer.test.ts +541 -0
  118. package/backend/src/services/mcpAdmin/__tests__/providerTools.test.ts +347 -0
  119. package/backend/src/services/mcpAdmin/__tests__/tools.test.ts +463 -0
  120. package/backend/src/services/mcpAdmin/adminApiKeyService.ts +329 -0
  121. package/backend/src/services/mcpAdmin/index.ts +19 -0
  122. package/backend/src/services/mcpAdmin/mcpAdminServer.ts +318 -0
  123. package/backend/src/services/mcpAdmin/tools/agentTools.ts +390 -0
  124. package/backend/src/services/mcpAdmin/tools/index.ts +29 -0
  125. package/backend/src/services/mcpAdmin/tools/mcpServerTools.ts +368 -0
  126. package/backend/src/services/mcpAdmin/tools/projectTools.ts +415 -0
  127. package/backend/src/services/mcpAdmin/tools/providerTools.ts +649 -0
  128. package/backend/src/services/mcpAdmin/tools/systemTools.ts +254 -0
  129. package/backend/src/services/mcpAdmin/types.ts +155 -0
  130. package/backend/src/services/messageQueue.ts +80 -0
  131. package/backend/src/services/pluginInstaller.ts +329 -0
  132. package/backend/src/services/pluginParser.ts +441 -0
  133. package/backend/src/services/pluginPaths.ts +270 -0
  134. package/backend/src/services/pluginScanner.ts +245 -0
  135. package/backend/src/services/pluginSymlink.ts +241 -0
  136. package/backend/src/services/projectMetadataStorage.ts +871 -0
  137. package/backend/src/services/scheduledTaskStorage.ts +377 -0
  138. package/backend/src/services/schedulerService.ts +668 -0
  139. package/backend/src/services/sessionManager.ts +738 -0
  140. package/backend/src/services/skillStorage.ts +521 -0
  141. package/backend/src/services/slackAIService.ts +1395 -0
  142. package/backend/src/services/slackClient.ts +110 -0
  143. package/backend/src/services/slackSessionLock.ts +364 -0
  144. package/backend/src/services/slackThreadMapper.ts +170 -0
  145. package/backend/src/services/taskExecutor/BuiltinExecutor.ts +611 -0
  146. package/backend/src/services/taskExecutor/__tests__/a2a-tasks.test.ts +382 -0
  147. package/backend/src/services/taskExecutor/__tests__/e2e-workflows.test.ts +528 -0
  148. package/backend/src/services/taskExecutor/__tests__/error-handling.test.ts +458 -0
  149. package/backend/src/services/taskExecutor/__tests__/stress.test.ts +400 -0
  150. package/backend/src/services/taskExecutor/__tests__/taskExecutor.integration.test.ts +240 -0
  151. package/backend/src/services/taskExecutor/__tests__/timeout-cancellation.test.ts +384 -0
  152. package/backend/src/services/taskExecutor/index.ts +168 -0
  153. package/backend/src/services/taskExecutor/taskWorker.ts +222 -0
  154. package/backend/src/services/taskExecutor/types.ts +179 -0
  155. package/backend/src/services/telemetry.ts +234 -0
  156. package/backend/src/services/tunnelService.ts +614 -0
  157. package/backend/src/types/a2a.ts +372 -0
  158. package/backend/src/types/agents.ts +161 -0
  159. package/backend/src/types/claude-history.ts +81 -0
  160. package/backend/src/types/claude-versions.ts +39 -0
  161. package/backend/src/types/commands.ts +63 -0
  162. package/backend/src/types/plugins.ts +157 -0
  163. package/backend/src/types/projects.ts +64 -0
  164. package/backend/src/types/scheduledTasks.ts +214 -0
  165. package/backend/src/types/skills.ts +130 -0
  166. package/backend/src/types/slack.ts +112 -0
  167. package/backend/src/types/streaming.ts +13 -0
  168. package/backend/src/types/subagents.ts +29 -0
  169. package/backend/src/utils/__tests__/claudeUtils.test.ts +312 -0
  170. package/backend/src/utils/__tests__/configResolver.test.ts +255 -0
  171. package/backend/src/utils/__tests__/sessionUtils.test.ts +384 -0
  172. package/backend/src/utils/agentCardCache.ts +245 -0
  173. package/backend/src/utils/claudeUtils.ts +377 -0
  174. package/backend/src/utils/configResolver.ts +175 -0
  175. package/backend/src/utils/fileUtils.ts +5 -0
  176. package/backend/src/utils/jwt.ts +104 -0
  177. package/backend/src/utils/networkUtils.ts +68 -0
  178. package/backend/src/utils/sessionUtils.ts +303 -0
  179. package/backend/tsconfig.json +25 -0
  180. package/backend/vitest.config.ts +29 -0
  181. package/docker-compose.traefik.yml +59 -0
  182. package/docker-compose.yml +38 -0
  183. package/docker-entrypoint.sh +30 -0
  184. package/docs/CLOUDFLARE_TUNNEL.md +233 -0
  185. package/docs/CLOUDFLARE_TUNNEL_ARCHITECTURE.md +406 -0
  186. package/docs/LAVS-IMPLEMENTATION.md +1973 -0
  187. package/docs/LAVS-SPEC.md +951 -0
  188. package/docs/QUICK_START_CLOUDFLARE_TUNNEL.md +304 -0
  189. package/docs/SCHEDULER_CONTROL.md +142 -0
  190. package/docs/SCHEDULER_STATUS_DISPLAY.md +86 -0
  191. package/docs/USER_MANUAL.md +1726 -0
  192. package/docs/USER_MANUAL_EN.md +1408 -0
  193. package/docs/VERSION_COMPATIBILITY.md +616 -0
  194. package/docs/api/a2a-endpoints.md +891 -0
  195. package/docs/guides/unified-task-executor-summary.md +365 -0
  196. package/docs/guides/unified-task-executor.md +304 -0
  197. package/docs/screenshots/01-homepage.png +0 -0
  198. package/docs/screenshots/02-dashboard.png +0 -0
  199. package/docs/screenshots/03-projects.png +0 -0
  200. package/docs/screenshots/04-agents.png +0 -0
  201. package/docs/screenshots/05-mcp-services.png +0 -0
  202. package/docs/screenshots/06-commands.png +0 -0
  203. package/docs/screenshots/07-chat.png +0 -0
  204. package/docs/screenshots/08-skills.png +0 -0
  205. package/docs/screenshots/09-settings.png +0 -0
  206. package/docs/screenshots/10-suppliers.png +0 -0
  207. package/docs/screenshots/11-plugins.png +0 -0
  208. package/docs/screenshots/agent-create-dialog.png +0 -0
  209. package/docs/screenshots/agent-edit-dialog.png +0 -0
  210. package/docs/screenshots/agent-list-overview.png +0 -0
  211. package/docs/screenshots/agent-tools-selection.png +0 -0
  212. package/docs/screenshots/agents-management.png +0 -0
  213. package/docs/screenshots/auto-compacted-session.png +0 -0
  214. package/docs/screenshots/chat-interface.png +0 -0
  215. package/docs/screenshots/chat-session-debug.png +0 -0
  216. package/docs/screenshots/chat-session-history.png +0 -0
  217. package/docs/screenshots/chat-tools-selection.png +0 -0
  218. package/docs/screenshots/commands-create-dialog.png +0 -0
  219. package/docs/screenshots/commands-overview.png +0 -0
  220. package/docs/screenshots/create-project-dialog.png +0 -0
  221. package/docs/screenshots/dashboard-overview.png +0 -0
  222. package/docs/screenshots/file-browser-interface.png +0 -0
  223. package/docs/screenshots/import-project-dialog.png +0 -0
  224. package/docs/screenshots/mcp-add-service-dialog.png +0 -0
  225. package/docs/screenshots/mcp-admin-settings.png +0 -0
  226. package/docs/screenshots/mcp-import-claude-code.png +0 -0
  227. package/docs/screenshots/mcp-list-overview.png +0 -0
  228. package/docs/screenshots/mcp-services-page.png +0 -0
  229. package/docs/screenshots/password-management-modal.png +0 -0
  230. package/docs/screenshots/plugins-add-market.png +0 -0
  231. package/docs/screenshots/plugins-browse.png +0 -0
  232. package/docs/screenshots/plugins-overview.png +0 -0
  233. package/docs/screenshots/ppt-editor-chat-interface.png +0 -0
  234. package/docs/screenshots/project-commands-dialog.png +0 -0
  235. package/docs/screenshots/project-list-overview.png +0 -0
  236. package/docs/screenshots/project-memory-dialog.png +0 -0
  237. package/docs/screenshots/project-settings-dialog.png +0 -0
  238. package/docs/screenshots/project-subagent-dialog.png +0 -0
  239. package/docs/screenshots/projects-management.png +0 -0
  240. package/docs/screenshots/projects-overview.png +0 -0
  241. package/docs/screenshots/scheduled-tasks-create-dialog.png +0 -0
  242. package/docs/screenshots/scheduled-tasks-execution-history.png +0 -0
  243. package/docs/screenshots/scheduled-tasks-overview.png +0 -0
  244. package/docs/screenshots/session-display-issue.png +0 -0
  245. package/docs/screenshots/session-messages-fix.png +0 -0
  246. package/docs/screenshots/session-messages-loaded.png +0 -0
  247. package/docs/screenshots/settings-general.png +0 -0
  248. package/docs/screenshots/settings-memory.png +0 -0
  249. package/docs/screenshots/skills-create-dialog.png +0 -0
  250. package/docs/screenshots/skills-list-overview.png +0 -0
  251. package/docs/screenshots/skills-view-detail.png +0 -0
  252. package/docs/screenshots/slide-preview-after-fix.png +0 -0
  253. package/docs/screenshots/storybook-basetool-full.png +0 -0
  254. package/docs/screenshots/storybook-fixed.png +0 -0
  255. package/docs/screenshots/storybook-tasktool.png +0 -0
  256. package/docs/screenshots/supplier-add-dialog.png +0 -0
  257. package/docs/screenshots/supplier-edit-dialog.png +0 -0
  258. package/docs/screenshots/suppliers-overview.png +0 -0
  259. package/docs/screenshots/telemetry-settings.png +0 -0
  260. package/docs/screenshots/version-management-page.png +0 -0
  261. package/docs-site/.vitepress/cache/deps/@theme_index.js +275 -0
  262. package/docs-site/.vitepress/cache/deps/@theme_index.js.map +7 -0
  263. package/docs-site/.vitepress/cache/deps/_metadata.json +58 -0
  264. package/docs-site/.vitepress/cache/deps/chunk-CN42XFKG.js +12824 -0
  265. package/docs-site/.vitepress/cache/deps/chunk-CN42XFKG.js.map +7 -0
  266. package/docs-site/.vitepress/cache/deps/chunk-Y3A3J5YD.js +9719 -0
  267. package/docs-site/.vitepress/cache/deps/chunk-Y3A3J5YD.js.map +7 -0
  268. package/docs-site/.vitepress/cache/deps/package.json +3 -0
  269. package/docs-site/.vitepress/cache/deps/vitepress___@vue_devtools-api.js +4505 -0
  270. package/docs-site/.vitepress/cache/deps/vitepress___@vue_devtools-api.js.map +7 -0
  271. package/docs-site/.vitepress/cache/deps/vitepress___@vueuse_core.js +583 -0
  272. package/docs-site/.vitepress/cache/deps/vitepress___@vueuse_core.js.map +7 -0
  273. package/docs-site/.vitepress/cache/deps/vitepress___@vueuse_integrations_useFocusTrap.js +1352 -0
  274. package/docs-site/.vitepress/cache/deps/vitepress___@vueuse_integrations_useFocusTrap.js.map +7 -0
  275. package/docs-site/.vitepress/cache/deps/vitepress___mark__js_src_vanilla__js.js +1665 -0
  276. package/docs-site/.vitepress/cache/deps/vitepress___mark__js_src_vanilla__js.js.map +7 -0
  277. package/docs-site/.vitepress/cache/deps/vitepress___minisearch.js +1813 -0
  278. package/docs-site/.vitepress/cache/deps/vitepress___minisearch.js.map +7 -0
  279. package/docs-site/.vitepress/cache/deps/vue.js +347 -0
  280. package/docs-site/.vitepress/cache/deps/vue.js.map +7 -0
  281. package/docs-site/src/.vitepress/cache/deps/_metadata.json +52 -0
  282. package/docs-site/src/.vitepress/cache/deps/chunk-CN42XFKG.js +12824 -0
  283. package/docs-site/src/.vitepress/cache/deps/chunk-CN42XFKG.js.map +7 -0
  284. package/docs-site/src/.vitepress/cache/deps/chunk-Y3A3J5YD.js +9719 -0
  285. package/docs-site/src/.vitepress/cache/deps/chunk-Y3A3J5YD.js.map +7 -0
  286. package/docs-site/src/.vitepress/cache/deps/package.json +3 -0
  287. package/docs-site/src/.vitepress/cache/deps/vitepress___@vue_devtools-api.js +4505 -0
  288. package/docs-site/src/.vitepress/cache/deps/vitepress___@vue_devtools-api.js.map +7 -0
  289. package/docs-site/src/.vitepress/cache/deps/vitepress___@vueuse_core.js +583 -0
  290. package/docs-site/src/.vitepress/cache/deps/vitepress___@vueuse_core.js.map +7 -0
  291. package/docs-site/src/.vitepress/cache/deps/vitepress___@vueuse_integrations_useFocusTrap.js +1352 -0
  292. package/docs-site/src/.vitepress/cache/deps/vitepress___@vueuse_integrations_useFocusTrap.js.map +7 -0
  293. package/docs-site/src/.vitepress/cache/deps/vitepress___mark__js_src_vanilla__js.js +1665 -0
  294. package/docs-site/src/.vitepress/cache/deps/vitepress___mark__js_src_vanilla__js.js.map +7 -0
  295. package/docs-site/src/.vitepress/cache/deps/vitepress___minisearch.js +1813 -0
  296. package/docs-site/src/.vitepress/cache/deps/vitepress___minisearch.js.map +7 -0
  297. package/docs-site/src/.vitepress/cache/deps/vue.js +347 -0
  298. package/docs-site/src/.vitepress/cache/deps/vue.js.map +7 -0
  299. package/frontend/.storybook/main.ts +22 -0
  300. package/frontend/.storybook/preview.ts +27 -0
  301. package/frontend/.storybook/vitest.setup.ts +7 -0
  302. package/frontend/README.md +69 -0
  303. package/frontend/components.json +17 -0
  304. package/frontend/eslint.config.js +26 -0
  305. package/frontend/index.html +62 -0
  306. package/frontend/package-lock.json +7922 -0
  307. package/frontend/package.json +90 -0
  308. package/frontend/pnpm-lock.yaml +4714 -0
  309. package/frontend/postcss.config.js +6 -0
  310. package/frontend/scripts/extract-chinese.js +146 -0
  311. package/frontend/src/App.css +42 -0
  312. package/frontend/src/App.tsx +201 -0
  313. package/frontend/src/__tests__/smoke.test.tsx +15 -0
  314. package/frontend/src/agents/README.md +136 -0
  315. package/frontend/src/agents/chat/index.ts +17 -0
  316. package/frontend/src/agents/registry.ts +22 -0
  317. package/frontend/src/agents/slides/components/SlidePreview.tsx +287 -0
  318. package/frontend/src/agents/slides/components/SlidePreviewPanel.tsx +120 -0
  319. package/frontend/src/agents/slides/hooks/useSlides.ts +245 -0
  320. package/frontend/src/agents/slides/index.ts +17 -0
  321. package/frontend/src/agents/slides/stores/useSlidesStore.ts +56 -0
  322. package/frontend/src/agents/types.ts +18 -0
  323. package/frontend/src/api/skills.ts +184 -0
  324. package/frontend/src/assets/react.svg +1 -0
  325. package/frontend/src/components/AgentChatPanel.tsx +901 -0
  326. package/frontend/src/components/ApiSettingsModal.tsx +267 -0
  327. package/frontend/src/components/BackendOnboardingWizard.tsx +255 -0
  328. package/frontend/src/components/BackendServiceSwitcher.tsx +356 -0
  329. package/frontend/src/components/CSVPreview.tsx +465 -0
  330. package/frontend/src/components/ChatMessageRenderer.tsx +279 -0
  331. package/frontend/src/components/CommandForm.tsx +560 -0
  332. package/frontend/src/components/CommandSelector.tsx +218 -0
  333. package/frontend/src/components/CompactSummary.tsx +52 -0
  334. package/frontend/src/components/ConfirmDialog.tsx +69 -0
  335. package/frontend/src/components/DiffViewer.css +78 -0
  336. package/frontend/src/components/DiffViewer.tsx +89 -0
  337. package/frontend/src/components/EnvVarsConfig.tsx +113 -0
  338. package/frontend/src/components/ErrorBoundary.tsx +100 -0
  339. package/frontend/src/components/ErrorMessage.tsx +197 -0
  340. package/frontend/src/components/FileBrowser.tsx +480 -0
  341. package/frontend/src/components/FileContentViewer.tsx +155 -0
  342. package/frontend/src/components/FileExplorer/FileIcon.tsx +32 -0
  343. package/frontend/src/components/FileExplorer/FilePreview.tsx +130 -0
  344. package/frontend/src/components/FileExplorer/FileTabs.tsx +104 -0
  345. package/frontend/src/components/FileExplorer/FileTreeToolbar.tsx +30 -0
  346. package/frontend/src/components/FileExplorer/ImagePreview.tsx +86 -0
  347. package/frontend/src/components/FileExplorer/REFACTOR_SUMMARY.md +117 -0
  348. package/frontend/src/components/FileExplorer/TabDropdown.tsx +59 -0
  349. package/frontend/src/components/FileExplorer/TreeNode.tsx +73 -0
  350. package/frontend/src/components/FileExplorer/constants.ts +16 -0
  351. package/frontend/src/components/FileExplorer/fileTypes.ts +156 -0
  352. package/frontend/src/components/FileExplorer/hooks/index.ts +2 -0
  353. package/frontend/src/components/FileExplorer/hooks/useFileTabs.ts +120 -0
  354. package/frontend/src/components/FileExplorer/hooks/useLazyFileTree.ts +260 -0
  355. package/frontend/src/components/FileExplorer/index.ts +15 -0
  356. package/frontend/src/components/FileExplorer.tsx +1124 -0
  357. package/frontend/src/components/FloatingToggle.tsx +66 -0
  358. package/frontend/src/components/ImagePreview.tsx +369 -0
  359. package/frontend/src/components/JSONLPreview.tsx +421 -0
  360. package/frontend/src/components/LanguageSwitcher.tsx +32 -0
  361. package/frontend/src/components/Layout.tsx +57 -0
  362. package/frontend/src/components/MarkdownMessage.tsx +136 -0
  363. package/frontend/src/components/McpStatusModal.tsx +272 -0
  364. package/frontend/src/components/MermaidDiagram.tsx +423 -0
  365. package/frontend/src/components/MobileChatInput.tsx +158 -0
  366. package/frontend/src/components/MobileChatToolbar.tsx +164 -0
  367. package/frontend/src/components/MobileNavigation.tsx +101 -0
  368. package/frontend/src/components/MobileSettingsModal.tsx +272 -0
  369. package/frontend/src/components/MobileSidebar.tsx +56 -0
  370. package/frontend/src/components/PanelToggle.tsx +69 -0
  371. package/frontend/src/components/ProjectA2AModal.tsx +1430 -0
  372. package/frontend/src/components/ProjectCommandsModal.tsx +453 -0
  373. package/frontend/src/components/ProjectMemoryModal.tsx +178 -0
  374. package/frontend/src/components/ProjectSelector.tsx +498 -0
  375. package/frontend/src/components/ProjectSettingsModal.tsx +210 -0
  376. package/frontend/src/components/ProjectSubAgentsModal.tsx +421 -0
  377. package/frontend/src/components/ProjectTable.tsx +387 -0
  378. package/frontend/src/components/ProtectedRoute.tsx +123 -0
  379. package/frontend/src/components/RecentActivity.tsx +145 -0
  380. package/frontend/src/components/ResponsiveTable.tsx +164 -0
  381. package/frontend/src/components/RightPanelHeader.tsx +87 -0
  382. package/frontend/src/components/RightPanelWrapper.tsx +74 -0
  383. package/frontend/src/components/ScheduledTaskEditor.tsx +718 -0
  384. package/frontend/src/components/ServiceManagementModal.tsx +794 -0
  385. package/frontend/src/components/ServiceStatusIndicator.tsx +334 -0
  386. package/frontend/src/components/SessionsDashboard.tsx +295 -0
  387. package/frontend/src/components/SessionsDropdown.tsx +168 -0
  388. package/frontend/src/components/SettingsDropdown.tsx +236 -0
  389. package/frontend/src/components/SettingsLayout.tsx +16 -0
  390. package/frontend/src/components/Sidebar.tsx +283 -0
  391. package/frontend/src/components/SplitLayout.tsx +261 -0
  392. package/frontend/src/components/SubagentForm.tsx +468 -0
  393. package/frontend/src/components/SwipeActions.tsx +413 -0
  394. package/frontend/src/components/SystemPromptEditor.tsx +126 -0
  395. package/frontend/src/components/TaskExecutionHistory.tsx +373 -0
  396. package/frontend/src/components/TelemetryProvider.tsx +157 -0
  397. package/frontend/src/components/ToolUsage.tsx +34 -0
  398. package/frontend/src/components/ToolsList.tsx +86 -0
  399. package/frontend/src/components/UnifiedToolSelector.tsx +508 -0
  400. package/frontend/src/components/UpdateNotification.tsx +105 -0
  401. package/frontend/src/components/agentChat/AgentChatInput.tsx +249 -0
  402. package/frontend/src/components/agentChat/AgentChatMobileInput.tsx +266 -0
  403. package/frontend/src/components/agentChat/AgentCommandSelector.tsx +226 -0
  404. package/frontend/src/components/agentChat/AgentInputArea.tsx +573 -0
  405. package/frontend/src/components/agentChat/ChatMessageList.tsx +125 -0
  406. package/frontend/src/components/agentChat/index.ts +7 -0
  407. package/frontend/src/components/onboarding/BackendDetectingStep.tsx +42 -0
  408. package/frontend/src/components/onboarding/BackendFoundStep.tsx +75 -0
  409. package/frontend/src/components/onboarding/BackendNotFoundStep.tsx +249 -0
  410. package/frontend/src/components/onboarding/OnboardingCompleteStep.tsx +90 -0
  411. package/frontend/src/components/onboarding/WelcomeStep.tsx +93 -0
  412. package/frontend/src/components/plugins/AddMarketplaceModal.tsx +186 -0
  413. package/frontend/src/components/plugins/BrowsePluginsTab.tsx +262 -0
  414. package/frontend/src/components/plugins/InstalledPluginsTab.tsx +246 -0
  415. package/frontend/src/components/plugins/MarketplacesTab.tsx +168 -0
  416. package/frontend/src/components/plugins/PluginDetailModal.tsx +307 -0
  417. package/frontend/src/components/settings/version/ClaudeVersionForm.tsx +266 -0
  418. package/frontend/src/components/settings/version/ClaudeVersionList.tsx +61 -0
  419. package/frontend/src/components/settings/version/EnvironmentVariablesSection.tsx +173 -0
  420. package/frontend/src/components/settings/version/ModelConfigSection.tsx +129 -0
  421. package/frontend/src/components/settings/version/VersionListItem.tsx +133 -0
  422. package/frontend/src/components/settings/version/VersionTemplateSelector.tsx +53 -0
  423. package/frontend/src/components/skills/CreateSkillModal.tsx +702 -0
  424. package/frontend/src/components/skills/SkillDetailModal.tsx +180 -0
  425. package/frontend/src/components/skills/SkillFileBrowserModal.tsx +67 -0
  426. package/frontend/src/components/skills/SkillPreview.tsx +150 -0
  427. package/frontend/src/components/skills/SkillsPage.tsx +329 -0
  428. package/frontend/src/components/skills/index.ts +4 -0
  429. package/frontend/src/components/tools/A2ACallTool.tsx +733 -0
  430. package/frontend/src/components/tools/AskUserQuestionTool.stories.tsx +223 -0
  431. package/frontend/src/components/tools/AskUserQuestionTool.tsx +546 -0
  432. package/frontend/src/components/tools/BaseToolComponent.stories.tsx +316 -0
  433. package/frontend/src/components/tools/BaseToolComponent.tsx +226 -0
  434. package/frontend/src/components/tools/BashOutputTool.stories.tsx +106 -0
  435. package/frontend/src/components/tools/BashOutputTool.tsx +198 -0
  436. package/frontend/src/components/tools/BashTool.stories.tsx +163 -0
  437. package/frontend/src/components/tools/BashTool.tsx +80 -0
  438. package/frontend/src/components/tools/EditTool.stories.tsx +109 -0
  439. package/frontend/src/components/tools/EditTool.tsx +60 -0
  440. package/frontend/src/components/tools/ExitPlanModeTool.stories.tsx +118 -0
  441. package/frontend/src/components/tools/ExitPlanModeTool.tsx +34 -0
  442. package/frontend/src/components/tools/GlobTool.stories.tsx +122 -0
  443. package/frontend/src/components/tools/GlobTool.tsx +50 -0
  444. package/frontend/src/components/tools/GrepTool.stories.tsx +125 -0
  445. package/frontend/src/components/tools/GrepTool.tsx +87 -0
  446. package/frontend/src/components/tools/KillBashTool.stories.tsx +120 -0
  447. package/frontend/src/components/tools/KillBashTool.tsx +112 -0
  448. package/frontend/src/components/tools/LSTool.stories.tsx +132 -0
  449. package/frontend/src/components/tools/LSTool.tsx +41 -0
  450. package/frontend/src/components/tools/ListMcpResourcesTool.stories.tsx +125 -0
  451. package/frontend/src/components/tools/ListMcpResourcesTool.tsx +84 -0
  452. package/frontend/src/components/tools/McpTool.stories.tsx +140 -0
  453. package/frontend/src/components/tools/McpTool.tsx +266 -0
  454. package/frontend/src/components/tools/MultiEditTool.stories.tsx +127 -0
  455. package/frontend/src/components/tools/MultiEditTool.tsx +59 -0
  456. package/frontend/src/components/tools/NotebookEditTool.stories.tsx +137 -0
  457. package/frontend/src/components/tools/NotebookEditTool.tsx +57 -0
  458. package/frontend/src/components/tools/NotebookReadTool.stories.tsx +134 -0
  459. package/frontend/src/components/tools/NotebookReadTool.tsx +25 -0
  460. package/frontend/src/components/tools/README.md +677 -0
  461. package/frontend/src/components/tools/ReadMcpResourceTool.stories.tsx +125 -0
  462. package/frontend/src/components/tools/ReadMcpResourceTool.tsx +126 -0
  463. package/frontend/src/components/tools/ReadTool.stories.tsx +116 -0
  464. package/frontend/src/components/tools/ReadTool.tsx +37 -0
  465. package/frontend/src/components/tools/SkillTool.tsx +91 -0
  466. package/frontend/src/components/tools/SubAgentMessageFlow.tsx +172 -0
  467. package/frontend/src/components/tools/TaskTool.stories.tsx +483 -0
  468. package/frontend/src/components/tools/TaskTool.tsx +199 -0
  469. package/frontend/src/components/tools/TimeMachineTool.stories.tsx +254 -0
  470. package/frontend/src/components/tools/TimeMachineTool.tsx +126 -0
  471. package/frontend/src/components/tools/TodoWriteTool.stories.tsx +128 -0
  472. package/frontend/src/components/tools/TodoWriteTool.tsx +74 -0
  473. package/frontend/src/components/tools/ToolRenderer.stories.tsx +460 -0
  474. package/frontend/src/components/tools/ToolRenderer.tsx +147 -0
  475. package/frontend/src/components/tools/WebFetchTool.stories.tsx +114 -0
  476. package/frontend/src/components/tools/WebFetchTool.tsx +50 -0
  477. package/frontend/src/components/tools/WebSearchTool.stories.tsx +124 -0
  478. package/frontend/src/components/tools/WebSearchTool.tsx +67 -0
  479. package/frontend/src/components/tools/WriteTool.stories.tsx +115 -0
  480. package/frontend/src/components/tools/WriteTool.tsx +41 -0
  481. package/frontend/src/components/tools/__mocks__/toolTestData.ts +557 -0
  482. package/frontend/src/components/tools/customMcpTools.tsx +17 -0
  483. package/frontend/src/components/tools/index.stories.tsx +107 -0
  484. package/frontend/src/components/tools/index.ts +24 -0
  485. package/frontend/src/components/tools/mcpUtils.ts +27 -0
  486. package/frontend/src/components/tools/sdk-types.ts +327 -0
  487. package/frontend/src/components/tools/types.ts +218 -0
  488. package/frontend/src/components/ui/Button.tsx +39 -0
  489. package/frontend/src/components/ui/Input.tsx +24 -0
  490. package/frontend/src/components/ui/Textarea.tsx +23 -0
  491. package/frontend/src/components/ui/VersionInfo.tsx +116 -0
  492. package/frontend/src/components/ui/dialog.tsx +90 -0
  493. package/frontend/src/components/ui/index.ts +4 -0
  494. package/frontend/src/components/ui/label.tsx +19 -0
  495. package/frontend/src/components/ui/select.tsx +121 -0
  496. package/frontend/src/components/ui/table.tsx +117 -0
  497. package/frontend/src/components/ui/tabs.tsx +124 -0
  498. package/frontend/src/components/ui/toast.tsx +127 -0
  499. package/frontend/src/components/ui/toaster.tsx +33 -0
  500. package/frontend/src/contexts/MobileContext.tsx +109 -0
  501. package/frontend/src/hooks/__tests__/useAIStreamHandler.test.ts +1198 -0
  502. package/frontend/src/hooks/agentChat/index.ts +10 -0
  503. package/frontend/src/hooks/agentChat/useAIStreamHandler.ts +1594 -0
  504. package/frontend/src/hooks/agentChat/useClaudeVersionManager.ts +99 -0
  505. package/frontend/src/hooks/agentChat/useCommandCompletion.ts +253 -0
  506. package/frontend/src/hooks/agentChat/useImageUpload.ts +176 -0
  507. package/frontend/src/hooks/agentChat/useMessageSender.ts +391 -0
  508. package/frontend/src/hooks/agentChat/useScrollManagement.ts +66 -0
  509. package/frontend/src/hooks/agentChat/useSessionManager.ts +110 -0
  510. package/frontend/src/hooks/agentChat/useToolSelector.ts +82 -0
  511. package/frontend/src/hooks/agentChat/useUIState.ts +103 -0
  512. package/frontend/src/hooks/index.ts +3 -0
  513. package/frontend/src/hooks/use-toast.ts +194 -0
  514. package/frontend/src/hooks/useA2AConfig.ts +224 -0
  515. package/frontend/src/hooks/useA2AManagement.ts +456 -0
  516. package/frontend/src/hooks/useAI.ts +264 -0
  517. package/frontend/src/hooks/useAgents.ts +411 -0
  518. package/frontend/src/hooks/useApiBase.ts +31 -0
  519. package/frontend/src/hooks/useAuth.ts +454 -0
  520. package/frontend/src/hooks/useBackendServices.ts +58 -0
  521. package/frontend/src/hooks/useClaudeVersions.ts +128 -0
  522. package/frontend/src/hooks/useCommands.ts +312 -0
  523. package/frontend/src/hooks/useDashboardStats.ts +61 -0
  524. package/frontend/src/hooks/useFileSystem.ts +349 -0
  525. package/frontend/src/hooks/useFiles.ts +80 -0
  526. package/frontend/src/hooks/useMarketplaces.ts +120 -0
  527. package/frontend/src/hooks/useMobile.tsx +110 -0
  528. package/frontend/src/hooks/usePlugins.ts +239 -0
  529. package/frontend/src/hooks/useProjects.ts +45 -0
  530. package/frontend/src/hooks/useResponsiveSettings.tsx +22 -0
  531. package/frontend/src/hooks/useScheduledTasks.ts +483 -0
  532. package/frontend/src/hooks/useSessionHeartbeat.ts +173 -0
  533. package/frontend/src/hooks/useSessionHeartbeatOnSuccess.ts +80 -0
  534. package/frontend/src/hooks/useSessions.ts +96 -0
  535. package/frontend/src/hooks/useSkills.ts +197 -0
  536. package/frontend/src/hooks/useSubagents.ts +274 -0
  537. package/frontend/src/hooks/useTabNotification.ts +155 -0
  538. package/frontend/src/hooks/useVersionCheck.ts +164 -0
  539. package/frontend/src/i18n/index.ts +66 -0
  540. package/frontend/src/i18n/locales/en-US/agents.json +85 -0
  541. package/frontend/src/i18n/locales/en-US/common.json +155 -0
  542. package/frontend/src/i18n/locales/en-US/components.json +1197 -0
  543. package/frontend/src/i18n/locales/en-US/errors.json +56 -0
  544. package/frontend/src/i18n/locales/en-US/home.json +27 -0
  545. package/frontend/src/i18n/locales/en-US/onboarding.json +122 -0
  546. package/frontend/src/i18n/locales/en-US/pages.json +1409 -0
  547. package/frontend/src/i18n/locales/en-US/skills.json +120 -0
  548. package/frontend/src/i18n/locales/zh-CN/agents.json +85 -0
  549. package/frontend/src/i18n/locales/zh-CN/common.json +155 -0
  550. package/frontend/src/i18n/locales/zh-CN/components.json +1199 -0
  551. package/frontend/src/i18n/locales/zh-CN/errors.json +56 -0
  552. package/frontend/src/i18n/locales/zh-CN/home.json +27 -0
  553. package/frontend/src/i18n/locales/zh-CN/onboarding.json +122 -0
  554. package/frontend/src/i18n/locales/zh-CN/pages.json +1540 -0
  555. package/frontend/src/i18n/locales/zh-CN/pages.json.tmp +0 -0
  556. package/frontend/src/i18n/locales/zh-CN/pages_new.json +0 -0
  557. package/frontend/src/i18n/locales/zh-CN/skills.json +120 -0
  558. package/frontend/src/i18n/types.ts +19 -0
  559. package/frontend/src/index.css +112 -0
  560. package/frontend/src/lib/authFetch.ts +183 -0
  561. package/frontend/src/lib/config.ts +120 -0
  562. package/frontend/src/lib/utils.ts +6 -0
  563. package/frontend/src/main.tsx +13 -0
  564. package/frontend/src/pages/AgentsPage.tsx +781 -0
  565. package/frontend/src/pages/AnalyticsPage.tsx +363 -0
  566. package/frontend/src/pages/ChatPage.tsx +286 -0
  567. package/frontend/src/pages/CommandsPage.tsx +445 -0
  568. package/frontend/src/pages/DashboardPage.tsx +519 -0
  569. package/frontend/src/pages/HomePage.tsx +223 -0
  570. package/frontend/src/pages/LandingPage.tsx +607 -0
  571. package/frontend/src/pages/LoginPage.tsx +510 -0
  572. package/frontend/src/pages/McpPage.tsx +1049 -0
  573. package/frontend/src/pages/PluginsPage.tsx +98 -0
  574. package/frontend/src/pages/ProjectSettings/A2AConfigTab.tsx +468 -0
  575. package/frontend/src/pages/ProjectsPage.tsx +818 -0
  576. package/frontend/src/pages/ScheduledTasksPage.tsx +574 -0
  577. package/frontend/src/pages/SkillsPage.tsx +6 -0
  578. package/frontend/src/pages/ToastTestPage.tsx +33 -0
  579. package/frontend/src/pages/index.ts +3 -0
  580. package/frontend/src/pages/settings/ApiSettingsPage.tsx +240 -0
  581. package/frontend/src/pages/settings/CloudflareTunnelPage.tsx +730 -0
  582. package/frontend/src/pages/settings/GeneralSettingsPage.tsx +456 -0
  583. package/frontend/src/pages/settings/McpAdminSettingsPage.tsx +1088 -0
  584. package/frontend/src/pages/settings/MemorySettingsPage.tsx +153 -0
  585. package/frontend/src/pages/settings/SubagentsPage.tsx +412 -0
  586. package/frontend/src/pages/settings/SystemInfoPage.tsx +268 -0
  587. package/frontend/src/pages/settings/TelemetrySettingsPage.tsx +175 -0
  588. package/frontend/src/pages/settings/VersionSettingsPage.tsx +366 -0
  589. package/frontend/src/pages/settings/WebSocketTunnelPage.tsx +1578 -0
  590. package/frontend/src/stores/authStore.ts +99 -0
  591. package/frontend/src/stores/useAgentStore.ts +426 -0
  592. package/frontend/src/stores/useSubAgentStore.ts +207 -0
  593. package/frontend/src/styles/mobile.css +156 -0
  594. package/frontend/src/test/setup.ts +64 -0
  595. package/frontend/src/types/agents.ts +109 -0
  596. package/frontend/src/types/backendServices.ts +20 -0
  597. package/frontend/src/types/claude-versions.ts +45 -0
  598. package/frontend/src/types/commands.ts +63 -0
  599. package/frontend/src/types/index.ts +171 -0
  600. package/frontend/src/types/plugins.ts +128 -0
  601. package/frontend/src/types/scheduledTasks.ts +140 -0
  602. package/frontend/src/types/skills.ts +161 -0
  603. package/frontend/src/types/subagents.ts +48 -0
  604. package/frontend/src/types/versionTemplates.ts +270 -0
  605. package/frontend/src/utils/authHelpers.ts +89 -0
  606. package/frontend/src/utils/backendServiceStorage.ts +100 -0
  607. package/frontend/src/utils/commandFormatter.ts +100 -0
  608. package/frontend/src/utils/commandGenerator.ts +72 -0
  609. package/frontend/src/utils/commandHandler.ts +205 -0
  610. package/frontend/src/utils/dateFormat.ts +35 -0
  611. package/frontend/src/utils/eventBus.ts +53 -0
  612. package/frontend/src/utils/index.ts +34 -0
  613. package/frontend/src/utils/onboardingStorage.ts +40 -0
  614. package/frontend/src/utils/smartNavigation.ts +244 -0
  615. package/frontend/src/utils/streamReader.ts +32 -0
  616. package/frontend/src/utils/systemCommands.ts +49 -0
  617. package/frontend/src/utils/tabManager.ts +816 -0
  618. package/frontend/src/utils/toast.ts +49 -0
  619. package/frontend/src/utils/toolMapping.ts +83 -0
  620. package/frontend/src/vite-env.d.ts +3 -0
  621. package/frontend/tailwind.config.js +119 -0
  622. package/frontend/tsconfig.app.json +33 -0
  623. package/frontend/tsconfig.json +7 -0
  624. package/frontend/tsconfig.node.json +25 -0
  625. package/frontend/vite.config.ts +73 -0
  626. package/frontend/vitest.config.ts +39 -0
  627. package/frontend/vitest.shims.d.ts +1 -0
  628. package/nginx.conf +153 -0
  629. package/package.json +38 -49
  630. package/pnpm-workspace.yaml +3 -0
  631. package/scripts/API_KEY_GENERATION_README.md +181 -0
  632. package/scripts/README-nginx.md +327 -0
  633. package/scripts/README.md +259 -0
  634. package/scripts/build-complete.js +98 -0
  635. package/scripts/build-npm.js +251 -0
  636. package/scripts/check-system.sh +153 -0
  637. package/scripts/cloudflare_tunnel.py +292 -0
  638. package/scripts/deploy-feature.sh +265 -0
  639. package/scripts/generate-api-key.ts +59 -0
  640. package/scripts/install-linux.sh +1507 -0
  641. package/scripts/install-macos.sh +1194 -0
  642. package/scripts/remote-install.sh +244 -0
  643. package/scripts/remove-feature.sh +214 -0
  644. package/scripts/remove.sh +390 -0
  645. package/scripts/requirements.txt +1 -0
  646. package/scripts/restore.sh +331 -0
  647. package/scripts/setup-nginx-ssl.sh +242 -0
  648. package/scripts/setup_nginx.sh +110 -0
  649. package/scripts/windows-install-simple.bat +277 -0
  650. package/scripts/windows-install.ps1 +620 -0
  651. package/tsconfig.json +30 -0
  652. package/vercel.json +44 -0
  653. package/bin/agentstudio.d.ts +0 -3
  654. package/bin/agentstudio.d.ts.map +0 -1
  655. package/bin/agentstudio.js +0 -327
  656. package/bin/agentstudio.js.map +0 -1
  657. package/bin/serviceManager.d.ts +0 -16
  658. package/bin/serviceManager.d.ts.map +0 -1
  659. package/bin/serviceManager.js +0 -434
  660. package/bin/serviceManager.js.map +0 -1
  661. package/config/index.d.ts +0 -74
  662. package/config/index.d.ts.map +0 -1
  663. package/config/index.js +0 -166
  664. package/config/index.js.map +0 -1
  665. package/config/paths.d.ts +0 -81
  666. package/config/paths.d.ts.map +0 -1
  667. package/config/paths.js +0 -98
  668. package/config/paths.js.map +0 -1
  669. package/index.d.ts +0 -4
  670. package/index.d.ts.map +0 -1
  671. package/index.js +0 -425
  672. package/index.js.map +0 -1
  673. package/jobs/taskTimeoutMonitor.d.ts +0 -25
  674. package/jobs/taskTimeoutMonitor.d.ts.map +0 -1
  675. package/jobs/taskTimeoutMonitor.js +0 -94
  676. package/jobs/taskTimeoutMonitor.js.map +0 -1
  677. package/middleware/a2aAuth.d.ts +0 -38
  678. package/middleware/a2aAuth.d.ts.map +0 -1
  679. package/middleware/a2aAuth.js +0 -134
  680. package/middleware/a2aAuth.js.map +0 -1
  681. package/middleware/auth.d.ts +0 -9
  682. package/middleware/auth.d.ts.map +0 -1
  683. package/middleware/auth.js +0 -35
  684. package/middleware/auth.js.map +0 -1
  685. package/middleware/httpsOnly.d.ts +0 -75
  686. package/middleware/httpsOnly.d.ts.map +0 -1
  687. package/middleware/httpsOnly.js +0 -189
  688. package/middleware/httpsOnly.js.map +0 -1
  689. package/middleware/rateLimiting.d.ts +0 -37
  690. package/middleware/rateLimiting.d.ts.map +0 -1
  691. package/middleware/rateLimiting.js +0 -118
  692. package/middleware/rateLimiting.js.map +0 -1
  693. package/public/assets/AgentsPage-Cl2yOPj5.js +0 -10
  694. package/public/assets/Button-DPVn3zDJ.js +0 -1
  695. package/public/assets/ChatPage-BAslLt2l.js +0 -471
  696. package/public/assets/ChatPage-BvQmXfcP.css +0 -1
  697. package/public/assets/CommandForm-C8RL-p7h.js +0 -7
  698. package/public/assets/CommandsPage-DakxsAcv.js +0 -1
  699. package/public/assets/DashboardPage-Dz5tihOs.js +0 -1
  700. package/public/assets/FileBrowser-BXtVLz8h.js +0 -6
  701. package/public/assets/FileExplorer-DFQ7ynXa.js +0 -1
  702. package/public/assets/GeneralSettingsPage-CWWgquA9.js +0 -1
  703. package/public/assets/LandingPage-BDKkpXK0.js +0 -1
  704. package/public/assets/LoginPage-1PbdWrXW.js +0 -16
  705. package/public/assets/McpAdminSettingsPage-BlTO82W3.js +0 -7
  706. package/public/assets/McpPage-Bix7CnMS.js +0 -20
  707. package/public/assets/MemorySettingsPage-Dzq3vCns.js +0 -1
  708. package/public/assets/PluginsPage-oYSGDv3z.js +0 -1
  709. package/public/assets/ProjectSelector-Bp1q7dra.js +0 -1
  710. package/public/assets/ProjectsPage-BKpI8KE2.js +0 -21
  711. package/public/assets/ScheduledTasksPage-D2rYw_Qf.js +0 -1
  712. package/public/assets/SettingsLayout-CfmsuehF.js +0 -1
  713. package/public/assets/SkillsPage-D01PYcoW.js +0 -18
  714. package/public/assets/SubagentForm-CSRBsxUE.js +0 -7
  715. package/public/assets/SubagentsPage-CDaYnbfn.js +0 -1
  716. package/public/assets/SystemInfoPage-DAeYkq91.js +0 -1
  717. package/public/assets/TelemetrySettingsPage-BPuPqJPR.js +0 -1
  718. package/public/assets/ToastTestPage-DkZ9D943.js +0 -1
  719. package/public/assets/ToolsList-Ci2lqPin.js +0 -1
  720. package/public/assets/UnifiedToolSelector-CKjY_qjS.js +0 -1
  721. package/public/assets/VersionSettingsPage-DHUbqInQ.js +0 -5
  722. package/public/assets/WebSocketTunnelPage-BGeVdEp8.js +0 -1
  723. package/public/assets/_basePickBy-BFNUdIR5.js +0 -1
  724. package/public/assets/_baseUniq-DP62Yq8R.js +0 -1
  725. package/public/assets/agents-DG431Wop.js +0 -1
  726. package/public/assets/agents-DwCY2K8p.css +0 -1
  727. package/public/assets/arc-CkNwuwWZ.js +0 -1
  728. package/public/assets/architectureDiagram-VXUJARFQ-7Ky7pc6T.js +0 -36
  729. package/public/assets/blockDiagram-VD42YOAC-Ax8FYBYm.js +0 -122
  730. package/public/assets/c4Diagram-YG6GDRKO-CyNR39OO.js +0 -10
  731. package/public/assets/channel-BKv1iINC.js +0 -1
  732. package/public/assets/chunk-4BX2VUAB-zM0Al_rU.js +0 -1
  733. package/public/assets/chunk-55IACEB6-CCDkr_yY.js +0 -1
  734. package/public/assets/chunk-B4BG7PRW-yOb-P7Po.js +0 -165
  735. package/public/assets/chunk-DI55MBZ5-zGH8m4eb.js +0 -220
  736. package/public/assets/chunk-FMBD7UC4-DI1MjWfw.js +0 -15
  737. package/public/assets/chunk-QN33PNHL-C_FDNT8n.js +0 -1
  738. package/public/assets/chunk-QZHKN3VN-V_K-gce9.js +0 -1
  739. package/public/assets/chunk-TZMSLE5B-BnNBbkNq.js +0 -1
  740. package/public/assets/classDiagram-2ON5EDUG-DWylXt6j.js +0 -1
  741. package/public/assets/classDiagram-v2-WZHVMYZB-DWylXt6j.js +0 -1
  742. package/public/assets/clone-BnTQiQb4.js +0 -1
  743. package/public/assets/cose-bilkent-S5V4N54A-DrNb0vKp.js +0 -1
  744. package/public/assets/cytoscape.esm-DtBltrT8.js +0 -331
  745. package/public/assets/dagre-6UL2VRFP-CtKFNLmb.js +0 -4
  746. package/public/assets/data-structures-C0h9Oap1.js +0 -27
  747. package/public/assets/dateFormat-CXa8VnEC.js +0 -1
  748. package/public/assets/defaultLocale-C4B-KCzX.js +0 -1
  749. package/public/assets/diagram-PSM6KHXK-DpQfOKt-.js +0 -24
  750. package/public/assets/diagram-QEK2KX5R-DscZmfZJ.js +0 -43
  751. package/public/assets/diagram-S2PKOQOG-UbEZAQ1u.js +0 -24
  752. package/public/assets/erDiagram-Q2GNP2WA-mmTcLBrY.js +0 -60
  753. package/public/assets/flowDiagram-NV44I4VS-BsIXhV1w.js +0 -162
  754. package/public/assets/ganttDiagram-LVOFAZNH-CaHkiTYy.js +0 -267
  755. package/public/assets/gitGraphDiagram-NY62KEGX-B-ctMH3l.js +0 -65
  756. package/public/assets/graph-CtuWuGCI.js +0 -1
  757. package/public/assets/index-D9bAK8SN.js +0 -297
  758. package/public/assets/index-DBxcQY5U.css +0 -1
  759. package/public/assets/infoDiagram-F6ZHWCRC-DMsG_8YD.js +0 -2
  760. package/public/assets/init-Gi6I4Gst.js +0 -1
  761. package/public/assets/journeyDiagram-XKPGCS4Q-XnBAE0k9.js +0 -139
  762. package/public/assets/kanban-definition-3W4ZIXB7-DY1J_CQA.js +0 -89
  763. package/public/assets/katex-qrhCpa0F.js +0 -261
  764. package/public/assets/layout-BBAqRBns.js +0 -1
  765. package/public/assets/linear-DXGOqRyX.js +0 -1
  766. package/public/assets/mindmap-definition-VGOIOE7T-D8LYlQnr.js +0 -68
  767. package/public/assets/monaco-editor-DHKm5-VF.js +0 -19
  768. package/public/assets/ordinal-Cboi1Yqb.js +0 -1
  769. package/public/assets/pieDiagram-ADFJNKIX-DqZw-HeQ.js +0 -30
  770. package/public/assets/quadrantDiagram-AYHSOK5B-CfjEkg6d.js +0 -7
  771. package/public/assets/requirementDiagram-UZGBJVZJ-CEbDefgn.js +0 -64
  772. package/public/assets/sankeyDiagram-TZEHDZUN-DOU4OJks.js +0 -10
  773. package/public/assets/sequenceDiagram-WL72ISMW-BmjWQ4oi.js +0 -145
  774. package/public/assets/stateDiagram-FKZM4ZOC-C7lI7uz2.js +0 -1
  775. package/public/assets/stateDiagram-v2-4FDKWEC3-C8Eo5YFb.js +0 -1
  776. package/public/assets/syntax-highlighting-CnREyncB.js +0 -24
  777. package/public/assets/table-F592JIUY.js +0 -1
  778. package/public/assets/timeline-definition-IT6M3QCI-BltidY3A.js +0 -61
  779. package/public/assets/tools-C0JOzoE_.js +0 -1
  780. package/public/assets/treemap-KMMF4GRG-CXskbtZo.js +0 -128
  781. package/public/assets/ui-components-CRCmgMKc.js +0 -646
  782. package/public/assets/useAgents-Bp5Ry-Dk.js +0 -2
  783. package/public/assets/useClaudeVersions-DYM2HCGW.js +0 -1
  784. package/public/assets/useCommands-B0s3JzZs.js +0 -1
  785. package/public/assets/useProjects-DuCnMeYt.js +0 -1
  786. package/public/assets/useSessions-EknKfdIv.js +0 -1
  787. package/public/assets/xychartDiagram-PRI3JC2R-Bk3p1DGz.js +0 -7
  788. package/public/index.html +0 -70
  789. package/routes/__tests__/a2a.integration.test.d.ts +0 -11
  790. package/routes/__tests__/a2a.integration.test.d.ts.map +0 -1
  791. package/routes/__tests__/a2a.integration.test.js +0 -314
  792. package/routes/__tests__/a2a.integration.test.js.map +0 -1
  793. package/routes/__tests__/a2a.test.d.ts +0 -6
  794. package/routes/__tests__/a2a.test.d.ts.map +0 -1
  795. package/routes/__tests__/a2a.test.js +0 -622
  796. package/routes/__tests__/a2a.test.js.map +0 -1
  797. package/routes/__tests__/agents.test.d.ts +0 -6
  798. package/routes/__tests__/agents.test.d.ts.map +0 -1
  799. package/routes/__tests__/agents.test.js +0 -315
  800. package/routes/__tests__/agents.test.js.map +0 -1
  801. package/routes/__tests__/sessions.test.d.ts +0 -7
  802. package/routes/__tests__/sessions.test.d.ts.map +0 -1
  803. package/routes/__tests__/sessions.test.js +0 -330
  804. package/routes/__tests__/sessions.test.js.map +0 -1
  805. package/routes/a2a.d.ts +0 -18
  806. package/routes/a2a.d.ts.map +0 -1
  807. package/routes/a2a.js +0 -718
  808. package/routes/a2a.js.map +0 -1
  809. package/routes/a2a.streaming.test.d.ts +0 -2
  810. package/routes/a2a.streaming.test.d.ts.map +0 -1
  811. package/routes/a2a.streaming.test.js +0 -167
  812. package/routes/a2a.streaming.test.js.map +0 -1
  813. package/routes/a2aManagement.d.ts +0 -21
  814. package/routes/a2aManagement.d.ts.map +0 -1
  815. package/routes/a2aManagement.js +0 -466
  816. package/routes/a2aManagement.js.map +0 -1
  817. package/routes/agents.d.ts +0 -4
  818. package/routes/agents.d.ts.map +0 -1
  819. package/routes/agents.js +0 -1026
  820. package/routes/agents.js.map +0 -1
  821. package/routes/auth.d.ts +0 -4
  822. package/routes/auth.d.ts.map +0 -1
  823. package/routes/auth.js +0 -135
  824. package/routes/auth.js.map +0 -1
  825. package/routes/cloudflareTunnel.d.ts +0 -4
  826. package/routes/cloudflareTunnel.d.ts.map +0 -1
  827. package/routes/cloudflareTunnel.js +0 -250
  828. package/routes/cloudflareTunnel.js.map +0 -1
  829. package/routes/commands.d.ts +0 -4
  830. package/routes/commands.d.ts.map +0 -1
  831. package/routes/commands.js +0 -479
  832. package/routes/commands.js.map +0 -1
  833. package/routes/config.d.ts +0 -4
  834. package/routes/config.d.ts.map +0 -1
  835. package/routes/config.js +0 -211
  836. package/routes/config.js.map +0 -1
  837. package/routes/files.d.ts +0 -4
  838. package/routes/files.d.ts.map +0 -1
  839. package/routes/files.js +0 -361
  840. package/routes/files.js.map +0 -1
  841. package/routes/mcp.d.ts +0 -26
  842. package/routes/mcp.d.ts.map +0 -1
  843. package/routes/mcp.js +0 -796
  844. package/routes/mcp.js.map +0 -1
  845. package/routes/mcpAdmin.d.ts +0 -16
  846. package/routes/mcpAdmin.d.ts.map +0 -1
  847. package/routes/mcpAdmin.js +0 -308
  848. package/routes/mcpAdmin.js.map +0 -1
  849. package/routes/mcpAdminManagement.d.ts +0 -17
  850. package/routes/mcpAdminManagement.d.ts.map +0 -1
  851. package/routes/mcpAdminManagement.js +0 -345
  852. package/routes/mcpAdminManagement.js.map +0 -1
  853. package/routes/media.d.ts +0 -5
  854. package/routes/media.d.ts.map +0 -1
  855. package/routes/media.js +0 -127
  856. package/routes/media.js.map +0 -1
  857. package/routes/mediaAuth.d.ts +0 -8
  858. package/routes/mediaAuth.d.ts.map +0 -1
  859. package/routes/mediaAuth.js +0 -136
  860. package/routes/mediaAuth.js.map +0 -1
  861. package/routes/network.d.ts +0 -9
  862. package/routes/network.d.ts.map +0 -1
  863. package/routes/network.js +0 -60
  864. package/routes/network.js.map +0 -1
  865. package/routes/plugins.d.ts +0 -4
  866. package/routes/plugins.d.ts.map +0 -1
  867. package/routes/plugins.js +0 -339
  868. package/routes/plugins.js.map +0 -1
  869. package/routes/projects.d.ts +0 -4
  870. package/routes/projects.d.ts.map +0 -1
  871. package/routes/projects.js +0 -1000
  872. package/routes/projects.js.map +0 -1
  873. package/routes/scheduledTasks.d.ts +0 -9
  874. package/routes/scheduledTasks.d.ts.map +0 -1
  875. package/routes/scheduledTasks.js +0 -386
  876. package/routes/scheduledTasks.js.map +0 -1
  877. package/routes/sessions.d.ts +0 -4
  878. package/routes/sessions.d.ts.map +0 -1
  879. package/routes/sessions.js +0 -966
  880. package/routes/sessions.js.map +0 -1
  881. package/routes/settings.d.ts +0 -4
  882. package/routes/settings.d.ts.map +0 -1
  883. package/routes/settings.js +0 -499
  884. package/routes/settings.js.map +0 -1
  885. package/routes/skills.d.ts +0 -4
  886. package/routes/skills.d.ts.map +0 -1
  887. package/routes/skills.js +0 -272
  888. package/routes/skills.js.map +0 -1
  889. package/routes/slack.d.ts +0 -10
  890. package/routes/slack.d.ts.map +0 -1
  891. package/routes/slack.js +0 -189
  892. package/routes/slack.js.map +0 -1
  893. package/routes/slides.d.ts +0 -4
  894. package/routes/slides.d.ts.map +0 -1
  895. package/routes/slides.js +0 -148
  896. package/routes/slides.js.map +0 -1
  897. package/routes/subagents.d.ts +0 -4
  898. package/routes/subagents.d.ts.map +0 -1
  899. package/routes/subagents.js +0 -331
  900. package/routes/subagents.js.map +0 -1
  901. package/routes/taskExecutor.d.ts +0 -9
  902. package/routes/taskExecutor.d.ts.map +0 -1
  903. package/routes/taskExecutor.js +0 -224
  904. package/routes/taskExecutor.js.map +0 -1
  905. package/routes/tunnel.d.ts +0 -10
  906. package/routes/tunnel.d.ts.map +0 -1
  907. package/routes/tunnel.js +0 -296
  908. package/routes/tunnel.js.map +0 -1
  909. package/routes/version.d.ts +0 -4
  910. package/routes/version.d.ts.map +0 -1
  911. package/routes/version.js +0 -216
  912. package/routes/version.js.map +0 -1
  913. package/schemas/a2a.d.ts +0 -946
  914. package/schemas/a2a.d.ts.map +0 -1
  915. package/schemas/a2a.js +0 -316
  916. package/schemas/a2a.js.map +0 -1
  917. package/scripts/postinstall.js +0 -10
  918. package/services/__tests__/pluginInstaller.test.d.ts +0 -5
  919. package/services/__tests__/pluginInstaller.test.d.ts.map +0 -1
  920. package/services/__tests__/pluginInstaller.test.js +0 -290
  921. package/services/__tests__/pluginInstaller.test.js.map +0 -1
  922. package/services/__tests__/pluginParser.test.d.ts +0 -5
  923. package/services/__tests__/pluginParser.test.d.ts.map +0 -1
  924. package/services/__tests__/pluginParser.test.js +0 -272
  925. package/services/__tests__/pluginParser.test.js.map +0 -1
  926. package/services/__tests__/pluginPaths.test.d.ts +0 -5
  927. package/services/__tests__/pluginPaths.test.d.ts.map +0 -1
  928. package/services/__tests__/pluginPaths.test.js +0 -221
  929. package/services/__tests__/pluginPaths.test.js.map +0 -1
  930. package/services/__tests__/pluginScanner.test.d.ts +0 -5
  931. package/services/__tests__/pluginScanner.test.d.ts.map +0 -1
  932. package/services/__tests__/pluginScanner.test.js +0 -272
  933. package/services/__tests__/pluginScanner.test.js.map +0 -1
  934. package/services/__tests__/pluginSymlink.test.d.ts +0 -5
  935. package/services/__tests__/pluginSymlink.test.d.ts.map +0 -1
  936. package/services/__tests__/pluginSymlink.test.js +0 -318
  937. package/services/__tests__/pluginSymlink.test.js.map +0 -1
  938. package/services/__tests__/projectMetadataStorage.test.d.ts +0 -5
  939. package/services/__tests__/projectMetadataStorage.test.d.ts.map +0 -1
  940. package/services/__tests__/projectMetadataStorage.test.js +0 -154
  941. package/services/__tests__/projectMetadataStorage.test.js.map +0 -1
  942. package/services/__tests__/sessionConcurrency.test.d.ts +0 -7
  943. package/services/__tests__/sessionConcurrency.test.d.ts.map +0 -1
  944. package/services/__tests__/sessionConcurrency.test.js +0 -110
  945. package/services/__tests__/sessionConcurrency.test.js.map +0 -1
  946. package/services/__tests__/slackAIService.test.d.ts +0 -5
  947. package/services/__tests__/slackAIService.test.d.ts.map +0 -1
  948. package/services/__tests__/slackAIService.test.js +0 -479
  949. package/services/__tests__/slackAIService.test.js.map +0 -1
  950. package/services/__tests__/slackThreadMapper.test.d.ts +0 -5
  951. package/services/__tests__/slackThreadMapper.test.d.ts.map +0 -1
  952. package/services/__tests__/slackThreadMapper.test.js +0 -194
  953. package/services/__tests__/slackThreadMapper.test.js.map +0 -1
  954. package/services/a2a/__tests__/a2aClientTool.integration.test.d.ts +0 -6
  955. package/services/a2a/__tests__/a2aClientTool.integration.test.d.ts.map +0 -1
  956. package/services/a2a/__tests__/a2aClientTool.integration.test.js +0 -264
  957. package/services/a2a/__tests__/a2aClientTool.integration.test.js.map +0 -1
  958. package/services/a2a/__tests__/a2aClientTool.test.d.ts +0 -6
  959. package/services/a2a/__tests__/a2aClientTool.test.d.ts.map +0 -1
  960. package/services/a2a/__tests__/a2aClientTool.test.js +0 -592
  961. package/services/a2a/__tests__/a2aClientTool.test.js.map +0 -1
  962. package/services/a2a/__tests__/a2aConfigService.test.d.ts +0 -6
  963. package/services/a2a/__tests__/a2aConfigService.test.d.ts.map +0 -1
  964. package/services/a2a/__tests__/a2aConfigService.test.js +0 -431
  965. package/services/a2a/__tests__/a2aConfigService.test.js.map +0 -1
  966. package/services/a2a/__tests__/a2aConfigServicePath.test.d.ts +0 -2
  967. package/services/a2a/__tests__/a2aConfigServicePath.test.d.ts.map +0 -1
  968. package/services/a2a/__tests__/a2aConfigServicePath.test.js +0 -49
  969. package/services/a2a/__tests__/a2aConfigServicePath.test.js.map +0 -1
  970. package/services/a2a/__tests__/a2aSdkMcp.test.d.ts +0 -10
  971. package/services/a2a/__tests__/a2aSdkMcp.test.d.ts.map +0 -1
  972. package/services/a2a/__tests__/a2aSdkMcp.test.js +0 -239
  973. package/services/a2a/__tests__/a2aSdkMcp.test.js.map +0 -1
  974. package/services/a2a/__tests__/agentCardService.test.d.ts +0 -6
  975. package/services/a2a/__tests__/agentCardService.test.d.ts.map +0 -1
  976. package/services/a2a/__tests__/agentCardService.test.js +0 -292
  977. package/services/a2a/__tests__/agentCardService.test.js.map +0 -1
  978. package/services/a2a/__tests__/apiKeyService.test.d.ts +0 -6
  979. package/services/a2a/__tests__/apiKeyService.test.d.ts.map +0 -1
  980. package/services/a2a/__tests__/apiKeyService.test.js +0 -284
  981. package/services/a2a/__tests__/apiKeyService.test.js.map +0 -1
  982. package/services/a2a/__tests__/buildQueryOptionsIntegration.test.d.ts +0 -2
  983. package/services/a2a/__tests__/buildQueryOptionsIntegration.test.d.ts.map +0 -1
  984. package/services/a2a/__tests__/buildQueryOptionsIntegration.test.js +0 -70
  985. package/services/a2a/__tests__/buildQueryOptionsIntegration.test.js.map +0 -1
  986. package/services/a2a/__tests__/dynamic_config_verification.test.d.ts +0 -2
  987. package/services/a2a/__tests__/dynamic_config_verification.test.d.ts.map +0 -1
  988. package/services/a2a/__tests__/dynamic_config_verification.test.js +0 -67
  989. package/services/a2a/__tests__/dynamic_config_verification.test.js.map +0 -1
  990. package/services/a2a/__tests__/integrateA2AMcpServer.test.d.ts +0 -2
  991. package/services/a2a/__tests__/integrateA2AMcpServer.test.d.ts.map +0 -1
  992. package/services/a2a/__tests__/integrateA2AMcpServer.test.js +0 -112
  993. package/services/a2a/__tests__/integrateA2AMcpServer.test.js.map +0 -1
  994. package/services/a2a/__tests__/taskManager.integration.test.d.ts +0 -7
  995. package/services/a2a/__tests__/taskManager.integration.test.d.ts.map +0 -1
  996. package/services/a2a/__tests__/taskManager.integration.test.js +0 -346
  997. package/services/a2a/__tests__/taskManager.integration.test.js.map +0 -1
  998. package/services/a2a/__tests__/taskManager.test.d.ts +0 -7
  999. package/services/a2a/__tests__/taskManager.test.d.ts.map +0 -1
  1000. package/services/a2a/__tests__/taskManager.test.js +0 -423
  1001. package/services/a2a/__tests__/taskManager.test.js.map +0 -1
  1002. package/services/a2a/__tests__/webhookService.test.d.ts +0 -6
  1003. package/services/a2a/__tests__/webhookService.test.d.ts.map +0 -1
  1004. package/services/a2a/__tests__/webhookService.test.js +0 -196
  1005. package/services/a2a/__tests__/webhookService.test.js.map +0 -1
  1006. package/services/a2a/a2aClientTool.d.ts +0 -73
  1007. package/services/a2a/a2aClientTool.d.ts.map +0 -1
  1008. package/services/a2a/a2aClientTool.js +0 -595
  1009. package/services/a2a/a2aClientTool.js.map +0 -1
  1010. package/services/a2a/a2aConfigService.d.ts +0 -50
  1011. package/services/a2a/a2aConfigService.d.ts.map +0 -1
  1012. package/services/a2a/a2aConfigService.js +0 -186
  1013. package/services/a2a/a2aConfigService.js.map +0 -1
  1014. package/services/a2a/a2aHistoryService.d.ts +0 -32
  1015. package/services/a2a/a2aHistoryService.d.ts.map +0 -1
  1016. package/services/a2a/a2aHistoryService.js +0 -108
  1017. package/services/a2a/a2aHistoryService.js.map +0 -1
  1018. package/services/a2a/a2aIntegration.d.ts +0 -10
  1019. package/services/a2a/a2aIntegration.d.ts.map +0 -1
  1020. package/services/a2a/a2aIntegration.js +0 -42
  1021. package/services/a2a/a2aIntegration.js.map +0 -1
  1022. package/services/a2a/a2aQueryService.d.ts +0 -71
  1023. package/services/a2a/a2aQueryService.d.ts.map +0 -1
  1024. package/services/a2a/a2aQueryService.js +0 -209
  1025. package/services/a2a/a2aQueryService.js.map +0 -1
  1026. package/services/a2a/a2aSdkMcp.d.ts +0 -52
  1027. package/services/a2a/a2aSdkMcp.d.ts.map +0 -1
  1028. package/services/a2a/a2aSdkMcp.js +0 -188
  1029. package/services/a2a/a2aSdkMcp.js.map +0 -1
  1030. package/services/a2a/a2aStreamEvents.d.ts +0 -94
  1031. package/services/a2a/a2aStreamEvents.d.ts.map +0 -1
  1032. package/services/a2a/a2aStreamEvents.js +0 -92
  1033. package/services/a2a/a2aStreamEvents.js.map +0 -1
  1034. package/services/a2a/agentCardService.d.ts +0 -34
  1035. package/services/a2a/agentCardService.d.ts.map +0 -1
  1036. package/services/a2a/agentCardService.js +0 -228
  1037. package/services/a2a/agentCardService.js.map +0 -1
  1038. package/services/a2a/agentMappingService.d.ts +0 -53
  1039. package/services/a2a/agentMappingService.d.ts.map +0 -1
  1040. package/services/a2a/agentMappingService.js +0 -185
  1041. package/services/a2a/agentMappingService.js.map +0 -1
  1042. package/services/a2a/apiKeyService.d.ts +0 -101
  1043. package/services/a2a/apiKeyService.d.ts.map +0 -1
  1044. package/services/a2a/apiKeyService.js +0 -314
  1045. package/services/a2a/apiKeyService.js.map +0 -1
  1046. package/services/a2a/taskCleanup.d.ts +0 -30
  1047. package/services/a2a/taskCleanup.d.ts.map +0 -1
  1048. package/services/a2a/taskCleanup.js +0 -184
  1049. package/services/a2a/taskCleanup.js.map +0 -1
  1050. package/services/a2a/taskManager.d.ts +0 -87
  1051. package/services/a2a/taskManager.d.ts.map +0 -1
  1052. package/services/a2a/taskManager.js +0 -265
  1053. package/services/a2a/taskManager.js.map +0 -1
  1054. package/services/a2a/webhookService.d.ts +0 -30
  1055. package/services/a2a/webhookService.d.ts.map +0 -1
  1056. package/services/a2a/webhookService.js +0 -113
  1057. package/services/a2a/webhookService.js.map +0 -1
  1058. package/services/agentStorage.d.ts +0 -27
  1059. package/services/agentStorage.d.ts.map +0 -1
  1060. package/services/agentStorage.js +0 -487
  1061. package/services/agentStorage.js.map +0 -1
  1062. package/services/askUserQuestion/askUserQuestionIntegration.d.ts +0 -24
  1063. package/services/askUserQuestion/askUserQuestionIntegration.d.ts.map +0 -1
  1064. package/services/askUserQuestion/askUserQuestionIntegration.js +0 -52
  1065. package/services/askUserQuestion/askUserQuestionIntegration.js.map +0 -1
  1066. package/services/askUserQuestion/askUserQuestionMcp.d.ts +0 -103
  1067. package/services/askUserQuestion/askUserQuestionMcp.d.ts.map +0 -1
  1068. package/services/askUserQuestion/askUserQuestionMcp.js +0 -129
  1069. package/services/askUserQuestion/askUserQuestionMcp.js.map +0 -1
  1070. package/services/askUserQuestion/index.d.ts +0 -13
  1071. package/services/askUserQuestion/index.d.ts.map +0 -1
  1072. package/services/askUserQuestion/index.js +0 -35
  1073. package/services/askUserQuestion/index.js.map +0 -1
  1074. package/services/askUserQuestion/init.d.ts +0 -17
  1075. package/services/askUserQuestion/init.d.ts.map +0 -1
  1076. package/services/askUserQuestion/init.js +0 -47
  1077. package/services/askUserQuestion/init.js.map +0 -1
  1078. package/services/askUserQuestion/notificationChannel.d.ts +0 -97
  1079. package/services/askUserQuestion/notificationChannel.d.ts.map +0 -1
  1080. package/services/askUserQuestion/notificationChannel.js +0 -147
  1081. package/services/askUserQuestion/notificationChannel.js.map +0 -1
  1082. package/services/askUserQuestion/slackNotificationChannel.d.ts +0 -35
  1083. package/services/askUserQuestion/slackNotificationChannel.d.ts.map +0 -1
  1084. package/services/askUserQuestion/slackNotificationChannel.js +0 -129
  1085. package/services/askUserQuestion/slackNotificationChannel.js.map +0 -1
  1086. package/services/askUserQuestion/sseNotificationChannel.d.ts +0 -36
  1087. package/services/askUserQuestion/sseNotificationChannel.d.ts.map +0 -1
  1088. package/services/askUserQuestion/sseNotificationChannel.js +0 -88
  1089. package/services/askUserQuestion/sseNotificationChannel.js.map +0 -1
  1090. package/services/askUserQuestion/userInputRegistry.d.ts +0 -107
  1091. package/services/askUserQuestion/userInputRegistry.d.ts.map +0 -1
  1092. package/services/askUserQuestion/userInputRegistry.js +0 -253
  1093. package/services/askUserQuestion/userInputRegistry.js.map +0 -1
  1094. package/services/claudeSession.d.ts +0 -113
  1095. package/services/claudeSession.d.ts.map +0 -1
  1096. package/services/claudeSession.js +0 -375
  1097. package/services/claudeSession.js.map +0 -1
  1098. package/services/claudeVersionStorage.d.ts +0 -20
  1099. package/services/claudeVersionStorage.d.ts.map +0 -1
  1100. package/services/claudeVersionStorage.js +0 -331
  1101. package/services/claudeVersionStorage.js.map +0 -1
  1102. package/services/mcpAdmin/__tests__/adminApiKeyService.test.d.ts +0 -5
  1103. package/services/mcpAdmin/__tests__/adminApiKeyService.test.d.ts.map +0 -1
  1104. package/services/mcpAdmin/__tests__/adminApiKeyService.test.js +0 -289
  1105. package/services/mcpAdmin/__tests__/adminApiKeyService.test.js.map +0 -1
  1106. package/services/mcpAdmin/__tests__/mcpAdminRoutes.test.d.ts +0 -5
  1107. package/services/mcpAdmin/__tests__/mcpAdminRoutes.test.d.ts.map +0 -1
  1108. package/services/mcpAdmin/__tests__/mcpAdminRoutes.test.js +0 -345
  1109. package/services/mcpAdmin/__tests__/mcpAdminRoutes.test.js.map +0 -1
  1110. package/services/mcpAdmin/__tests__/mcpAdminServer.test.d.ts +0 -5
  1111. package/services/mcpAdmin/__tests__/mcpAdminServer.test.d.ts.map +0 -1
  1112. package/services/mcpAdmin/__tests__/mcpAdminServer.test.js +0 -453
  1113. package/services/mcpAdmin/__tests__/mcpAdminServer.test.js.map +0 -1
  1114. package/services/mcpAdmin/__tests__/providerTools.test.d.ts +0 -7
  1115. package/services/mcpAdmin/__tests__/providerTools.test.d.ts.map +0 -1
  1116. package/services/mcpAdmin/__tests__/providerTools.test.js +0 -258
  1117. package/services/mcpAdmin/__tests__/providerTools.test.js.map +0 -1
  1118. package/services/mcpAdmin/__tests__/tools.test.d.ts +0 -5
  1119. package/services/mcpAdmin/__tests__/tools.test.d.ts.map +0 -1
  1120. package/services/mcpAdmin/__tests__/tools.test.js +0 -389
  1121. package/services/mcpAdmin/__tests__/tools.test.js.map +0 -1
  1122. package/services/mcpAdmin/adminApiKeyService.d.ts +0 -61
  1123. package/services/mcpAdmin/adminApiKeyService.d.ts.map +0 -1
  1124. package/services/mcpAdmin/adminApiKeyService.js +0 -270
  1125. package/services/mcpAdmin/adminApiKeyService.js.map +0 -1
  1126. package/services/mcpAdmin/index.d.ts +0 -10
  1127. package/services/mcpAdmin/index.d.ts.map +0 -1
  1128. package/services/mcpAdmin/index.js +0 -43
  1129. package/services/mcpAdmin/index.js.map +0 -1
  1130. package/services/mcpAdmin/mcpAdminServer.d.ts +0 -76
  1131. package/services/mcpAdmin/mcpAdminServer.d.ts.map +0 -1
  1132. package/services/mcpAdmin/mcpAdminServer.js +0 -243
  1133. package/services/mcpAdmin/mcpAdminServer.js.map +0 -1
  1134. package/services/mcpAdmin/tools/agentTools.d.ts +0 -27
  1135. package/services/mcpAdmin/tools/agentTools.d.ts.map +0 -1
  1136. package/services/mcpAdmin/tools/agentTools.js +0 -352
  1137. package/services/mcpAdmin/tools/agentTools.js.map +0 -1
  1138. package/services/mcpAdmin/tools/index.d.ts +0 -16
  1139. package/services/mcpAdmin/tools/index.d.ts.map +0 -1
  1140. package/services/mcpAdmin/tools/index.js +0 -34
  1141. package/services/mcpAdmin/tools/index.js.map +0 -1
  1142. package/services/mcpAdmin/tools/mcpServerTools.d.ts +0 -27
  1143. package/services/mcpAdmin/tools/mcpServerTools.d.ts.map +0 -1
  1144. package/services/mcpAdmin/tools/mcpServerTools.js +0 -334
  1145. package/services/mcpAdmin/tools/mcpServerTools.js.map +0 -1
  1146. package/services/mcpAdmin/tools/projectTools.d.ts +0 -27
  1147. package/services/mcpAdmin/tools/projectTools.d.ts.map +0 -1
  1148. package/services/mcpAdmin/tools/projectTools.js +0 -382
  1149. package/services/mcpAdmin/tools/projectTools.js.map +0 -1
  1150. package/services/mcpAdmin/tools/providerTools.d.ts +0 -40
  1151. package/services/mcpAdmin/tools/providerTools.d.ts.map +0 -1
  1152. package/services/mcpAdmin/tools/providerTools.js +0 -581
  1153. package/services/mcpAdmin/tools/providerTools.js.map +0 -1
  1154. package/services/mcpAdmin/tools/systemTools.d.ts +0 -23
  1155. package/services/mcpAdmin/tools/systemTools.d.ts.map +0 -1
  1156. package/services/mcpAdmin/tools/systemTools.js +0 -241
  1157. package/services/mcpAdmin/tools/systemTools.js.map +0 -1
  1158. package/services/mcpAdmin/types.d.ts +0 -124
  1159. package/services/mcpAdmin/types.d.ts.map +0 -1
  1160. package/services/mcpAdmin/types.js +0 -18
  1161. package/services/mcpAdmin/types.js.map +0 -1
  1162. package/services/messageQueue.d.ts +0 -31
  1163. package/services/messageQueue.d.ts.map +0 -1
  1164. package/services/messageQueue.js +0 -80
  1165. package/services/messageQueue.js.map +0 -1
  1166. package/services/pluginInstaller.d.ts +0 -58
  1167. package/services/pluginInstaller.d.ts.map +0 -1
  1168. package/services/pluginInstaller.js +0 -321
  1169. package/services/pluginInstaller.js.map +0 -1
  1170. package/services/pluginParser.d.ts +0 -45
  1171. package/services/pluginParser.d.ts.map +0 -1
  1172. package/services/pluginParser.js +0 -437
  1173. package/services/pluginParser.js.map +0 -1
  1174. package/services/pluginPaths.d.ts +0 -80
  1175. package/services/pluginPaths.d.ts.map +0 -1
  1176. package/services/pluginPaths.js +0 -274
  1177. package/services/pluginPaths.js.map +0 -1
  1178. package/services/pluginScanner.d.ts +0 -36
  1179. package/services/pluginScanner.d.ts.map +0 -1
  1180. package/services/pluginScanner.js +0 -251
  1181. package/services/pluginScanner.js.map +0 -1
  1182. package/services/pluginSymlink.d.ts +0 -54
  1183. package/services/pluginSymlink.d.ts.map +0 -1
  1184. package/services/pluginSymlink.js +0 -223
  1185. package/services/pluginSymlink.js.map +0 -1
  1186. package/services/projectMetadataStorage.d.ts +0 -121
  1187. package/services/projectMetadataStorage.d.ts.map +0 -1
  1188. package/services/projectMetadataStorage.js +0 -810
  1189. package/services/projectMetadataStorage.js.map +0 -1
  1190. package/services/scheduledTaskStorage.d.ts +0 -63
  1191. package/services/scheduledTaskStorage.d.ts.map +0 -1
  1192. package/services/scheduledTaskStorage.js +0 -351
  1193. package/services/scheduledTaskStorage.js.map +0 -1
  1194. package/services/schedulerService.d.ts +0 -91
  1195. package/services/schedulerService.d.ts.map +0 -1
  1196. package/services/schedulerService.js +0 -590
  1197. package/services/schedulerService.js.map +0 -1
  1198. package/services/sessionManager.d.ts +0 -176
  1199. package/services/sessionManager.d.ts.map +0 -1
  1200. package/services/sessionManager.js +0 -647
  1201. package/services/sessionManager.js.map +0 -1
  1202. package/services/skillStorage.d.ts +0 -60
  1203. package/services/skillStorage.d.ts.map +0 -1
  1204. package/services/skillStorage.js +0 -398
  1205. package/services/skillStorage.js.map +0 -1
  1206. package/services/slackAIService.d.ts +0 -81
  1207. package/services/slackAIService.d.ts.map +0 -1
  1208. package/services/slackAIService.js +0 -1137
  1209. package/services/slackAIService.js.map +0 -1
  1210. package/services/slackClient.d.ts +0 -46
  1211. package/services/slackClient.d.ts.map +0 -1
  1212. package/services/slackClient.js +0 -85
  1213. package/services/slackClient.js.map +0 -1
  1214. package/services/slackSessionLock.d.ts +0 -79
  1215. package/services/slackSessionLock.d.ts.map +0 -1
  1216. package/services/slackSessionLock.js +0 -353
  1217. package/services/slackSessionLock.js.map +0 -1
  1218. package/services/slackThreadMapper.d.ts +0 -57
  1219. package/services/slackThreadMapper.d.ts.map +0 -1
  1220. package/services/slackThreadMapper.js +0 -140
  1221. package/services/slackThreadMapper.js.map +0 -1
  1222. package/services/taskExecutor/BuiltinExecutor.d.ts +0 -44
  1223. package/services/taskExecutor/BuiltinExecutor.d.ts.map +0 -1
  1224. package/services/taskExecutor/BuiltinExecutor.js +0 -513
  1225. package/services/taskExecutor/BuiltinExecutor.js.map +0 -1
  1226. package/services/taskExecutor/__tests__/a2a-tasks.test.d.ts +0 -7
  1227. package/services/taskExecutor/__tests__/a2a-tasks.test.d.ts.map +0 -1
  1228. package/services/taskExecutor/__tests__/a2a-tasks.test.js +0 -328
  1229. package/services/taskExecutor/__tests__/a2a-tasks.test.js.map +0 -1
  1230. package/services/taskExecutor/__tests__/e2e-workflows.test.d.ts +0 -7
  1231. package/services/taskExecutor/__tests__/e2e-workflows.test.d.ts.map +0 -1
  1232. package/services/taskExecutor/__tests__/e2e-workflows.test.js +0 -446
  1233. package/services/taskExecutor/__tests__/e2e-workflows.test.js.map +0 -1
  1234. package/services/taskExecutor/__tests__/error-handling.test.d.ts +0 -7
  1235. package/services/taskExecutor/__tests__/error-handling.test.d.ts.map +0 -1
  1236. package/services/taskExecutor/__tests__/error-handling.test.js +0 -387
  1237. package/services/taskExecutor/__tests__/error-handling.test.js.map +0 -1
  1238. package/services/taskExecutor/__tests__/stress.test.d.ts +0 -7
  1239. package/services/taskExecutor/__tests__/stress.test.d.ts.map +0 -1
  1240. package/services/taskExecutor/__tests__/stress.test.js +0 -329
  1241. package/services/taskExecutor/__tests__/stress.test.js.map +0 -1
  1242. package/services/taskExecutor/__tests__/taskExecutor.integration.test.d.ts +0 -7
  1243. package/services/taskExecutor/__tests__/taskExecutor.integration.test.d.ts.map +0 -1
  1244. package/services/taskExecutor/__tests__/taskExecutor.integration.test.js +0 -205
  1245. package/services/taskExecutor/__tests__/taskExecutor.integration.test.js.map +0 -1
  1246. package/services/taskExecutor/__tests__/timeout-cancellation.test.d.ts +0 -7
  1247. package/services/taskExecutor/__tests__/timeout-cancellation.test.d.ts.map +0 -1
  1248. package/services/taskExecutor/__tests__/timeout-cancellation.test.js +0 -319
  1249. package/services/taskExecutor/__tests__/timeout-cancellation.test.js.map +0 -1
  1250. package/services/taskExecutor/index.d.ts +0 -40
  1251. package/services/taskExecutor/index.d.ts.map +0 -1
  1252. package/services/taskExecutor/index.js +0 -166
  1253. package/services/taskExecutor/index.js.map +0 -1
  1254. package/services/taskExecutor/taskWorker.d.ts +0 -11
  1255. package/services/taskExecutor/taskWorker.d.ts.map +0 -1
  1256. package/services/taskExecutor/taskWorker.js +0 -171
  1257. package/services/taskExecutor/taskWorker.js.map +0 -1
  1258. package/services/taskExecutor/types.d.ts +0 -145
  1259. package/services/taskExecutor/types.d.ts.map +0 -1
  1260. package/services/taskExecutor/types.js +0 -9
  1261. package/services/taskExecutor/types.js.map +0 -1
  1262. package/services/telemetry.d.ts +0 -40
  1263. package/services/telemetry.d.ts.map +0 -1
  1264. package/services/telemetry.js +0 -245
  1265. package/services/telemetry.js.map +0 -1
  1266. package/services/tunnelService.d.ts +0 -165
  1267. package/services/tunnelService.d.ts.map +0 -1
  1268. package/services/tunnelService.js +0 -493
  1269. package/services/tunnelService.js.map +0 -1
  1270. package/types/a2a.d.ts +0 -293
  1271. package/types/a2a.d.ts.map +0 -1
  1272. package/types/a2a.js +0 -23
  1273. package/types/a2a.js.map +0 -1
  1274. package/types/agents.d.ts +0 -94
  1275. package/types/agents.d.ts.map +0 -1
  1276. package/types/agents.js +0 -45
  1277. package/types/agents.js.map +0 -1
  1278. package/types/claude-history.d.ts +0 -62
  1279. package/types/claude-history.d.ts.map +0 -1
  1280. package/types/claude-history.js +0 -4
  1281. package/types/claude-history.js.map +0 -1
  1282. package/types/claude-versions.d.ts +0 -36
  1283. package/types/claude-versions.d.ts.map +0 -1
  1284. package/types/claude-versions.js +0 -3
  1285. package/types/claude-versions.js.map +0 -1
  1286. package/types/commands.d.ts +0 -50
  1287. package/types/commands.d.ts.map +0 -1
  1288. package/types/commands.js +0 -23
  1289. package/types/commands.js.map +0 -1
  1290. package/types/plugins.d.ts +0 -144
  1291. package/types/plugins.d.ts.map +0 -1
  1292. package/types/plugins.js +0 -8
  1293. package/types/plugins.js.map +0 -1
  1294. package/types/projects.d.ts +0 -46
  1295. package/types/projects.d.ts.map +0 -1
  1296. package/types/projects.js +0 -4
  1297. package/types/projects.js.map +0 -1
  1298. package/types/scheduledTasks.d.ts +0 -168
  1299. package/types/scheduledTasks.d.ts.map +0 -1
  1300. package/types/scheduledTasks.js +0 -17
  1301. package/types/scheduledTasks.js.map +0 -1
  1302. package/types/skills.d.ts +0 -91
  1303. package/types/skills.d.ts.map +0 -1
  1304. package/types/skills.js +0 -6
  1305. package/types/skills.js.map +0 -1
  1306. package/types/slack.d.ts +0 -97
  1307. package/types/slack.d.ts.map +0 -1
  1308. package/types/slack.js +0 -8
  1309. package/types/slack.js.map +0 -1
  1310. package/types/streaming.d.ts +0 -12
  1311. package/types/streaming.d.ts.map +0 -1
  1312. package/types/streaming.js +0 -8
  1313. package/types/streaming.js.map +0 -1
  1314. package/types/subagents.d.ts +0 -26
  1315. package/types/subagents.d.ts.map +0 -1
  1316. package/types/subagents.js +0 -3
  1317. package/types/subagents.js.map +0 -1
  1318. package/utils/__tests__/claudeUtils.test.d.ts +0 -5
  1319. package/utils/__tests__/claudeUtils.test.d.ts.map +0 -1
  1320. package/utils/__tests__/claudeUtils.test.js +0 -283
  1321. package/utils/__tests__/claudeUtils.test.js.map +0 -1
  1322. package/utils/__tests__/configResolver.test.d.ts +0 -7
  1323. package/utils/__tests__/configResolver.test.d.ts.map +0 -1
  1324. package/utils/__tests__/configResolver.test.js +0 -211
  1325. package/utils/__tests__/configResolver.test.js.map +0 -1
  1326. package/utils/__tests__/sessionUtils.test.d.ts +0 -5
  1327. package/utils/__tests__/sessionUtils.test.d.ts.map +0 -1
  1328. package/utils/__tests__/sessionUtils.test.js +0 -296
  1329. package/utils/__tests__/sessionUtils.test.js.map +0 -1
  1330. package/utils/agentCardCache.d.ts +0 -93
  1331. package/utils/agentCardCache.d.ts.map +0 -1
  1332. package/utils/agentCardCache.js +0 -212
  1333. package/utils/agentCardCache.js.map +0 -1
  1334. package/utils/claudeUtils.d.ts +0 -55
  1335. package/utils/claudeUtils.d.ts.map +0 -1
  1336. package/utils/claudeUtils.js +0 -355
  1337. package/utils/claudeUtils.js.map +0 -1
  1338. package/utils/configResolver.d.ts +0 -57
  1339. package/utils/configResolver.d.ts.map +0 -1
  1340. package/utils/configResolver.js +0 -130
  1341. package/utils/configResolver.js.map +0 -1
  1342. package/utils/fileUtils.d.ts +0 -2
  1343. package/utils/fileUtils.d.ts.map +0 -1
  1344. package/utils/fileUtils.js +0 -11
  1345. package/utils/fileUtils.js.map +0 -1
  1346. package/utils/jwt.d.ts +0 -30
  1347. package/utils/jwt.d.ts.map +0 -1
  1348. package/utils/jwt.js +0 -95
  1349. package/utils/jwt.js.map +0 -1
  1350. package/utils/networkUtils.d.ts +0 -25
  1351. package/utils/networkUtils.d.ts.map +0 -1
  1352. package/utils/networkUtils.js +0 -65
  1353. package/utils/networkUtils.js.map +0 -1
  1354. package/utils/sessionUtils.d.ts +0 -67
  1355. package/utils/sessionUtils.d.ts.map +0 -1
  1356. package/utils/sessionUtils.js +0 -296
  1357. package/utils/sessionUtils.js.map +0 -1
  1358. /package/{public → frontend/public}/cc-studio.png +0 -0
  1359. /package/{public → frontend/public}/screenshot-chat.png +0 -0
  1360. /package/{public → frontend/public}/screenshot-mcp.png +0 -0
  1361. /package/{public → frontend/public}/vite.svg +0 -0
  1362. /package/{public → frontend/public}/wechat-qr-code.png +0 -0
@@ -0,0 +1,194 @@
1
+ /**
2
+ * A2A Configuration Service
3
+ *
4
+ * Manages project-level A2A configuration including allowed agents, timeouts, and limits.
5
+ * Configuration stored in projects/:projectId/.a2a/config.json
6
+ *
7
+ * Phase 5: US3 - Agent as A2A Client (config dependency)
8
+ * Phase 7: US5 - Project-Level A2A Configuration (full implementation)
9
+ */
10
+
11
+ import fs from 'fs/promises';
12
+ import path from 'path';
13
+ import lockfile from 'proper-lockfile';
14
+ import type { A2AConfig } from '../../types/a2a.js';
15
+ import { DEFAULT_A2A_CONFIG } from '../../types/a2a.js';
16
+ import { isIPAddress } from '../../middleware/httpsOnly.js';
17
+ import { getProjectsDir } from '../../config/sdkConfig.js';
18
+
19
+ const LOCK_OPTIONS = {
20
+ retries: { retries: 5, minTimeout: 100, maxTimeout: 500 },
21
+ };
22
+
23
+ /**
24
+ * Get path to project's A2A config file
25
+ *
26
+ * @param projectId - Project identifier (used as directory name)
27
+ * @returns Absolute path to config file
28
+ */
29
+ function getConfigPath(projectId: string): string {
30
+ // Check if the projectId looks like an absolute path
31
+ if (path.isAbsolute(projectId)) {
32
+ return path.join(projectId, '.a2a', 'config.json');
33
+ }
34
+
35
+ // Projects are stored in SDK projects directory (e.g., ~/.claude/projects/)
36
+ const projectsDir = getProjectsDir();
37
+ return path.join(projectsDir, projectId, '.a2a', 'config.json');
38
+ }
39
+
40
+ /**
41
+ * Load A2A configuration for a project
42
+ *
43
+ * Returns default config if file doesn't exist.
44
+ *
45
+ * @param projectId - Project identifier
46
+ * @returns A2A configuration or null on error
47
+ */
48
+ export async function loadA2AConfig(projectId: string): Promise<A2AConfig | null> {
49
+ const configPath = getConfigPath(projectId);
50
+
51
+ try {
52
+ const data = await fs.readFile(configPath, 'utf-8');
53
+ const config: A2AConfig = JSON.parse(data);
54
+ return config;
55
+ } catch (error) {
56
+ // If file doesn't exist, return default config
57
+ if ((error as NodeJS.ErrnoException).code === 'ENOENT') {
58
+ return DEFAULT_A2A_CONFIG;
59
+ }
60
+
61
+ console.error(`[A2A Config] Error loading config for project ${projectId}:`, error);
62
+ return null;
63
+ }
64
+ }
65
+
66
+ /**
67
+ * Save A2A configuration for a project
68
+ *
69
+ * Creates directory structure if needed.
70
+ * Uses file locking for concurrent safety.
71
+ *
72
+ * @param projectId - Project identifier
73
+ * @param config - A2A configuration to save
74
+ */
75
+ export async function saveA2AConfig(projectId: string, config: A2AConfig): Promise<void> {
76
+ const configPath = getConfigPath(projectId);
77
+ const configDir = path.dirname(configPath);
78
+
79
+ // Ensure directory exists
80
+ await fs.mkdir(configDir, { recursive: true });
81
+
82
+ // Create empty file if it doesn't exist (helps with file locking)
83
+ try {
84
+ await fs.access(configPath);
85
+ } catch {
86
+ // File doesn't exist, create empty file
87
+ await fs.writeFile(configPath, '{}', 'utf-8');
88
+ }
89
+
90
+ // Acquire lock for atomic write
91
+ const release = await lockfile.lock(configPath, LOCK_OPTIONS);
92
+
93
+ try {
94
+ await fs.writeFile(configPath, JSON.stringify(config, null, 2), 'utf-8');
95
+ } finally {
96
+ await release();
97
+ }
98
+ }
99
+
100
+ /**
101
+ * Validate A2A configuration
102
+ *
103
+ * Checks for required fields and value constraints.
104
+ *
105
+ * @param config - Configuration to validate
106
+ * @returns Validation result with error details if invalid
107
+ */
108
+ export function validateA2AConfig(config: A2AConfig): {
109
+ valid: boolean;
110
+ errors?: string[];
111
+ } {
112
+ const errors: string[] = [];
113
+
114
+ // Validate allowedAgents
115
+ if (!Array.isArray(config.allowedAgents)) {
116
+ errors.push('allowedAgents must be an array');
117
+ } else {
118
+ config.allowedAgents.forEach((agent, index) => {
119
+ if (!agent.name || typeof agent.name !== 'string') {
120
+ errors.push(`allowedAgents[${index}].name is required and must be a string`);
121
+ }
122
+
123
+ if (!agent.url || typeof agent.url !== 'string') {
124
+ errors.push(`allowedAgents[${index}].url is required and must be a string`);
125
+ } else {
126
+ // Validate URL format
127
+ try {
128
+ const parsedUrl = new URL(agent.url);
129
+ // In production, require HTTPS for domain names
130
+ // IP addresses are exempt (internal/proxy scenarios)
131
+ if (process.env.NODE_ENV === 'production' && !agent.url.startsWith('https://')) {
132
+ // Check if hostname is an IP address
133
+ const isIP = isIPAddress(parsedUrl.hostname);
134
+ if (!isIP) {
135
+ errors.push(`allowedAgents[${index}].url must use HTTPS in production (IP addresses exempt)`);
136
+ }
137
+ }
138
+ } catch {
139
+ errors.push(`allowedAgents[${index}].url is not a valid URL`);
140
+ }
141
+ }
142
+
143
+ if (agent.apiKey === undefined || typeof agent.apiKey !== 'string') {
144
+ errors.push(`allowedAgents[${index}].apiKey is required and must be a string`);
145
+ }
146
+
147
+ if (typeof agent.enabled !== 'boolean') {
148
+ errors.push(`allowedAgents[${index}].enabled must be a boolean`);
149
+ }
150
+ });
151
+ }
152
+
153
+ // Validate taskTimeout
154
+ if (typeof config.taskTimeout !== 'number') {
155
+ errors.push('taskTimeout must be a number');
156
+ } else if (config.taskTimeout < 1000 || config.taskTimeout > 1800000) {
157
+ errors.push('taskTimeout must be between 1000 and 1800000 milliseconds');
158
+ }
159
+
160
+ // Validate maxConcurrentTasks
161
+ if (typeof config.maxConcurrentTasks !== 'number') {
162
+ errors.push('maxConcurrentTasks must be a number');
163
+ } else if (config.maxConcurrentTasks < 1 || config.maxConcurrentTasks > 50) {
164
+ errors.push('maxConcurrentTasks must be between 1 and 50');
165
+ }
166
+
167
+ return {
168
+ valid: errors.length === 0,
169
+ errors: errors.length > 0 ? errors : undefined,
170
+ };
171
+ }
172
+
173
+ /**
174
+ * Initialize default A2A config for a new project
175
+ *
176
+ * Creates .a2a directory and config.json with default values.
177
+ *
178
+ * @param projectId - Project identifier
179
+ */
180
+ export async function initializeA2AConfig(projectId: string): Promise<void> {
181
+ const existingConfig = await loadA2AConfig(projectId);
182
+
183
+ // Only initialize if config doesn't exist (loadA2AConfig returns DEFAULT_A2A_CONFIG for missing files)
184
+ const configPath = getConfigPath(projectId);
185
+ try {
186
+ await fs.access(configPath);
187
+ // File exists, don't overwrite
188
+ return;
189
+ } catch {
190
+ // File doesn't exist, create it
191
+ await saveA2AConfig(projectId, DEFAULT_A2A_CONFIG);
192
+ console.info(`[A2A Config] Initialized default config for project ${projectId}`);
193
+ }
194
+ }
@@ -0,0 +1,111 @@
1
+ /**
2
+ * A2A History Service
3
+ *
4
+ * Manages the persistence of A2A message history using JSONL files.
5
+ * This allows retrieving the full event stream of an external agent call later.
6
+ *
7
+ * Storage path: {workingDirectory}/.a2a/history/{sessionId}.jsonl
8
+ */
9
+
10
+ import fs from 'fs/promises';
11
+ import path from 'path';
12
+ import { ensureDir } from '../../utils/fileUtils.js';
13
+ import { Buffer } from 'buffer';
14
+
15
+ export class A2AHistoryService {
16
+ /**
17
+ * Get the directory path for A2A history
18
+ */
19
+ private getHistoryDir(workingDirectory: string): string {
20
+ return path.join(workingDirectory, '.a2a', 'history');
21
+ }
22
+
23
+ /**
24
+ * Get the file path for a specific session
25
+ */
26
+ private getHistoryFilePath(workingDirectory: string, sessionId: string): string {
27
+ return path.join(this.getHistoryDir(workingDirectory), `${sessionId}.jsonl`);
28
+ }
29
+
30
+ /**
31
+ * Append an event to the history file
32
+ */
33
+ async appendEvent(workingDirectory: string, sessionId: string, event: any): Promise<void> {
34
+ const historyDir = this.getHistoryDir(workingDirectory);
35
+ await ensureDir(historyDir);
36
+
37
+ const filePath = this.getHistoryFilePath(workingDirectory, sessionId);
38
+ const line = JSON.stringify(event) + '\n';
39
+
40
+ await fs.appendFile(filePath, line, 'utf-8');
41
+ }
42
+
43
+ /**
44
+ * Read the full history for a session
45
+ */
46
+ async getHistory(workingDirectory: string, sessionId: string): Promise<any[]> {
47
+ const filePath = this.getHistoryFilePath(workingDirectory, sessionId);
48
+
49
+ try {
50
+ const content = await fs.readFile(filePath, 'utf-8');
51
+ return content
52
+ .split('\n')
53
+ .filter((line: string) => line.trim())
54
+ .map((line: string) => JSON.parse(line));
55
+ } catch (error: any) {
56
+ if (error.code === 'ENOENT') {
57
+ return [];
58
+ }
59
+ throw error;
60
+ }
61
+ }
62
+
63
+ /**
64
+ * Watch the history file and yield new lines as they are written
65
+ */
66
+ async *tailHistory(workingDirectory: string, sessionId: string, signal?: AbortSignal): AsyncGenerator<any> {
67
+ const filePath = this.getHistoryFilePath(workingDirectory, sessionId);
68
+ let currentSize = 0;
69
+
70
+ // Wait for file to exist
71
+ while (!signal?.aborted) {
72
+ try {
73
+ const stats = await fs.stat(filePath);
74
+ if (stats.isFile()) break;
75
+ } catch {
76
+ await new Promise(resolve => setTimeout(resolve, 100));
77
+ }
78
+ }
79
+
80
+ while (!signal?.aborted) {
81
+ try {
82
+ const stats = await fs.stat(filePath);
83
+ if (stats.size > currentSize) {
84
+ const handle = await fs.open(filePath, 'r');
85
+ const buffer = Buffer.alloc(stats.size - currentSize);
86
+ await handle.read(buffer, 0, stats.size - currentSize, currentSize);
87
+ await handle.close();
88
+
89
+ const content = buffer.toString('utf-8');
90
+ const lines = content.split('\n').filter((line: string) => line.trim());
91
+
92
+ for (const line of lines) {
93
+ try {
94
+ yield JSON.parse(line);
95
+ } catch {
96
+ // Ignore parse errors
97
+ }
98
+ }
99
+
100
+ currentSize = stats.size;
101
+ }
102
+ } catch {
103
+ // Ignore errors (e.g. file not found yet)
104
+ }
105
+
106
+ await new Promise(resolve => setTimeout(resolve, 200)); // Poll every 200ms
107
+ }
108
+ }
109
+ }
110
+
111
+ export const a2aHistoryService = new A2AHistoryService();
@@ -0,0 +1,40 @@
1
+ import { createA2ASdkMcpServer, getA2AToolName } from './a2aSdkMcp.js';
2
+
3
+ /**
4
+ * Helper to integrate A2A SDK MCP server into query options
5
+ *
6
+ * @param queryOptions - The query options object to modify
7
+ * @param projectId - Project identifier
8
+ * @param streamEnabled - Whether to enable streaming for external agent calls (default: false)
9
+ * @returns The modified query options (same object reference)
10
+ */
11
+ export async function integrateA2AMcpServer(queryOptions: any, projectId: string, streamEnabled: boolean = false) {
12
+ try {
13
+ // Create SDK MCP server for A2A (in-process)
14
+ const { server: a2aServer } = await createA2ASdkMcpServer(projectId, streamEnabled);
15
+
16
+ // Add to mcpServers
17
+ if (a2aServer) {
18
+ queryOptions.mcpServers = {
19
+ ...queryOptions.mcpServers,
20
+ "a2a-client": a2aServer
21
+ };
22
+
23
+ // Add tool to allowedTools
24
+ const a2aToolName = getA2AToolName();
25
+ if (!queryOptions.allowedTools) {
26
+ queryOptions.allowedTools = [a2aToolName];
27
+ } else {
28
+ // Avoid duplicates
29
+ if (!queryOptions.allowedTools.includes(a2aToolName)) {
30
+ queryOptions.allowedTools.push(a2aToolName);
31
+ }
32
+ }
33
+ }
34
+ } catch (error) {
35
+ console.error('❌ [A2A] Failed to integrate SDK MCP server:', error);
36
+ // Continue without A2A support rather than failing
37
+ }
38
+
39
+ return queryOptions;
40
+ }
@@ -0,0 +1,275 @@
1
+ /**
2
+ * A2A Query Service - One-shot Query Mode
3
+ *
4
+ * This service provides a one-shot query mode for A2A requests.
5
+ * Instead of using ClaudeSession (Streaming Input Mode with MessageQueue),
6
+ * it uses an async generator that naturally completes after yielding the message.
7
+ *
8
+ * Benefits:
9
+ * - Each A2A request is independent, no session reuse issues
10
+ * - Query automatically completes when generator ends
11
+ * - Still supports resume for history context
12
+ * - Still supports images and multi-part messages via Streaming Input
13
+ */
14
+
15
+ import { query, Options } from '@anthropic-ai/claude-agent-sdk';
16
+ import type { SDKMessage } from '@anthropic-ai/claude-agent-sdk';
17
+
18
+ /**
19
+ * User message content type for multi-part messages (text + images)
20
+ */
21
+ export interface UserMessageContent {
22
+ type: 'text' | 'image';
23
+ text?: string;
24
+ source?: {
25
+ type: 'base64';
26
+ media_type: string;
27
+ data: string;
28
+ };
29
+ }
30
+
31
+ /**
32
+ * A2A Query options extending Claude SDK Options
33
+ */
34
+ export interface A2AQueryOptions extends Options {
35
+ resume?: string;
36
+ }
37
+
38
+ /**
39
+ * Create an async generator for A2A messages
40
+ * The generator yields the user message and then completes,
41
+ * allowing the query to naturally finish.
42
+ *
43
+ * Uses 'any' type to match MessageQueue's approach and avoid SDK type incompatibility.
44
+ *
45
+ * @param content - Message content (string or array of content blocks)
46
+ */
47
+ async function* createA2AMessageGenerator(
48
+ content: string | UserMessageContent[]
49
+ ): AsyncGenerator<any, void, unknown> {
50
+ const messageContent = typeof content === 'string'
51
+ ? [{ type: 'text' as const, text: content }]
52
+ : content;
53
+
54
+ yield {
55
+ type: 'user' as const,
56
+ message: {
57
+ role: 'user' as const,
58
+ content: messageContent
59
+ }
60
+ };
61
+ // Generator ends here, query will naturally complete after processing
62
+ }
63
+
64
+ /**
65
+ * Execute a one-shot A2A query
66
+ *
67
+ * This function creates a new query for each A2A request, using an async generator
68
+ * that completes after yielding the message. This avoids the session reuse issues
69
+ * that can occur with ClaudeSession's MessageQueue approach.
70
+ *
71
+ * @param message - The user message (text string)
72
+ * @param images - Optional array of images to include in the message
73
+ * @param options - Query options including resume sessionId
74
+ * @param onMessage - Callback for each SDK message
75
+ * @returns Promise that resolves when query completes
76
+ */
77
+ export async function executeA2AQuery(
78
+ message: string,
79
+ images: Array<{ data: string; mediaType: string }> | undefined,
80
+ options: A2AQueryOptions,
81
+ onMessage: (message: SDKMessage) => Promise<void>
82
+ ): Promise<{ sessionId: string | null; fullResponse: string; tokensUsed: number }> {
83
+ // Build message content with optional images
84
+ const messageContent: UserMessageContent[] = [];
85
+
86
+ // Add images first if present
87
+ if (images && images.length > 0) {
88
+ for (const image of images) {
89
+ messageContent.push({
90
+ type: 'image',
91
+ source: {
92
+ type: 'base64',
93
+ media_type: image.mediaType,
94
+ data: image.data
95
+ }
96
+ });
97
+ }
98
+ }
99
+
100
+ // Add text message
101
+ messageContent.push({
102
+ type: 'text',
103
+ text: message
104
+ });
105
+
106
+ // Internal function to execute the query
107
+ async function executeQuery(queryOptions: A2AQueryOptions): Promise<{ sessionId: string | null; fullResponse: string; tokensUsed: number }> {
108
+ // Create the message generator (must be created fresh for each attempt)
109
+ const messageGen = createA2AMessageGenerator(messageContent);
110
+
111
+ let sessionId: string | null = null;
112
+ let fullResponse = '';
113
+ let tokensUsed = 0;
114
+
115
+ console.log(`🚀 [A2A Query] Starting one-shot query with resume=${queryOptions.resume || 'none'}`);
116
+
117
+ // Execute the query
118
+ const queryResult = query({
119
+ prompt: messageGen,
120
+ options: queryOptions
121
+ });
122
+
123
+ // Process responses
124
+ for await (const sdkMessage of queryResult) {
125
+ // Capture session ID from system init message
126
+ if (sdkMessage.type === 'system' && sdkMessage.subtype === 'init' && sdkMessage.session_id) {
127
+ sessionId = sdkMessage.session_id;
128
+ console.log(`📝 [A2A Query] Captured sessionId: ${sessionId}`);
129
+ }
130
+
131
+ // Also check for session_id on any message
132
+ if ((sdkMessage as any).session_id && !sessionId) {
133
+ sessionId = (sdkMessage as any).session_id;
134
+ }
135
+
136
+ // Extract assistant response text
137
+ if (sdkMessage.type === 'assistant' && sdkMessage.message?.content) {
138
+ for (const block of sdkMessage.message.content) {
139
+ if (block.type === 'text') {
140
+ fullResponse += block.text;
141
+ }
142
+ }
143
+ }
144
+
145
+ // Extract token usage
146
+ if (sdkMessage.type === 'assistant' && (sdkMessage as any).usage) {
147
+ const usage = (sdkMessage as any).usage;
148
+ tokensUsed = (usage.input_tokens || 0) + (usage.output_tokens || 0);
149
+ }
150
+
151
+ // Call the message callback
152
+ await onMessage(sdkMessage);
153
+ }
154
+
155
+ console.log(`✅ [A2A Query] Query completed, sessionId=${sessionId}, responseLength=${fullResponse.length}`);
156
+
157
+ return { sessionId, fullResponse, tokensUsed };
158
+ }
159
+
160
+ // Try with resume first, if it fails due to invalid session, retry without resume
161
+ try {
162
+ return await executeQuery(options);
163
+ } catch (error) {
164
+ const errorMessage = error instanceof Error ? error.message : String(error);
165
+
166
+ // Check if the error is due to invalid resume session
167
+ if (options.resume && (
168
+ errorMessage.includes('exited with code 1') ||
169
+ errorMessage.includes('session') ||
170
+ errorMessage.includes('resume')
171
+ )) {
172
+ console.warn(`⚠️ [A2A Query] Resume failed (session may be invalid), retrying without resume...`);
173
+
174
+ // Create new options without resume
175
+ const { resume, ...optionsWithoutResume } = options;
176
+ return await executeQuery(optionsWithoutResume);
177
+ }
178
+
179
+ // Re-throw other errors
180
+ throw error;
181
+ }
182
+ }
183
+
184
+ /**
185
+ * Execute a one-shot A2A query with SSE streaming
186
+ *
187
+ * Similar to executeA2AQuery but designed for SSE streaming mode.
188
+ *
189
+ * @param message - The user message (text string)
190
+ * @param images - Optional array of images
191
+ * @param options - Query options including resume sessionId
192
+ * @param onMessage - Callback for each SDK message (for SSE streaming)
193
+ */
194
+ export async function executeA2AQueryStreaming(
195
+ message: string,
196
+ images: Array<{ data: string; mediaType: string }> | undefined,
197
+ options: A2AQueryOptions,
198
+ onMessage: (message: SDKMessage) => void
199
+ ): Promise<{ sessionId: string | null }> {
200
+ // Build message content with optional images
201
+ const messageContent: UserMessageContent[] = [];
202
+
203
+ if (images && images.length > 0) {
204
+ for (const image of images) {
205
+ messageContent.push({
206
+ type: 'image',
207
+ source: {
208
+ type: 'base64',
209
+ media_type: image.mediaType,
210
+ data: image.data
211
+ }
212
+ });
213
+ }
214
+ }
215
+
216
+ messageContent.push({
217
+ type: 'text',
218
+ text: message
219
+ });
220
+
221
+ // Internal function to execute the streaming query
222
+ async function executeStreamingQuery(queryOptions: A2AQueryOptions): Promise<{ sessionId: string | null }> {
223
+ // Create the message generator (must be created fresh for each attempt)
224
+ const messageGen = createA2AMessageGenerator(messageContent);
225
+
226
+ let sessionId: string | null = null;
227
+
228
+ console.log(`🚀 [A2A Query Streaming] Starting one-shot query with resume=${queryOptions.resume || 'none'}`);
229
+
230
+ const queryResult = query({
231
+ prompt: messageGen,
232
+ options: queryOptions
233
+ });
234
+
235
+ for await (const sdkMessage of queryResult) {
236
+ // Capture session ID
237
+ if (sdkMessage.type === 'system' && sdkMessage.subtype === 'init' && sdkMessage.session_id) {
238
+ sessionId = sdkMessage.session_id;
239
+ }
240
+ if ((sdkMessage as any).session_id && !sessionId) {
241
+ sessionId = (sdkMessage as any).session_id;
242
+ }
243
+
244
+ // Stream the message (synchronous callback for SSE)
245
+ onMessage(sdkMessage);
246
+ }
247
+
248
+ console.log(`✅ [A2A Query Streaming] Query completed, sessionId=${sessionId}`);
249
+
250
+ return { sessionId };
251
+ }
252
+
253
+ // Try with resume first, if it fails due to invalid session, retry without resume
254
+ try {
255
+ return await executeStreamingQuery(options);
256
+ } catch (error) {
257
+ const errorMessage = error instanceof Error ? error.message : String(error);
258
+
259
+ // Check if the error is due to invalid resume session
260
+ if (options.resume && (
261
+ errorMessage.includes('exited with code 1') ||
262
+ errorMessage.includes('session') ||
263
+ errorMessage.includes('resume')
264
+ )) {
265
+ console.warn(`⚠️ [A2A Query Streaming] Resume failed (session may be invalid), retrying without resume...`);
266
+
267
+ // Create new options without resume
268
+ const { resume, ...optionsWithoutResume } = options;
269
+ return await executeStreamingQuery(optionsWithoutResume);
270
+ }
271
+
272
+ // Re-throw other errors
273
+ throw error;
274
+ }
275
+ }