@inkeep/agents-manage-ui 0.33.2 → 0.34.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (272) 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 +7 -7
  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 +3 -3
  6. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +1 -1
  7. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js.nft.json +1 -1
  8. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
  9. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/[agentId]/page.js +1 -1
  10. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/[agentId]/page.js.nft.json +1 -1
  11. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/[agentId]/page_client-reference-manifest.js +1 -1
  12. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/new/page.js +2 -2
  13. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/new/page.js.nft.json +1 -1
  14. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/new/page_client-reference-manifest.js +1 -1
  15. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +2 -2
  16. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js.nft.json +1 -1
  17. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page_client-reference-manifest.js +1 -1
  18. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
  19. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js.nft.json +1 -1
  20. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
  21. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +2 -2
  22. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
  23. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
  24. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +2 -2
  25. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
  26. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
  27. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
  28. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js.nft.json +1 -1
  29. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
  30. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -2
  31. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js.nft.json +1 -1
  32. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -1
  33. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -2
  34. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js.nft.json +1 -1
  35. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
  36. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +2 -2
  37. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js.nft.json +1 -1
  38. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
  39. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +2 -2
  40. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js.nft.json +1 -1
  41. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
  42. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
  43. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js.nft.json +1 -1
  44. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
  45. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +2 -2
  46. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js.nft.json +1 -1
  47. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
  48. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
  49. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
  50. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
  51. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
  52. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js.nft.json +1 -1
  53. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
  54. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
  55. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js.nft.json +1 -1
  56. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
  57. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page.js +2 -2
  58. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page.js.nft.json +1 -1
  59. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page_client-reference-manifest.js +1 -1
  60. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page.js +2 -2
  61. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page.js.nft.json +1 -1
  62. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page_client-reference-manifest.js +1 -1
  63. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page.js +2 -2
  64. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page.js.nft.json +1 -1
  65. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page_client-reference-manifest.js +1 -1
  66. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/page.js +2 -2
  67. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/page.js.nft.json +1 -1
  68. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/page_client-reference-manifest.js +1 -1
  69. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
  70. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js.nft.json +1 -1
  71. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
  72. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
  73. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js.nft.json +1 -1
  74. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
  75. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
  76. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js.nft.json +1 -1
  77. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
  78. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
  79. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js.nft.json +1 -1
  80. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
  81. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +2 -2
  82. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js.nft.json +1 -1
  83. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  84. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
  85. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js.nft.json +1 -1
  86. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
  87. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +2 -2
  88. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
  89. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
  90. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +3 -3
  91. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js.nft.json +1 -1
  92. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
  93. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +3 -3
  94. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
  95. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
  96. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +2 -2
  97. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js.nft.json +1 -1
  98. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
  99. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
  100. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.html +2 -2
  101. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.rsc +2 -2
  102. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_full.segment.rsc +2 -2
  103. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
  104. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
  105. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_index.segment.rsc +2 -2
  106. package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  107. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +2 -2
  108. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js.nft.json +1 -1
  109. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  110. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
  111. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +20 -21
  112. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_full.segment.rsc +20 -21
  113. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_index.segment.rsc +11 -12
  114. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  115. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
  116. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  117. package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route.js +24 -14
  118. package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route_client-reference-manifest.js +1 -1
  119. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  120. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
  121. package/.next/standalone/agents-manage-ui/.next/server/app/page.js +2 -2
  122. package/.next/standalone/agents-manage-ui/.next/server/app/page.js.nft.json +1 -1
  123. package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
  124. package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +7 -7
  125. package/.next/standalone/agents-manage-ui/.next/server/chunks/1310.js +1 -1
  126. package/.next/standalone/agents-manage-ui/.next/server/chunks/{5329.js → 2480.js} +1 -1
  127. package/.next/standalone/agents-manage-ui/.next/server/chunks/2536.js +2 -2
  128. package/.next/standalone/agents-manage-ui/.next/server/chunks/2544.js +1 -0
  129. package/.next/standalone/agents-manage-ui/.next/server/chunks/2877.js +1 -1
  130. package/.next/standalone/agents-manage-ui/.next/server/chunks/3047.js +18 -18
  131. package/.next/standalone/agents-manage-ui/.next/server/chunks/3246.js +1 -1
  132. package/.next/standalone/agents-manage-ui/.next/server/chunks/4001.js +1 -1
  133. package/.next/standalone/agents-manage-ui/.next/server/chunks/4158.js +1 -1
  134. package/.next/standalone/agents-manage-ui/.next/server/chunks/472.js +1 -0
  135. package/.next/standalone/agents-manage-ui/.next/server/chunks/5161.js +1 -1
  136. package/.next/standalone/agents-manage-ui/.next/server/chunks/5258.js +1 -0
  137. package/.next/standalone/agents-manage-ui/.next/server/chunks/5649.js +2 -2
  138. package/.next/standalone/agents-manage-ui/.next/server/chunks/{5367.js → 5923.js} +1 -1
  139. package/.next/standalone/agents-manage-ui/.next/server/chunks/5992.js +1 -1
  140. package/.next/standalone/agents-manage-ui/.next/server/chunks/6448.js +3 -3
  141. package/.next/standalone/agents-manage-ui/.next/server/chunks/7412.js +1 -1
  142. package/.next/standalone/agents-manage-ui/.next/server/chunks/8012.js +2 -2
  143. package/.next/standalone/agents-manage-ui/.next/server/chunks/8764.js +1 -1
  144. package/.next/standalone/agents-manage-ui/.next/server/chunks/9783.js +10 -0
  145. package/.next/standalone/agents-manage-ui/.next/server/middleware-build-manifest.js +1 -1
  146. package/.next/standalone/agents-manage-ui/.next/server/middleware-react-loadable-manifest.js +1 -1
  147. package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
  148. package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +2 -2
  149. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
  150. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
  151. package/.next/standalone/agents-manage-ui/.next/static/chunks/10249-35ca3f6d163c6435.js +1 -0
  152. package/.next/standalone/agents-manage-ui/.next/static/chunks/10856-18e8a30665a753e6.js +1 -0
  153. package/.next/standalone/agents-manage-ui/.next/static/chunks/12239-41c6d91b08c95885.js +1 -0
  154. package/.next/standalone/agents-manage-ui/.next/static/chunks/{13359.b11f286cddf256c8.js → 13359.44b835492ae82e06.js} +1 -1
  155. package/.next/standalone/agents-manage-ui/.next/static/chunks/27689-2b788aa516f2b9b7.js +1 -0
  156. package/.next/standalone/agents-manage-ui/.next/static/chunks/{34186-8fe22838f769bc44.js → 34186-eb277f11ae07c10d.js} +1 -1
  157. package/.next/standalone/agents-manage-ui/.next/static/chunks/46673-f904d4ce6e7a0611.js +433 -0
  158. package/.next/standalone/agents-manage-ui/.next/static/chunks/47873-0d732a0280826d36.js +1 -0
  159. package/.next/standalone/agents-manage-ui/.next/static/chunks/58607-022b2c5fa3fe2540.js +14 -0
  160. package/.next/standalone/agents-manage-ui/.next/static/chunks/80714-1819fc79697be609.js +1 -0
  161. package/.next/standalone/agents-manage-ui/.next/static/chunks/{42910-1f3a74ee21e1bb78.js → 82751-968456b3939ef0bb.js} +4 -4
  162. package/.next/standalone/agents-manage-ui/.next/static/chunks/{95653-177eac276e159b4b.js → 95653-2d2153b54a08b675.js} +1 -1
  163. package/.next/standalone/agents-manage-ui/.next/static/chunks/97382-5302d42918f17d92.js +11 -0
  164. package/.next/standalone/agents-manage-ui/.next/static/chunks/{98060.9d9cd829969410e1.js → 98060.7065b8aefe084397.js} +6 -6
  165. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/[agentId]/{page-8eed1f6ab790198c.js → page-25b7f0f6aba0fec1.js} +1 -1
  166. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/{loading-b7f12d0337954bb6.js → loading-493151d798f222be.js} +1 -1
  167. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/(with-react-flow-provider)/new/{page-eb43fa55527b5ea3.js → page-b495d69a4cbf07d5.js} +1 -1
  168. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{credentials/new/page-f620e858d1ff5971.js → agents/loading-e08930d930e48e44.js} +1 -1
  169. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/{page-dd180a8bfea590ed.js → page-89529c58684c0bb3.js} +1 -1
  170. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-f34f800d12824bfa.js +1 -0
  171. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-024603db6ee3d6d0.js +1 -0
  172. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{agents/loading-f620e858d1ff5971.js → artifacts/loading-e08930d930e48e44.js} +1 -1
  173. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-8515f0ca91bf27bc.js +1 -0
  174. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/{page-da56216e2db8d7ce.js → page-c9d2d24a0e1f4160.js} +1 -1
  175. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-9b60c99f33d76bed.js → page-0386d069997f14b6.js} +1 -1
  176. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{artifacts/loading-f620e858d1ff5971.js → components/loading-e08930d930e48e44.js} +1 -1
  177. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-9f657c018a1b4dcc.js +1 -0
  178. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/{page-54fb87e6c6ad663a.js → page-ce1437143a72e89e.js} +1 -1
  179. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-4d5a8f7feb859a84.js +1 -0
  180. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-fa2672e6af1414e8.js +1 -0
  181. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{components/loading-f620e858d1ff5971.js → credentials/new/page-e08930d930e48e44.js} +1 -1
  182. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-9bb4ccbf88622381.js +1 -0
  183. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/{page-1a15a9c6319f0c0f.js → page-64c47869f3865339.js} +1 -1
  184. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page-b004fa2c702d7286.js +1 -0
  185. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/new/page-75b95f621696afab.js +1 -0
  186. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/page-650cc4ab17747737.js +1 -0
  187. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page-9c016d6a7b8a23a0.js +1 -0
  188. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-0b093c1959cd8ce3.js +1 -0
  189. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{layout-b7f12d0337954bb6.js → layout-493151d798f222be.js} +1 -1
  190. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-36d98743facf01cd.js +1 -0
  191. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-e26d65170d031a64.js +1 -0
  192. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/page-a0dbb3d387ee1783.js +1 -0
  193. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-c97f3e3da9172591.js → page-70005ac3d11e9227.js} +1 -1
  194. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-6f8ea8a476f6db50.js +2 -0
  195. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/{page-6d7e7a1818f4a087.js → page-afbc67ff9258dd75.js} +2 -2
  196. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-e08930d930e48e44.js +1 -0
  197. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/{page-0735d2e15aae2e77.js → page-dee1720068f4cf96.js} +1 -1
  198. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-a9b61f1fc7182e49.js +1 -0
  199. package/.next/standalone/agents-manage-ui/.next/static/chunks/{webpack-149f363e8d1945d4.js → webpack-b52f8e19bed46341.js} +1 -1
  200. package/.next/standalone/agents-manage-ui/.next/static/css/9777a62adc40d976.css +1 -0
  201. package/.next/standalone/agents-manage-ui/package.json +2 -1
  202. package/.next/standalone/packages/agents-core/package.json +1 -1
  203. package/package.json +5 -4
  204. package/src/app/[tenantId]/projects/[projectId]/page.tsx +2 -6
  205. package/src/app/globals.css +35 -0
  206. package/src/app/layout.tsx +5 -11
  207. package/src/components/agent/configuration/edge-types.tsx +9 -6
  208. package/src/components/agent/configuration/model-options.tsx +8 -0
  209. package/src/components/agent/configuration/node-types.tsx +2 -3
  210. package/src/components/agent/edges/agent-to-agent-edge.tsx +10 -9
  211. package/src/components/agent/edges/default-edge.tsx +22 -25
  212. package/src/components/agent/edges/self-loop-edge.tsx +3 -5
  213. package/src/components/agent/nodes/base-node.tsx +3 -3
  214. package/src/components/agent/nodes/function-tool-node.tsx +5 -3
  215. package/src/components/agent/nodes/mcp-node.tsx +22 -10
  216. package/src/components/agent/nodes/sub-agent-node.tsx +5 -4
  217. package/src/components/agent/ship/ship-modal.tsx +8 -3
  218. package/src/components/agent/sidepane/edges/edge-editor.tsx +29 -4
  219. package/src/components/agent/sidepane/metadata/metadata-editor.tsx +1 -2
  220. package/src/components/agent/sidepane/nodes/model-selector.tsx +68 -7
  221. package/src/components/agents/delete-agent-confirmation.tsx +2 -3
  222. package/src/components/form/json-schema-builder.tsx +13 -11
  223. package/src/components/projects/delete-project-confirmation.tsx +1 -2
  224. package/src/components/sidebar-nav/app-sidebar-provider.tsx +25 -0
  225. package/src/components/sidebar-nav/{sidebar-nav.tsx → app-sidebar.tsx} +23 -8
  226. package/src/components/sidebar-nav/project-switcher.tsx +1 -1
  227. package/src/components/theme-toggle.tsx +1 -1
  228. package/src/components/traces/filters/agent-filter.tsx +3 -3
  229. package/src/components/traces/traces-overview.tsx +4 -5
  230. package/src/components/ui/dropdown-menu.tsx +1 -1
  231. package/src/components/ui/radio-group.tsx +2 -2
  232. package/src/features/agent/domain/serialize.ts +2 -2
  233. package/src/features/agent/state/use-agent-store.ts +85 -105
  234. package/src/features/agent/state/use-monaco-store.ts +136 -117
  235. package/src/hooks/use-did-update.ts +25 -0
  236. package/src/hooks/use-project-data.ts +1 -2
  237. package/src/lib/ai/model-factory.ts +65 -3
  238. package/src/lib/utils/throttle.ts +13 -0
  239. package/.next/standalone/agents-manage-ui/.next/server/chunks/2417.js +0 -10
  240. package/.next/standalone/agents-manage-ui/.next/server/chunks/3962.js +0 -1
  241. package/.next/standalone/agents-manage-ui/.next/server/chunks/7917.js +0 -1
  242. package/.next/standalone/agents-manage-ui/.next/server/chunks/9346.js +0 -1
  243. package/.next/standalone/agents-manage-ui/.next/static/chunks/10249-28a5ddd483b77013.js +0 -1
  244. package/.next/standalone/agents-manage-ui/.next/static/chunks/10856-1571a685ceaa0f29.js +0 -1
  245. package/.next/standalone/agents-manage-ui/.next/static/chunks/18011-9c70c603234e83ff.js +0 -1
  246. package/.next/standalone/agents-manage-ui/.next/static/chunks/27689-105ca41283c265b8.js +0 -1
  247. package/.next/standalone/agents-manage-ui/.next/static/chunks/32082-10fb5b565f174ca2.js +0 -433
  248. package/.next/standalone/agents-manage-ui/.next/static/chunks/39407-14bad650f45bab6d.js +0 -1
  249. package/.next/standalone/agents-manage-ui/.next/static/chunks/75021-4d0cf1fc568a9a3e.js +0 -14
  250. package/.next/standalone/agents-manage-ui/.next/static/chunks/8108-9887c96a7a3119a5.js +0 -1
  251. package/.next/standalone/agents-manage-ui/.next/static/chunks/97382-1f56dca3f2a44cfe.js +0 -11
  252. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-c9e736463c62336b.js +0 -1
  253. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-47f5a0e0e7df760b.js +0 -1
  254. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-41b271e1ca95443e.js +0 -1
  255. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-1bb43aa46d16e201.js +0 -1
  256. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-6b5044dc7800119d.js +0 -1
  257. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-21a4ede5b828dad7.js +0 -1
  258. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-5fb0777e64e8f1e0.js +0 -1
  259. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page-ea803cc492b5de3c.js +0 -1
  260. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/new/page-30700e5b14bf5e62.js +0 -1
  261. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/page-a8338242db73ae2e.js +0 -1
  262. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page-5bda53d85f5837fc.js +0 -1
  263. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-ffcf725359703ae5.js +0 -1
  264. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-cde4838412d92cd3.js +0 -1
  265. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-9f6328f7e5aa8e25.js +0 -1
  266. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/page-7fcecb98958fd65a.js +0 -1
  267. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-cbbcfea7f6810b46.js +0 -2
  268. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-f620e858d1ff5971.js +0 -1
  269. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-4d8900be175b18c7.js +0 -1
  270. package/.next/standalone/agents-manage-ui/.next/static/css/a6159611e4980ef8.css +0 -1
  271. /package/.next/standalone/agents-manage-ui/.next/static/{0gQgTXfktOlNSz_AhV7Au → BHphaI_uYPDwyiFIuec8K}/_buildManifest.js +0 -0
  272. /package/.next/standalone/agents-manage-ui/.next/static/{0gQgTXfktOlNSz_AhV7Au → BHphaI_uYPDwyiFIuec8K}/_ssgManifest.js +0 -0
