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,951 @@
1
+ # LAVS Specification v1.0
2
+
3
+ **Local Agent View Service Protocol**
4
+
5
+ ## Abstract
6
+
7
+ LAVS (Local Agent View Service) is a standard protocol that enables local AI agents to expose structured data interfaces and interact securely with visual UI components. It fills the gap between conversational AI interfaces and visual data manipulation needs in local agent applications.
8
+
9
+ ## Status of This Document
10
+
11
+ This document is a draft specification for LAVS version 1.0. It is subject to change based on community feedback and implementation experience.
12
+
13
+ **Version:** 1.0.0-draft
14
+ **Date:** 2025-01-15
15
+ **Authors:** AgentStudio Team
16
+ **License:** Apache 2.0
17
+
18
+ ## Table of Contents
19
+
20
+ 1. [Introduction](#1-introduction)
21
+ 2. [Terminology](#2-terminology)
22
+ 3. [Architecture](#3-architecture)
23
+ 4. [Manifest Format](#4-manifest-format)
24
+ 5. [Protocol Specification](#5-protocol-specification)
25
+ 6. [Security Model](#6-security-model)
26
+ 7. [View Component Interface](#7-view-component-interface)
27
+ 8. [Examples](#8-examples)
28
+ 9. [Interoperability](#9-interoperability)
29
+ 10. [Appendix](#10-appendix)
30
+
31
+ ---
32
+
33
+ ## 1. Introduction
34
+
35
+ ### 1.1 Motivation
36
+
37
+ Modern AI agent applications often require:
38
+ - **Conversational interface** for natural language interaction
39
+ - **Visual interface** for structured data manipulation
40
+ - **Bidirectional data flow** between AI and human users
41
+ - **Local data persistence** with various storage backends
42
+
43
+ Existing protocols address specific aspects:
44
+ - **MCP (Model Context Protocol)**: Agent ↔ External tools
45
+ - **A2A (Agent-to-Agent)**: Agent ↔ Agent communication
46
+ - **MCP UI**: Tool parameter input forms
47
+
48
+ However, none provide a standard way for local agents to:
49
+ 1. Expose structured data operations to visual frontends
50
+ 2. Execute local scripts/services safely
51
+ 3. Maintain synchronized state between AI and UI
52
+
53
+ LAVS addresses this gap.
54
+
55
+ ### 1.2 Design Goals
56
+
57
+ 1. **Declarative**: Interfaces defined in JSON manifest
58
+ 2. **Language-agnostic**: Works with any scripting language
59
+ 3. **Secure**: Permission-based access control and sandboxing
60
+ 4. **Framework-independent**: Frontend can use any UI framework
61
+ 5. **Composable**: Works alongside MCP, A2A, and other protocols
62
+ 6. **Developer-friendly**: Minimal boilerplate, clear contracts
63
+
64
+ ### 1.3 Use Cases
65
+
66
+ - **Task Management**: AI conversation + Kanban board UI
67
+ - **Note-Taking**: AI organization + Rich text editor
68
+ - **Data Analysis**: AI insights + Chart visualizations
69
+ - **Code Assistance**: AI generation + Code editor
70
+ - **Personal Finance**: AI bookkeeping + Dashboard
71
+
72
+ ---
73
+
74
+ ## 2. Terminology
75
+
76
+ - **LAVS Service**: A service that implements the LAVS protocol
77
+ - **Manifest**: JSON file (`lavs.json`) defining service interfaces
78
+ - **Endpoint**: A callable operation exposed by the service
79
+ - **Handler**: Backend script/function that implements an endpoint
80
+ - **View Component**: Frontend UI component that consumes the service
81
+ - **Runtime**: Software that executes LAVS services
82
+ - **Client**: Software that calls LAVS endpoints (frontend or agent)
83
+
84
+ ---
85
+
86
+ ## 3. Architecture
87
+
88
+ ### 3.1 System Overview
89
+
90
+ ```
91
+ ┌─────────────────────────────────────────────────┐
92
+ │ Agent Application │
93
+ │ │
94
+ │ ┌──────────────┐ ┌──────────────┐ │
95
+ │ │ Chat UI │ │ Visual UI │ │
96
+ │ │ (Dialogue) │ │ (LAVS View) │ │
97
+ │ └──────┬───────┘ └──────┬───────┘ │
98
+ │ │ │ │
99
+ │ │ ┌────────────────────┘ │
100
+ │ │ │ │
101
+ │ ▼ ▼ │
102
+ │ ┌─────────────┐ │
103
+ │ │ Agent │ │
104
+ │ │ Runtime │ │
105
+ │ └──────┬──────┘ │
106
+ │ │ │
107
+ └───────────┼─────────────────────────────────────┘
108
+
109
+
110
+ ┌─────────────────┐
111
+ │ LAVS Runtime │◄──── lavs.json
112
+ └────────┬────────┘
113
+
114
+ ┌─────┴─────┬──────────┬──────────┐
115
+ ▼ ▼ ▼ ▼
116
+ Script Function HTTP Database
117
+ Handler Handler Proxy Adapter
118
+ ```
119
+
120
+ ### 3.2 Communication Flow
121
+
122
+ ```
123
+ Frontend Component
124
+
125
+ │ 1. Call endpoint
126
+ ├──────────────────────────► LAVS Runtime
127
+ │ │
128
+ │ │ 2. Validate permissions
129
+ │ │ 3. Resolve handler
130
+ │ │
131
+ │ ▼
132
+ │ Execute Handler
133
+ │ (script/function)
134
+ │ │
135
+ │ 4. Return result │
136
+ │◄─────────────────────────────────┘
137
+
138
+ │ 5. Update UI
139
+
140
+ ```
141
+
142
+ ### 3.3 Component Responsibilities
143
+
144
+ | Component | Responsibility |
145
+ |-----------|---------------|
146
+ | **Manifest** | Define interfaces, permissions, handlers |
147
+ | **Runtime** | Parse manifest, execute handlers, enforce security |
148
+ | **Handler** | Implement business logic, data operations |
149
+ | **View Component** | Render UI, call endpoints via client SDK |
150
+ | **Client SDK** | Abstract communication protocol |
151
+
152
+ ---
153
+
154
+ ## 4. Manifest Format
155
+
156
+ ### 4.1 Schema
157
+
158
+ A LAVS manifest is a JSON file named `lavs.json` with the following structure:
159
+
160
+ ```typescript
161
+ interface LAVSManifest {
162
+ lavs: string; // Protocol version (e.g., "1.0")
163
+ name: string; // Service name (unique identifier)
164
+ version: string; // Service version (semver)
165
+ description?: string; // Human-readable description
166
+
167
+ endpoints: Endpoint[]; // Exposed operations
168
+ view?: ViewConfig; // Optional UI component
169
+ types?: TypeDefinitions; // Type definitions
170
+ permissions?: Permissions; // Security constraints
171
+ }
172
+ ```
173
+
174
+ ### 4.2 Endpoint Definition
175
+
176
+ ```typescript
177
+ interface Endpoint {
178
+ id: string; // Unique endpoint identifier
179
+ method: 'query' | 'mutation' | 'subscription';
180
+ description?: string;
181
+
182
+ handler: Handler; // How to execute this endpoint
183
+ schema?: Schema; // Input/output schema
184
+ permissions?: Permissions; // Endpoint-specific permissions
185
+ }
186
+ ```
187
+
188
+ #### 4.2.1 Method Types
189
+
190
+ - **query**: Read-only operations (GET)
191
+ - **mutation**: Write operations (POST/PUT/DELETE)
192
+ - **subscription**: Real-time updates (WebSocket/SSE)
193
+
194
+ ### 4.3 Handler Types
195
+
196
+ ```typescript
197
+ type Handler =
198
+ | ScriptHandler
199
+ | FunctionHandler
200
+ | HTTPHandler
201
+ | MCPHandler;
202
+
203
+ interface ScriptHandler {
204
+ type: 'script';
205
+ command: string; // Command to execute
206
+ args?: string[]; // Static arguments
207
+ input?: 'args' | 'stdin' | 'env'; // How to pass parameters
208
+ cwd?: string; // Working directory
209
+ timeout?: number; // Max execution time (ms)
210
+ env?: Record<string, string>; // Environment variables
211
+ }
212
+
213
+ interface FunctionHandler {
214
+ type: 'function';
215
+ module: string; // Path to JS/TS module
216
+ function: string; // Function name to call
217
+ }
218
+
219
+ interface HTTPHandler {
220
+ type: 'http';
221
+ url: string; // HTTP endpoint
222
+ method: string; // HTTP method
223
+ headers?: Record<string, string>;
224
+ }
225
+
226
+ interface MCPHandler {
227
+ type: 'mcp';
228
+ server: string; // MCP server name
229
+ tool: string; // MCP tool name
230
+ }
231
+ ```
232
+
233
+ ### 4.4 Schema Definition
234
+
235
+ Uses JSON Schema format:
236
+
237
+ ```typescript
238
+ interface Schema {
239
+ input?: JSONSchema; // Input parameters schema
240
+ output?: JSONSchema; // Output data schema
241
+ }
242
+ ```
243
+
244
+ ### 4.5 View Configuration
245
+
246
+ ```typescript
247
+ interface ViewConfig {
248
+ component: ComponentSource;
249
+ fallback?: 'list' | 'table' | 'json'; // Fallback display mode
250
+ icon?: string; // Icon identifier
251
+ theme?: Record<string, string>; // Theme variables
252
+ }
253
+
254
+ type ComponentSource =
255
+ | { type: 'cdn'; url: string; exportName?: string }
256
+ | { type: 'npm'; package: string; version?: string }
257
+ | { type: 'local'; path: string }
258
+ | { type: 'inline'; code: string };
259
+ ```
260
+
261
+ ### 4.6 Permissions
262
+
263
+ ```typescript
264
+ interface Permissions {
265
+ fileAccess?: string[]; // Allowed file path patterns
266
+ networkAccess?: boolean | string[]; // Network access control
267
+ maxExecutionTime?: number; // Max handler execution time (ms)
268
+ maxMemory?: number; // Max memory usage (bytes)
269
+ }
270
+ ```
271
+
272
+ ### 4.7 Complete Example
273
+
274
+ ```json
275
+ {
276
+ "lavs": "1.0",
277
+ "name": "todo-manager",
278
+ "version": "1.0.0",
279
+ "description": "Todo management service with AI assistance",
280
+
281
+ "endpoints": [
282
+ {
283
+ "id": "listTodos",
284
+ "method": "query",
285
+ "description": "Retrieve all todos",
286
+ "handler": {
287
+ "type": "script",
288
+ "command": "node",
289
+ "args": ["scripts/todo-service.js", "list"],
290
+ "input": "args",
291
+ "timeout": 5000
292
+ },
293
+ "schema": {
294
+ "output": {
295
+ "type": "array",
296
+ "items": { "$ref": "#/types/Todo" }
297
+ }
298
+ }
299
+ },
300
+ {
301
+ "id": "addTodo",
302
+ "method": "mutation",
303
+ "description": "Create a new todo",
304
+ "handler": {
305
+ "type": "script",
306
+ "command": "node",
307
+ "args": ["scripts/todo-service.js", "add"],
308
+ "input": "stdin"
309
+ },
310
+ "schema": {
311
+ "input": {
312
+ "type": "object",
313
+ "properties": {
314
+ "text": { "type": "string" },
315
+ "priority": { "type": "number", "default": 0 }
316
+ },
317
+ "required": ["text"]
318
+ },
319
+ "output": { "$ref": "#/types/Todo" }
320
+ }
321
+ },
322
+ {
323
+ "id": "todoUpdates",
324
+ "method": "subscription",
325
+ "description": "Subscribe to todo changes",
326
+ "handler": {
327
+ "type": "script",
328
+ "command": "node",
329
+ "args": ["scripts/todo-watch.js"]
330
+ }
331
+ }
332
+ ],
333
+
334
+ "view": {
335
+ "component": {
336
+ "type": "cdn",
337
+ "url": "https://cdn.example.com/todo-view@1.0.0.js",
338
+ "exportName": "TodoView"
339
+ },
340
+ "fallback": "table",
341
+ "icon": "checklist"
342
+ },
343
+
344
+ "types": {
345
+ "Todo": {
346
+ "type": "object",
347
+ "properties": {
348
+ "id": { "type": "number" },
349
+ "text": { "type": "string" },
350
+ "done": { "type": "boolean" },
351
+ "priority": { "type": "number" },
352
+ "createdAt": { "type": "string", "format": "date-time" }
353
+ },
354
+ "required": ["id", "text", "done"]
355
+ }
356
+ },
357
+
358
+ "permissions": {
359
+ "fileAccess": ["./data/**/*.json"],
360
+ "networkAccess": false,
361
+ "maxExecutionTime": 30000,
362
+ "maxMemory": 104857600
363
+ }
364
+ }
365
+ ```
366
+
367
+ ---
368
+
369
+ ## 5. Protocol Specification
370
+
371
+ ### 5.1 Transport
372
+
373
+ LAVS Runtime MUST support at least one of:
374
+ - HTTP/HTTPS (for queries and mutations)
375
+ - WebSocket (for subscriptions)
376
+
377
+ Recommended: HTTP for stateless operations, WebSocket for subscriptions.
378
+
379
+ ### 5.2 Message Format
380
+
381
+ LAVS uses JSON-RPC 2.0 over HTTP/WebSocket.
382
+
383
+ #### 5.2.1 Request
384
+
385
+ ```typescript
386
+ interface LAVSRequest {
387
+ jsonrpc: '2.0';
388
+ id: string | number; // Request ID
389
+ method: string; // 'lavs/call' | 'lavs/subscribe' | 'lavs/unsubscribe'
390
+ params: {
391
+ endpoint: string; // Endpoint ID from manifest
392
+ input?: any; // Input parameters
393
+ };
394
+ }
395
+ ```
396
+
397
+ **Example:**
398
+ ```json
399
+ {
400
+ "jsonrpc": "2.0",
401
+ "id": 1,
402
+ "method": "lavs/call",
403
+ "params": {
404
+ "endpoint": "addTodo",
405
+ "input": {
406
+ "text": "Buy milk",
407
+ "priority": 1
408
+ }
409
+ }
410
+ }
411
+ ```
412
+
413
+ #### 5.2.2 Response
414
+
415
+ ```typescript
416
+ interface LAVSResponse {
417
+ jsonrpc: '2.0';
418
+ id: string | number;
419
+ result?: any; // Success result
420
+ error?: LAVSError; // Error object
421
+ }
422
+
423
+ interface LAVSError {
424
+ code: number; // Error code
425
+ message: string; // Error message
426
+ data?: any; // Additional error data
427
+ }
428
+ ```
429
+
430
+ **Success Example:**
431
+ ```json
432
+ {
433
+ "jsonrpc": "2.0",
434
+ "id": 1,
435
+ "result": {
436
+ "id": 123,
437
+ "text": "Buy milk",
438
+ "done": false,
439
+ "priority": 1,
440
+ "createdAt": "2025-01-15T10:30:00Z"
441
+ }
442
+ }
443
+ ```
444
+
445
+ **Error Example:**
446
+ ```json
447
+ {
448
+ "jsonrpc": "2.0",
449
+ "id": 1,
450
+ "error": {
451
+ "code": -32602,
452
+ "message": "Invalid params: 'text' is required",
453
+ "data": {
454
+ "field": "text",
455
+ "constraint": "required"
456
+ }
457
+ }
458
+ }
459
+ ```
460
+
461
+ ### 5.3 Error Codes
462
+
463
+ | Code | Message | Description |
464
+ |------|---------|-------------|
465
+ | -32700 | Parse error | Invalid JSON |
466
+ | -32600 | Invalid request | Invalid request object |
467
+ | -32601 | Method not found | Endpoint does not exist |
468
+ | -32602 | Invalid params | Invalid input parameters |
469
+ | -32603 | Internal error | Runtime error |
470
+ | -32001 | Permission denied | Insufficient permissions |
471
+ | -32002 | Timeout | Handler execution timeout |
472
+ | -32003 | Handler error | Handler script/function failed |
473
+
474
+ ### 5.4 Subscription Protocol
475
+
476
+ For `subscription` endpoints, use WebSocket:
477
+
478
+ **Subscribe:**
479
+ ```json
480
+ {
481
+ "jsonrpc": "2.0",
482
+ "id": 1,
483
+ "method": "lavs/subscribe",
484
+ "params": {
485
+ "endpoint": "todoUpdates"
486
+ }
487
+ }
488
+ ```
489
+
490
+ **Subscription Response:**
491
+ ```json
492
+ {
493
+ "jsonrpc": "2.0",
494
+ "id": 1,
495
+ "result": {
496
+ "subscriptionId": "sub-123"
497
+ }
498
+ }
499
+ ```
500
+
501
+ **Data Push (no id, server-initiated):**
502
+ ```json
503
+ {
504
+ "jsonrpc": "2.0",
505
+ "method": "lavs/data",
506
+ "params": {
507
+ "subscriptionId": "sub-123",
508
+ "data": {
509
+ "type": "todoAdded",
510
+ "todo": { "id": 124, "text": "New task" }
511
+ }
512
+ }
513
+ }
514
+ ```
515
+
516
+ **Unsubscribe:**
517
+ ```json
518
+ {
519
+ "jsonrpc": "2.0",
520
+ "id": 2,
521
+ "method": "lavs/unsubscribe",
522
+ "params": {
523
+ "subscriptionId": "sub-123"
524
+ }
525
+ }
526
+ ```
527
+
528
+ ---
529
+
530
+ ## 6. Security Model
531
+
532
+ ### 6.1 Principles
533
+
534
+ 1. **Least Privilege**: Services declare minimum required permissions
535
+ 2. **Sandboxing**: Handlers execute in isolated environments
536
+ 3. **Validation**: All inputs validated against schemas
537
+ 4. **Auditing**: All operations logged for review
538
+
539
+ ### 6.2 Permission Enforcement
540
+
541
+ Runtime MUST enforce permissions declared in manifest:
542
+
543
+ - **fileAccess**: Glob patterns for accessible files
544
+ - `./data/**/*.json` - Allow JSON files in data directory
545
+ - `!./data/secrets.json` - Explicitly deny specific file
546
+
547
+ - **networkAccess**:
548
+ - `false` - No network access
549
+ - `true` - Allow all network access (discouraged)
550
+ - `["api.example.com"]` - Whitelist specific domains
551
+
552
+ - **maxExecutionTime**: Kill handler if exceeds limit
553
+
554
+ - **maxMemory**: Enforce memory limits (OS-dependent)
555
+
556
+ ### 6.3 Input Validation
557
+
558
+ Runtime MUST validate inputs against schema before execution:
559
+
560
+ ```typescript
561
+ // Pseudocode
562
+ function validateAndExecute(endpoint, input) {
563
+ if (!validate(input, endpoint.schema.input)) {
564
+ throw new LAVSError(-32602, 'Invalid params');
565
+ }
566
+
567
+ const result = executeHandler(endpoint.handler, input);
568
+
569
+ if (!validate(result, endpoint.schema.output)) {
570
+ throw new LAVSError(-32603, 'Invalid output from handler');
571
+ }
572
+
573
+ return result;
574
+ }
575
+ ```
576
+
577
+ ### 6.4 Sandboxing
578
+
579
+ Recommended sandbox mechanisms:
580
+
581
+ - **Script handlers**:
582
+ - Use OS-level process isolation
583
+ - Drop unnecessary capabilities (Linux capabilities)
584
+ - Use containers (Docker, podman) for strict isolation
585
+
586
+ - **Function handlers**:
587
+ - Run in separate V8 isolate (Node.js)
588
+ - Use `vm2` or similar sandboxing libraries
589
+
590
+ - **Network isolation**:
591
+ - Use network namespaces or firewall rules
592
+ - Enforce domain whitelists
593
+
594
+ ### 6.5 View Component Security
595
+
596
+ View components from untrusted sources SHOULD:
597
+
598
+ 1. Load in sandboxed iframe with CSP headers
599
+ 2. Only access LAVS endpoints (no direct file access)
600
+ 3. Be served with `Permissions-Policy` restrictions
601
+
602
+ Example CSP for view component:
603
+ ```
604
+ Content-Security-Policy:
605
+ default-src 'self';
606
+ script-src 'self' https://cdn.example.com;
607
+ connect-src https://localhost:5555;
608
+ frame-ancestors 'none';
609
+ ```
610
+
611
+ ---
612
+
613
+ ## 7. View Component Interface
614
+
615
+ ### 7.1 Component Contract
616
+
617
+ View components MUST implement this interface:
618
+
619
+ ```typescript
620
+ interface LAVSViewComponent extends HTMLElement {
621
+ // Called when component is mounted
622
+ connectedCallback(): void;
623
+
624
+ // Runtime injects API client
625
+ setLAVSClient(client: LAVSClient): void;
626
+
627
+ // Optional: receive notifications from agent
628
+ onAgentAction?(action: AgentAction): void;
629
+
630
+ // Called when component is unmounted
631
+ disconnectedCallback(): void;
632
+ }
633
+ ```
634
+
635
+ ### 7.2 Client API
636
+
637
+ Runtime provides this client to view components:
638
+
639
+ ```typescript
640
+ interface LAVSClient {
641
+ // Call an endpoint
642
+ call<T = any>(
643
+ endpoint: string,
644
+ input?: any
645
+ ): Promise<T>;
646
+
647
+ // Subscribe to updates
648
+ subscribe(
649
+ endpoint: string,
650
+ callback: (data: any) => void
651
+ ): () => void; // Returns unsubscribe function
652
+
653
+ // Get service metadata
654
+ getManifest(): Promise<LAVSManifest>;
655
+
656
+ // Read files (if permitted)
657
+ readFile(path: string): Promise<string>;
658
+ }
659
+ ```
660
+
661
+ ### 7.3 Example View Component
662
+
663
+ ```typescript
664
+ class TodoView extends HTMLElement implements LAVSViewComponent {
665
+ private client!: LAVSClient;
666
+ private todos: Todo[] = [];
667
+
668
+ connectedCallback() {
669
+ this.render();
670
+ }
671
+
672
+ setLAVSClient(client: LAVSClient) {
673
+ this.client = client;
674
+ this.init();
675
+ }
676
+
677
+ async init() {
678
+ // Load initial data
679
+ this.todos = await this.client.call('listTodos');
680
+
681
+ // Subscribe to updates
682
+ this.client.subscribe('todoUpdates', (data) => {
683
+ this.handleUpdate(data);
684
+ });
685
+
686
+ this.render();
687
+ }
688
+
689
+ async addTodo(text: string) {
690
+ const newTodo = await this.client.call('addTodo', {
691
+ text,
692
+ priority: 1
693
+ });
694
+ this.todos.push(newTodo);
695
+ this.render();
696
+ }
697
+
698
+ onAgentAction(action: AgentAction) {
699
+ if (action.type === 'todoAdded') {
700
+ this.todos.push(action.data);
701
+ this.render();
702
+ }
703
+ }
704
+
705
+ render() {
706
+ this.innerHTML = `
707
+ <div class="todo-list">
708
+ ${this.todos.map(t => `
709
+ <div class="todo-item">${t.text}</div>
710
+ `).join('')}
711
+ </div>
712
+ `;
713
+ }
714
+ }
715
+
716
+ customElements.define('todo-view', TodoView);
717
+ ```
718
+
719
+ ---
720
+
721
+ ## 8. Examples
722
+
723
+ ### 8.1 Simple File-Based Service
724
+
725
+ **lavs.json:**
726
+ ```json
727
+ {
728
+ "lavs": "1.0",
729
+ "name": "simple-notes",
730
+ "version": "1.0.0",
731
+
732
+ "endpoints": [
733
+ {
734
+ "id": "getNotes",
735
+ "method": "query",
736
+ "handler": {
737
+ "type": "script",
738
+ "command": "cat",
739
+ "args": ["notes.txt"]
740
+ }
741
+ },
742
+ {
743
+ "id": "saveNote",
744
+ "method": "mutation",
745
+ "handler": {
746
+ "type": "script",
747
+ "command": "bash",
748
+ "args": ["-c", "echo \"$NOTE\" >> notes.txt"],
749
+ "input": "env"
750
+ },
751
+ "schema": {
752
+ "input": {
753
+ "type": "object",
754
+ "properties": {
755
+ "NOTE": { "type": "string" }
756
+ }
757
+ }
758
+ }
759
+ }
760
+ ],
761
+
762
+ "permissions": {
763
+ "fileAccess": ["notes.txt"]
764
+ }
765
+ }
766
+ ```
767
+
768
+ ### 8.2 Database-Backed Service
769
+
770
+ **lavs.json:**
771
+ ```json
772
+ {
773
+ "lavs": "1.0",
774
+ "name": "contact-manager",
775
+ "version": "1.0.0",
776
+
777
+ "endpoints": [
778
+ {
779
+ "id": "searchContacts",
780
+ "method": "query",
781
+ "handler": {
782
+ "type": "script",
783
+ "command": "python3",
784
+ "args": ["scripts/contacts.py", "search"],
785
+ "input": "stdin"
786
+ },
787
+ "schema": {
788
+ "input": {
789
+ "type": "object",
790
+ "properties": {
791
+ "query": { "type": "string" }
792
+ }
793
+ }
794
+ }
795
+ }
796
+ ],
797
+
798
+ "permissions": {
799
+ "fileAccess": ["contacts.db"]
800
+ }
801
+ }
802
+ ```
803
+
804
+ **scripts/contacts.py:**
805
+ ```python
806
+ import sys
807
+ import json
808
+ import sqlite3
809
+
810
+ action = sys.argv[1]
811
+ conn = sqlite3.connect('contacts.db')
812
+
813
+ if action == 'search':
814
+ params = json.load(sys.stdin)
815
+ query = params['query']
816
+ cursor = conn.execute(
817
+ "SELECT * FROM contacts WHERE name LIKE ?",
818
+ (f"%{query}%",)
819
+ )
820
+ results = [dict(row) for row in cursor.fetchall()]
821
+ print(json.dumps(results))
822
+ ```
823
+
824
+ ### 8.3 MCP Integration
825
+
826
+ **lavs.json:**
827
+ ```json
828
+ {
829
+ "lavs": "1.0",
830
+ "name": "github-issues",
831
+ "version": "1.0.0",
832
+
833
+ "endpoints": [
834
+ {
835
+ "id": "listIssues",
836
+ "method": "query",
837
+ "handler": {
838
+ "type": "mcp",
839
+ "server": "github",
840
+ "tool": "list_issues"
841
+ }
842
+ }
843
+ ]
844
+ }
845
+ ```
846
+
847
+ ---
848
+
849
+ ## 9. Interoperability
850
+
851
+ ### 9.1 Relationship with MCP
852
+
853
+ LAVS complements MCP:
854
+
855
+ - **MCP**: Agent calls external tools/services
856
+ - **LAVS**: Agent exposes internal data to UI
857
+
858
+ They can work together:
859
+
860
+ ```json
861
+ {
862
+ "endpoints": [
863
+ {
864
+ "id": "searchGitHub",
865
+ "method": "query",
866
+ "handler": {
867
+ "type": "mcp",
868
+ "server": "github",
869
+ "tool": "search_code"
870
+ }
871
+ }
872
+ ]
873
+ }
874
+ ```
875
+
876
+ ### 9.2 Relationship with A2A
877
+
878
+ LAVS services can be called by other agents via A2A:
879
+
880
+ ```
881
+ Agent A (LAVS) ←─ HTTP ─→ Agent B (A2A client)
882
+ ```
883
+
884
+ ### 9.3 Standard File Locations
885
+
886
+ Recommended directory structure:
887
+
888
+ ```
889
+ my-agent/
890
+ ├── lavs.json # LAVS manifest
891
+ ├── mcp-config.json # Optional: MCP servers
892
+ ├── scripts/ # Handler scripts
893
+ ├── data/ # Data storage
894
+ └── views/ # View components (if local)
895
+ ```
896
+
897
+ ---
898
+
899
+ ## 10. Appendix
900
+
901
+ ### 10.1 Complete Type Definitions
902
+
903
+ See reference implementation: `@lavs/types`
904
+
905
+ ### 10.2 Migration from Custom APIs
906
+
907
+ To migrate existing agent APIs to LAVS:
908
+
909
+ 1. Create `lavs.json` manifest
910
+ 2. Wrap existing API endpoints as handlers
911
+ 3. Define schemas for validation
912
+ 4. Update frontend to use LAVS client
913
+
914
+ ### 10.3 Performance Considerations
915
+
916
+ - **Script handlers**: Have startup overhead, consider long-running processes
917
+ - **Caching**: Implement response caching for read-heavy workloads
918
+ - **Batching**: Support batch operations to reduce round trips
919
+
920
+ ### 10.4 Future Extensions
921
+
922
+ Possible future additions:
923
+
924
+ - **Streaming responses**: For large datasets
925
+ - **Transactions**: Multi-operation atomicity
926
+ - **Middleware**: Custom validation/transformation hooks
927
+ - **Service discovery**: Registry for finding LAVS services
928
+
929
+ ---
930
+
931
+ ## References
932
+
933
+ - JSON-RPC 2.0: https://www.jsonrpc.org/specification
934
+ - JSON Schema: https://json-schema.org/
935
+ - Model Context Protocol: https://modelcontextprotocol.io/
936
+ - Web Components: https://developer.mozilla.org/en-US/docs/Web/API/Web_components
937
+
938
+ ---
939
+
940
+ ## License
941
+
942
+ This specification is licensed under Apache License 2.0.
943
+
944
+ Copyright 2025 AgentStudio Team
945
+
946
+ ---
947
+
948
+ ## Changelog
949
+
950
+ ### v1.0.0-draft (2025-01-15)
951
+ - Initial draft specification