@inkeep/agents-manage-ui 0.38.1 → 0.38.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/.next/standalone/agents-manage-ui/.next/BUILD_ID +1 -1
  2. package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +5 -5
  3. package/.next/standalone/agents-manage-ui/.next/build-manifest.json +3 -3
  4. package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +3 -3
  5. package/.next/standalone/agents-manage-ui/.next/react-loadable-manifest.json +6 -6
  6. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +2 -2
  7. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
  8. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js +7 -26
  9. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js.nft.json +1 -1
  10. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page_client-reference-manifest.js +1 -1
  11. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +2 -2
  12. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
  14. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +2 -2
  16. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
  17. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +1 -1
  19. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
  20. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
  22. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
  23. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +1 -1
  24. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -1
  25. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -2
  26. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +1 -1
  28. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
  29. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +2 -2
  30. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
  31. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
  32. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +2 -2
  34. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
  35. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
  36. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
  37. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
  38. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
  39. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
  40. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +1 -1
  41. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page.js +2 -2
  43. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page.js.nft.json +1 -1
  44. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page.js +2 -2
  46. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page_client-reference-manifest.js +1 -1
  47. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page.js +2 -2
  48. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page.js.nft.json +1 -1
  49. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page_client-reference-manifest.js +1 -1
  50. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/page.js +2 -2
  51. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/page_client-reference-manifest.js +1 -1
  52. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
  53. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js.nft.json +1 -1
  54. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
  56. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js.nft.json +1 -1
  57. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
  58. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
  59. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js.nft.json +1 -1
  60. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
  61. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
  62. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
  63. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +2 -2
  64. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  65. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
  66. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
  67. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +2 -2
  68. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
  69. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
  70. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +3 -3
  71. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
  72. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +3 -3
  73. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
  74. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
  75. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/tool-calls/page.js +2 -2
  76. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/tool-calls/page.js.nft.json +1 -1
  77. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/tool-calls/page_client-reference-manifest.js +1 -1
  78. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +2 -2
  79. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
  80. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/settings/page.js +2 -2
  81. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/settings/page_client-reference-manifest.js +1 -1
  82. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  83. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.html +2 -2
  84. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.rsc +1 -1
  85. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  86. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  87. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  88. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  89. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  90. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  91. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  92. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
  93. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +2 -2
  94. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_full.segment.rsc +2 -2
  95. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
  96. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_index.segment.rsc +2 -2
  97. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +1 -1
  98. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  99. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  100. package/.next/standalone/agents-manage-ui/.next/server/app/accept-invitation/[invitationId]/page_client-reference-manifest.js +1 -1
  101. package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route.js +4 -4
  102. package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route_client-reference-manifest.js +1 -1
  103. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  104. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
  105. package/.next/standalone/agents-manage-ui/.next/server/app/index.html +1 -1
  106. package/.next/standalone/agents-manage-ui/.next/server/app/index.rsc +3 -3
  107. package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  108. package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_full.segment.rsc +3 -3
  109. package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_head.segment.rsc +1 -1
  110. package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_index.segment.rsc +2 -2
  111. package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  112. package/.next/standalone/agents-manage-ui/.next/server/app/login/page_client-reference-manifest.js +1 -1
  113. package/.next/standalone/agents-manage-ui/.next/server/app/login.html +1 -1
  114. package/.next/standalone/agents-manage-ui/.next/server/app/login.rsc +2 -2
  115. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_full.segment.rsc +2 -2
  116. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_head.segment.rsc +1 -1
  117. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_index.segment.rsc +2 -2
  118. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_tree.segment.rsc +2 -2
  119. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/login/__PAGE__.segment.rsc +1 -1
  120. package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/login.segment.rsc +1 -1
  121. package/.next/standalone/agents-manage-ui/.next/server/app/logout/route_client-reference-manifest.js +1 -1
  122. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization/page_client-reference-manifest.js +1 -1
  123. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.html +1 -1
  124. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.rsc +2 -2
  125. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_full.segment.rsc +2 -2
  126. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_head.segment.rsc +1 -1
  127. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_index.segment.rsc +2 -2
  128. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_tree.segment.rsc +2 -2
  129. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/no-organization/__PAGE__.segment.rsc +1 -1
  130. package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/no-organization.segment.rsc +1 -1
  131. package/.next/standalone/agents-manage-ui/.next/server/app/page.js +1 -1
  132. package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
  133. package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +5 -5
  134. package/.next/standalone/agents-manage-ui/.next/server/chunks/2196.js +2 -2
  135. package/.next/standalone/agents-manage-ui/.next/server/chunks/3138.js +1 -0
  136. package/.next/standalone/agents-manage-ui/.next/server/chunks/4286.js +1 -0
  137. package/.next/standalone/agents-manage-ui/.next/server/chunks/6125.js +4 -4
  138. package/.next/standalone/agents-manage-ui/.next/server/chunks/{4812.js → 8185.js} +1 -1
  139. package/.next/standalone/agents-manage-ui/.next/server/chunks/8324.js +2 -2
  140. package/.next/standalone/agents-manage-ui/.next/server/chunks/8431.js +1 -0
  141. package/.next/standalone/agents-manage-ui/.next/server/chunks/8870.js +1 -1
  142. package/.next/standalone/agents-manage-ui/.next/server/chunks/902.js +1 -0
  143. package/.next/standalone/agents-manage-ui/.next/server/chunks/9329.js +1 -1
  144. package/.next/standalone/agents-manage-ui/.next/server/middleware-build-manifest.js +1 -1
  145. package/.next/standalone/agents-manage-ui/.next/server/middleware-react-loadable-manifest.js +1 -1
  146. package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
  147. package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +2 -2
  148. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
  149. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
  150. package/.next/standalone/agents-manage-ui/.next/static/chunks/1186-3ef8f167f43c3be2.js +1 -0
  151. package/.next/standalone/agents-manage-ui/.next/static/chunks/12234-474d684407384eb7.js +1 -0
  152. package/.next/standalone/agents-manage-ui/.next/static/chunks/22300-cfe99b8beeb99a13.js +1 -0
  153. package/.next/standalone/agents-manage-ui/.next/static/chunks/32565-9960b0c6406911bf.js +1 -0
  154. package/.next/standalone/agents-manage-ui/.next/static/chunks/{31278-f7be57d573dfa6f3.js → 33568-25f6aa1950287007.js} +1 -1
  155. package/.next/standalone/agents-manage-ui/.next/static/chunks/34981-cebc039f5c48e794.js +1 -0
  156. package/.next/standalone/agents-manage-ui/.next/static/chunks/53067.aa17db986ac34425.js +23 -0
  157. package/.next/standalone/agents-manage-ui/.next/static/chunks/63188-c7b5d51fbc726886.js +1 -0
  158. package/.next/standalone/agents-manage-ui/.next/static/chunks/64295-81f2477010363e89.js +14 -0
  159. package/.next/standalone/agents-manage-ui/.next/static/chunks/{78295-a953cea9b4ddefb0.js → 78295-d8598f3e9deed8c6.js} +2 -2
  160. package/.next/standalone/agents-manage-ui/.next/static/chunks/{9798a8e4-0862900761f4e98d.js → 9798a8e4-faa839481f967a8d.js} +1 -1
  161. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/{layout-fabda89d39b7e2de.js → layout-fd9a2deae59d7b43.js} +1 -1
  162. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/page-d18719edcc62b822.js +414 -0
  163. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-899dfd9cc3a19b47.js +1 -0
  164. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-9c225515b7592228.js +1 -0
  165. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-e64fd0598fd2e8a1.js +1 -0
  166. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-d36acf62988cfc7a.js +1 -0
  167. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-b0ea0b749b30d3c7.js +1 -0
  168. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-b8aefcf527976d02.js → page-98e2a8d5ba3cd923.js} +1 -1
  169. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/{page-db140fb74668d035.js → page-498a31b87266f054.js} +1 -1
  170. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-eea2c82071a52151.js +1 -0
  171. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-5adc992fc318b399.js +1 -0
  172. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-3a55286c4c8308f5.js +1 -0
  173. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/{page-1d68beacd49d04fd.js → page-7cc8bc8d35818be6.js} +1 -1
  174. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/{page-7f007f54e7a5365d.js → page-794c945cd39b2b80.js} +1 -1
  175. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/{page-d93e308361a58e4d.js → page-7ec6c909eb17c859.js} +1 -1
  176. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/new/{page-662592f3fef95760.js → page-234b8c244b962c55.js} +1 -1
  177. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/page-f8118fd8fbba2b62.js +1 -0
  178. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page-f869ad73bdd0cd2c.js +1 -0
  179. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-88b18c22edb72177.js +1 -0
  180. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-eb107dfa3a0f725b.js +1 -0
  181. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-af62c83660580b24.js +1 -0
  182. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-73d80e750d00bae9.js → page-f34b264880d32767.js} +1 -1
  183. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/{page-b13b3271ceceb494.js → page-9000b358f48e450a.js} +2 -2
  184. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-50eb02fea8f22fc7.js +1 -0
  185. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/settings/page-d71718217286b332.js +1 -0
  186. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/{page-521f939156584b03.js → page-fc1b7c4d94b91546.js} +1 -1
  187. package/.next/standalone/agents-manage-ui/.next/static/chunks/{webpack-82d89792eb6c6a88.js → webpack-9ed0b890bbcbcc6c.js} +1 -1
  188. package/.next/standalone/agents-manage-ui/.next/static/css/16c4611e249100df.css +1 -0
  189. package/.next/standalone/agents-manage-ui/package.json +1 -1
  190. package/.next/standalone/packages/agents-core/package.json +1 -1
  191. package/package.json +4 -4
  192. package/src/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.client.tsx +9 -1
  193. package/src/components/agent/configuration/model-options.tsx +6 -2
  194. package/src/components/agent/copilot/components/code-diff.tsx +6 -4
  195. package/src/components/agent/copilot/copilot-chat.tsx +4 -0
  196. package/src/components/agent/copilot/message-parts/loading.tsx +8 -1
  197. package/src/components/agent/copilot-streaming-overlay.tsx +20 -0
  198. package/src/components/agent/ship/mcp-guide/snippets/cursor.ts +0 -6
  199. package/src/components/agent/ship/mcp-guide/snippets/vscode.ts +0 -7
  200. package/src/components/agent/ship/mcp-guide/snippets/windsurf.ts +0 -6
  201. package/src/components/agent/sidepane/sidepane.tsx +7 -1
  202. package/src/components/form/expandable-field.tsx +4 -1
  203. package/src/components/mcp-servers/form/mcp-server-form.tsx +1 -5
  204. package/src/components/mcp-servers/selection/mcp-server-selection.tsx +1 -8
  205. package/src/components/ui/dialog.tsx +2 -2
  206. package/src/lib/actions/__tests__/tool-approval.test.ts +10 -10
  207. package/src/lib/actions/tool-approval.ts +3 -8
  208. package/src/lib/utils/__tests__/tool-approval-mapper.test.ts +10 -10
  209. package/.next/standalone/agents-manage-ui/.next/server/chunks/428.js +0 -1
  210. package/.next/standalone/agents-manage-ui/.next/server/chunks/4425.js +0 -1
  211. package/.next/standalone/agents-manage-ui/.next/server/chunks/6081.js +0 -1
  212. package/.next/standalone/agents-manage-ui/.next/server/chunks/8345.js +0 -1
  213. package/.next/standalone/agents-manage-ui/.next/static/chunks/12234-99449e826b5bb0fb.js +0 -1
  214. package/.next/standalone/agents-manage-ui/.next/static/chunks/27865-816884567056e373.js +0 -1
  215. package/.next/standalone/agents-manage-ui/.next/static/chunks/32565-25ff21521bc669d8.js +0 -1
  216. package/.next/standalone/agents-manage-ui/.next/static/chunks/57783-c32ae1e36a5feef4.js +0 -1
  217. package/.next/standalone/agents-manage-ui/.next/static/chunks/57862-247ba5b2eeebea14.js +0 -1
  218. package/.next/standalone/agents-manage-ui/.next/static/chunks/58158-b2ca2e105be4d0e3.js +0 -1
  219. package/.next/standalone/agents-manage-ui/.next/static/chunks/77868.3c9e85d7db83c461.js +0 -23
  220. package/.next/standalone/agents-manage-ui/.next/static/chunks/83531-ef6d194db3071636.js +0 -1
  221. package/.next/standalone/agents-manage-ui/.next/static/chunks/94816-0542bc0b8ed3b045.js +0 -14
  222. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/page-a5dac55f422396b5.js +0 -433
  223. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-9d87435c822e0d34.js +0 -1
  224. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-56d8206271236bff.js +0 -1
  225. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-88b43ea00fb4dfd8.js +0 -1
  226. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-8ced567ece490895.js +0 -1
  227. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-7160d31d6824d799.js +0 -1
  228. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-a98e524c19a2aaf9.js +0 -1
  229. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-739a324b4a888c10.js +0 -1
  230. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-bfb7ff17e33193ca.js +0 -1
  231. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/page-14d30afd510c0378.js +0 -1
  232. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page-043fdfc484fe24ce.js +0 -1
  233. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-41c5e4c87fae2a08.js +0 -1
  234. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-a9a43c31caa5c173.js +0 -1
  235. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-31f14f3b3799a87f.js +0 -1
  236. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-196113e6e40316a9.js +0 -1
  237. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/settings/page-366fd8682c726ca5.js +0 -1
  238. package/.next/standalone/agents-manage-ui/.next/static/css/104a74bda41fa978.css +0 -1
  239. /package/.next/standalone/agents-manage-ui/.next/static/{KGWtwxWYpo0z-5efJaAEr → cEZrzrKK_4Wmz-9nyuTwO}/_buildManifest.js +0 -0
  240. /package/.next/standalone/agents-manage-ui/.next/static/{KGWtwxWYpo0z-5efJaAEr → cEZrzrKK_4Wmz-9nyuTwO}/_ssgManifest.js +0 -0
@@ -1,11 +1,7 @@
1
1
  export const vscodeTemplate = `
2
-
3
2
  1. Open [Visual Studio Code](https://code.visualstudio.com/docs/copilot/customization/mcp-servers). Create a \`.vscode\` directory in your project root if there isn't one already.
4
-
5
3
  2. Create or open the \`mcp.json\` file in the \`.vscode\` directory.
6
-
7
4
  3. Add the following configuration:
8
-
9
5
  \`\`\`bash
10
6
  {
11
7
  "servers": {
@@ -19,9 +15,6 @@ export const vscodeTemplate = `
19
15
  }
20
16
  }
21
17
  \`\`\`
22
-
23
18
  4. Save the configuration file. You may need to restart VS Code to see the changes.
24
-
25
19
  5. You can verify the connection by opening the composer (\`Ctrl + Alt + I\`) in **agent mode** and asking a question.
26
-
27
20
  `;
@@ -1,11 +1,7 @@
1
1
  export const windsurfTemplate = `
2
-
3
2
  1. Open [Windsurf](https://docs.windsurf.com/windsurf/cascade/mcp). Create a \`.windsurf\` directory in your project root if there isn't one already.
4
-
5
3
  2. Create or open the \`mcp_config.json\` file in the \`.windsurf\` directory.
6
-
7
4
  3. Add the following configuration:
8
-
9
5
  \`\`\`bash
10
6
  {
11
7
  "mcpServers": {
@@ -18,8 +14,6 @@ export const windsurfTemplate = `
18
14
  }
19
15
  }
20
16
  \`\`\`
21
-
22
17
  4. Save the configuration file. You may need to restart Windsurf to see the changes.
23
-
24
18
  5. You can verify the connection by opening the composer (\`Cmd/Ctrl + L\`) in **code mode** and asking a question.
25
19
  `;
@@ -48,6 +48,7 @@ interface SidePaneProps {
48
48
  subAgentExternalAgentConfigLookup: SubAgentExternalAgentConfigLookup;
49
49
  subAgentTeamAgentConfigLookup: SubAgentTeamAgentConfigLookup;
50
50
  credentialLookup: Record<string, Credential>;
51
+ disabled?: boolean;
51
52
  }
52
53
 