@@ -1,10 +1,9 @@
1
1
  import type { Metadata } from 'next';
2
2
  import { Inter, JetBrains_Mono } from 'next/font/google';
3
- import './globals.css';
4
3
  import { ThemeProvider } from 'next-themes';
5
4
  import { NuqsAdapter } from 'nuqs/adapters/next/app';
6
- import { AppSidebar } from '@/components/sidebar-nav/sidebar-nav';
7
- import { SidebarInset, SidebarProvider } from '@/components/ui/sidebar';
5
+ import { AppSidebarProvider } from '@/components/sidebar-nav/app-sidebar-provider';
6
+ import { SidebarInset } from '@/components/ui/sidebar';
8
7
  import { Toaster } from '@/components/ui/sonner';
9
8
  import { RuntimeConfigProvider } from '@/contexts/runtime-config-context';
10
9
  import {
@@ -16,6 +15,7 @@ import {
16
15
  } from '@/lib/runtime-config/defaults';
17
16
  import type { RuntimeConfig } from '@/lib/runtime-config/types';
18
17
  import { cn } from '@/lib/utils';
18
+ import './globals.css';
19
19
 
20
20
  const jetBrainsMono = JetBrains_Mono({
21
21
  variable: '--font-jetbrains-mono',
@@ -63,15 +63,9 @@ export default function RootLayout({ children }: LayoutProps<'/'>) {
63
63
  >
64
64
  <NuqsAdapter>
65
65
  <RuntimeConfigProvider value={runtimeConfig}>
66
- <SidebarProvider
67
- style={{
68
- '--sidebar-width': 'calc(var(--spacing) * 62)',
69
- '--header-height': 'calc(var(--spacing) * 12)',
70
- }}
71
- >
72
- <AppSidebar />
66
+ <AppSidebarProvider>
73
67
  <SidebarInset>{children}</SidebarInset>
74
- </SidebarProvider>
68
+ </AppSidebarProvider>
75
69
  <Toaster />
76
70
  </RuntimeConfigProvider>
77
71
  </NuqsAdapter>
@@ -19,18 +19,21 @@ export enum EdgeType {
19
19
  SelfLoop = 'self-loop',
20
20
  }
21
21
 
22
- export type A2AEdgeData = {
22
+ export interface AnimatedEdge {
23
+ /**
24
+ * Indicates whether this node delegates its task to another node.
25
+ */
26
+ status?: 'delegating' | 'inverted-delegating' | null;
27
+ }
28
+
29
+ export interface A2AEdgeData {
23
30
  relationships: {
24
31
  transferTargetToSource: boolean;
25
32
  transferSourceToTarget: boolean;
26
33
  delegateTargetToSource: boolean;
27
34
  delegateSourceToTarget: boolean;
28
35
  };
29
- /**
30
- * Indicates whether this node delegates its task to another node.
31
- */
32
- delegating: boolean | 'inverted';
33
- };
36
+ }
34
37
 
35
38
  export const edgeTypes = {
36
39
  [EdgeType.A2A]: AgentToAgentEdge,
@@ -40,6 +40,10 @@ export const modelOptions = {
40
40
  },
41
41
  ],
42
42
  openai: [
43
+ {
44
+ value: OPENAI_MODELS.GPT_5_1,
45
+ label: 'GPT-5.1',
46
+ },
43
47
  {
44
48
  value: OPENAI_MODELS.GPT_4_1,
45
49
  label: 'GPT-4.1',
@@ -66,6 +70,10 @@ export const modelOptions = {
66
70
  },
67
71
  ],
68
72
  google: [
73
+ {
74
+ value: GOOGLE_MODELS.GEMINI_3_PRO_PREVIEW,
75
+ label: 'Gemini 3 Pro Preview',
76
+ },
69
77
  {
70
78
  value: GOOGLE_MODELS.GEMINI_2_5_PRO,
71
79
  label: 'Gemini 2.5 Pro',
@@ -1,3 +1,4 @@
1
+ import type { SubAgentStopWhen } from '@inkeep/agents-core';
1
2
  import { Bot, Code, Globe, Hammer, Users } from 'lucide-react';
2
3
  import { ExternalAgentNode } from '../nodes/external-agent-node';
3
4
  import { FunctionToolNode } from '../nodes/function-tool-node';
@@ -15,10 +16,8 @@ interface NodeData {
15
16
  type?: 'mcp-placeholder' | 'external-agent-placeholder' | 'team-agent-placeholder'; // Optional for placeholder nodes
16
17
  }
17
18
 
18
- import type { SubAgentStopWhen } from '@inkeep/agents-core/client-exports';
19
-
20
19
  export interface AnimatedNode {
21
- status?: 'delegating' | 'executing' | 'error' | null;
20
+ status?: 'delegating' | 'inverted-delegating' | 'executing' | 'error' | null;
22
21
  }
23
22
 
24
23
  export interface MCPNodeData extends Record<string, unknown>, AnimatedNode {
@@ -1,10 +1,11 @@
1
1
  import { BaseEdge, EdgeLabelRenderer, type EdgeProps, getBezierPath } from '@xyflow/react';
2
2
  import { ArrowRight, ArrowRightLeft } from 'lucide-react';
3
3
  import { AnimatedCircle } from '@/components/agent/edges/default-edge';
4
- import type { A2AEdgeData } from '../configuration/edge-types';
4
+ import { cn } from '@/lib/utils';
5
+ import type { A2AEdgeData, AnimatedEdge } from '../configuration/edge-types';
5
6
 
6
- interface AgentToAgentEdgeProps extends EdgeProps {
7
- data?: A2AEdgeData;
7
+ interface AgentToAgentEdgeProps extends Omit<EdgeProps, 'data'> {
8
+ data: AnimatedEdge & A2AEdgeData;
8
9
  }
9
10
 
10
11
  export function AgentToAgentEdge({
@@ -17,13 +18,12 @@ export function AgentToAgentEdge({
17
18
  data,
18
19
  selected,
19
20
  }: AgentToAgentEdgeProps) {
20
- const relationships = data?.relationships || {
21
+ const relationships = data.relationships || {
21
22
  transferTargetToSource: false,
22
23
  transferSourceToTarget: false,
23
24
  delegateTargetToSource: false,
24
25
  delegateSourceToTarget: false,
25
26
  };
26
- const delegating = data?.delegating;
27
27
 
28
28
  const hasDelegate = relationships.delegateTargetToSource || relationships.delegateSourceToTarget;
29
29
  const hasTransfer = relationships.transferTargetToSource || relationships.transferSourceToTarget;
@@ -88,13 +88,14 @@ export function AgentToAgentEdge({
88
88
  const delegateMarkerEnd =
89
89
  hasDelegate && relationships.delegateSourceToTarget ? getMarker(!!selected) : undefined;
90
90
 
91
- const className =
92
- selected || delegating ? '!stroke-primary' : '!stroke-border dark:!stroke-muted-foreground';
93
-
91
+ const className = cn(
92
+ data.status && 'edge-delegating',
93
+ data.status === 'inverted-delegating' && 'edge-delegating-inverted'
94
+ );
94
95
  return (
95
96
  <>
96
97
  {/* Animated circles based on delegating direction */}
97
- {delegating && <AnimatedCircle edgePath={edgePath} inverted={delegating === 'inverted'} />}
98
+ <AnimatedCircle edgePath={edgePath} status={data.status} />
98
99
 
99
100
  {/* Render transfer path (solid line) */}
100
101
  {hasTransfer && (
@@ -2,24 +2,23 @@
2
2
 
3
3
  import { BaseEdge, type EdgeProps, getBezierPath } from '@xyflow/react';
4
4
  import { type FC, useEffect, useRef } from 'react';
5
+ import { cn } from '@/lib/utils';
6
+ import type { AnimatedEdge } from '../configuration/edge-types';
5
7
 
6
- type DefaultEdgeProps = EdgeProps & {
7
- data?: {
8
- delegating: boolean | 'inverted';
9
- };
10
- };
11
-
12
- export const AnimatedCircle: FC<{ edgePath: string; inverted: boolean }> = ({
13
- edgePath,
14
- inverted,
15
- }) => {
8
+ export const AnimatedCircle: FC<{ edgePath: string } & AnimatedEdge> = ({ edgePath, status }) => {
16
9
  const ref = useRef<SVGAnimateElement>(null);
17
10
 
18
11
  // Without this useEffect, the animation won't start when this component is rendered dynamically.
19
12
  // biome-ignore lint/correctness/useExhaustiveDependencies: We need restart animation when invert is changed
20
13
  useEffect(() => {
21
14
  ref.current?.beginElement();
22
- }, [inverted]);
15
+ }, [status]);
16
+
17
+ if (!status) {
18
+ return;
19
+ }
20
+
21
+ const isInvertedDelegating = status === 'inverted-delegating';
23
22
 
24
23
  return (
25
24
  <circle fill="var(--primary)" r="6">
@@ -27,9 +26,8 @@ export const AnimatedCircle: FC<{ edgePath: string; inverted: boolean }> = ({
27
26
  ref={ref}
28
27
  dur="2s"
29
28
  path={edgePath}
30
- fill="freeze"
31
- {...(inverted && {
32
- pathLength: '1',
29
+ fill={isInvertedDelegating ? 'remove' : 'freeze'}
30
+ {...(isInvertedDelegating && {
33
31
  keyPoints: '1;0',
34
32
  keyTimes: '0;1',
35
33
  })}
@@ -38,6 +36,10 @@ export const AnimatedCircle: FC<{ edgePath: string; inverted: boolean }> = ({
38
36
  );
39
37
  };
40
38
 
39
+ interface DefaultEdgeProps extends Omit<EdgeProps, 'data'> {
40
+ data?: AnimatedEdge;
41
+ }
42
+
41
43
  export function DefaultEdge({
42
44
  id,
43
45
  sourceX,
@@ -47,9 +49,8 @@ export function DefaultEdge({
47
49
  sourcePosition,
48
50
  targetPosition,
49
51
  label,
50
- selected,
51
52
  markerEnd,
52
- data,
53
+ data = {},
53
54
  }: DefaultEdgeProps) {
54
55
  const [edgePath] = getBezierPath({
55
56
  sourceX,
@@ -60,24 +61,20 @@ export function DefaultEdge({
60
61
  targetPosition,
61
62
  });
62
63
 
63
- const className =
64
- selected || data?.delegating
65
- ? '!stroke-primary'
66
- : '!stroke-border dark:!stroke-muted-foreground';
67
-
68
64
  return (
69
65
  <>
70
66
  {/* Animated circles based on delegating direction */}
71
- {data?.delegating && (
72
- <AnimatedCircle edgePath={edgePath} inverted={data.delegating === 'inverted'} />
73
- )}
67
+ <AnimatedCircle edgePath={edgePath} status={data.status} />
74
68
  <BaseEdge
75
69
  id={id}
76
70
  path={edgePath}
77
71
  label={label}
78
72
  markerEnd={markerEnd}
79
73
  style={{ strokeWidth: 2 }}
80
- className={className}
74
+ className={cn(
75
+ data.status && 'edge-delegating',
76
+ data.status === 'inverted-delegating' && 'edge-delegating-inverted'
77
+ )}
81
78
  />
82
79
  </>
83
80
  );
@@ -2,8 +2,8 @@ import { BaseEdge, EdgeLabelRenderer, type EdgeProps, type Node, useStore } from
2
2
  import { RefreshCw } from 'lucide-react';
3
3
  import type { A2AEdgeData } from '../configuration/edge-types';
4
4
 
5
- interface SelfLoopEdgeProps extends EdgeProps {
6
- data?: A2AEdgeData;
5
+ interface SelfLoopEdgeProps extends Omit<EdgeProps, 'data'> {
6
+ data: A2AEdgeData;
7
7
  }
8
8
 
9
9
  const getNodePositionById = (nodeId: string): ((state: { nodes: Node[] }) => Node | undefined) => {
@@ -15,7 +15,7 @@ export function SelfLoopEdge({ source, data, selected }: SelfLoopEdgeProps) {
15
15
 
16
16
  if (!sourceNode) return null;
17
17
 
18
- const relationships = data?.relationships || {
18
+ const relationships = data.relationships || {
19
19
  transferTargetToSource: false,
20
20
  transferSourceToTarget: false,
21
21
  delegateTargetToSource: false,
@@ -75,7 +75,6 @@ export function SelfLoopEdge({ source, data, selected }: SelfLoopEdgeProps) {
75
75
  {/* Render transfer path (solid line) */}
76
76
  {hasTransfer && (
77
77
  <BaseEdge
78
- className={`${selected ? '!stroke-primary' : '!stroke-border dark:!stroke-muted-foreground'}`}
79
78
  path={transferPath}
80
79
  style={{
81
80
  strokeWidth: 2,
@@ -88,7 +87,6 @@ export function SelfLoopEdge({ source, data, selected }: SelfLoopEdgeProps) {
88
87
  {/* Render delegate path (dashed line) */}
89
88
  {hasDelegate && (
90
89
  <BaseEdge
91
- className={`${selected ? '!stroke-primary' : '!stroke-border dark:!stroke-muted-foreground'}`}
92
90
  path={hasTransfer ? delegatePath : transferPath}
93
91
  style={{
94
92
  strokeDasharray: '5,5',
@@ -9,11 +9,11 @@ export const BaseNode: FC<BaseNodeProps> = ({ className, isSelected, ...props })
9
9
  <div
10
10
  className={cn(
11
11
  'relative rounded-lg border bg-card text-card-foreground',
12
- // React Flow displays node elements inside of a `NodeWrapper` component,
13
- // which compiles down to a div with a the class `react-flow__node`.
12
+ // React Flow displays node elements inside a `NodeWrapper` component,
13
+ // which compiles down to a div with a class `react-flow__node`.
14
14
  // When a node is selected, the class `selected` is added to the
15
15
  // `react-flow__node` element. This allows us to style the node when it
16
- isSelected ? 'ring-2 ring-primary' : 'hover:ring-2 hover:ring-gray-700/5',
16
+ isSelected && 'ring-2 ring-primary',
17
17
  className
18
18
  )}
19
19
  // tabIndex={0}
@@ -19,6 +19,7 @@ export function FunctionToolNode(props: NodeProps & { data: FunctionToolNodeData
19
19
  const nodeErrors = getNodeErrors(functionToolId);
20
20
  const hasErrors = hasNodeErrors(functionToolId);
21
21
  const isDelegating = data.status === 'delegating';
22
+ const isInvertedDelegating = data.status === 'inverted-delegating';
22
23
  const isExecuting = data.status === 'executing';
23
24
  return (
24
25
  <div className="relative">
@@ -27,7 +28,8 @@ export function FunctionToolNode(props: NodeProps & { data: FunctionToolNodeData
27
28
  className={cn(
28
29
  'rounded-4xl min-w-40 max-w-xs',
29
30
  hasErrors && 'ring-2 ring-red-300 border-red-300',
30
- isExecuting && 'node-executing'
31
+ isExecuting && 'node-executing',
32
+ isInvertedDelegating && 'node-delegating-inverted'
31
33
  )}
32
34
  >
33
35
  <BaseNodeHeader className="mb-0 py-3">
@@ -38,9 +40,9 @@ export function FunctionToolNode(props: NodeProps & { data: FunctionToolNodeData
38
40
  </div>
39
41
  <BaseNodeHeaderTitle className="flex-1 truncate">{name}</BaseNodeHeaderTitle>
40
42
  </div>
41
- {description?.trim() ? (
43
+ {description && (
42
44
  <p className="text-xs text-muted-foreground line-clamp-2 pl-7">{description}</p>
43
- ) : null}
45
+ )}
44
46
  </div>
45
47
  {hasErrors && (
46
48
  <ErrorIndicator errors={nodeErrors} className="absolute -top-2 -right-2 w-6 h-6" />
@@ -1,4 +1,5 @@
1
1
  import { type NodeProps, Position } from '@xyflow/react';
2
+ import type { FC, ReactNode } from 'react';
2
3
  import { getActiveTools } from '@/app/utils/active-tools';
3
4
  import { MCPToolImage } from '@/components/mcp-servers/mcp-tool-image';
4
5
  import { Badge } from '@/components/ui/badge';
@@ -11,6 +12,21 @@ import { Handle } from './handle';
11
12
 
12
13
  const TOOLS_SHOWN_LIMIT = 4;
13
14
 
15
+ export const TruncateBadge: FC<{ children: ReactNode }> = ({ children }) => {
16
+ return (
17
+ <Badge
18
+ variant="code"
19
+ className={cn(
20
+ 'text-2xs text-gray-700 dark:text-gray-300',
21
+ // Add ellipsis for long names
22
+ 'truncate block max-w-full'
23
+ )}
24
+ >
25
+ {children}
26
+ </Badge>
27
+ );
28
+ };
29
+
14
30
  export function MCPNode(props: NodeProps & { data: MCPNodeData }) {
15
31
  const { data, selected } = props;
16
32
  const { toolLookup, agentToolConfigLookup, edges } = useAgentStore((state) => ({
@@ -77,6 +93,7 @@ export function MCPNode(props: NodeProps & { data: MCPNodeData }) {
77
93
 
78
94
  const toolBadges = getToolDisplay();
79
95
  const isDelegating = data.status === 'delegating';
96
+ const isInvertedDelegating = data.status === 'inverted-delegating';
80
97
  const isExecuting = data.status === 'executing';
81
98
  const hasErrors = data.status === 'error';
82
99
  return (
@@ -85,22 +102,17 @@ export function MCPNode(props: NodeProps & { data: MCPNodeData }) {
85
102
  className={cn(
86
103
  'rounded-4xl min-w-40 min-h-13 max-w-3xs',
87
104
  hasErrors && 'ring-2 ring-red-300 border-red-300',
88
- isExecuting && 'node-executing'
105
+ isExecuting && 'node-executing',
106
+ isInvertedDelegating && 'node-delegating-inverted'
89
107
  )}
90
108
  >
91
109
  <BaseNodeHeader className="flex items-center justify-between gap-2">
92
110
  <MCPToolImage imageUrl={imageUrl} name={name} size={24} className="flex-shrink-0" />
93
111
  <BaseNodeHeaderTitle>{name}</BaseNodeHeaderTitle>
94
112
  </BaseNodeHeader>
95
- <BaseNodeContent>
96
- {toolBadges.map((label, index) => (
97
- <Badge
98
- key={index}
99
- variant="code"
100
- className="px-2 text-2xs text-gray-700 dark:text-gray-300 flex-shrink-0"
101
- >
102
- {label}
103
- </Badge>
113
+ <BaseNodeContent className="flex-row gap-2 flex-wrap">
114
+ {toolBadges.map((label) => (
115
+ <TruncateBadge key={label}>{label}</TruncateBadge>
104
116
  ))}
105
117
  </BaseNodeContent>
106
118
  <Handle id={mcpNodeHandleId} type="target" position={Position.Top} isConnectable />
@@ -1,6 +1,7 @@
1
1
  import { type NodeProps, Position } from '@xyflow/react';
2
2
  import { Bot, Component, Library, type LucideIcon } from 'lucide-react';
3
3
  import { useMemo } from 'react';
4
+ import { TruncateBadge } from '@/components/agent/nodes/mcp-node';
4
5
  import { AnthropicIcon } from '@/components/icons/anthropic';
5
6
  import { GoogleIcon } from '@/components/icons/google';
6
7
  import { OpenAIIcon } from '@/components/icons/openai';
@@ -33,9 +34,7 @@ const ListSection = ({
33
34
  </div>
34
35
  <div className="flex flex-wrap gap-2">
35
36
  {items?.map((name) => (
36
- <Badge key={name} className="text-xs" variant="code">
37
- {name}
38
- </Badge>
37
+ <TruncateBadge key={name}>{name}</TruncateBadge>
39
38
  ))}
40
39
  </div>
41
40
  </div>
@@ -72,6 +71,7 @@ export function SubAgentNode(props: NodeProps & { data: AgentNodeData }) {
72
71
  [data?.artifactComponents, artifactComponentLookup]
73
72
  );
74
73
  const isDelegating = status === 'delegating';
74
+ const isInvertedDelegating = status === 'inverted-delegating';
75
75
  const isExecuting = status === 'executing';
76
76
  return (
77
77
  <div className="relative">
@@ -81,7 +81,8 @@ export function SubAgentNode(props: NodeProps & { data: AgentNodeData }) {
81
81
  className={cn(
82
82
  isDefault && 'rounded-tl-none',
83
83
  hasErrors && 'ring-2 ring-red-300 border-red-300',
84
- isExecuting && 'node-executing'
84
+ isExecuting && 'node-executing',
85
+ isInvertedDelegating && 'node-delegating-inverted'
85
86
  )}
86
87
  style={{ width: NODE_WIDTH }}
87
88
  >
@@ -82,8 +82,7 @@ const shipModalTabItems: TabItem[] = [
82
82
  ];
83
83
 
84
84
  export const ShipModal: FC<{ buttonClassName: string }> = ({ buttonClassName }) => {
85
- const params = useParams();
86
- const { tenantId, projectId } = params;
85
+ const { tenantId, projectId } = useParams();
87
86
  return (
88
87
  <Dialog>
89
88
  <DialogTrigger asChild>
@@ -92,7 +91,13 @@ export const ShipModal: FC<{ buttonClassName: string }> = ({ buttonClassName })
92
91
  Ship
93
92
  </Button>
94
93
  </DialogTrigger>
95
- <DialogContent className="max-w-full! w-7xl" position="top" showCloseButton={false}>
94
+ <DialogContent
95
+ className="max-w-full! w-7xl"
96
+ position="top"
97
+ showCloseButton={false}
98
+ onWheel={(e) => e.stopPropagation()} // to make scroll work on the widgets
99
+ onTouchMove={(e) => e.stopPropagation()} // to make scroll work on the widgets
100
+ >
96
101
  <DialogHeader>
97
102
  <div className="flex items-center justify-between w-full gap-2">
98
103
  <DialogTitle>Talk to your agent</DialogTitle>
@@ -20,6 +20,8 @@ type RelationshipOptionProps = {
20
20
  checked: boolean;
21
21
  };
22
22
 
23
+ const REMOVE_DELEGATION_OPTION_ID = 'none';
24
+
23
25
  function RelationshipOption({ id, label, onCheckedChange, checked }: RelationshipOptionProps) {
24
26
  return (
25
27
  <div className="flex items-start gap-3">
@@ -47,6 +49,7 @@ type RelationshipSectionProps = {
47
49
  checkedValues: A2AEdgeData['relationships'];
48
50
  useRadio?: boolean;
49
51
  onRadioChange?: (value: string) => void;
52
+ defaultRadioValue?: string;
50
53
  };
51
54
 
52
55
  function RelationshipSection({
@@ -58,12 +61,23 @@ function RelationshipSection({
58
61
  checkedValues,
59
62
  useRadio = false,
60
63
  onRadioChange,
64
+ defaultRadioValue,
61
65
  }: RelationshipSectionProps) {
62
66
  const getRadioValue = () => {
63
67
  const checkedOption = options.find(
64
- (opt) => checkedValues?.[opt.id as keyof A2AEdgeData['relationships']]
68
+ (opt) =>
69
+ (!defaultRadioValue || opt.id !== defaultRadioValue) &&
70
+ checkedValues?.[opt.id as keyof A2AEdgeData['relationships']]
65
71
  );
66
- return checkedOption?.id || '';
72
+ if (checkedOption) {
73
+ return checkedOption.id;
74
+ }
75
+ // If no option is checked, return defaultRadioValue if it exists in options
76
+ if (defaultRadioValue) {
77
+ const defaultOption = options.find((opt) => opt.id === defaultRadioValue);
78
+ return defaultOption ? defaultRadioValue : '';
79
+ }
80
+ return '';
67
81
  };
68
82
 
69
83
  return (
@@ -210,7 +224,10 @@ function EdgeEditor({ selectedEdge }: EdgeEditorProps) {
210
224
  delegateTargetToSource: false,
211
225
  };
212
226
 
213
- if (value) {
227
+ if (value === REMOVE_DELEGATION_OPTION_ID) {
228
+ newRelationships.delegateSourceToTarget = false;
229
+ newRelationships.delegateTargetToSource = false;
230
+ } else if (value) {
214
231
  if (isSelfLoop && value === 'delegateSourceToTarget') {
215
232
  newRelationships.delegateSourceToTarget = true;
216
233
  newRelationships.delegateTargetToSource = true;
@@ -218,7 +235,6 @@ function EdgeEditor({ selectedEdge }: EdgeEditorProps) {
218
235
  newRelationships[value as keyof A2AEdgeData['relationships']] = true;
219
236
  }
220
237
  }
221
-
222
238
  updateRelationships(newRelationships);
223
239
  };
224
240
 
@@ -285,6 +301,10 @@ function EdgeEditor({ selectedEdge }: EdgeEditorProps) {
285
301
  </div>
286
302
  ),
287
303
  },
304
+ {
305
+ id: REMOVE_DELEGATION_OPTION_ID,
306
+ label: <div className="my-0.5 leading-[22px]">None</div>,
307
+ },
288
308
  ]
289
309
  : [
290
310
  {
@@ -315,6 +335,10 @@ function EdgeEditor({ selectedEdge }: EdgeEditorProps) {
315
335
  </div>
316
336
  ),
317
337
  },
338
+ {
339
+ id: REMOVE_DELEGATION_OPTION_ID,
340
+ label: <div className="my-0.5 leading-[22px]">None</div>,
341
+ },
318
342
  ];
319
343
 
320
344
  return (
@@ -337,6 +361,7 @@ function EdgeEditor({ selectedEdge }: EdgeEditorProps) {
337
361
  checkedValues={selectedEdge.data?.relationships as A2AEdgeData['relationships']}
338
362
  useRadio={true}
339
363
  onRadioChange={handleDelegateRadioChange}
364
+ defaultRadioValue={REMOVE_DELEGATION_OPTION_ID}
340
365
  />
341
366
  <Separator />
342
367
  <div className="flex justify-end">
@@ -53,9 +53,8 @@ const ExecutionLimitInheritanceInfo = () => {
53
53
  };
54
54
 
55
55
  function MetadataEditor() {
56
- const params = useParams();
56
+ const { agentId, tenantId, projectId } = useParams();
57
57
  const metadata = useAgentStore((state) => state.metadata);
58
- const { agentId, tenantId, projectId } = params;
59
58
  const { id, name, description, contextConfig, models, stopWhen, prompt, statusUpdates } =
60
59
  metadata;
61
60
  const { PUBLIC_INKEEP_AGENTS_RUN_API_URL } = useRuntimeConfig();