53
54
  export function SidePane({
@@ -61,6 +62,7 @@ export function SidePane({
61
62
  subAgentExternalAgentConfigLookup,
62
63
  subAgentTeamAgentConfigLookup,
63
64
  credentialLookup,
65
+ disabled = false,
64
66
  }: SidePaneProps) {
65
67
  const selectedNode = useNodesData(selectedNodeId || '');
66
68
  const edges = useEdges();
@@ -206,7 +208,11 @@ export function SidePane({
206
208
  </div>
207
209
  <SidePaneLayout.CloseButton onClick={onClose} />
208
210
  </SidePaneLayout.Header>
209
- <SidePaneLayout.Content>{editorContent}</SidePaneLayout.Content>
211
+ <SidePaneLayout.Content>
212
+ <fieldset disabled={disabled} className="contents">
213
+ {editorContent}
214
+ </fieldset>
215
+ </SidePaneLayout.Content>
210
216
  </SidePaneLayout.Root>
211
217
  );
212
218
  }
@@ -78,7 +78,10 @@ export function ExpandableField({
78
78
  <Dialog open={open} onOpenChange={onOpenChange}>
79
79
  <div className="space-y-2">{content}</div>
80
80
 
81
- <DialogContent className="!max-w-none h-screen w-screen max-h-screen p-0 gap-0 border-0 rounded-none">
81
+ <DialogContent
82
+ size="fullscreen"
83
+ className="!max-w-none h-screen w-screen max-h-screen p-0 gap-0 border-0 rounded-none"
84
+ >
82
85
  <DialogTitle className="sr-only">{label}</DialogTitle>
83
86
  <DialogDescription className="sr-only">{`${label} Editor`}</DialogDescription>
84
87
  <div className="flex flex-col w-full px-8 pb-8 pt-12 mx-auto max-w-7xl min-w-0 gap-2">
@@ -19,7 +19,6 @@ import type { Credential } from '@/lib/api/credentials';
19
19
  import { createMCPTool, updateMCPTool } from '@/lib/api/tools';
20
20
  import type { MCPTool } from '@/lib/types/tools';
21
21
  import { generateId } from '@/lib/utils/id-utils';
22
- import { createMcpServerNameWithScopeSuffix } from '../selection/mcp-server-selection';
23
22
  import { ActiveToolsSelector } from './active-tools-selector';
24
23
  import { CredentialScopeEnum, type MCPToolFormData, mcpToolSchema } from './validation';
25
24
 
@@ -88,10 +87,7 @@ export function MCPServerForm({
88
87
 
89
88
  const onSubmit = async (data: MCPToolFormData) => {
90
89
  try {
91
- const mcpServerName =
92
- mode === 'create'
93
- ? createMcpServerNameWithScopeSuffix(data.name, data.credentialScope)
94
- : data.name;
90
+ const mcpServerName = data.name;
95
91
  const isUserScoped = data.credentialScope === CredentialScopeEnum.user;
96
92
 
97
93
  // For user-scoped in CREATE mode: skip OAuth (users connect later from detail page)
@@ -20,13 +20,6 @@ import { generateId } from '@/lib/utils/id-utils';
20
20
  import { PrebuiltServersGrid } from './prebuilt-servers-grid';
21
21
  import { ScopeSelectionDialog } from './scope-selection-dialog';
22
22
 
23
- export function createMcpServerNameWithScopeSuffix(
24
- serverName: string,
25
- scope: 'project' | 'user'
26
- ): string {
27
- return `${serverName} (${scope}-scoped)`;
28
- }
29
-
30
23
  /**
31
24
  * Remove user_id from Composio URLs before storing in DB.
32
25
  * user_id is ALWAYS injected at discovery/runtime based on scope:
@@ -79,7 +72,7 @@ export function MCPServerSelection({ credentials, tenantId, projectId }: MCPServ
79
72
  setLoadingServerId(server.id);
80
73
  setPendingServer(null);
81
74
 
82
- const mcpServerName = createMcpServerNameWithScopeSuffix(server.name, scope);
75
+ const mcpServerName = server.name;
83
76
  const serverUrl = removeComposioUserId(server.url);
84
77
 
85
78
  try {
@@ -30,7 +30,7 @@ function DialogOverlay({
30
30
  <DialogPrimitive.Overlay
31
31
  data-slot="dialog-overlay"
32
32
  className={cn(
33
- 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50',
33
+ 'data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 fixed inset-0 z-50 bg-black/50 backdrop-blur-xs',
34
34
  className
35
35
  )}
36
36
  {...props}
@@ -81,7 +81,7 @@ function DialogContent({
81
81
  }) {
82
82
  return (
83
83
  <DialogPortal data-slot="dialog-portal">
84
- <DialogOverlay />
84
+ {size !== 'fullscreen' && <DialogOverlay />}
85
85
  <DialogPrimitive.Content
86
86
  data-slot="dialog-content"
87
87
  className={cn(dialogContentVariants({ variant, position, size, className }), className)}
@@ -147,7 +147,7 @@ describe('tool-approval-mapper', () => {
147
147
  mockMakeManagementApiRequest.mockResolvedValue(mockResponse);
148
148
 
149
149
  const result = await fetchCurrentEntityState({
150
- toolName: 'inkeep_manage_update_sub_agent',
150
+ toolName: 'sub-agent-update-subagent',
151
151
  input: {
152
152
  request: {
153
153
  id: 'test-sub-agent',
@@ -178,7 +178,7 @@ describe('tool-approval-mapper', () => {
178
178
  mockMakeManagementApiRequest.mockResolvedValue(mockResponse);
179
179
 
180
180
  const result = await fetchCurrentEntityState({
181
- toolName: 'inkeep_manage_update_agent',
181
+ toolName: 'agents-update-agent',
182
182
  input: {
183
183
  request: {
184
184
  agentId: 'test-agent',
@@ -192,14 +192,14 @@ describe('tool-approval-mapper', () => {
192
192
 
193
193
  expect(result).toEqual(mockResponse.data);
194
194
  expect(mockMakeManagementApiRequest).toHaveBeenCalledWith(
195
- 'tenants/default/projects/test-project/agent/test-agent',
195
+ 'tenants/default/projects/test-project/agents/test-agent',
196
196
  { method: 'GET' }
197
197
  );
198
198
  });
199
199
 
200
200
  it('should return empty object for create operations', async () => {
201
201
  const result = await fetchCurrentEntityState({
202
- toolName: 'inkeep_manage_create_sub_agent',
202
+ toolName: 'sub-agent-create-subagent',
203
203
  input: {
204
204
  request: {
205
205
  tenantId: 'default',
@@ -216,7 +216,7 @@ describe('tool-approval-mapper', () => {
216
216
 
217
217
  it('should return null for non-update/create/delete operations', async () => {
218
218
  const result = await fetchCurrentEntityState({
219
- toolName: 'inkeep_manage_get_sub_agent',
219
+ toolName: 'sub-agent-get-subagent-by-id',
220
220
  input: {
221
221
  request: {
222
222
  id: 'test-sub-agent',
@@ -236,7 +236,7 @@ describe('tool-approval-mapper', () => {
236
236
  mockMakeManagementApiRequest.mockRejectedValue(new Error('API Error'));
237
237
 
238
238
  const result = await fetchCurrentEntityState({
239
- toolName: 'inkeep_manage_update_sub_agent',
239
+ toolName: 'sub-agent-update-subagent',
240
240
  input: {
241
241
  request: {
242
242
  id: 'test-sub-agent',
@@ -254,7 +254,7 @@ describe('tool-approval-mapper', () => {
254
254
 
255
255
  it('should return null when entity ID cannot be extracted', async () => {
256
256
  const result = await fetchCurrentEntityState({
257
- toolName: 'inkeep_manage_update_sub_agent',
257
+ toolName: 'sub-agent-update-subagent',
258
258
  input: {
259
259
  request: {
260
260
  tenantId: 'default',
@@ -280,7 +280,7 @@ describe('tool-approval-mapper', () => {
280
280
  mockMakeManagementApiRequest.mockResolvedValue(mockResponse);
281
281
 
282
282
  const result = await fetchCurrentEntityState({
283
- toolName: 'inkeep_manage_update_project',
283
+ toolName: 'projects-update-project',
284
284
  input: {
285
285
  request: {
286
286
  id: 'test-project',
@@ -310,7 +310,7 @@ describe('tool-approval-mapper', () => {
310
310
  mockMakeManagementApiRequest.mockResolvedValue(mockResponse);
311
311
 
312
312
  const result = await fetchCurrentEntityState({
313
- toolName: 'inkeep_manage_update_tool',
313
+ toolName: 'tools-update-tool',
314
314
  input: {
315
315
  request: {
316
316
  toolId: 'test-tool',
@@ -339,7 +339,7 @@ describe('tool-approval-mapper', () => {
339
339
  mockMakeManagementApiRequest.mockResolvedValue(mockResponse);
340
340
 
341
341
  const result = await fetchCurrentEntityState({
342
- toolName: 'inkeep_manage_update_sub_agent_relation',
342
+ toolName: 'sub-agent-relations-update-sub-agent-relation',
343
343
  input: {
344
344
  request: {
345
345
  id: 'test-relation',
@@ -40,7 +40,7 @@ interface FetchToolApprovalDiffParams {
40
40
  }
41
41
 
42
42
  function parseToolName(toolName: string): ToolMetadata {
43
- const parts = toolName.split('_');
43
+ const parts = toolName.split('-');
44
44
 
45
45
  const actions = ['create', 'update', 'delete', 'get', 'list'];
46
46
  const actionIndex = parts.findIndex((part) => actions.includes(part));
@@ -49,15 +49,10 @@ function parseToolName(toolName: string): ToolMetadata {
49
49
  throw new Error(`Unable to parse tool name: ${toolName}`);
50
50
  }
51
51
 
52
- // New format: inkeep_manage_<action>_<entity_parts>
53
- // Entity parts after action are joined with dashes to match API path conventions
54
- const entityParts = parts.slice(actionIndex + 1);
55
- const entity = entityParts.join('-');
56
-
57
52
  return {
58
- resource: entity,
53
+ resource: parts.slice(0, actionIndex).join('-'),
59
54
  action: parts[actionIndex],
60
- entity: entity,
55
+ entity: parts.slice(actionIndex + 1).join('-'),
61
56
  };
62
57
  }
63
58
 
@@ -151,7 +151,7 @@ describe('tool-approval-mapper', () => {
151
151
  mockMakeManagementApiRequest.mockResolvedValue(mockResponse);
152
152
 
153
153
  const result = await fetchCurrentEntityState({
154
- toolName: 'inkeep_manage_update_sub_agent',
154
+ toolName: 'sub-agent-update-subagent',
155
155
  input: {
156
156
  request: {
157
157
  id: 'test-sub-agent',
@@ -182,7 +182,7 @@ describe('tool-approval-mapper', () => {
182
182
  mockMakeManagementApiRequest.mockResolvedValue(mockResponse);
183
183
 
184
184
  const result = await fetchCurrentEntityState({
185
- toolName: 'inkeep_manage_update_agent',
185
+ toolName: 'agents-update-agent',
186
186
  input: {
187
187
  request: {
188
188
  agentId: 'test-agent',
@@ -196,14 +196,14 @@ describe('tool-approval-mapper', () => {
196
196
 
197
197
  expect(result).toEqual(mockResponse.data);
198
198
  expect(mockMakeManagementApiRequest).toHaveBeenCalledWith(
199
- 'tenants/default/projects/test-project/agent/test-agent',
199
+ 'tenants/default/projects/test-project/agents/test-agent',
200
200
  { method: 'GET' }
201
201
  );
202
202
  });
203
203
 
204
204
  it('should return empty object for create operations', async () => {
205
205
  const result = await fetchCurrentEntityState({
206
- toolName: 'inkeep_manage_create_sub_agent',
206
+ toolName: 'sub-agent-create-subagent',
207
207
  input: {
208
208
  request: {
209
209
  tenantId: 'default',
@@ -220,7 +220,7 @@ describe('tool-approval-mapper', () => {
220
220
 
221
221
  it('should return null for non-update/create/delete operations', async () => {
222
222
  const result = await fetchCurrentEntityState({
223
- toolName: 'inkeep_manage_get_sub_agent',
223
+ toolName: 'sub-agent-get-subagent-by-id',
224
224
  input: {
225
225
  request: {
226
226
  id: 'test-sub-agent',
@@ -240,7 +240,7 @@ describe('tool-approval-mapper', () => {
240
240
  mockMakeManagementApiRequest.mockRejectedValue(new Error('API Error'));
241
241
 
242
242
  const result = await fetchCurrentEntityState({
243
- toolName: 'inkeep_manage_update_sub_agent',
243
+ toolName: 'sub-agent-update-subagent',
244
244
  input: {
245
245
  request: {
246
246
  id: 'test-sub-agent',
@@ -258,7 +258,7 @@ describe('tool-approval-mapper', () => {
258
258
 
259
259
  it('should return null when entity ID cannot be extracted', async () => {
260
260
  const result = await fetchCurrentEntityState({
261
- toolName: 'inkeep_manage_update_sub_agent',
261
+ toolName: 'sub-agent-update-subagent',
262
262
  input: {
263
263
  request: {
264
264
  tenantId: 'default',
@@ -284,7 +284,7 @@ describe('tool-approval-mapper', () => {
284
284
  mockMakeManagementApiRequest.mockResolvedValue(mockResponse);
285
285
 
286
286
  const result = await fetchCurrentEntityState({
287
- toolName: 'inkeep_manage_update_project',
287
+ toolName: 'projects-update-project',
288
288
  input: {
289
289
  request: {
290
290
  id: 'test-project',
@@ -314,7 +314,7 @@ describe('tool-approval-mapper', () => {
314
314
  mockMakeManagementApiRequest.mockResolvedValue(mockResponse);
315
315
 
316
316
  const result = await fetchCurrentEntityState({
317
- toolName: 'inkeep_manage_update_tool',
317
+ toolName: 'tools-update-tool',
318
318
  input: {
319
319
  request: {
320
320
  toolId: 'test-tool',
@@ -343,7 +343,7 @@ describe('tool-approval-mapper', () => {
343
343
  mockMakeManagementApiRequest.mockResolvedValue(mockResponse);
344
344
 
345
345
  const result = await fetchCurrentEntityState({
346
- toolName: 'inkeep_manage_update_sub_agent_relation',
346
+ toolName: 'sub-agent-relations-update-sub-agent-relation',
347
347
  input: {
348
348
  request: {
349
349
  id: 'test-relation',
@@ -1 +0,0 @@
1
- "use strict";exports.id=428,exports.ids=[428],exports.modules={597:(a,b,c)=>{c.d(b,{bq:()=>l,eb:()=>n,gC:()=>m,l6:()=>j,yv:()=>k});var d=c(11918),e=c(84759),f=c(56417),g=c(71935),h=c(74520),i=c(30182);function j({...a}){return(0,d.jsx)(e.bL,{"data-slot":"select",...a})}function k({...a}){return(0,d.jsx)(e.WT,{"data-slot":"select-value",...a})}function l({className:a,size:b="default",children:c,...g}){return(0,d.jsxs)(e.l9,{"data-slot":"select-trigger","data-size":b,className:(0,i.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 font-normal normal-case",a),...g,children:[c,(0,d.jsx)(e.In,{asChild:!0,children:(0,d.jsx)(f.A,{className:"size-4 opacity-50"})})]})}function m({className:a,children:b,position:c="popper",...f}){return(0,d.jsx)(e.ZL,{children:(0,d.jsxs)(e.UC,{"data-slot":"select-content",className:(0,i.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto scrollbar-thin scrollbar-thumb-muted-foreground/30 dark:scrollbar-thumb-muted-foreground/50 scrollbar-track-transparent rounded-md border shadow-md","popper"===c&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:c,...f,children:[(0,d.jsx)(o,{}),(0,d.jsx)(e.LM,{className:(0,i.cn)("p-1","popper"===c&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:b}),(0,d.jsx)(p,{})]})})}function n({className:a,children:b,...c}){return(0,d.jsxs)(e.q7,{"data-slot":"select-item",className:(0,i.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",a),...c,children:[(0,d.jsx)("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,d.jsx)(e.VF,{children:(0,d.jsx)(g.A,{className:"size-4"})})}),(0,d.jsx)(e.p4,{children:b})]})}function o({className:a,...b}){return(0,d.jsx)(e.PP,{"data-slot":"select-scroll-up-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,d.jsx)(h.A,{className:"size-4"})})}function p({className:a,...b}){return(0,d.jsx)(e.wn,{"data-slot":"select-scroll-down-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,d.jsx)(f.A,{className:"size-4"})})}},20299:(a,b,c)=>{c.d(b,{BT:()=>i,Wu:()=>j,ZB:()=>h,Zp:()=>f,aR:()=>g,wL:()=>k});var d=c(11918),e=c(30182);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-description",className:(0,e.cn)("text-muted-foreground text-sm",a),...b})}function j({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}function k({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-footer",className:(0,e.cn)("flex items-center px-6 [.border-t]:pt-6",a),...b})}},27476:(a,b,c)=>{c.d(b,{H:()=>p});var d=c(96314),e=c(85372),f=c(38131),g=c(62681);let h=a=>Math.floor(a/1e6),i=f.union([f.string(),f.number(),f.boolean()]),j=a=>{try{if("true"===a)return i.parse(!0);if("false"===a)return i.parse(!1);let b=/^-?\d+(\.\d+)?$/.test(a)?Number(a):a;if("number"==typeof b)return i.parse(b);return i.parse(a)}catch(b){return console.warn(`Failed to parse filter value "${a}":`,b),i.parse(a)}},k=a=>parseInt(a.values?.[0]?.value??"0",10)||0,l=a=>Number(a.values?.[0]?.value??0)||0,m=(a,b)=>{let c=new Date(a);c.setHours(0,0,0,0);let d=new Date(b);d.setHours(0,0,0,0);let e=[];for(let a=new Date(c);a<=d;a.setDate(a.getDate()+1))e.push(`${a.getFullYear()}-${String(a.getMonth()+1).padStart(2,"0")}-${String(a.getDate()).padStart(2,"0")}`);return e};(0,e.Ay)(d.A,{retries:3,retryDelay:e.Ay.exponentialDelay});class n{setTenantId(a){this.tenantId=a}async makeRequest(a,b){if(!this.tenantId)throw Error("TenantId not set. Call setTenantId() before making requests.");let c={...a,...b&&{projectId:b}};return(await d.A.post(`/api/signoz?tenantId=${this.tenantId}`,c,{timeout:3e4,headers:{"Content-Type":"application/json"},withCredentials:!0})).data}extractSeries(a,b){return a?.data?.result?.find(a=>a?.queryName===b)?.series??[]}async getConversationStats(a,b,c,d,e,f,g){try{return await this.getConversationStatsPaginated(a,b,c,d,e,f,g)}catch(a){return console.error("getConversationStats error:",a),{data:[],pagination:{page:e.page,limit:e.limit,total:0,totalPages:0,hasNextPage:!1,hasPreviousPage:!1}}}}async getConversationStatsPaginated(a,b,c,d,e,f,i){let{conversationIds:j,total:k}=await this.getPaginatedConversationIds(a,b,c,d,e,f,i);if(0===j.length)return{data:[],pagination:{page:e.page,limit:e.limit,total:k,totalPages:Math.ceil(k/e.limit),hasNextPage:e.page<Math.ceil(k/e.limit),hasPreviousPage:e.page>1}};let m=this.buildCombinedPayload(a,b,c,d,i,j),n=await this.makeRequest(m),o=this.extractSeries(n,g.XQ.TOOLS),p=this.extractSeries(n,g.XQ.TRANSFERS),q=this.extractSeries(n,g.XQ.DELEGATIONS),r=this.extractSeries(n,g.XQ.AI_CALLS),s=this.extractSeries(n,g.XQ.LAST_ACTIVITY),t=this.extractSeries(n,g.XQ.CONVERSATION_METADATA),u=this.extractSeries(n,g.XQ.SPANS_WITH_ERRORS),v=this.extractSeries(n,g.XQ.USER_MESSAGES),w=new Map;for(let a of t){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&w.set(b,{tenantId:a.labels?.[g.SH.TENANT_ID]??g.PC,agentId:a.labels?.[g.SH.AGENT_ID]??g.PC,agentName:a.labels?.[g.SH.AGENT_NAME]??g.PC})}let x=new Map;for(let a of s){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&x.set(b,l(a))}let y=new Map,z=new Map;for(let a of v){let b=a.labels?.[g.SH.CONVERSATION_ID],c=a.labels?.[g.SH.MESSAGE_CONTENT],d=l(a);b&&c&&(z.get(b)??z.set(b,[]).get(b))?.push({t:d,c:c})}for(let[a,b]of z){b.sort((a,b)=>a.t-b.t);let c=b[0];if(c){let b=c.c.length>100?`${c.c.slice(0,100)}...`:c.c;y.set(a,{content:b,timestamp:h(c.t)})}}let A=new Map(this.toConversationStats(o,p,q,r,w,u,y).map(a=>[a.conversationId,a])),B=j.map(a=>A.get(a)).filter(a=>void 0!==a);return B.sort((a,b)=>((a=0,b=0)=>b-a)(x.get(a.conversationId),x.get(b.conversationId))),{data:B,pagination:{page:e.page,limit:e.limit,total:k,totalPages:Math.ceil(k/e.limit),hasNextPage:e.page<Math.ceil(k/e.limit),hasPreviousPage:e.page>1}}}async getPaginatedConversationIds(a,b,c,d,e,f,h){let i=this.buildFilteredConversationIdsPayload(a,b,c,d,h,!!f?.trim()),j=await this.makeRequest(i),k=this.extractSeries(j,g.XQ.LAST_ACTIVITY),m=new Map;for(let a of k){let b=a.labels?.[g.SH.CONVERSATION_ID];b&&m.set(b,l(a))}let n=Array.from(m.keys());if(c?.spanName||c?.attributes?.length){let a=new Set(this.extractSeries(j,g.XQ.FILTERED_CONVERSATIONS).map(a=>a.labels?.[g.SH.CONVERSATION_ID]).filter(Boolean));n=n.filter(b=>a.has(b))}if(f?.trim()){let a=this.extractSeries(j,g.XQ.CONVERSATION_METADATA),b=new Map;for(let c of a){let a=c.labels?.[g.SH.CONVERSATION_ID],d=c.labels?.[g.SH.AGENT_ID];a&&b.set(a,{agentId:d??"",conversationId:a})}let c=this.extractSeries(j,g.XQ.USER_MESSAGES),d=new Map;for(let a of c){let b=a.labels?.[g.SH.CONVERSATION_ID],c=a.labels?.[g.SH.MESSAGE_CONTENT];b&&c&&(d.has(b)||d.set(b,c))}let e=f.toLowerCase().trim();n=n.filter(a=>{let c=b.get(a),f=d.get(a);return f?.toLowerCase().includes(e)||a.toLowerCase().includes(e)||c?.agentId.toLowerCase().includes(e)})}n.sort((a,b)=>{let c=m.get(a)??0;return(m.get(b)??0)-c});let o=n.length,p=(e.page-1)*e.limit;return{conversationIds:n.slice(p,p+e.limit),total:o}}async getAICallsBySubAgent(a,b,c,d,e){try{let f=await this.makeRequest(this.buildAgentModelBreakdownPayload(a,b,e)),h=this.extractSeries(f,"agentModelCalls"),i=new Map;for(let a of h){let b=a.labels?.[g.SH.AI_TELEMETRY_FUNCTION_ID]||g.PC,e=a.labels?.[g.SH.AGENT_ID]||g.PC,f=a.labels?.[g.SH.AI_MODEL_ID]||g.PC,h=k(a);if(!h||c&&"all"!==c&&e!==c||d&&"all"!==d&&f!==d)continue;let j=`${b}::${e}::${f}`,l=i.get(j)||{subAgentId:b,agentId:e,modelId:f,totalCalls:0};l.totalCalls+=h,i.set(j,l)}return[...i.values()].sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getAICallsByAgent error:",a),[]}}async getAICallsByModel(a,b,c,d){try{let e=await this.makeRequest(this.buildModelBreakdownPayload(a,b,d)),f=this.extractSeries(e,"modelCalls"),h=new Map;for(let a of f){let b=a.labels?.[g.SH.AI_MODEL_ID]||g.PC,d=a.labels?.[g.SH.AGENT_ID]||g.PC,e=k(a);e&&(c&&"all"!==c&&d!==c||h.set(b,(h.get(b)||0)+e))}return[...h].map(([a,b])=>({modelId:a,totalCalls:b})).sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getAICallsByModel error:",a),[]}}async getUniqueAgents(a,b,c){try{let d=await this.makeRequest(this.buildUniqueAgentsPayload(a,b,c)),e=this.extractSeries(d,"uniqueAgents").map(a=>a.labels?.[g.SH.AGENT_ID]).filter(a=>!!a&&a!==g.PC).sort();return[...new Set(e)]}catch(a){return console.error("getUniqueAgents error:",a),[]}}async getUniqueModels(a,b,c){try{let d=await this.makeRequest(this.buildUniqueModelsPayload(a,b,c)),e=this.extractSeries(d,"uniqueModels").map(a=>a.labels?.[g.SH.AI_MODEL_ID]).filter(a=>!!a&&a!==g.PC).sort();return[...new Set(e)]}catch(a){return console.error("getUniqueModels error:",a),[]}}async getToolCallsByTool(a,b,c,d){try{let e=await this.makeRequest(this.buildToolBreakdownPayload(a,b,d)),f=this.extractSeries(e,"toolCalls"),h=this.extractSeries(e,"toolErrors"),i=new Map;for(let a of h){let b=a.labels?.[g.SH.AI_TOOL_CALL_NAME]||g.PC,c=k(a);i.set(b,(i.get(b)||0)+c)}let j=new Map;for(let a of f){let b=a.labels?.[g.SH.AI_TOOL_CALL_NAME]||g.PC,d=a.labels?.[g.SH.AI_TOOL_CALL_MCP_SERVER_NAME]||g.PC,e=a.labels?.[g.SH.AI_TOOL_CALL_MCP_SERVER_ID]||g.PC,f=k(a);if(!f||c&&"all"!==c&&d!==c)continue;let h=`${b}::${d}::${e}`,l=j.get(h)||{toolName:b,serverName:d,serverId:e,totalCalls:0,errorCount:0,errorRate:0};l.totalCalls+=f,l.errorCount=i.get(b)||0,l.errorRate=l.totalCalls>0?l.errorCount/l.totalCalls*100:0,j.set(h,l)}return[...j.values()].sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getToolCallsByTool error:",a),[]}}async getToolCallsByServer(a,b,c){try{let d=await this.makeRequest(this.buildToolServerBreakdownPayload(a,b,c)),e=this.extractSeries(d,"serverCalls"),f=this.extractSeries(d,"serverErrors"),h=new Map;for(let a of f){let b=a.labels?.[g.SH.AI_TOOL_CALL_MCP_SERVER_NAME]||g.PC,c=k(a);h.set(b,(h.get(b)||0)+c)}let i=new Map;for(let a of e){let b=a.labels?.[g.SH.AI_TOOL_CALL_MCP_SERVER_NAME]||g.PC,c=k(a);if(!c)continue;let d=i.get(b)||{totalCalls:0,errorCount:0};d.totalCalls+=c,d.errorCount=h.get(b)||0,i.set(b,d)}return[...i].map(([a,b])=>({serverName:a,totalCalls:b.totalCalls,errorCount:b.errorCount,errorRate:b.totalCalls>0?b.errorCount/b.totalCalls*100:0})).sort((a,b)=>b.totalCalls-a.totalCalls)}catch(a){return console.error("getToolCallsByServer error:",a),[]}}async getUniqueToolServers(a,b,c){try{let d=await this.makeRequest(this.buildUniqueToolServersPayload(a,b,c)),e=this.extractSeries(d,"uniqueServers"),f=new Map;for(let a of e){let b=a.labels?.[g.SH.AI_TOOL_CALL_MCP_SERVER_NAME],c=a.labels?.[g.SH.AI_TOOL_CALL_MCP_SERVER_ID]||"";b&&b!==g.PC&&f.set(b,{name:b,id:c})}return[...f.values()].sort((a,b)=>a.name.localeCompare(b.name))}catch(a){return console.error("getUniqueToolServers error:",a),[]}}async getUniqueToolNames(a,b,c){try{let d=await this.makeRequest(this.buildUniqueToolNamesPayload(a,b,c)),e=this.extractSeries(d,"uniqueTools").map(a=>a.labels?.[g.SH.AI_TOOL_CALL_NAME]).filter(a=>!!a&&a!==g.PC).sort();return[...new Set(e)]}catch(a){return console.error("getUniqueToolNames error:",a),[]}}async getConversationsPerDay(a,b,c,d){try{let e=await this.makeRequest(this.buildConversationMetadataPayload(a,b,c,d)),f=this.extractSeries(e,"conversationMetadata").length?this.extractSeries(await this.makeRequest(this.buildConversationActivityPayload(a,b,c,d)),"lastActivity"):[],g=new Map;for(let a of f){let b=h(l(a));if(!b)continue;let c=new Date(b),d=`${c.getFullYear()}-${String(c.getMonth()+1).padStart(2,"0")}-${String(c.getDate()).padStart(2,"0")}`;g.set(d,(g.get(d)||0)+1)}return m(a,b).map(a=>({date:a,count:g.get(a)||0}))}catch(c){return console.error("getConversationsPerDay error:",c),m(a,b).map(a=>({date:a,count:0}))}}async getAggregateStats(a,b,c,d,e){try{let f;if(c?.spanName||c?.attributes?.length){let e=this.buildFilteredConversationsPayload(a,b,c,d),h=await this.makeRequest(e);if(f=this.extractSeries(h,"filteredConversations").map(a=>a.labels?.[g.SH.CONVERSATION_ID]).filter(Boolean),0===f.length)return{totalToolCalls:0,totalTransfers:0,totalDelegations:0,totalConversations:0,totalAICalls:0}}let h=this.buildAggregateBadgesPayload(a,b,d,e,f),i=await this.makeRequest(h),j=this.extractSeries(i,"totalToolCalls"),l=this.extractSeries(i,"totalTransfers"),m=this.extractSeries(i,"totalDelegations"),n=this.extractSeries(i,"totalAICalls"),o=this.extractSeries(i,"totalConversations");return{totalToolCalls:k(j[0]||{values:[{value:"0"}]}),totalTransfers:k(l[0]||{values:[{value:"0"}]}),totalDelegations:k(m[0]||{values:[{value:"0"}]}),totalConversations:f?f.length:k(o[0]||{values:[{value:"0"}]}),totalAICalls:k(n[0]||{values:[{value:"0"}]})}}catch(a){return console.error("getAggregateStats error:",a),{totalToolCalls:0,totalTransfers:0,totalDelegations:0,totalConversations:0,totalAICalls:0}}}async getAvailableSpanNames(a,b,c,d){try{let e=[{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EXISTS,value:""}];c&&"all"!==c&&e.push({key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}),d&&e.push({key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d});let f={start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.LIST,builderQueries:{spanNames:{dataSource:g.YL.TRACES,queryName:g.XQ.SPAN_NAMES,aggregateOperator:g.qf.NOOP,aggregateAttribute:{},filters:{op:g.we.AND,items:e},selectColumns:[{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.SPAN_NAMES,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,stepInterval:g.yZ.STEP_INTERVAL,limit:g.yZ.LIMIT_UNLIMITED,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],groupBy:g.yZ.EMPTY_GROUP_BY,offset:g.yZ.OFFSET}}},dataSource:g.YL.TRACES,projectId:d},h=await this.makeRequest(f),i=h?.data?.result?.find(a=>a?.queryName==="spanNames")?.list??[],j=new Set;for(let a of i){let b=a?.data?.name??a?.name;b&&j.add(b)}return[...j].sort()}catch(a){return console.error("getAvailableSpanNames error:",a),[]}}toConversationStats(a,b,c,d,e,f,h){let i=new Map,j=a=>{let b=i.get(a);if(b)return b;let c={totalToolCalls:0,toolsUsed:new Map,transfers:new Map,totalTransfers:0,delegations:new Map,totalDelegations:0,totalAICalls:0,totalErrors:0};return i.set(a,c),c};for(let b of a){let a=b.labels?.[g.SH.CONVERSATION_ID];if(!a)continue;let c=b.labels?.[g.SH.AI_TOOL_CALL_NAME];if(!c)continue;let d=k(b);if(!d)continue;let e=b.labels?.[g.SH.MCP_TOOL_DESCRIPTION]||"",f=j(a);f.totalToolCalls+=d;let h=f.toolsUsed.get(c)||{name:c,calls:0,description:e};h.calls+=d,f.toolsUsed.set(c,h)}for(let a of b){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=a.labels?.[g.SH.TRANSFER_FROM_SUB_AGENT_ID],d=a.labels?.[g.SH.TRANSFER_TO_SUB_AGENT_ID],e=k(a);if(!c||!d||!e)continue;let f=j(b);f.totalTransfers+=e;let h=`${c}→${d}`,i=f.transfers.get(h)||{from:c,to:d,count:0};i.count+=e,f.transfers.set(h,i)}for(let a of c){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=a.labels?.[g.SH.DELEGATION_FROM_SUB_AGENT_ID],d=a.labels?.[g.SH.DELEGATION_TO_SUB_AGENT_ID],e=k(a);if(!c||!d||!e)continue;let f=j(b);f.totalDelegations+=e;let h=`${c}→${d}`,i=f.delegations.get(h)||{from:c,to:d,count:0};i.count+=e,f.delegations.set(h,i)}for(let a of d){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=k(a);c&&(j(b).totalAICalls+=c)}let l=["execution_handler.execute","agent.load_tools","context.handle_context_resolution","context.resolve","agent.generate","context-resolver.resolve_single_fetch_definition","agent_session.generate_structured_update","agent_session.process_artifact","agent_session.generate_artifact_metadata","response.format_object_response","response.format_response","ai.toolCall"];for(let a of f){let b=a.labels?.[g.SH.CONVERSATION_ID];if(!b)continue;let c=a.labels?.[g.SH.NAME]||"",d=k(a);d&&l.includes(c)&&(j(b).totalErrors+=d)}let m=[];for(let a of new Set([...i.keys(),...e.keys()])){let b=i.get(a)||j(a),c=e.get(a)||{tenantId:g.PC,agentId:g.PC,agentName:g.PC};m.push({conversationId:a,tenantId:c.tenantId,agentId:c.agentId,agentName:c.agentName||"",totalToolCalls:b.totalToolCalls,toolsUsed:[...b.toolsUsed.values()],transfers:[...b.transfers.values()],totalTransfers:b.totalTransfers,delegations:[...b.delegations.values()],totalDelegations:b.totalDelegations,totalAICalls:b.totalAICalls,totalErrors:b.totalErrors,hasErrors:b.totalErrors>0,firstUserMessage:h.get(a)?.content,startTime:h.get(a)?.timestamp})}return m}buildAgentModelBreakdownPayload(a,b,c){return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{agentModelCalls:{dataSource:g.YL.TRACES,queryName:g.XQ.AGENT_MODEL_CALLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[{key:{key:g.SH.AI_OPERATION_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.yR.GENERATE_TEXT},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]]},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.AI_TELEMETRY_FUNCTION_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG}],expression:g.XQ.AGENT_MODEL_CALLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:c}}buildModelBreakdownPayload(a,b,c){return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{modelCalls:{dataSource:g.YL.TRACES,queryName:g.XQ.MODEL_CALLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[{key:{key:g.SH.AI_OPERATION_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.yR.GENERATE_TEXT},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]]},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_ID,...g.A3.STRING_TAG}],expression:g.XQ.MODEL_CALLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:c}}buildConversationActivityPayload(a,b,c,d){let e=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c&&"all"!==c?[{key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[],...d?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{lastActivity:{dataSource:g.YL.TRACES,queryName:g.XQ.LAST_ACTIVITY,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:e},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.LAST_ACTIVITY,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:d}}buildConversationMetadataPayload(a,b,c,d){let e=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c&&"all"!==c?[{key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[],...d?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{conversationMetadata:{dataSource:g.YL.TRACES,queryName:g.XQ.CONVERSATION_METADATA,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:e},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_NAME,...g.A3.STRING_TAG}],expression:g.XQ.CONVERSATION_METADATA,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:d}}buildFilteredConversationIdsPayload(a,b,c,d,e,f){let h=()=>{let a=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}];return e&&"all"!==e&&a.push({key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:e}),d&&a.push({key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}),a},i={lastActivity:{dataSource:g.YL.TRACES,queryName:g.XQ.LAST_ACTIVITY,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:h()},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.LAST_ACTIVITY,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}};if(c?.spanName||c?.attributes?.length){let a=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}];for(let b of(c.spanName&&a.push({key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:c.spanName}),c.attributes??[])){let c=b.operator??g.we.EQUALS,d=j(b.value),e=g.hL.STRING;if("boolean"==typeof d?e=g.hL.BOOL:"number"==typeof d&&(e=Number.isInteger(d)?g.hL.INT64:g.hL.FLOAT64),c===g.we.EXISTS||c===g.we.NOT_EXISTS){a.push({key:{key:b.key,...g.A3.STRING_TAG},op:c,value:""});continue}if(c!==g.we.LIKE&&c!==g.we.NOT_LIKE||"string"!=typeof d||d.includes("%")||(d=`%${d}%`),(e===g.hL.INT64||e===g.hL.FLOAT64)&&c===g.we.EQUALS){let c=e===g.hL.INT64?g.A3.INT64_TAG:g.A3.FLOAT64_TAG;a.push({key:{key:b.key,...c},op:g.we.GREATER_THAN_OR_EQUAL,value:d}),a.push({key:{key:b.key,...c},op:g.we.LESS_THAN_OR_EQUAL,value:d})}else{let f=e===g.hL.STRING?g.A3.STRING_TAG:e===g.hL.INT64?g.A3.INT64_TAG:e===g.hL.FLOAT64?g.A3.FLOAT64_TAG:g.A3.BOOL_TAG;a.push({key:{key:b.key,...f},op:c,value:d})}}d&&a.push({key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}),i.filteredConversations={dataSource:g.YL.TRACES,queryName:g.XQ.FILTERED_CONVERSATIONS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:a},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.FILTERED_CONVERSATIONS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}if(f){let a=h();a.push({key:{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}),i.conversationMetadata={dataSource:g.YL.TRACES,queryName:g.XQ.CONVERSATION_METADATA,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:a},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_NAME,...g.A3.STRING_TAG}],expression:g.XQ.CONVERSATION_METADATA,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED};let b=h();b.push({key:{key:g.SH.MESSAGE_CONTENT,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}),i.userMessages={dataSource:g.YL.TRACES,queryName:g.XQ.USER_MESSAGES,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:b},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.MESSAGE_CONTENT,...g.A3.STRING_TAG}],expression:g.XQ.USER_MESSAGES,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:i},dataSource:g.YL.TRACES,projectId:d}}buildFilteredConversationsPayload(a,b,c,d){let e=[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}];for(let a of(c.spanName&&e.push({key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:c.spanName}),c.attributes??[])){let b=a.operator??g.we.EQUALS,c=j(a.value),d="string";if("boolean"==typeof c?d="bool":"number"==typeof c&&(d=Number.isInteger(c)?"int64":"float64"),b===g.we.EXISTS||b===g.we.NOT_EXISTS){e.push({key:{key:a.key,...g.A3.STRING_TAG},op:b,value:""});continue}if(b!==g.we.LIKE&&b!==g.we.NOT_LIKE||"string"!=typeof c||c.includes("%")||(c=`%${c}%`),("int64"===d||"float64"===d)&&b===g.we.EQUALS){let b="int64"===d?g.A3.INT64_TAG:g.A3.FLOAT64_TAG;e.push({key:{key:a.key,...b},op:g.we.GREATER_THAN_OR_EQUAL,value:c}),e.push({key:{key:a.key,...b},op:g.we.LESS_THAN_OR_EQUAL,value:c})}else{let f="string"===d?g.A3.STRING_TAG:"int64"===d?g.A3.INT64_TAG:"float64"===d?g.A3.FLOAT64_TAG:g.A3.BOOL_TAG;e.push({key:{key:a.key,...f},op:b,value:c})}}return d&&e.push({key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}),{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{filteredConversations:{dataSource:g.YL.TRACES,queryName:g.XQ.FILTERED_CONVERSATIONS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:e},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.FILTERED_CONVERSATIONS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:d}}buildAggregateBadgesPayload(a,b,c,d,e){let f,h=(f=[],c&&f.push({key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}),d&&f.push({key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}),f),i=e&&e.length>0?[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.IN,value:e}]:[{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{totalToolCalls:{dataSource:g.YL.TRACES,queryName:"totalToolCalls",aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[...h,{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},...i,{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.MCP}]},groupBy:g.yZ.EMPTY_GROUP_BY,expression:"totalToolCalls",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},totalTransfers:{dataSource:g.YL.TRACES,queryName:"totalTransfers",aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[...h,{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.TRANSFER},...i]},groupBy:g.yZ.EMPTY_GROUP_BY,expression:"totalTransfers",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},totalDelegations:{dataSource:g.YL.TRACES,queryName:"totalDelegations",aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[...h,{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.DELEGATION},...i]},groupBy:g.yZ.EMPTY_GROUP_BY,expression:"totalDelegations",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},totalAICalls:{dataSource:g.YL.TRACES,queryName:"totalAICalls",aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[...h,{key:{key:g.SH.AI_OPERATION_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.yR.GENERATE_TEXT},...i]},groupBy:g.yZ.EMPTY_GROUP_BY,expression:"totalAICalls",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},totalConversations:{dataSource:g.YL.TRACES,queryName:"totalConversations",aggregateOperator:g.qf.COUNT_DISTINCT,aggregateAttribute:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},filters:{op:g.we.AND,items:[...h,...i,{key:{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}]},groupBy:g.yZ.EMPTY_GROUP_BY,expression:"totalConversations",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:c}}buildCombinedPayload(a,b,c,d,e,f){let h=a=>{let b=a;return d&&(b=[...b,{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:d}]),e&&(b=[...b,{key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:e}]),b=f&&f.length>0?[...b,{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.IN,value:f}]:[...b,{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}]};return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{tools:{dataSource:g.YL.TRACES,queryName:g.XQ.TOOLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:h([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.MCP}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.AI_TOOL_CALL_NAME,...g.A3.STRING_TAG}],expression:g.XQ.TOOLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},transfers:{dataSource:g.YL.TRACES,queryName:g.XQ.TRANSFERS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:h([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.TRANSFER}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.TRANSFER_FROM_SUB_AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.TRANSFER_TO_SUB_AGENT_ID,...g.A3.STRING_TAG}],expression:g.XQ.TRANSFERS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},delegations:{dataSource:g.YL.TRACES,queryName:g.XQ.DELEGATIONS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:h([{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.DELEGATION}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.DELEGATION_FROM_SUB_AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.DELEGATION_TO_SUB_AGENT_ID,...g.A3.STRING_TAG}],expression:g.XQ.DELEGATIONS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},conversationMetadata:{dataSource:g.YL.TRACES,queryName:g.XQ.CONVERSATION_METADATA,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:h([{key:{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.TENANT_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_NAME,...g.A3.STRING_TAG}],expression:g.XQ.CONVERSATION_METADATA,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},aiCalls:{dataSource:g.YL.TRACES,queryName:g.XQ.AI_CALLS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:h([{key:{key:g.SH.AI_OPERATION_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.yR.GENERATE_TEXT}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},{key:g.SH.AI_TELEMETRY_FUNCTION_ID,...g.A3.STRING_TAG}],expression:g.XQ.AI_CALLS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},lastActivity:{dataSource:g.YL.TRACES,queryName:g.XQ.LAST_ACTIVITY,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:h([])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG}],expression:g.XQ.LAST_ACTIVITY,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},spansWithErrors:{dataSource:g.YL.TRACES,queryName:g.XQ.SPANS_WITH_ERRORS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:h([{key:{key:g.SH.HAS_ERROR,...g.A3.BOOL_TAG_COLUMN},op:g.we.EQUALS,value:!0}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN}],expression:g.XQ.SPANS_WITH_ERRORS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},userMessages:{dataSource:g.YL.TRACES,queryName:g.XQ.USER_MESSAGES,aggregateOperator:g.qf.MIN,aggregateAttribute:{key:g.SH.TIMESTAMP,...g.A3.INT64_TAG_COLUMN},filters:{op:g.we.AND,items:h([{key:{key:g.SH.MESSAGE_CONTENT,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""}])},groupBy:[{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},{key:g.SH.MESSAGE_CONTENT,...g.A3.STRING_TAG}],expression:g.XQ.USER_MESSAGES,reduceTo:g.U_.MIN,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:d}}buildUniqueAgentsPayload(a,b,c){let d=[{key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AGENT_ID,...g.A3.STRING_TAG},op:g.we.NOT_EQUALS,value:g.PC},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{uniqueAgents:{dataSource:g.YL.TRACES,queryName:g.XQ.UNIQUE_AGENTS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:d},groupBy:[{key:g.SH.AGENT_ID,...g.A3.STRING_TAG}],expression:g.XQ.UNIQUE_AGENTS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.AGENT_ID,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:c}}buildUniqueModelsPayload(a,b,c){let d=[{key:{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG},op:g.we.NOT_EQUALS,value:g.PC},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{uniqueModels:{dataSource:g.YL.TRACES,queryName:g.XQ.UNIQUE_MODELS,aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:d},groupBy:[{key:g.SH.AI_MODEL_ID,...g.A3.STRING_TAG}],expression:g.XQ.UNIQUE_MODELS,reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.AI_MODEL_ID,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:c}}buildToolBreakdownPayload(a,b,c){let d=[{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.MCP},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{toolCalls:{dataSource:g.YL.TRACES,queryName:"toolCalls",aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:d},groupBy:[{key:g.SH.AI_TOOL_CALL_NAME,...g.A3.STRING_TAG},{key:g.SH.AI_TOOL_CALL_MCP_SERVER_NAME,...g.A3.STRING_TAG},{key:g.SH.AI_TOOL_CALL_MCP_SERVER_ID,...g.A3.STRING_TAG}],expression:"toolCalls",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},toolErrors:{dataSource:g.YL.TRACES,queryName:"toolErrors",aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[...d,{key:{key:g.SH.HAS_ERROR,...g.A3.BOOL_TAG_COLUMN},op:g.we.EQUALS,value:!0}]},groupBy:[{key:g.SH.AI_TOOL_CALL_NAME,...g.A3.STRING_TAG}],expression:"toolErrors",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:c}}buildToolServerBreakdownPayload(a,b,c){let d=[{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.MCP},{key:{key:g.SH.CONVERSATION_ID,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{serverCalls:{dataSource:g.YL.TRACES,queryName:"serverCalls",aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:d},groupBy:[{key:g.SH.AI_TOOL_CALL_MCP_SERVER_NAME,...g.A3.STRING_TAG}],expression:"serverCalls",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED},serverErrors:{dataSource:g.YL.TRACES,queryName:"serverErrors",aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:[...d,{key:{key:g.SH.HAS_ERROR,...g.A3.BOOL_TAG_COLUMN},op:g.we.EQUALS,value:!0}]},groupBy:[{key:g.SH.AI_TOOL_CALL_MCP_SERVER_NAME,...g.A3.STRING_TAG}],expression:"serverErrors",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.TIMESTAMP,order:g.SL.DESC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:c}}buildUniqueToolServersPayload(a,b,c){let d=[{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.MCP},{key:{key:g.SH.AI_TOOL_CALL_MCP_SERVER_NAME,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AI_TOOL_CALL_MCP_SERVER_NAME,...g.A3.STRING_TAG},op:g.we.NOT_EQUALS,value:g.PC},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{uniqueServers:{dataSource:g.YL.TRACES,queryName:"uniqueServers",aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:d},groupBy:[{key:g.SH.AI_TOOL_CALL_MCP_SERVER_NAME,...g.A3.STRING_TAG},{key:g.SH.AI_TOOL_CALL_MCP_SERVER_ID,...g.A3.STRING_TAG}],expression:"uniqueServers",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.AI_TOOL_CALL_MCP_SERVER_NAME,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:c}}buildUniqueToolNamesPayload(a,b,c){let d=[{key:{key:g.SH.NAME,...g.A3.STRING_TAG_COLUMN},op:g.we.EQUALS,value:g.aR.AI_TOOL_CALL},{key:{key:g.SH.AI_TOOL_TYPE,...g.A3.STRING_TAG},op:g.we.EQUALS,value:g.cZ.MCP},{key:{key:g.SH.AI_TOOL_CALL_NAME,...g.A3.STRING_TAG},op:g.we.EXISTS,value:""},{key:{key:g.SH.AI_TOOL_CALL_NAME,...g.A3.STRING_TAG},op:g.we.NOT_EQUALS,value:g.PC},...c?[{key:{key:g.SH.PROJECT_ID,...g.A3.STRING_TAG},op:g.we.EQUALS,value:c}]:[]];return{start:a,end:b,step:g.yZ.STEP,variables:{},compositeQuery:{queryType:g.zD.BUILDER,panelType:g.Nv.TABLE,builderQueries:{uniqueTools:{dataSource:g.YL.TRACES,queryName:"uniqueTools",aggregateOperator:g.qf.COUNT,aggregateAttribute:{key:g.SH.SPAN_ID,...g.A3.STRING_TAG_COLUMN},filters:{op:g.we.AND,items:d},groupBy:[{key:g.SH.AI_TOOL_CALL_NAME,...g.A3.STRING_TAG}],expression:"uniqueTools",reduceTo:g.U_.SUM,stepInterval:g.yZ.STEP_INTERVAL,orderBy:[{columnName:g.SH.AI_TOOL_CALL_NAME,order:g.SL.ASC}],offset:g.yZ.OFFSET,disabled:g.yZ.DISABLED,having:g.yZ.HAVING,legend:g.yZ.LEGEND,limit:g.yZ.LIMIT_UNLIMITED}}},dataSource:g.YL.TRACES,projectId:c}}constructor(){this.tenantId=null}}let o=null;function p(a){let b=o??=new n;return a&&b.setTenantId(a),b}},62681:(a,b,c)=>{c.d(b,{A3:()=>d.A3,Nv:()=>d.Nv,PC:()=>d.PC,SH:()=>d.SH,SL:()=>d.SL,U_:()=>d.U_,XQ:()=>d.XQ,YL:()=>d.YL,aR:()=>d.aR,cZ:()=>d.cZ,hL:()=>d.hL,qf:()=>d.qf,we:()=>d.we,yR:()=>d.yR,yZ:()=>d.yZ,zD:()=>d.zD});var d=c(37747)},96891:(a,b,c)=>{c.r(b),c.d(b,{"406bb67a5773c45c1b9f5a86f6928b53bc5250e507":()=>d.vj,"6055e22daea60811459697366e877c70d8647edb1c":()=>d.xx,"606eac78c12b99e8785ae770c381b8fd42d9d7c808":()=>d.Sw,"60b32165a09e3e5f2e1940f8e12cc5e3ec2cd1ec74":()=>d.gA,"70492a959387f550e1803571f44f04e92178613eda":()=>d.vr});var d=c(86426)}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=4425,exports.ids=[4425],exports.modules={14596:(a,b,c)=>{c.d(b,{S:()=>g,U:()=>h});var d=c(60922);c(70092);var e=c(83110),f=c(38867);async function g(a,b){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/credential-stores`)).data}async function h({tenantId:a,projectId:b,storeId:c,key:d,value:g,metadata:h}){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/credential-stores/${c}/credentials`,{method:"POST",body:JSON.stringify({key:d,value:g,metadata:h})})).data}(0,c(28708).D)([g,h]),(0,d.A)(g,"60b0036be7e4969f1fdefde9be5fcd38c899ea42d9",null),(0,d.A)(h,"40feeffa68324ef2576719729c142ba53303da47bd",null)},40993:(a,b,c)=>{c.d(b,{K4:()=>h,gL:()=>f,zo:()=>g});var d=c(60922);c(70092);var e=c(83110);async function f(a,b){let c=`tenants/${a}/projects/${b}/mcp-catalog`;return await (0,e.Js)(c)}async function g(a,b,c,d="project"){let f=`tenants/${a}/projects/${b}/third-party-mcp-servers`;return await (0,e.Js)(f,{method:"POST",body:JSON.stringify({url:c,credentialScope:d})})}async function h(a,b,c,d){let f=`tenants/${a}/projects/${b}/third-party-mcp-servers/oauth-redirect`;return(await (0,e.Js)(f,{method:"POST",body:JSON.stringify({url:c,credentialScope:d})})).data.redirectUrl}(0,c(28708).D)([f,g,h]),(0,d.A)(f,"60c015993b4a00d2c09836c8580cb34c94dccfad10",null),(0,d.A)(g,"78e2f537125ef1cfa16a3c811dd0a95a04e66f4e45",null),(0,d.A)(h,"789ca8c04934c1e944ab86fa2501ceb93e34a95866",null)},53094:(a,b,c)=>{c.d(b,{U:()=>f});var d=c(60922);c(70092);var e=c(90153);async function f(a,b,c){try{let d=await (0,e.K3)(a,b,c.id);if(d)return d}catch{}try{return await (0,e.GO)(a,b,c)}catch(a){throw console.error("Failed to save credential to database:",a),Error(`Failed to save credential '${c.id}' to database`)}}(0,c(28708).D)([f]),(0,d.A)(f,"7003f8fc4cabd2f3aa29b383891bc6f3c92497e7db",null)},65535:(a,b,c)=>{c.d(b,{uP:()=>t,tN:()=>r,Mj:()=>o,tQ:()=>n,pv:()=>m,Mb:()=>l,H6:()=>u,EN:()=>k,P:()=>v,Jg:()=>q});var d=c(60922);c(70092);var e=c(76831),f=c(91442);class g extends Error{constructor(a,b,c){super(a),this.operation=b,this.cause=c,this.name="NangoError"}}function h(a,b,c){if(a instanceof g)throw a;throw new g(b,c,a)}var i=c(28708);let j=()=>{let a=process.env.NANGO_SECRET_KEY;if(!a)throw new g("NANGO_SECRET_KEY environment variable is required for Nango integration");try{return new e.CA({secretKey:a,host:process.env.NANGO_SERVER_URL||"https://api.nango.dev"})}catch(a){throw new g("Failed to initialize Nango client","new Nango",a)}};async function k(){let a=process.env.NANGO_SECRET_KEY;return!!(a&&""!==a.trim())}async function l(){try{let a=j();return(await a.listProviders({})).data}catch(a){console.error("Failed to fetch providers:",a),h(a,"Unable to retrieve available providers from Nango","listProviders")}}async function m(a){try{let b=j();return(await b.getProvider({provider:a})).data}catch(b){console.error(`Failed to fetch provider ${a}:`,b),h(b,`Provider '${a}' not found or inaccessible`,"getProvider")}}async function n(){try{let a=j();return(await a.listIntegrations()).configs}catch(a){console.error("Failed to fetch integrations:",a),h(a,"Unable to retrieve existing integrations","listIntegrations")}}async function o(a){try{let b=j(),c=(await b.getIntegration({uniqueKey:a},{include:["credentials"]})).data,d=!1;d=c.credentials?.type==="OAUTH2"||c.credentials?.type==="OAUTH1"||c.credentials?.type==="TBA"?!!(c.credentials?.client_id&&c.credentials?.client_secret):c.credentials?.type!=="APP"||!!(c.credentials?.app_id&&c.credentials?.app_link);let{credentials:e,...f}=c;return{...f,areCredentialsSet:d}}catch(b){if(b&&"object"==typeof b&&"status"in b&&404===b.status)return null;console.error(`Failed to fetch integration ${a}:`,b),h(b,`Unable to fetch integration with key '${a}'`,"getIntegration")}}async function p(a){try{let b=j();return(await b.createIntegration({provider:a.provider,unique_key:a.uniqueKey,display_name:a.displayName,credentials:a.credentials})).data}catch(b){console.error("Failed to create integration:",b),h(b,`Failed to create integration '${a.uniqueKey}' for provider '${a.provider}'`,"createIntegration")}}async function q({uniqueKey:a}){let b=process.env.NANGO_SECRET_KEY;if(!b)throw new g("NANGO_SECRET_KEY environment variable is required for Nango integration");let c=process.env.NANGO_SERVER_URL||"https://api.nango.dev",d=process.env.OAUTH_CLIENT_NAME||"Inkeep Agent Framework",e=process.env.OAUTH_CLIENT_URI||"https://inkeep.com",f=process.env.OAUTH_CLIENT_LOGO_URI||"https://inkeep.com/images/logos/inkeep-logo-blue.svg",h=await fetch(`${c}/integrations/${a}`,{method:"PATCH",headers:{Authorization:`Bearer ${b}`,"Content-Type":"application/json"},body:JSON.stringify({custom:{oauth_client_name:d,oauth_client_uri:e,oauth_client_logo_uri:f}})});if(!h.ok){let a=await h.json().catch(()=>({}));throw new g(`Failed to update integration: ${h.status} ${h.statusText}`,"updateMCPGenericIntegration",a)}return await h.json()}async function r(a){try{let a=j();return(await a.listConnections()).connections}catch(c){let b=a?` for integration '${a}'`:"";console.error(`Failed to fetch connections${b}:`,c),h(c,`Unable to retrieve connections${b}`,"listConnections")}}async function s({endUserId:a="test-tenant",endUserEmail:b="test@test-tenant.com",endUserDisplayName:c="Test User",organizationId:d=process.env.TENANT_ID||f.P3,organizationDisplayName:e="Test Organization",integrationId:g}){try{let f=j(),{data:h}=await f.createConnectSession({end_user:{id:a,email:b,display_name:c},organization:{id:d,display_name:e},allowed_integrations:[g]});return h}catch(a){console.error("Failed to create connect session:",a),h(a,`Unable to create connect session for integration '${g}'`,"createConnectSession")}}async function t({providerName:a,uniqueKey:b,displayName:c,credentials:d,endUserId:e,endUserEmail:f,endUserDisplayName:i,organizationId:j,organizationDisplayName:k}){try{let l,m=null;try{m=await o(b)}catch(b){if(b instanceof g)throw b;console.debug(`Integration '${a}' not found, will create new one`)}if(m?.areCredentialsSet)l=m;else try{l=await p({provider:a,uniqueKey:b,displayName:c,credentials:d})}catch(b){h(b,`Failed to create integration for provider '${a}'`,"create")}if("mcp-generic"===a)try{await q({uniqueKey:l.unique_key})}catch(a){console.warn("Failed to update MCP generic integration:",a)}try{return(await s({integrationId:l.unique_key,endUserId:e,endUserEmail:f,endUserDisplayName:i,organizationId:j,organizationDisplayName:k})).token}catch(a){h(a,`Failed to create connect session for integration '${l.unique_key}'`,"createConnectSession")}}catch(b){console.error("Unexpected error creating provider connect session:",b),h(b,`Unexpected error creating connect session for provider '${a}'`,"createProviderConnectSession")}}async function u({providerConfigKey:a,connectionId:b}){try{let c=j();return await c.getMetadata(a,b)}catch(a){if(a&&"object"==typeof a&&"status"in a&&404===a.status)return null;console.error("Failed to get connection metadata:",a),h(a,`Unable to retrieve metadata for connection '${b}'`,"getMetadata")}}async function v({providerConfigKey:a,connectionId:b,metadata:c}){try{let d=j();await d.setMetadata(a,b,c)}catch(a){console.error("Failed to set connection metadata:",a),h(a,`Unable to update metadata for connection '${b}'`,"setMetadata")}}(0,i.D)([k,l,m,n,o,q,r,t,u,v]),(0,d.A)(k,"0044dc6a7eba9e82f223164167a1022b3d78a47d42",null),(0,d.A)(l,"00aba47a0426c81a1f4082a5cdb2458e94ca1579ba",null),(0,d.A)(m,"407d315bf2b14252fa69b02f7c7bc63db2bd6df089",null),(0,d.A)(n,"005708ad91a0d466088745a57896be4b38d315fe9c",null),(0,d.A)(o,"401abcb73f98dacc951c2ed6db3669a7666bab4a48",null),(0,d.A)(q,"4051a9845f1998af99abb974409a14d9caf549ac7e",null),(0,d.A)(r,"4057dcf7bb573c2c3166785d35d7004d68ab86dbc4",null),(0,d.A)(t,"400c470137229a36a05c5adbe935a8c24ca918ad68",null),(0,d.A)(u,"409299d1157b1f505433855772466b913470c3328d",null),(0,d.A)(v,"40a12471b7ef177ce1a255ee844b2da9a11e61d416",null)},90153:(a,b,c)=>{c.d(b,{$Y:()=>g,GO:()=>i,Ji:()=>l,K3:()=>h,h9:()=>k,nZ:()=>j});var d=c(60922);c(70092);var e=c(83110),f=c(38867);async function g(a,b,c=1,d=50){(0,f.M2)(a),(0,f.nt)(b);let h=new URLSearchParams({page:c.toString(),limit:d.toString()});return(await (0,e.Js)(`tenants/${a}/projects/${b}/credentials?${h}`)).data}async function h(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/credentials/${c}`)).data}async function i(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/credentials`,{method:"POST",body:JSON.stringify(c)})).data}async function j(a,b,c,d){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/credentials/${c}`,{method:"PUT",body:JSON.stringify(d)})).data}async function k(a,b,c){(0,f.M2)(a),(0,f.nt)(b),await (0,e.Js)(`tenants/${a}/projects/${b}/credentials/${c}`,{method:"DELETE"})}async function l(a,b,c){(0,f.M2)(a),(0,f.nt)(b);try{return(await (0,e.Js)(`tenants/${a}/projects/${b}/tools/${c}/user-credential`)).data}catch{return null}}(0,c(28708).D)([g,h,i,j,k,l]),(0,d.A)(g,"789a2f62d0cb4c1e60d36c939a5dc4b8e08b7b86ee",null),(0,d.A)(h,"703208f8b310a697dbfdbc9ebe97f8444cc7952d17",null),(0,d.A)(i,"7013540f01b27ce3c52160eae5df819369dbf72c30",null),(0,d.A)(j,"78cfeb27b5b4fb12e95e5d7bce1ef36231ca53e7e1",null),(0,d.A)(k,"70d4eeede40702a2ca46c4c51979ec13dc60e13993",null),(0,d.A)(l,"708027862c10194ff82ef9cb8acfb29a60df8bc4ea",null)}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=6081,exports.ids=[6081],exports.modules={597:(a,b,c)=>{c.d(b,{bq:()=>l,eb:()=>n,gC:()=>m,l6:()=>j,yv:()=>k});var d=c(11918),e=c(84759),f=c(56417),g=c(71935),h=c(74520),i=c(30182);function j({...a}){return(0,d.jsx)(e.bL,{"data-slot":"select",...a})}function k({...a}){return(0,d.jsx)(e.WT,{"data-slot":"select-value",...a})}function l({className:a,size:b="default",children:c,...g}){return(0,d.jsxs)(e.l9,{"data-slot":"select-trigger","data-size":b,className:(0,i.cn)("border-input data-[placeholder]:text-muted-foreground [&_svg:not([class*='text-'])]:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 dark:hover:bg-input/50 flex w-fit items-center justify-between gap-2 rounded-md border bg-transparent px-3 py-2 text-sm whitespace-nowrap shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 data-[size=default]:h-9 data-[size=sm]:h-8 *:data-[slot=select-value]:line-clamp-1 *:data-[slot=select-value]:flex *:data-[slot=select-value]:items-center *:data-[slot=select-value]:gap-2 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 font-normal normal-case",a),...g,children:[c,(0,d.jsx)(e.In,{asChild:!0,children:(0,d.jsx)(f.A,{className:"size-4 opacity-50"})})]})}function m({className:a,children:b,position:c="popper",...f}){return(0,d.jsx)(e.ZL,{children:(0,d.jsxs)(e.UC,{"data-slot":"select-content",className:(0,i.cn)("bg-popover text-popover-foreground data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 relative z-50 max-h-(--radix-select-content-available-height) min-w-[8rem] origin-(--radix-select-content-transform-origin) overflow-x-hidden overflow-y-auto scrollbar-thin scrollbar-thumb-muted-foreground/30 dark:scrollbar-thumb-muted-foreground/50 scrollbar-track-transparent rounded-md border shadow-md","popper"===c&&"data-[side=bottom]:translate-y-1 data-[side=left]:-translate-x-1 data-[side=right]:translate-x-1 data-[side=top]:-translate-y-1",a),position:c,...f,children:[(0,d.jsx)(o,{}),(0,d.jsx)(e.LM,{className:(0,i.cn)("p-1","popper"===c&&"h-[var(--radix-select-trigger-height)] w-full min-w-[var(--radix-select-trigger-width)] scroll-my-1"),children:b}),(0,d.jsx)(p,{})]})})}function n({className:a,children:b,...c}){return(0,d.jsxs)(e.q7,{"data-slot":"select-item",className:(0,i.cn)("focus:bg-accent focus:text-accent-foreground [&_svg:not([class*='text-'])]:text-muted-foreground relative flex w-full cursor-default items-center gap-2 rounded-sm py-1.5 pr-8 pl-2 text-sm outline-hidden select-none data-[disabled]:pointer-events-none data-[disabled]:opacity-50 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 *:[span]:last:flex *:[span]:last:items-center *:[span]:last:gap-2",a),...c,children:[(0,d.jsx)("span",{className:"absolute right-2 flex size-3.5 items-center justify-center",children:(0,d.jsx)(e.VF,{children:(0,d.jsx)(g.A,{className:"size-4"})})}),(0,d.jsx)(e.p4,{children:b})]})}function o({className:a,...b}){return(0,d.jsx)(e.PP,{"data-slot":"select-scroll-up-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,d.jsx)(h.A,{className:"size-4"})})}function p({className:a,...b}){return(0,d.jsx)(e.wn,{"data-slot":"select-scroll-down-button",className:(0,i.cn)("flex cursor-default items-center justify-center py-1",a),...b,children:(0,d.jsx)(f.A,{className:"size-4"})})}},5947:(a,b,c)=>{c.d(b,{o:()=>e});var d=c(38870);let e=(0,d.createServerReference)("780ed1e78accb592853f2d73bb2f616ce50467fb12",d.callServer,void 0,d.findSourceMapURL,"deleteToolAction")},6242:(a,b,c)=>{c.d(b,{U:()=>e});var d=c(38870);let e=(0,d.createServerReference)("7003f8fc4cabd2f3aa29b383891bc6f3c92497e7db",d.callServer,void 0,d.findSourceMapURL,"findOrCreateCredential")},6912:(a,b,c)=>{c.d(b,{w:()=>g});var d=c(60922);c(70092);var e=c(40993),f=c(27829);async function g(a,b){try{let c=await (0,e.gL)(a,b);return{success:!0,data:c.data}}catch(a){if(a instanceof f.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Failed to fetch MCP catalog",code:"unknown_error"}}}(0,c(28708).D)([g]),(0,d.A)(g,"60bcd4762e0ee3407fba8c9861ae800dba82a5d029",null)},8040:(a,b,c)=>{c.d(b,{MCPServerForm:()=>H});var d=c(11918),e=c(269),f=c(37747),g=c(33032),h=c(11775),i=c(84834),j=c(96765),k=c(3641),l=c(77050),m=c(35725),n=c(82064),o=c(33149),p=c(871),q=c(88530),r=c(86066),s=c(38870);let t=(0,s.createServerReference)("40f47e0c8496cd0f2cbad1fc91edf0edef133bc61b",s.callServer,void 0,s.findSourceMapURL,"detectOAuthServerAction");var u=c(5947),v=c(99714),w=c(39709),x=c(2048),y=c(66036),z=c(54623),A=c(71935),B=c(5220),C=c(11890),D=c(6084);function E({control:a,name:b,label:c,availableTools:e=[],description:f,disabled:g=!1}){let{field:{value:j,onChange:k},fieldState:{error:l}}=(0,i.as)({name:b,control:a}),n=(0,h.useMemo)(()=>"object"==typeof j&&null!==j&&"type"in j?"all"===j.type?{type:"all"}:"selective"===j.type&&Array.isArray(j.tools)?{type:"selective",tools:j.tools}:{type:"selective",tools:[]}:{type:"selective",tools:[]},[j]),o=()=>{k({type:"all"})},q=()=>{k({type:"selective",tools:[]})},r=(a,b)=>{if("all"===n.type){let c=e.map(a=>a.name).filter(b=>b!==a);k({type:"selective",tools:b?[...c,a]:c})}else k({type:"selective",tools:b?[...n.tools.filter(b=>b!==a),a]:n.tools.filter(b=>b!==a)})},s=()=>{switch(n.type){case"all":return e.length;case"selective":return n.tools.filter(a=>e.some(b=>b.name===a)).length;default:return 0}},t=s()===e.length;return(0,d.jsx)(p.zB,{control:a,name:b,render:()=>(0,d.jsxs)(p.eI,{children:[(0,d.jsxs)(p.lR,{children:[c,(0,d.jsx)(B.E,{variant:"count",children:s()})]}),f&&(0,d.jsx)("p",{className:"text-sm text-muted-foreground",children:f}),(0,d.jsxs)("div",{className:"mt-2",children:[0===e.length&&(0,d.jsx)("div",{className:"text-sm text-muted-foreground border rounded-md p-3 py-2 bg-gray-100/80 dark:bg-sidebar",children:"No tools available from this server"}),e.length>0&&(0,d.jsxs)(d.Fragment,{children:[(0,d.jsxs)("div",{className:"flex items-center gap-2 justify-between py-3 px-6 rounded-t-lg border border-b-0",children:[(0,d.jsxs)("div",{className:"text-sm",children:[s()," ",(0,d.jsxs)("span",{className:"text-gray-400 dark:text-white/40",children:["/ ",e.length," tool",1===e.length?"":"s"]})]}),t?(0,d.jsxs)(m.$,{type:"button",variant:"outline",size:"sm",onClick:q,disabled:g,children:[(0,d.jsx)(z.A,{className:"w-4 h-4 text-muted-foreground"}),"Deselect all"]}):(0,d.jsxs)(m.$,{type:"button",variant:"outline",size:"sm",onClick:o,disabled:g,children:[(0,d.jsx)(A.A,{className:"w-4 h-4 text-muted-foreground"}),"Select all"]})]}),(0,d.jsx)("div",{className:"max-h-96 overflow-y-auto border rounded-lg rounded-t-none scrollbar-thin scrollbar-thumb-muted-foreground/30 dark:scrollbar-thumb-muted-foreground/50 scrollbar-track-transparent",children:e.map(a=>{let b=(a=>{switch(n.type){case"all":return e.some(b=>b.name===a);case"selective":return n.tools.includes(a)&&e.some(b=>b.name===a);default:return!1}})(a.name);return(0,d.jsxs)("div",{className:"space-y-2 flex items-start gap-6 border-b last:border-b-0 py-4 px-6 relative",children:[(0,d.jsx)("div",{className:"flex items-center h-[22px]",children:(0,d.jsx)(C.S,{checked:b,disabled:g,className:"mb-0",onClick:()=>!g&&r(a.name,!b)})}),(0,d.jsxs)("div",{className:"flex flex-col gap-2",children:[(0,d.jsx)(B.E,{variant:b?"primary":"code",className:`font-mono font-medium text-xs cursor-pointer transition-colors ${g?"opacity-50 cursor-not-allowed":""}`,onClick:()=>!g&&r(a.name,!b),children:a.name}),(0,d.jsxs)(D.Tooltip,{delayDuration:800,children:[(0,d.jsx)(D.TooltipTrigger,{asChild:!0,children:(0,d.jsx)("p",{className:"text-sm text-muted-foreground line-clamp-1",children:a.description})}),(0,d.jsx)(D.TooltipContent,{side:"bottom",align:"start",children:a.description})]})]})]},a.name)})})]})]}),(0,d.jsx)(p.C5,{children:l?.message})]})})}var F=c(22286);let G={name:"",config:{type:"mcp",mcp:{server:{url:""},transport:{type:f.o7.streamableHttp},toolsConfig:{type:"all"}}},imageUrl:"",credentialReferenceId:"oauth",credentialScope:F.t.project};function H({initialData:a,mode:b="create",tool:c,credentials:s,tenantId:z,projectId:A}){let B=(0,g.useRouter)(),[C,D]=(0,h.useState)(!1),[H,I]=(0,h.useState)(!1),J=(0,i.mN)({resolver:(0,e.u)(F.E),defaultValues:{...G,...a}}),{handleOAuthLogin:K}=(0,r.U)({tenantId:z,projectId:A}),{isSubmitting:L}=J.formState,M=async a=>{try{let d="create"===b?(0,y.I)(a.name,a.credentialScope):a.name;if(a.credentialScope===F.t.user&&"create"===b){let b={id:(0,x.$)(),name:d,config:{type:"mcp",mcp:{server:{url:a.config.mcp.server.url},transport:{type:a.config.mcp.transport.type}}},credentialReferenceId:null,credentialScope:F.t.user,imageUrl:a.imageUrl},c=await (0,v.X)(z,A,b);j.oR.success("MCP server created. Users can connect their own accounts from the detail page."),B.push(`/${z}/projects/${A}/mcp-servers/${c.id}`);return}if("oauth"===a.credentialReferenceId&&"create"===b){let b=await t(a.config.mcp.server.url);if(!b.success)return void j.oR.error(b.error||"Failed to detect OAuth support");if(!b.data)return void j.oR.error("This MCP server does not support OAuth authentication. Please select a different credential.");let c={id:(0,x.$)(),name:d,config:{type:"mcp",mcp:{server:{url:a.config.mcp.server.url},transport:{type:a.config.mcp.transport.type}}},credentialReferenceId:null,credentialScope:F.t.project,imageUrl:a.imageUrl},e=await (0,v.X)(z,A,c);K({toolId:e.id,mcpServerUrl:a.config.mcp.server.url,toolName:d});return}let e={...a,name:d,credentialReferenceId:"none"===a.credentialReferenceId?null:a.credentialReferenceId,credentialScope:a.credentialScope,config:{...a.config,mcp:{...a.config.mcp,activeTools:(a=>{if("all"===a.type)return;let b=c?.availableTools?.map(a=>a.name)||[];return a.tools.filter(a=>b.includes(a))})(a.config.mcp.toolsConfig)}}};if("update"===b&&c)await (0,w.Y)(z,A,c.id,e),j.oR.success("MCP server updated successfully"),B.push(`/${z}/projects/${A}/mcp-servers/${c.id}`);else{let a=await (0,v.X)(z,A,{...e,id:(0,x.$)()});j.oR.success("MCP server created successfully"),B.push(`/${z}/projects/${A}/mcp-servers/${a.id}`)}}catch(a){console.error(`Failed to ${b} MCP tool:`,a),j.oR.error(`Failed to ${b} MCP server. Please try again.`)}},N=async()=>{if(c){I(!0);try{let a=await (0,u.o)(z,A,c.id,!1);a.success?(D(!1),j.oR.success("MCP server deleted."),B.push(`/${z}/projects/${A}/mcp-servers`)):j.oR.error(a.error||"Failed to delete MCP server.")}finally{I(!1)}}};return(0,d.jsxs)(o.Dialog,{open:C,onOpenChange:D,children:[(0,d.jsx)(p.lV,{...J,children:(0,d.jsxs)("form",{onSubmit:J.handleSubmit(M),className:"space-y-8",children:[(0,d.jsx)(k.a,{control:J.control,name:"name",label:"Name",placeholder:"MCP server",isRequired:!0}),(0,d.jsx)(k.a,{control:J.control,name:"config.mcp.server.url",label:"URL",placeholder:"https://api.example.com/mcp",isRequired:!0}),(0,d.jsx)(l.U,{control:J.control,selectTriggerClassName:"w-full",name:"config.mcp.transport.type",label:"Transport type",placeholder:"Select transport type",options:[{value:f.o7.streamableHttp,label:"Streamable HTTP"},{value:f.o7.sse,label:"Server-Sent Events (SSE)"}]}),(0,d.jsx)(k.a,{control:J.control,name:"imageUrl",label:"Image URL (optional)",placeholder:"https://example.com/icon.png or data:image/png;base64,..."}),(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsx)(l.U,{control:J.control,selectTriggerClassName:"w-full",name:"credentialScope",label:"Credential Scope",placeholder:"Select credential scope",disabled:"update"===b,options:[{value:F.t.project,label:"Project (shared team credential)"},{value:F.t.user,label:"User (each user connects their own)"}]}),(0,d.jsx)(q.n,{title:"Credential Scope",children:(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("p",{children:[(0,d.jsx)("strong",{children:"Project:"})," One shared credential for the entire team. You'll connect an OAuth account now that everyone will use."]}),(0,d.jsxs)("p",{children:[(0,d.jsx)("strong",{children:"User:"})," Each team member connects their own account. No OAuth required during setup — users connect later from the detail page."]})]})})]}),J.watch("credentialScope")===F.t.project&&(0,d.jsxs)("div",{className:"space-y-3",children:[(0,d.jsx)(l.U,{control:J.control,selectTriggerClassName:"w-full",name:"credentialReferenceId",label:"Credential",placeholder:"Select a credential",options:[{value:"oauth",label:"OAuth"},{value:"none",label:"No Authentication"},...s.map(a=>({value:a.id,label:a.name}))]}),(0,d.jsx)(q.n,{title:"How this works",children:(0,d.jsxs)("div",{className:"space-y-2",children:[(0,d.jsxs)("p",{children:["Select ",(0,d.jsx)("code",{className:"bg-background px-1.5 py-0.5 rounded border",children:"OAuth"})," ",'to authenticate with the MCP server\'s OAuth flow, which will start after you click "Create".']}),(0,d.jsxs)("p",{children:["Select"," ",(0,d.jsx)("code",{className:"bg-background px-1.5 py-0.5 rounded border",children:"No Authentication"})," ","to skip authentication (i.e. none required or add a credential later)."]}),(0,d.jsx)("p",{children:"Or select from the existing credentials you have already created."})]})})]}),"update"===b&&(0,d.jsx)(E,{control:J.control,name:"config.mcp.toolsConfig",label:"Tools",availableTools:c?.availableTools||[],description:"Select which tools should be enabled for this MCP server"}),(0,d.jsxs)("div",{className:"flex w-full justify-between",children:[(0,d.jsx)(m.$,{type:"submit",disabled:L,children:"update"===b?"Save":"Create"}),"update"===b&&c&&(0,d.jsx)(o.DialogTrigger,{asChild:!0,children:(0,d.jsx)(m.$,{type:"button",variant:"destructive-outline",children:"Delete Server"})})]})]})}),C&&c&&(0,d.jsx)(n.J,{itemName:c.name||"this MCP server",isSubmitting:H,onDelete:N})]})}},9383:(a,b,c)=>{c.d(b,{Q1:()=>i,cZ:()=>k,oU:()=>j});var d=c(60922);c(70092);var e=c(6229),f=c(10515),g=c(92082),h=c(27829);async function i(a,b){try{let c=await (0,g.iu)(a,b);return{success:!0,data:c}}catch(a){if(a instanceof h.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function j(a,b,c,d=!0){try{return await (0,g.Wy)(a,b,c),d&&(0,f.revalidatePath)(`/${a}/projects/${b}/mcp-servers`,"page"),{success:!0}}catch(a){if(a instanceof h.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function k(a){try{let b=await (0,e.Rt)({serverUrl:a});return{success:!0,data:b}}catch(a){return{success:!1,error:a instanceof Error?a.message:"Failed to detect OAuth support",code:"oauth_detection_failed"}}}(0,c(28708).D)([i,j,k]),(0,d.A)(i,"60fea0266d00757e99446fb7efa9d08a75ab85de20",null),(0,d.A)(j,"780ed1e78accb592853f2d73bb2f616ce50467fb12",null),(0,d.A)(k,"40f47e0c8496cd0f2cbad1fc91edf0edef133bc61b",null)},11890:(a,b,c)=>{c.d(b,{S:()=>h});var d=c(11918),e=c(17147),f=c(71935),g=c(30182);function h({className:a,...b}){return(0,d.jsx)(e.bL,{"data-slot":"checkbox",className:(0,g.cn)("peer border-input dark:bg-input/30 data-[state=checked]:bg-primary data-[state=checked]:text-primary-foreground dark:data-[state=checked]:bg-primary data-[state=checked]:border-primary focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive size-4 shrink-0 rounded-[4px] border shadow-xs transition-shadow outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50",a),...b,children:(0,d.jsx)(e.C1,{"data-slot":"checkbox-indicator",className:"flex items-center justify-center text-current transition-none",children:(0,d.jsx)(f.A,{className:"size-3.5"})})})}},17147:(a,b,c)=>{c.d(b,{C1:()=>x,bL:()=>v});var d=c(11775),e=c(91695),f=c(82003),g=c(25877),h=c(96176),i=c(65212),j=c(98300),k=c(59351),l=c(94857),m=c(11918),n="Checkbox",[o,p]=(0,f.A)(n),[q,r]=o(n);function s(a){let{__scopeCheckbox:b,checked:c,children:e,defaultChecked:f,disabled:g,form:i,name:j,onCheckedChange:k,required:l,value:o="on",internal_do_not_use_render:p}=a,[r,s]=(0,h.i)({prop:c,defaultProp:f??!1,onChange:k,caller:n}),[t,u]=d.useState(null),[v,w]=d.useState(null),x=d.useRef(!1),y=!t||!!i||!!t.closest("form"),z={checked:r,disabled:g,setChecked:s,control:t,setControl:u,name:j,form:i,value:o,hasConsumerStoppedPropagationRef:x,required:l,defaultChecked:!A(f)&&f,isFormControl:y,bubbleInput:v,setBubbleInput:w};return(0,m.jsx)(q,{scope:b,...z,children:"function"==typeof p?p(z):e})}var t="CheckboxTrigger",u=d.forwardRef(({__scopeCheckbox:a,onKeyDown:b,onClick:c,...f},h)=>{let{control:i,value:j,disabled:k,checked:n,required:o,setControl:p,setChecked:q,hasConsumerStoppedPropagationRef:s,isFormControl:u,bubbleInput:v}=r(t,a),w=(0,e.s)(h,p),x=d.useRef(n);return d.useEffect(()=>{let a=i?.form;if(a){let b=()=>q(x.current);return a.addEventListener("reset",b),()=>a.removeEventListener("reset",b)}},[i,q]),(0,m.jsx)(l.sG.button,{type:"button",role:"checkbox","aria-checked":A(n)?"mixed":n,"aria-required":o,"data-state":B(n),"data-disabled":k?"":void 0,disabled:k,value:j,...f,ref:w,onKeyDown:(0,g.mK)(b,a=>{"Enter"===a.key&&a.preventDefault()}),onClick:(0,g.mK)(c,a=>{q(a=>!!A(a)||!a),v&&u&&(s.current=a.isPropagationStopped(),s.current||a.stopPropagation())})})});u.displayName=t;var v=d.forwardRef((a,b)=>{let{__scopeCheckbox:c,name:d,checked:e,defaultChecked:f,required:g,disabled:h,value:i,onCheckedChange:j,form:k,...l}=a;return(0,m.jsx)(s,{__scopeCheckbox:c,checked:e,defaultChecked:f,disabled:h,required:g,onCheckedChange:j,name:d,form:k,value:i,internal_do_not_use_render:({isFormControl:a})=>(0,m.jsxs)(m.Fragment,{children:[(0,m.jsx)(u,{...l,ref:b,__scopeCheckbox:c}),a&&(0,m.jsx)(z,{__scopeCheckbox:c})]})})});v.displayName=n;var w="CheckboxIndicator",x=d.forwardRef((a,b)=>{let{__scopeCheckbox:c,forceMount:d,...e}=a,f=r(w,c);return(0,m.jsx)(k.C,{present:d||A(f.checked)||!0===f.checked,children:(0,m.jsx)(l.sG.span,{"data-state":B(f.checked),"data-disabled":f.disabled?"":void 0,...e,ref:b,style:{pointerEvents:"none",...a.style}})})});x.displayName=w;var y="CheckboxBubbleInput",z=d.forwardRef(({__scopeCheckbox:a,...b},c)=>{let{control:f,hasConsumerStoppedPropagationRef:g,checked:h,defaultChecked:k,required:n,disabled:o,name:p,value:q,form:s,bubbleInput:t,setBubbleInput:u}=r(y,a),v=(0,e.s)(c,u),w=(0,i.Z)(h),x=(0,j.X)(f);d.useEffect(()=>{if(!t)return;let a=Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,"checked").set,b=!g.current;if(w!==h&&a){let c=new Event("click",{bubbles:b});t.indeterminate=A(h),a.call(t,!A(h)&&h),t.dispatchEvent(c)}},[t,w,h,g]);let z=d.useRef(!A(h)&&h);return(0,m.jsx)(l.sG.input,{type:"checkbox","aria-hidden":!0,defaultChecked:k??z.current,required:n,disabled:o,name:p,value:q,form:s,...b,tabIndex:-1,ref:v,style:{...b.style,...x,position:"absolute",pointerEvents:"none",opacity:0,margin:0,transform:"translateX(-100%)"}})});function A(a){return"indeterminate"===a}function B(a){return A(a)?"indeterminate":a?"checked":"unchecked"}z.displayName=y},20299:(a,b,c)=>{c.d(b,{BT:()=>i,Wu:()=>j,ZB:()=>h,Zp:()=>f,aR:()=>g,wL:()=>k});var d=c(11918),e=c(30182);function f({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card",className:(0,e.cn)("bg-card text-card-foreground flex flex-col gap-6 rounded-xl border py-6 shadow-sm",a),...b})}function g({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-header",className:(0,e.cn)("@container/card-header grid auto-rows-min grid-rows-[auto_auto] items-start gap-1.5 px-6 has-data-[slot=card-action]:grid-cols-[1fr_auto] [.border-b]:pb-6",a),...b})}function h({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-title",className:(0,e.cn)("leading-none font-semibold",a),...b})}function i({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-description",className:(0,e.cn)("text-muted-foreground text-sm",a),...b})}function j({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-content",className:(0,e.cn)("px-6",a),...b})}function k({className:a,...b}){return(0,d.jsx)("div",{"data-slot":"card-footer",className:(0,e.cn)("flex items-center px-6 [.border-t]:pt-6",a),...b})}},22286:(a,b,c)=>{c.d(b,{E:()=>h,t:()=>g});var d=c(37747),e=c(38131);let f=e.discriminatedUnion("type",[e.object({type:e.literal("all")}),e.object({type:e.literal("selective"),tools:e.array(e.string())})]),g={project:"project",user:"user"},h=e.object({name:e.string().min(1,"Name is required."),config:e.object({type:e.literal("mcp"),mcp:e.object({server:e.object({url:e.string().url("Must be a valid URL.")}),transport:e.object({type:e.nativeEnum(d.o7)}),toolsConfig:f.default({type:"all"})})}),credentialReferenceId:e.string().nullish(),credentialScope:e.enum(g).default("project"),imageUrl:e.string().optional()})},30366:(a,b,c)=>{c.d(b,{$:()=>j});var d=c(46298),e=c(11775),f=c(69495),g=c(62596),h=c(98781),i=c(52082);function j(){let{PUBLIC_NANGO_SERVER_URL:a,PUBLIC_NANGO_CONNECT_BASE_URL:b}=(0,f.y)(),{user:c}=(0,i.Q)(),j=(0,g.N)();return{openNangoConnect:(0,e.useCallback)(({sessionToken:c,onEvent:e,connectOptions:f})=>{let g=new d.Ay({host:a||void 0}).openConnectUI({baseURL:f?.baseURL||b||void 0,apiURL:f?.apiURL||a||void 0,onEvent:e,detectClosedAuthWindow:!0});return g.setSessionToken(c),g},[a,b]),openNangoConnectHeadless:(0,e.useCallback)(async({mcpServerUrl:b,providerUniqueKey:e,providerDisplayName:f})=>{let{data:g}=await j.organization.getFullOrganization(),i=await (0,h.u)({providerName:"mcp-generic",uniqueKey:e,displayName:f,endUserId:c?.id,endUserEmail:c?.email,endUserDisplayName:c?.name,organizationId:g?.id,organizationDisplayName:g?.name}),k=new d.Ay({host:a||void 0,connectSessionToken:i});try{return await k.auth(e,{detectClosedAuthWindow:!0,params:{mcp_server_url:b}})}catch(a){if(a instanceof Error)throw Error(`Authentication failed: ${a.message}`);throw a}},[a,c?.id,c?.email,c?.name,j])}}},31084:(a,b,c)=>{c.d(b,{zY:()=>j});var d=c(11918),e=c(30182);function f({className:a,children:b,...c}){return(0,d.jsx)("div",{className:(0,e.cn)("flex flex-row gap-0 p-0 flex-nowrap items-center justify-between mb-8",a),...c,children:b})}function g({className:a,children:b,...c}){return(0,d.jsx)("div",{className:(0,e.cn)("flex flex-col gap-2 p-0 flex-nowrap items-stretch justify-start",a),...c,children:b})}function h({className:a,children:b,...c}){return(0,d.jsx)("h3",{className:(0,e.cn)("text-xl font-light",a),...c,children:b})}function i({className:a,children:b,...c}){return(0,d.jsx)("p",{className:(0,e.cn)("text-muted-foreground text-sm font-normal",a),...c,children:b})}function j({title:a,description:b,action:c,className:e}){return(0,d.jsxs)(f,{className:e,children:[(0,d.jsxs)(g,{children:[(0,d.jsx)(h,{children:a}),b&&(0,d.jsx)(i,{children:b})]}),c]})}},39709:(a,b,c)=>{c.d(b,{Y:()=>e});var d=c(38870);let e=(0,d.createServerReference)("7858ffe3d16f85702c283907d3a648abc9c1b9ed7e",d.callServer,void 0,d.findSourceMapURL,"updateMCPTool")},53044:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(28941).A)("user",[["path",{d:"M19 21v-2a4 4 0 0 0-4-4H9a4 4 0 0 0-4 4v2",key:"975kel"}],["circle",{cx:"12",cy:"7",r:"4",key:"17ys0d"}]])},61885:(a,b,c)=>{c.d(b,{B7:()=>o,KK:()=>p,Kl:()=>l,MM:()=>n,f1:()=>k,h6:()=>m,uS:()=>j});var d=c(11918),e=c(69781),f=c(29093),g=c.n(f),h=c(20299),i=c(30182);function j({className:a,children:b,...c}){return(0,d.jsx)(h.Zp,{className:(0,i.cn)("group h-full border-1 shadow-none bg-background hover:ring-2 hover:ring-accent/50 dark:hover:ring-accent/30 transition-all duration-300 py-5 gap-0 rounded-lg linkbox",a),"data-slot":"linkbox",...c,children:b})}function k({className:a,children:b,...c}){return(0,d.jsx)(h.aR,{className:(0,i.cn)("px-5 flex items-center justify-between gap-2",a),...c,children:b})}function l({className:a,children:b,...c}){return(0,d.jsx)(h.ZB,{className:(0,i.cn)("font-medium line-clamp-1 leading-tight transition-colors flex-1",a),...c,children:b})}function m({className:a,children:b,...c}){return(0,d.jsx)(h.Wu,{className:(0,i.cn)("px-5 gap-4 pt-4 flex flex-col flex-1 justify-between min-w-0",a),...c,children:b})}function n({className:a,children:b,hasContent:c=!0,...e}){return(0,d.jsx)(h.BT,{className:(0,i.cn)(c?"text-muted-foreground":"text-muted-foreground/60","text-sm",a),...e,children:b})}function o({footerText:a}){return(0,d.jsxs)("div",{className:"relative flex items-center justify-between",children:[(0,d.jsx)("div",{className:"flex items-center text-xs text-muted-foreground",children:a}),(0,d.jsx)("div",{className:"opacity-0 group-hover:opacity-60 transform translate-x-1 group-hover:translate-x-0 transition-all duration-300",children:(0,d.jsx)(e.A,{className:"w-4 h-4 text-muted-foreground opacity-60"})})]})}function p({href:a,className:b,children:c,...e}){return(0,d.jsx)(g(),{"data-slot":"linkoverlay",className:(0,i.cn)("text-foreground hover:text-foreground/90",b),href:a,...e,children:c})}},66036:(a,b,c)=>{c.d(b,{MCPServerSelection:()=>C,I:()=>B});var d=c(11918),e=c(33032),f=c(11775),g=c(96765),h=c(31084),i=c(8040),j=c(22286),k=c(35725),l=c(61889),m=c(86066),n=c(38870);let o=(0,n.createServerReference)("789ca8c04934c1e944ab86fa2501ceb93e34a95866",n.callServer,void 0,n.findSourceMapURL,"getThirdPartyOAuthRedirectUrl");var p=c(99714),q=c(2048),r=c(78921);n.callServer,n.findSourceMapURL;var s=c(79852),t=c(61885);function u({url:a}){return(0,d.jsx)("div",{className:"rounded py-1 min-w-0",children:(0,d.jsx)("code",{className:"text-sm text-muted-foreground block truncate",children:a})})}function v({server:a,onSelect:b,isLoading:c=!1,disabled:e=!1}){return(0,d.jsxs)(t.uS,{className:`h-full min-w-0 transition-shadow ${e?"opacity-50 cursor-not-allowed":"cursor-pointer hover:shadow-md hover:bg-accent/50"}`,onClick:()=>{c||e||b(a)},children:[(0,d.jsx)(t.f1,{children:(0,d.jsxs)(t.Kl,{className:"text-md flex items-center gap-3 min-w-0",children:[(0,d.jsx)(s.u,{imageUrl:a.imageUrl,name:a.name,size:24,className:"mt-0.5 flex-shrink-0"}),(0,d.jsx)("span",{className:"flex-1 min-w-0 text-base font-medium truncate",children:a.name})]})}),(0,d.jsx)(t.h6,{children:(0,d.jsx)("div",{className:"space-y-3 min-w-0",children:(0,d.jsx)(u,{url:a.url})})})]})}function w({tenantId:a,projectId:b,onSelectServer:c,loadingServerId:e,searchQuery:g=""}){let{servers:h,isLoading:i}=function(a,b){let[c,d]=(0,f.useState)([]),[e,g]=(0,f.useState)(!0);return{servers:c,isLoading:e}}(0,0),j=h.filter(a=>a.name.toLowerCase().includes(g.toLowerCase())||a.url.toLowerCase().includes(g.toLowerCase()));return i?(0,d.jsx)("div",{className:"flex items-center justify-center py-12",children:(0,d.jsx)(r.A,{className:"h-8 w-8 animate-spin text-muted-foreground"})}):0===j.length?(0,d.jsx)("div",{className:"text-center py-12",children:(0,d.jsx)("p",{className:"text-muted-foreground",children:g?`No servers found matching "${g}".`:"No servers available."})}):(0,d.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4",children:j.map(a=>(0,d.jsx)(v,{server:a,onSelect:c,isLoading:e===a.id,disabled:!!e&&e!==a.id},a.id))})}var x=c(64007),y=c(53044),z=c(33149);function A({open:a,onOpenChange:b,serverName:c,onConfirm:e}){let[g,h]=(0,f.useState)(j.t.project);return(0,d.jsx)(z.Dialog,{open:a,onOpenChange:b,children:(0,d.jsxs)(z.DialogContent,{className:"sm:max-w-md",children:[(0,d.jsxs)(z.DialogHeader,{children:[(0,d.jsx)(z.DialogTitle,{children:"Choose Credential Scope"}),(0,d.jsxs)(z.DialogDescription,{children:["How should ",(0,d.jsx)("span",{className:"font-medium",children:c})," handle authentication?"]})]}),(0,d.jsxs)("div",{className:"grid gap-3 py-4",children:[(0,d.jsxs)("button",{type:"button",onClick:()=>h(j.t.project),className:`flex items-start gap-4 p-4 rounded-lg border-2 text-left transition-colors ${g===j.t.project?"border-primary bg-primary/5":"border-border hover:border-primary/50"}`,children:[(0,d.jsx)(x.A,{className:"w-5 h-5 mt-0.5 text-muted-foreground"}),(0,d.jsxs)("div",{className:"flex-1",children:[(0,d.jsx)("div",{className:"font-medium",children:"Project (Shared)"}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"You'll authenticate now and everyone on the team will use this shared credential."})]})]}),(0,d.jsxs)("button",{type:"button",onClick:()=>h(j.t.user),className:`flex items-start gap-4 p-4 rounded-lg border-2 text-left transition-colors ${g===j.t.user?"border-primary bg-primary/5":"border-border hover:border-primary/50"}`,children:[(0,d.jsx)(y.A,{className:"w-5 h-5 mt-0.5 text-muted-foreground"}),(0,d.jsxs)("div",{className:"flex-1",children:[(0,d.jsx)("div",{className:"font-medium",children:"User (Per-user)"}),(0,d.jsx)("p",{className:"text-sm text-muted-foreground mt-1",children:"Each team member connects their own account. No authentication required now."})]})]})]}),(0,d.jsxs)(z.Es,{children:[(0,d.jsx)(k.$,{variant:"outline",onClick:()=>b(!1),children:"Cancel"}),(0,d.jsx)(k.$,{onClick:()=>{e(g),b(!1)},children:"Continue"})]})]})})}function B(a,b){return`${a} (${b}-scoped)`}function C({credentials:a,tenantId:b,projectId:c}){let[n,r]=(0,f.useState)(),[s,t]=(0,f.useState)("popular"),[u,v]=(0,f.useState)(""),[x,y]=(0,f.useState)(!1),[z,C]=(0,f.useState)(null),D=(0,e.useRouter)(),{handleOAuthLogin:E}=(0,m.U)({tenantId:b,projectId:c}),F=async(a,d)=>{r(a.id),C(null);let e=B(a.name,d),f=function(a){if(!a.includes("composio.dev"))return a;let b=new URL(a);return b.searchParams.delete("user_id"),b.toString()}(a.url);try{let h={id:(0,q.$)(),name:e,config:{type:"mcp",mcp:{server:{url:f},transport:{type:a.transport}}},credentialReferenceId:null,credentialScope:d,imageUrl:a.imageUrl},i=await (0,p.X)(b,c,h);if(d===j.t.user){g.oR.success(`${a.name} MCP server created. Users can connect their own accounts from the detail page.`),D.push(`/${b}/projects/${c}/mcp-servers/${i.id}`);return}let k=f.includes("composio.dev");if(a.isOpen)g.oR.success(`${a.name} MCP server created successfully`),D.push(`/${b}/projects/${c}/mcp-servers/${i.id}`);else if(k){let a=await o(b,c,f,"project");a?E({toolId:i.id,mcpServerUrl:f,toolName:e,thirdPartyConnectAccountUrl:a}):(g.oR.error("Failed to get OAuth URL. Please try connecting from the detail page."),D.push(`/${b}/projects/${c}/mcp-servers/${i.id}`))}else E({toolId:i.id,mcpServerUrl:f,toolName:e})}catch(b){console.error("Failed to create prebuilt MCP server:",b),g.oR.error(`Failed to create ${a.name} server. Please try again.`),r(void 0)}};return(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(h.zY,{className:"gap-2 items-start",title:"popular"===s?"Popular MCP Servers":"Custom MCP Server",description:"popular"===s?"Connect to popular services with pre-configured servers. Click any server to set up with OAuth authentication.":"Configure a custom MCP server by providing the server URL and transport details.",action:(0,d.jsxs)("div",{className:"flex bg-muted p-1 rounded-lg",children:[(0,d.jsx)(k.$,{variant:"popular"===s?"default":"ghost",size:"sm",onClick:()=>t("popular"),children:"Popular Servers"}),(0,d.jsx)(k.$,{variant:"custom"===s?"default":"ghost",size:"sm",onClick:()=>t("custom"),children:"Custom Server"})]})}),"popular"===s?(0,d.jsxs)("div",{className:"space-y-6",children:[(0,d.jsx)("div",{className:"max-w-sm",children:(0,d.jsx)(l.p,{placeholder:"Search servers...",value:u,onChange:a=>v(a.target.value)})}),(0,d.jsx)(w,{tenantId:b,projectId:c,onSelectServer:a=>{a.isOpen?F(a,j.t.project):(C(a),y(!0))},loadingServerId:n,searchQuery:u})]}):(0,d.jsx)("div",{className:"max-w-2xl mx-auto",children:(0,d.jsx)(i.MCPServerForm,{credentials:a,tenantId:b,projectId:c})}),(0,d.jsx)(A,{open:x,onOpenChange:y,serverName:z?.name??"",onConfirm:a=>{z&&F(z,a)}})]})}},77050:(a,b,c)=>{c.d(b,{U:()=>g});var d=c(11918),e=c(597),f=c(29774);function g({control:a,name:b,label:c,placeholder:g,options:h,disabled:i=!1,selectTriggerClassName:j,description:k,isRequired:l=!1}){return(0,d.jsx)(f.u,{control:a,name:b,label:c,description:k,isRequired:l,children:a=>(0,d.jsxs)(e.l6,{onValueChange:a.onChange,defaultValue:a.value,disabled:i,children:[(0,d.jsx)(e.bq,{disabled:i,className:j,children:(0,d.jsx)(e.yv,{placeholder:g})}),(0,d.jsx)(e.gC,{children:h.map(a=>(0,d.jsx)(e.eb,{value:a.value,disabled:a.disabled,children:a.label},a.value))})]})})}},78921:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(28941).A)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},82064:(a,b,c)=>{c.d(b,{J:()=>h});var d=c(11918),e=c(78921),f=c(35725),g=c(33149);function h({itemName:a,isSubmitting:b,onDelete:c,customTitle:h,customDescription:i}){let j=async()=>{await c()};return(0,d.jsxs)(g.DialogContent,{children:[(0,d.jsx)(g.DialogTitle,{children:h||`Delete ${a||"this item"}`}),(0,d.jsx)(g.DialogDescription,{children:i||`Are you sure you want to delete ${a||"this item"}? This action cannot be undone.`}),(0,d.jsxs)(g.Es,{children:[(0,d.jsx)(g.HM,{asChild:!0,children:(0,d.jsx)(f.$,{variant:"outline",children:"Cancel"})}),(0,d.jsx)(f.$,{variant:"destructive",onClick:j,disabled:b,children:b?(0,d.jsxs)(d.Fragment,{children:[(0,d.jsx)(e.A,{className:"size-4 animate-spin"})," Deleting..."]}):"Delete"})]})]})}},83608:(a,b,c)=>{c.d(b,{$Y:()=>g,GO:()=>i,Ji:()=>l,K3:()=>h,h9:()=>k,nZ:()=>j});var d=c(26421);c(56387);var e=c(24961),f=c(65382);async function g(a,b,c=1,d=50){(0,f.M2)(a),(0,f.nt)(b);let h=new URLSearchParams({page:c.toString(),limit:d.toString()});return(await (0,e.Js)(`tenants/${a}/projects/${b}/credentials?${h}`)).data}async function h(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/credentials/${c}`)).data}async function i(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/credentials`,{method:"POST",body:JSON.stringify(c)})).data}async function j(a,b,c,d){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/credentials/${c}`,{method:"PUT",body:JSON.stringify(d)})).data}async function k(a,b,c){(0,f.M2)(a),(0,f.nt)(b),await (0,e.Js)(`tenants/${a}/projects/${b}/credentials/${c}`,{method:"DELETE"})}async function l(a,b,c){(0,f.M2)(a),(0,f.nt)(b);try{return(await (0,e.Js)(`tenants/${a}/projects/${b}/tools/${c}/user-credential`)).data}catch{return null}}(0,c(77851).D)([g,h,i,j,k,l]),(0,d.A)(g,"789a2f62d0cb4c1e60d36c939a5dc4b8e08b7b86ee",null),(0,d.A)(h,"703208f8b310a697dbfdbc9ebe97f8444cc7952d17",null),(0,d.A)(i,"7013540f01b27ce3c52160eae5df819369dbf72c30",null),(0,d.A)(j,"78cfeb27b5b4fb12e95e5d7bce1ef36231ca53e7e1",null),(0,d.A)(k,"70d4eeede40702a2ca46c4c51979ec13dc60e13993",null),(0,d.A)(l,"708027862c10194ff82ef9cb8acfb29a60df8bc4ea",null)},86066:(a,b,c)=>{c.d(b,{U:()=>o});var d=c(37747),e=c(33032),f=c(11775),g=c(96765),h=c(69495),i=c(97277),j=c(39709),k=c(6242),l=c(2048),m=c(52082),n=c(30366);function o({tenantId:a,projectId:b,onFinish:c}){let o=(0,e.useRouter)(),{PUBLIC_INKEEP_AGENTS_MANAGE_API_URL:p}=(0,h.y)(),{openNangoConnectHeadless:q}=(0,n.$)(),{user:r}=(0,m.Q)(),s=(0,f.useRef)(new Map),t=(0,f.useCallback)((d,e)=>new Promise((f,g)=>{let h=s.current.get(d);h&&(h(),s.current.delete(d));try{let h=e??function({PUBLIC_INKEEP_AGENTS_MANAGE_API_URL:a,tenantId:b,projectId:c,id:d}){if(!b||"string"!=typeof b)throw Error("Invalid tenantId: must be a non-empty string");if(!d||"string"!=typeof d)throw Error("Invalid tool id: must be a non-empty string");if(!c||"string"!=typeof c)throw Error("Invalid projectId: must be a non-empty string");let e=/^[a-zA-Z0-9-_]+$/;if(!e.test(b))throw Error("Invalid tenantId format: only alphanumeric characters, hyphens, and underscores allowed");if(!e.test(d))throw Error("Invalid tool id format: only alphanumeric characters, hyphens, and underscores allowed");if(!e.test(c))throw Error("Invalid projectId format: only alphanumeric characters, hyphens, and underscores allowed");let f=`${a}/oauth/login?tenantId=${encodeURIComponent(b)}&projectId=${encodeURIComponent(c)}&toolId=${encodeURIComponent(d)}`;if(!f.startsWith(a))throw Error("Invalid OAuth URL generated");return f}({PUBLIC_INKEEP_AGENTS_MANAGE_API_URL:p,tenantId:a,projectId:b,id:d}),i=window.open(h,"oauth-popup","width=600,height=700,scrollbars=yes,resizable=yes,status=yes,location=yes");if(!i){let a=Error(`Failed to open popup for ${d} - blocked by browser`);console.error(a.message),g(a);return}let j=!1,k=(e,h)=>{j||(j=!0,window.removeEventListener("message",l),m&&clearInterval(m),clearTimeout(n),s.current.delete(d),e?(c?c(d):o.push(`/${a}/projects/${b}/mcp-servers/${d}`),f()):g(h||Error("OAuth login failed")))},l=a=>{"oauth-success"===a.data.type?k(!0):"oauth-error"===a.data.type&&k(!1,Error(a.data.error||"OAuth login failed"))};window.addEventListener("message",l);let m=null,n=setTimeout(()=>{j||(m=setInterval(()=>{try{i.closed&&k(!0)}catch{}},1e3))},3e3);s.current.set(d,()=>{k(!1,Error("OAuth login cancelled"))})}catch(a){g(a instanceof Error?a:Error("OAuth login failed"))}}),[p,a,b,c,o]),u=(0,f.useCallback)(async({toolId:e,mcpServerUrl:f,toolName:g,credentialScope:h})=>{if(!r)throw Error("User not found");let i=await q({mcpServerUrl:f,providerUniqueKey:`${(0,d.K_)(g)}_${e.slice(0,4)}`,providerDisplayName:g}),m="user"===h,n={id:(0,l.$)(),name:g,type:d.Ns.nango,credentialStoreId:d.Ux,createdBy:r?.email??void 0,...m&&{toolId:e,userId:r.id},retrievalParams:{connectionId:i.connectionId,providerConfigKey:i.providerConfigKey,provider:"mcp-generic",authMode:"OAUTH2"}},p=await (0,k.U)(a,b,n);m||await (0,j.Y)(a,b,e,{credentialReferenceId:p.id}),c?c(e):o.push(`/${a}/projects/${b}/mcp-servers/${e}`)},[q,c,o,a,b,r]);return{handleOAuthLogin:(0,f.useCallback)(async({toolId:c,mcpServerUrl:e,toolName:f,thirdPartyConnectAccountUrl:h,credentialScope:j})=>{if(h)return void await t(c,h);try{let g=await (0,i.S)(a,b),h=g.some(a=>a.type===d.Ns.nango&&a.available),k=g.some(a=>a.type===d.Ns.keychain&&a.available);if(h)await u({toolId:c,mcpServerUrl:e,toolName:f,credentialScope:j});else if(k)await t(c);else throw Error("No credential store available. Please configure Nango or Keychain.")}catch(b){let a=b instanceof Error?b:Error("OAuth login failed");throw g.oR.error(a.message),a}},[a,b,u,t])}}},92082:(a,b,c)=>{c.d(b,{Wy:()=>k,XL:()=>i,YU:()=>j,iu:()=>g,xl:()=>h});var d=c(60922);c(70092);var e=c(83110),f=c(38867);async function g(a,b,c=1,d=50,h){(0,f.M2)(a),(0,f.nt)(b);let i=new URLSearchParams({page:c.toString(),limit:d.toString()});return h&&i.append("status",h),(await (0,e.Js)(`tenants/${a}/projects/${b}/tools?${i}`)).data.filter(a=>a.config?.type==="mcp")}async function h(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/tools/${c}`)).data}async function i(a,b,c){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/tools`,{method:"POST",body:JSON.stringify(c)})).data}async function j(a,b,c,d){return(0,f.M2)(a),(0,f.nt)(b),(await (0,e.Js)(`tenants/${a}/projects/${b}/tools/${c}`,{method:"PUT",body:JSON.stringify(d)})).data}async function k(a,b,c){(0,f.M2)(a),(0,f.nt)(b),await (0,e.Js)(`tenants/${a}/projects/${b}/tools/${c}`,{method:"DELETE"})}(0,c(28708).D)([g,h,i,j,k]),(0,d.A)(g,"7c03b011b9280a499d82ee0d49e7a8dff75783243c",null),(0,d.A)(h,"700b6f6ce40a0547913c2dd818d39ebb750e427af6",null),(0,d.A)(i,"70f3b6bb607727c18f7021579db5960bcac67de4f1",null),(0,d.A)(j,"7858ffe3d16f85702c283907d3a648abc9c1b9ed7e",null),(0,d.A)(k,"70d3148f122bee164767656caac2248fa82620e50a",null)},97277:(a,b,c)=>{c.d(b,{S:()=>e});var d=c(38870);let e=(0,d.createServerReference)("60b0036be7e4969f1fdefde9be5fcd38c899ea42d9",d.callServer,void 0,d.findSourceMapURL,"listCredentialStores")},98781:(a,b,c)=>{c.d(b,{u:()=>e});var d=c(38870);let e=(0,d.createServerReference)("400c470137229a36a05c5adbe935a8c24ca918ad68",d.callServer,void 0,d.findSourceMapURL,"createProviderConnectSession")},99714:(a,b,c)=>{c.d(b,{X:()=>e});var d=c(38870);let e=(0,d.createServerReference)("70f3b6bb607727c18f7021579db5960bcac67de4f1",d.callServer,void 0,d.findSourceMapURL,"createMCPTool")}};
@@ -1 +0,0 @@
1
- "use strict";exports.id=8345,exports.ids=[8345],exports.modules={2660:(a,b,c)=>{c.a(a,async(a,d)=>{try{c.d(b,{ArtifactComponentForm:()=>y});var e=c(11918),f=c(269),g=c(33032),h=c(11775),i=c(84834),j=c(96765),k=c(3641),l=c(64768),m=c(75428),n=c(35725),o=c(33149),p=c(871),q=c(20774),r=c(13221),s=c(10522),t=c(30182),u=c(42156),v=c(62092),w=c(33078),x=a([m]);function y({id:a,tenantId:b,projectId:c,initialData:d}){let[x,y]=(0,h.useState)(!1),z=(0,i.mN)({resolver:(0,f.u)(w.z),defaultValues:(a=>{if(!a)return v.g;let b={...a};return b.props&&(b.props=(0,t.S_)(b.props)),b})(d)}),{isSubmitting:A}=z.formState,B=(0,g.useRouter)();(0,q.S)({form:z,nameField:"name",idField:"id",isEditing:!!a});let C=async d=>{try{let e={...d};if(void 0===e.props&&(e.props=null),a){let a=await (0,r.X)(b,c,e);if(!a.success)return void j.oR.error(a.error||"Failed to update artifact.");j.oR.success("Artifact updated.");return}let f=await (0,s.o)(b,c,e);if(!f.success)return void j.oR.error(f.error||"Failed to create artifact");j.oR.success("Artifact created."),B.push(`/${b}/projects/${c}/artifacts`)}catch(b){console.error("Error submitting artifact:",b);let a=b instanceof Error?b.message:"An unexpected error occurred.";j.oR.error(a)}};return(0,e.jsxs)(o.Dialog,{open:x,onOpenChange:y,children:[(0,e.jsx)(p.lV,{...z,children:(0,e.jsxs)("form",{onSubmit:z.handleSubmit(C),className:"max-w-3xl mx-auto py-4 space-y-8",children:[(0,e.jsx)(k.a,{control:z.control,name:"name",label:"Name",placeholder:"Document Artifact",isRequired:!0}),(0,e.jsx)(k.a,{control:z.control,name:"id",label:"Id",placeholder:"my-artifact",disabled:!!a,isRequired:!0,description:!a&&"Choose a unique identifier for this artifact. Using an existing id will replace that artifact."}),(0,e.jsx)(l.K,{control:z.control,name:"description",label:"Description",placeholder:"Structured factual information extracted from search results",className:"min-h-[80px]"}),(0,e.jsx)(m.S,{control:z.control,name:"props",label:"Properties",placeholder:"Enter a valid JSON Schema with inPreview flags, or leave empty to save entire tool result...",description:"Optional: Define specific fields with inPreview flags, or leave empty to capture the complete tool response.",uri:"custom-json-schema-artifact-component.json",hasInPreview:!0}),(0,e.jsxs)("div",{className:"flex w-full justify-between",children:[(0,e.jsx)(n.$,{type:"submit",disabled:A,children:"Save"}),a&&(0,e.jsx)(o.DialogTrigger,{asChild:!0,children:(0,e.jsx)(n.$,{type:"button",variant:"destructive-outline",children:"Delete Artifact"})})]})]})}),x&&a&&(0,e.jsx)(u.W,{artifactComponentId:a,artifactComponentName:z.getValues("name"),setIsOpen:y,redirectOnDelete:!0})]})}m=(x.then?(await x)():x)[0],d()}catch(a){d(a)}})},10522:(a,b,c)=>{c.d(b,{o:()=>e});var d=c(38870);let e=(0,d.createServerReference)("70e5c02ee4d0f001bd4b61d5e79c50c155e948b1ae",d.callServer,void 0,d.findSourceMapURL,"createArtifactComponentAction")},13221:(a,b,c)=>{c.d(b,{X:()=>e});var d=c(38870);let e=(0,d.createServerReference)("7013b379c6805ed1a1d7c7b719986b70dc8b5762b8",d.callServer,void 0,d.findSourceMapURL,"updateArtifactComponentAction")},33078:(a,b,c)=>{c.d(b,{z:()=>g});var d=c(38131),e=c(32697),f=c(83956);let g=d.object({id:f.f,name:d.string().min(1,"Name is required."),description:d.string().optional(),props:d.union([d.string(),d.null(),d.undefined()]).transform((a,b)=>{if(a)try{let c=JSON.parse(a),f=(0,e._O)(a);if(!f.isValid){let a=f.errors[0]?.message||"Invalid JSON schema";return b.addIssue({code:d.ZodIssueCode.custom,message:a}),d.NEVER}return c.required??=[],c}catch(a){return b.addIssue({code:d.ZodIssueCode.custom,message:(0,e.SR)(a)}),d.NEVER}}).optional()})},42156:(a,b,c)=>{c.d(b,{W:()=>k});var d=c(11918),e=c(33032),f=c(11775),g=c(96765),h=c(82064),i=c(38870);let j=(0,i.createServerReference)("70d6cc7435bf84c1b0ce6adb30d01a6ea2b2d5a2ec",i.callServer,void 0,i.findSourceMapURL,"deleteArtifactComponentAction");function k({artifactComponentId:a,artifactComponentName:b,setIsOpen:c,redirectOnDelete:i=!1}){let[k,l]=(0,f.useState)(!1),m=(0,e.useRouter)(),{tenantId:n,projectId:o}=(0,e.useParams)(),p=async()=>{l(!0);try{let b=await j(n,o,a);b.success?(c(!1),g.oR.success("Artifact deleted."),i&&m.push(`/${n}/projects/${o}/artifacts`)):g.oR.error(b.error)}finally{l(!1)}};return(0,d.jsx)(h.J,{itemName:b||"this artifact",isSubmitting:k,onDelete:p})}},62092:(a,b,c)=>{c.d(b,{g:()=>d});let d={id:"",name:"",description:"",props:void 0}},87191:(a,b,c)=>{c.r(b),c.d(b,{"4047eeae00d9e24df2ddae0389f0b89d8669110e58":()=>d.bW,"6027a5b8ea918751b57fc2c64022707e75c727559a":()=>d.Dv,"609608a9d4b84c10e0958c92e20402a13701c22d24":()=>d.qf,"60ab1665be7c60371781b20cd621738d8c1cf1c438":()=>d.gL,"60d9f1aeeaed48f2d6d5ab2bc709261db3e83352a5":()=>p,"7013b379c6805ed1a1d7c7b719986b70dc8b5762b8":()=>r,"70d38d710710130dc101e171c80598b30bf222d7c5":()=>d.Tg,"70d6cc7435bf84c1b0ce6adb30d01a6ea2b2d5a2ec":()=>s,"70e5c02ee4d0f001bd4b61d5e79c50c155e948b1ae":()=>q});var d=c(64381),e=c(60922);c(70092);var f=c(10515),g=c(83110),h=c(38867),i=c(28708);async function j(a,b){return(0,h.M2)(a),(0,h.nt)(b),await (0,g.Js)(`tenants/${a}/projects/${b}/artifact-components`)}async function k(a,b,c){return(0,h.M2)(a),(0,h.nt)(b),(await (0,g.Js)(`tenants/${a}/projects/${b}/artifact-components/${c}`)).data}async function l(a,b,c){return(0,h.M2)(a),(0,h.nt)(b),(await (0,g.Js)(`tenants/${a}/projects/${b}/artifact-components`,{method:"POST",body:JSON.stringify(c)})).data}async function m(a,b,c){return(0,h.M2)(a),(0,h.nt)(b),(await (0,g.Js)(`tenants/${a}/projects/${b}/artifact-components/${c.id}`,{method:"PUT",body:JSON.stringify(c)})).data}async function n(a,b,c){(0,h.M2)(a),(0,h.nt)(b),await (0,g.Js)(`tenants/${a}/projects/${b}/artifact-components/${c}`,{method:"DELETE"})}(0,i.D)([j,k,l,m,n]),(0,e.A)(j,"60c6d1ceb78cff736130de875fd8afc093c11d0280",null),(0,e.A)(k,"7089c0cb91ec026e698e1a86c1854ebb01d454fdec",null),(0,e.A)(l,"70ef3f68d19505c15b526456effa2a9b448868d65c",null),(0,e.A)(m,"70d1c4184678716d4e5b4e7e26e072508a3dd87c93",null),(0,e.A)(n,"70fecd768498aeb2aca302b61d5d1f3fc464bc9786",null);var o=c(27829);async function p(a,b){try{let c=await j(a,b);return{success:!0,data:c.data}}catch(a){if(a instanceof o.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function q(a,b,c){try{let d=await l(a,b,c);return(0,f.revalidatePath)(`/${a}/projects/${b}/artifacts`),{success:!0,data:d}}catch(a){if(a instanceof o.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function r(a,b,c){try{let d=await m(a,b,c);return(0,f.revalidatePath)(`/${a}/projects/${b}/artifacts`),(0,f.revalidatePath)(`/${a}/projects/${b}/artifacts/${c.id}`),{success:!0,data:d}}catch(a){if(a instanceof o.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}async function s(a,b,c){try{return await n(a,b,c),(0,f.revalidatePath)(`/${a}/projects/${b}/artifacts`),{success:!0}}catch(a){if(a instanceof o.h)return{success:!1,error:a.message,code:a.error.code};return{success:!1,error:a instanceof Error?a.message:"Unknown error occurred",code:"unknown_error"}}}(0,i.D)([p,q,r,s]),(0,e.A)(p,"60d9f1aeeaed48f2d6d5ab2bc709261db3e83352a5",null),(0,e.A)(q,"70e5c02ee4d0f001bd4b61d5e79c50c155e948b1ae",null),(0,e.A)(r,"7013b379c6805ed1a1d7c7b719986b70dc8b5762b8",null),(0,e.A)(s,"70d6cc7435bf84c1b0ce6adb30d01a6ea2b2d5a2ec",null)},91707:(a,b,c)=>{c.r(b),c.d(b,{default:()=>j});var d=c(22528),e=c(4728),f=c(20288),g=c(34249),h=c(19102),i=c(37402);function j(){return(0,d.jsx)(e.H,{breadcrumbs:[{label:"Artifacts"}],children:(0,d.jsxs)(f.D,{children:[(0,d.jsx)(g.zY,{title:"Artifacts",description:i.lh}),(0,d.jsx)("div",{className:"grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4 gap-3 md:gap-4",children:Array.from({length:6}).map((a,b)=>(0,d.jsx)(h.E,{className:"h-36 w-full rounded-lg"},`loading-artifact-${b}`))})]})})}},95561:(a,b,c)=>{c.d(b,{A:()=>d});let d=(0,c(28941).A)("trash",[["path",{d:"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6",key:"miytrc"}],["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2",key:"e791ji"}]])},96634:(a,b,c)=>{c.d(b,{ArtifactComponentForm:()=>d});let d=(0,c(7044).registerClientReference)(function(){throw Error("Attempted to call ArtifactComponentForm() from the server but ArtifactComponentForm is on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"/home/runner/work/agents/agents/agents-manage-ui/src/components/artifact-components/form/artifact-component-form.tsx","ArtifactComponentForm")}};