@inkeep/agents-manage-ui 0.15.0 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (439) hide show
  1. package/.next/standalone/agents-manage-ui/.next/BUILD_ID +1 -1
  2. package/.next/standalone/agents-manage-ui/.next/app-build-manifest.json +424 -416
  3. package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +5 -5
  4. package/.next/standalone/agents-manage-ui/.next/build-manifest.json +5 -5
  5. package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +13 -13
  6. package/.next/standalone/agents-manage-ui/.next/react-loadable-manifest.json +38 -38
  7. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +2 -2
  8. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js.nft.json +1 -1
  9. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
  10. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
  11. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js.nft.json +1 -1
  12. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
  13. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +1 -1
  14. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
  15. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
  16. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +2 -2
  17. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
  18. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
  19. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
  20. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js.nft.json +1 -1
  21. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
  22. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -2
  23. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js.nft.json +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.js.nft.json +1 -1
  27. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
  28. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +2 -2
  29. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js.nft.json +1 -1
  30. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
  31. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +1 -1
  32. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js.nft.json +1 -1
  33. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
  34. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
  35. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js.nft.json +1 -1
  36. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
  37. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +1 -1
  38. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js.nft.json +1 -1
  39. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
  40. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
  41. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
  42. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
  43. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
  44. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js.nft.json +1 -1
  45. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
  46. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
  47. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js.nft.json +1 -1
  48. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
  49. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page.js +2 -2
  50. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page.js.nft.json +1 -1
  51. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page_client-reference-manifest.js +1 -1
  52. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page.js +2 -2
  53. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page.js.nft.json +1 -1
  54. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page_client-reference-manifest.js +1 -1
  55. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page.js +2 -2
  56. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page.js.nft.json +1 -1
  57. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page_client-reference-manifest.js +1 -1
  58. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
  59. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js.nft.json +1 -1
  60. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
  61. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
  62. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js.nft.json +1 -1
  63. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
  64. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
  65. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js.nft.json +1 -1
  66. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
  67. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
  68. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js.nft.json +1 -1
  69. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
  70. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +2 -2
  71. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js.nft.json +1 -1
  72. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
  73. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
  74. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js.nft.json +1 -1
  75. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
  76. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +2 -2
  77. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
  78. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
  79. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +3 -3
  80. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js.nft.json +1 -1
  81. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
  82. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +3 -3
  83. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
  84. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
  85. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +2 -2
  86. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js.nft.json +1 -1
  87. package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
  88. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +2 -2
  89. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js.nft.json +1 -1
  90. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  91. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
  92. package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +9 -9
  93. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route.js +2 -2
  94. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route.js.nft.json +1 -1
  95. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
  96. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route.js +1 -1
  97. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route.js.nft.json +1 -1
  98. package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
  99. package/.next/standalone/agents-manage-ui/.next/server/app/page.js +2 -2
  100. package/.next/standalone/agents-manage-ui/.next/server/app/page.js.nft.json +1 -1
  101. package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
  102. package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +5 -5
  103. package/.next/standalone/agents-manage-ui/.next/server/chunks/127.js +21 -0
  104. package/.next/standalone/agents-manage-ui/.next/server/chunks/1434.js +1 -0
  105. package/.next/standalone/agents-manage-ui/.next/server/chunks/1518.js +1 -0
  106. package/.next/standalone/agents-manage-ui/.next/server/chunks/1616.js +1 -0
  107. package/.next/standalone/agents-manage-ui/.next/server/chunks/1670.js +1 -1
  108. package/.next/standalone/agents-manage-ui/.next/server/chunks/2067.js +11 -0
  109. package/.next/standalone/agents-manage-ui/.next/server/chunks/2408.js +211 -0
  110. package/.next/standalone/agents-manage-ui/.next/server/chunks/2539.js +29 -13
  111. package/.next/standalone/agents-manage-ui/.next/server/chunks/276.js +61 -0
  112. package/.next/standalone/agents-manage-ui/.next/server/chunks/2854.js +1 -1
  113. package/.next/standalone/agents-manage-ui/.next/server/chunks/3388.js +1 -0
  114. package/.next/standalone/agents-manage-ui/.next/server/chunks/3547.js +1 -1
  115. package/.next/standalone/agents-manage-ui/.next/server/chunks/3856.js +1 -0
  116. package/.next/standalone/agents-manage-ui/.next/server/chunks/3948.js +1 -1
  117. package/.next/standalone/agents-manage-ui/.next/server/chunks/425.js +1 -1
  118. package/.next/standalone/agents-manage-ui/.next/server/chunks/4605.js +1 -1
  119. package/.next/standalone/agents-manage-ui/.next/server/chunks/5076.js +1 -0
  120. package/.next/standalone/agents-manage-ui/.next/server/chunks/5294.js +1 -1
  121. package/.next/standalone/agents-manage-ui/.next/server/chunks/{6957.js → 5450.js} +3 -3
  122. package/.next/standalone/agents-manage-ui/.next/server/chunks/5650.js +1 -0
  123. package/.next/standalone/agents-manage-ui/.next/server/chunks/5797.js +2 -2
  124. package/.next/standalone/agents-manage-ui/.next/server/chunks/5864.js +1 -1
  125. package/.next/standalone/agents-manage-ui/.next/server/chunks/5922.js +7 -0
  126. package/.next/standalone/agents-manage-ui/.next/server/chunks/6041.js +1 -0
  127. package/.next/standalone/agents-manage-ui/.next/server/chunks/6116.js +1 -1
  128. package/.next/standalone/agents-manage-ui/.next/server/chunks/6212.js +1 -1
  129. package/.next/standalone/agents-manage-ui/.next/server/chunks/6503.js +1 -0
  130. package/.next/standalone/agents-manage-ui/.next/server/chunks/6721.js +3 -3
  131. package/.next/standalone/agents-manage-ui/.next/server/chunks/6747.js +1 -10
  132. package/.next/standalone/agents-manage-ui/.next/server/chunks/679.js +1 -1
  133. package/.next/standalone/agents-manage-ui/.next/server/chunks/6796.js +1 -0
  134. package/.next/standalone/agents-manage-ui/.next/server/chunks/6997.js +1 -0
  135. package/.next/standalone/agents-manage-ui/.next/server/chunks/7024.js +1 -1
  136. package/.next/standalone/agents-manage-ui/.next/server/chunks/7165.js +26 -0
  137. package/.next/standalone/agents-manage-ui/.next/server/chunks/7177.js +1 -0
  138. package/.next/standalone/agents-manage-ui/.next/server/chunks/720.js +1 -1
  139. package/.next/standalone/agents-manage-ui/.next/server/chunks/726.js +1 -1
  140. package/.next/standalone/agents-manage-ui/.next/server/chunks/7269.js +1 -0
  141. package/.next/standalone/agents-manage-ui/.next/server/chunks/{2606.js → 7426.js} +1 -1
  142. package/.next/standalone/agents-manage-ui/.next/server/chunks/7457.js +10 -0
  143. package/.next/standalone/agents-manage-ui/.next/server/chunks/7585.js +1 -0
  144. package/.next/standalone/agents-manage-ui/.next/server/chunks/7683.js +1 -0
  145. package/.next/standalone/agents-manage-ui/.next/server/chunks/7989.js +1 -0
  146. package/.next/standalone/agents-manage-ui/.next/server/chunks/8048.js +1 -1
  147. package/.next/standalone/agents-manage-ui/.next/server/chunks/8212.js +1 -1
  148. package/.next/standalone/agents-manage-ui/.next/server/chunks/8321.js +1 -1
  149. package/.next/standalone/agents-manage-ui/.next/server/chunks/8475.js +20 -0
  150. package/.next/standalone/agents-manage-ui/.next/server/chunks/8717.js +4087 -0
  151. package/.next/standalone/agents-manage-ui/.next/server/chunks/8727.js +1 -1
  152. package/.next/standalone/agents-manage-ui/.next/server/chunks/8742.js +1 -1
  153. package/.next/standalone/agents-manage-ui/.next/server/chunks/8832.js +1 -1
  154. package/.next/standalone/agents-manage-ui/.next/server/chunks/8884.js +4 -1
  155. package/.next/standalone/agents-manage-ui/.next/server/chunks/9221.js +1 -0
  156. package/.next/standalone/agents-manage-ui/.next/server/chunks/9235.js +1 -1
  157. package/.next/standalone/agents-manage-ui/.next/server/chunks/9815.js +1 -1
  158. package/.next/standalone/agents-manage-ui/.next/server/middleware-build-manifest.js +1 -1
  159. package/.next/standalone/agents-manage-ui/.next/server/middleware-react-loadable-manifest.js +1 -1
  160. package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
  161. package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +1 -1
  162. package/.next/standalone/agents-manage-ui/.next/server/pages-manifest.json +1 -1
  163. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
  164. package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
  165. package/.next/standalone/agents-manage-ui/.next/static/chunks/1405-3d85d23533ac6db2.js +1 -0
  166. package/.next/standalone/agents-manage-ui/.next/static/chunks/1558-1902ff84dafc5b8f.js +1 -0
  167. package/.next/standalone/agents-manage-ui/.next/static/chunks/1902-5f7e6f890c56fd5e.js +1 -0
  168. package/.next/standalone/agents-manage-ui/.next/static/chunks/1906-7edc57a875e3f637.js +1 -0
  169. package/.next/standalone/agents-manage-ui/.next/static/chunks/1916-97e7964ff1873f04.js +1 -0
  170. package/.next/standalone/agents-manage-ui/.next/static/chunks/2092-eb2102222c483d4b.js +7 -0
  171. package/.next/standalone/agents-manage-ui/.next/static/chunks/230-e00b347e7fa8192b.js +1 -0
  172. package/.next/standalone/agents-manage-ui/.next/static/chunks/2327-47c2efb7e68a3a64.js +1 -0
  173. package/.next/standalone/agents-manage-ui/.next/static/chunks/{2501-85880c1e62f3270a.js → 2501-45440e2c111488cb.js} +1 -1
  174. package/.next/standalone/agents-manage-ui/.next/static/chunks/2947.33c815aac92bf675.js +1 -0
  175. package/.next/standalone/agents-manage-ui/.next/static/chunks/3802.60ebababbed6635a.js +24 -0
  176. package/.next/standalone/agents-manage-ui/.next/static/chunks/3943.05fb6032ee56342e.js +1 -0
  177. package/.next/standalone/agents-manage-ui/.next/static/chunks/4101.e12eb22d4869a078.js +43 -0
  178. package/.next/standalone/agents-manage-ui/.next/static/chunks/4167-6e2ebf97b76ecf07.js +1 -0
  179. package/.next/standalone/agents-manage-ui/.next/static/chunks/4244-3aeb1f17a6512e46.js +1 -0
  180. package/.next/standalone/agents-manage-ui/.next/static/chunks/4380.a70de60979c0b24c.js +1 -0
  181. package/.next/standalone/agents-manage-ui/.next/static/chunks/4445-ac4f162b12731ad3.js +1 -0
  182. package/.next/standalone/agents-manage-ui/.next/static/chunks/4510-b1e4449b69c314b1.js +1 -0
  183. package/.next/standalone/agents-manage-ui/.next/static/chunks/{4229.8460547691a15bed.js → 4698.d0f44a1901da1e58.js} +6 -6
  184. package/.next/standalone/agents-manage-ui/.next/static/chunks/4708-47c2efb7e68a3a64.js +1 -0
  185. package/.next/standalone/agents-manage-ui/.next/static/chunks/4786.4cf4811a45c86c6e.js +63 -0
  186. package/.next/standalone/agents-manage-ui/.next/static/chunks/4880.a17273d067c06fb1.js +1 -0
  187. package/.next/standalone/agents-manage-ui/.next/static/chunks/4957-eb8c2b2357c2a78d.js +1 -0
  188. package/.next/standalone/agents-manage-ui/.next/static/chunks/4f68d2c2-0b7d67fcc83f7b6e.js +1 -0
  189. package/.next/standalone/agents-manage-ui/.next/static/chunks/5188-f7764a58cbc7416d.js +1 -0
  190. package/.next/standalone/agents-manage-ui/.next/static/chunks/5252.7d390fbdcb5f4cbc.js +1 -0
  191. package/.next/standalone/agents-manage-ui/.next/static/chunks/5763-74a168a5f84761f7.js +1 -0
  192. package/.next/standalone/agents-manage-ui/.next/static/chunks/5809-b9f93e5ead5ab206.js +1 -0
  193. package/.next/standalone/agents-manage-ui/.next/static/chunks/{5929.e9603f345807d0b1.js → 5929.4b73bd08ca9773be.js} +1 -1
  194. package/.next/standalone/agents-manage-ui/.next/static/chunks/6303-13576c46bcf7491d.js +25 -0
  195. package/.next/standalone/agents-manage-ui/.next/static/chunks/64ea4822-bc4cc13ff3d9e51a.js +1 -0
  196. package/.next/standalone/agents-manage-ui/.next/static/chunks/6507-d535f4c136d62561.js +2 -0
  197. package/.next/standalone/agents-manage-ui/.next/static/chunks/6649-7055c690296e6bd7.js +1 -0
  198. package/.next/standalone/agents-manage-ui/.next/static/chunks/6999-08a650d82fe142b8.js +20 -0
  199. package/.next/standalone/agents-manage-ui/.next/static/chunks/7167-6976d39ec7f6ac78.js +1 -0
  200. package/.next/standalone/agents-manage-ui/.next/static/chunks/7565-47c2efb7e68a3a64.js +1 -0
  201. package/.next/standalone/agents-manage-ui/.next/static/chunks/773.8158cbbe8f7154a4.js +1 -0
  202. package/.next/standalone/agents-manage-ui/.next/static/chunks/7775-a5a671900cf6b566.js +1 -0
  203. package/.next/standalone/agents-manage-ui/.next/static/chunks/7812-4e6561b17e62ca3d.js +1 -0
  204. package/.next/standalone/agents-manage-ui/.next/static/chunks/8003-441e723f2477b9b0.js +197 -0
  205. package/.next/standalone/agents-manage-ui/.next/static/chunks/{8197-93dc03bb0bdcd89b.js → 8197-25120aae7b35c5c6.js} +1 -1
  206. package/.next/standalone/agents-manage-ui/.next/static/chunks/8249-7cdd72c83cae4dcb.js +1 -0
  207. package/.next/standalone/agents-manage-ui/.next/static/chunks/8266-d06f452cd81d0518.js +1 -0
  208. package/.next/standalone/agents-manage-ui/.next/static/chunks/{645-18422068b91714c4.js → 8430-2d2f75d518393a7d.js} +1 -1
  209. package/.next/standalone/agents-manage-ui/.next/static/chunks/{8444.7864e443bafd6d1c.js → 8444.68c888789241ee31.js} +1 -1
  210. package/.next/standalone/agents-manage-ui/.next/static/chunks/8467-dd9ac18eb87f3c69.js +1 -0
  211. package/.next/standalone/agents-manage-ui/.next/static/chunks/8616.65ba9cec5fdd761a.js +24 -0
  212. package/.next/standalone/agents-manage-ui/.next/static/chunks/{26ad7772-cc27a89d8e005d3f.js → 869872cd-49ad39a4beb2445b.js} +1 -1
  213. package/.next/standalone/agents-manage-ui/.next/static/chunks/{8831-4edf015fab6c8a62.js → 8831-49777a8a731c0173.js} +1 -1
  214. package/.next/standalone/agents-manage-ui/.next/static/chunks/8873.92eaf7254e471e1c.js +1 -0
  215. package/.next/standalone/agents-manage-ui/.next/static/chunks/8988-0b24ec45fae98d4b.js +1 -0
  216. package/.next/standalone/agents-manage-ui/.next/static/chunks/9380-aaf892de452319c9.js +2 -0
  217. package/.next/standalone/agents-manage-ui/.next/static/chunks/9529-2d77e5bef96b23e9.js +1 -0
  218. package/.next/standalone/agents-manage-ui/.next/static/chunks/9748.3660cca522247ff0.js +1 -0
  219. package/.next/standalone/agents-manage-ui/.next/static/chunks/{9814.a4a28b324a9159e2.js → 9814.94e448878a25ac08.js} +2 -2
  220. package/.next/standalone/agents-manage-ui/.next/static/chunks/9858-1e1f5164b005b5d5.js +1 -0
  221. package/.next/standalone/agents-manage-ui/.next/static/chunks/9860-8536a6eec72e4370.js +1 -0
  222. package/.next/standalone/agents-manage-ui/.next/static/chunks/9946-47c2efb7e68a3a64.js +1 -0
  223. package/.next/standalone/agents-manage-ui/.next/static/chunks/{c222bd80-0514e3312bf9c78f.js → 9f915ca0-321a1a2664e96060.js} +1 -1
  224. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/{error-98ca4c8d51368705.js → error-a4822bb605736375.js} +1 -1
  225. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-3f77732c28eac5b2.js +1 -0
  226. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/{error-ef3511a0253a1330.js → error-3864b5a1f5cc7302.js} +1 -1
  227. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-2ff4e9110b97be98.js +1 -0
  228. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/{error-0672656e9e678998.js → error-19bb2aa5cdaaff99.js} +1 -1
  229. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/loading-89fe75b3b7575a9c.js +1 -0
  230. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-2ff4e9110b97be98.js +1 -0
  231. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-98a9696e4a55253f.js +1 -0
  232. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{error-be8b5708f23d2e43.js → error-98a33adec29f93fe.js} +1 -1
  233. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-7a7b925b18cdfd93.js → page-8356cdab82213d08.js} +1 -1
  234. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/{error-3b86172a5fe22d1c.js → error-0e22cabe487490a9.js} +1 -1
  235. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/loading-89fe75b3b7575a9c.js +1 -0
  236. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/{page-7a7b925b18cdfd93.js → page-8356cdab82213d08.js} +1 -1
  237. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/{page-d92ba4a2b4ac984e.js → page-e09895dc62b61b6e.js} +1 -1
  238. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-5147f98b148f5a01.js +1 -0
  239. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/{error-30b8013604e83604.js → error-1f13cc4e89ec65bb.js} +1 -1
  240. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-c6663bec65b05b5e.js +1 -0
  241. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-89fe75b3b7575a9c.js +1 -0
  242. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/{page-a59bad5d4913fa77.js → page-f9a4450c8779c664.js} +1 -1
  243. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/page-93066be3852bcb7d.js +1 -0
  244. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-1c5769985850e2b3.js +1 -0
  245. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/[graphId]/{error-e6e8d53b544b7a3a.js → error-627bc925813d4c0e.js} +1 -1
  246. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/[graphId]/loading-d6b356cceaefdf5c.js +1 -0
  247. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page-1befa5c6752d0d34.js +1 -0
  248. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/{error-80ac013e2e0d39ec.js → error-81a5d2faf618e23a.js} +1 -1
  249. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/loading-89fe75b3b7575a9c.js +1 -0
  250. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/new/page-25b84b1e4e21a45f.js +1 -0
  251. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/page-524bf97da69dc1ab.js +1 -0
  252. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/{page-4498950740edb744.js → page-36229a249ec451f4.js} +1 -1
  253. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/{page-f92fa2fae8802a02.js → page-9153447bb5026249.js} +1 -1
  254. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/layout-d6b356cceaefdf5c.js +1 -0
  255. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-b43d9969547db312.js +1 -0
  256. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-12e152d8dd947a35.js +1 -0
  257. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{not-found-89770606dca36166.js → not-found-d01b3c88f2a32798.js} +1 -1
  258. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{error-eca20c06c32063db.js → error-77c7a93fdc65e128.js} +1 -1
  259. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/page-2c30ed902003a4cb.js +1 -0
  260. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/page-7782a4cf841a7e3f.js +1 -0
  261. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-e49e847d402ef20e.js +1 -0
  262. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-59ad0e44b2ea6daa.js +1 -0
  263. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/{error-f217058bf7db150a.js → error-e7e1d627b4279b71.js} +1 -1
  264. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-89fe75b3b7575a9c.js +1 -0
  265. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-dfb60f6296b75b84.js +1 -0
  266. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-7eb12014eb28697d.js +1 -0
  267. package/.next/standalone/agents-manage-ui/.next/static/chunks/webpack-c55841bbe3abf748.js +1 -0
  268. package/.next/standalone/agents-manage-ui/.next/static/css/a3435362caba0331.css +1 -0
  269. package/.next/standalone/agents-manage-ui/.next/static/css/{09dfadb69bdaa005.css → df64af30921ff372.css} +1 -1
  270. package/.next/standalone/agents-manage-ui/package.json +3 -3
  271. package/.next/standalone/packages/agents-core/package.json +3 -2
  272. package/package.json +6 -6
  273. package/src/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.tsx +2 -3
  274. package/src/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.tsx +5 -0
  275. package/src/app/api/signoz/conversations/[conversationId]/route.ts +17 -15
  276. package/src/app/api/signoz/route.ts +81 -4
  277. package/src/app/utils/active-tools.ts +2 -2
  278. package/src/components/artifact-components/form/artifact-component-form.tsx +18 -17
  279. package/src/components/artifact-components/form/form-configuration.tsx +1 -2
  280. package/src/components/artifact-components/form/validation.ts +13 -9
  281. package/src/components/credentials/credential-tools-list.tsx +6 -15
  282. package/src/components/credentials/views/credential-form.tsx +46 -46
  283. package/src/components/credentials/views/edit-credential-form.tsx +5 -1
  284. package/src/components/form/generic-input.tsx +3 -0
  285. package/src/components/form/generic-select.tsx +9 -1
  286. package/src/components/form/prompt-editor.tsx +3 -3
  287. package/src/components/form/standalone-json-editor.tsx +2 -2
  288. package/src/components/graph/configuration/graph-types.tsx +1 -3
  289. package/src/components/graph/configuration/node-types.tsx +23 -1
  290. package/src/components/graph/graph.tsx +56 -28
  291. package/src/components/graph/node-library/node-library.tsx +1 -0
  292. package/src/components/graph/nodes/function-tool-node.tsx +32 -0
  293. package/src/components/graph/nodes/mcp-node.tsx +1 -1
  294. package/src/components/graph/playground/chat-widget.tsx +40 -9
  295. package/src/components/graph/playground/ikp-message.tsx +1 -1
  296. package/src/components/graph/playground/playground.tsx +1 -0
  297. package/src/components/graph/sidepane/metadata/context-config.tsx +5 -40
  298. package/src/components/graph/sidepane/nodes/expandable-text-area.tsx +7 -9
  299. package/src/components/graph/sidepane/nodes/function-tool-node-editor.tsx +194 -0
  300. package/src/components/graph/sidepane/nodes/mcp-node-editor.tsx +2 -2
  301. package/src/components/graph/sidepane/nodes/mcp-selector/mcp-server-item.tsx +2 -2
  302. package/src/components/graph/sidepane/sidepane.tsx +7 -0
  303. package/src/components/graph/toolbar/toolbar.tsx +8 -8
  304. package/src/components/mcp-servers/available-tools-card.tsx +1 -1
  305. package/src/components/mcp-servers/mcp-tool-item.tsx +2 -2
  306. package/src/components/mcp-servers/view-mcp-server-details.tsx +10 -9
  307. package/src/components/projects/form/form-configuration.ts +6 -0
  308. package/src/components/projects/form/project-form.tsx +40 -0
  309. package/src/components/projects/form/project-sandbox-section.tsx +139 -0
  310. package/src/components/projects/form/validation.ts +4 -0
  311. package/src/components/traces/timeline/render-panel-content.tsx +24 -105
  312. package/src/components/traces/timeline/timeline-item.tsx +24 -25
  313. package/src/components/traces/timeline/timeline-wrapper.tsx +42 -12
  314. package/src/components/traces/traces-overview.tsx +48 -27
  315. package/src/constants/signoz.ts +1 -1
  316. package/src/features/graph/domain/__tests__/roundtrip.test.ts +2 -6
  317. package/src/features/graph/domain/__tests__/serialize.test.ts +4 -4
  318. package/src/features/graph/domain/deserialize.ts +40 -6
  319. package/src/features/graph/domain/graph-initializer-helpers.ts +3 -5
  320. package/src/features/graph/domain/serialize.ts +76 -17
  321. package/src/features/graph/state/use-graph-store.ts +1 -3
  322. package/src/hooks/use-signoz-config.ts +36 -0
  323. package/src/lib/__tests__/context-suggestions.test.ts +6 -6
  324. package/src/lib/api/artifact-components.ts +10 -32
  325. package/src/lib/api/tools.ts +2 -1
  326. package/src/lib/context-suggestions.ts +6 -6
  327. package/src/lib/json-schema-validation.ts +2 -2
  328. package/src/lib/types/graph-full.ts +37 -16
  329. package/src/lib/utils/graph-error-parser.ts +1 -1
  330. package/src/lib/utils/orphaned-tools-detector.ts +1 -1
  331. package/.next/standalone/agents-manage-ui/.next/server/chunks/1288.js +0 -1
  332. package/.next/standalone/agents-manage-ui/.next/server/chunks/1720.js +0 -4
  333. package/.next/standalone/agents-manage-ui/.next/server/chunks/195.js +0 -21
  334. package/.next/standalone/agents-manage-ui/.next/server/chunks/2415.js +0 -1
  335. package/.next/standalone/agents-manage-ui/.next/server/chunks/245.js +0 -55
  336. package/.next/standalone/agents-manage-ui/.next/server/chunks/2450.js +0 -1
  337. package/.next/standalone/agents-manage-ui/.next/server/chunks/2463.js +0 -20
  338. package/.next/standalone/agents-manage-ui/.next/server/chunks/2496.js +0 -1
  339. package/.next/standalone/agents-manage-ui/.next/server/chunks/3485.js +0 -1
  340. package/.next/standalone/agents-manage-ui/.next/server/chunks/3538.js +0 -1
  341. package/.next/standalone/agents-manage-ui/.next/server/chunks/4843.js +0 -1
  342. package/.next/standalone/agents-manage-ui/.next/server/chunks/5058.js +0 -1
  343. package/.next/standalone/agents-manage-ui/.next/server/chunks/5518.js +0 -1
  344. package/.next/standalone/agents-manage-ui/.next/server/chunks/5552.js +0 -1
  345. package/.next/standalone/agents-manage-ui/.next/server/chunks/5716.js +0 -20
  346. package/.next/standalone/agents-manage-ui/.next/server/chunks/5893.js +0 -25
  347. package/.next/standalone/agents-manage-ui/.next/server/chunks/6007.js +0 -1
  348. package/.next/standalone/agents-manage-ui/.next/server/chunks/6333.js +0 -1
  349. package/.next/standalone/agents-manage-ui/.next/server/chunks/6525.js +0 -4087
  350. package/.next/standalone/agents-manage-ui/.next/server/chunks/7346.js +0 -1
  351. package/.next/standalone/agents-manage-ui/.next/server/chunks/7707.js +0 -1
  352. package/.next/standalone/agents-manage-ui/.next/server/chunks/7862.js +0 -1
  353. package/.next/standalone/agents-manage-ui/.next/server/chunks/8100.js +0 -211
  354. package/.next/standalone/agents-manage-ui/.next/server/chunks/8294.js +0 -1
  355. package/.next/standalone/agents-manage-ui/.next/server/chunks/8314.js +0 -1
  356. package/.next/standalone/agents-manage-ui/.next/server/chunks/9128.js +0 -1
  357. package/.next/standalone/agents-manage-ui/.next/server/chunks/9340.js +0 -1
  358. package/.next/standalone/agents-manage-ui/.next/server/chunks/9490.js +0 -1
  359. package/.next/standalone/agents-manage-ui/.next/server/chunks/9659.js +0 -1
  360. package/.next/standalone/agents-manage-ui/.next/static/chunks/102-7512914c45c3b1c7.js +0 -1
  361. package/.next/standalone/agents-manage-ui/.next/static/chunks/1191-22286038e3cf98ee.js +0 -1
  362. package/.next/standalone/agents-manage-ui/.next/static/chunks/1482-9b4bf21cc7c344fc.js +0 -1
  363. package/.next/standalone/agents-manage-ui/.next/static/chunks/1558-f09ec7786b6ad866.js +0 -1
  364. package/.next/standalone/agents-manage-ui/.next/static/chunks/1604.5c14717292e6bd99.js +0 -1
  365. package/.next/standalone/agents-manage-ui/.next/static/chunks/1736-6a4a9b76c41bb120.js +0 -1
  366. package/.next/standalone/agents-manage-ui/.next/static/chunks/1771-5ceaf6a0f3601ad4.js +0 -1
  367. package/.next/standalone/agents-manage-ui/.next/static/chunks/1830.703ab2b09936da70.js +0 -1
  368. package/.next/standalone/agents-manage-ui/.next/static/chunks/1894.e4de443956283938.js +0 -1
  369. package/.next/standalone/agents-manage-ui/.next/static/chunks/1907-4a95aef238167de5.js +0 -1
  370. package/.next/standalone/agents-manage-ui/.next/static/chunks/225-12afe2ed1ce8f747.js +0 -1
  371. package/.next/standalone/agents-manage-ui/.next/static/chunks/2334-9c0d908003b40bcd.js +0 -1
  372. package/.next/standalone/agents-manage-ui/.next/static/chunks/24a2b255-903019441fb58706.js +0 -1
  373. package/.next/standalone/agents-manage-ui/.next/static/chunks/2597-b309d80128db51fe.js +0 -20
  374. package/.next/standalone/agents-manage-ui/.next/static/chunks/2811-5cbe9d781cd0bafb.js +0 -1
  375. package/.next/standalone/agents-manage-ui/.next/static/chunks/3562.2ce66b7f59b86e19.js +0 -1
  376. package/.next/standalone/agents-manage-ui/.next/static/chunks/3737-2a02432078b2f2f0.js +0 -1
  377. package/.next/standalone/agents-manage-ui/.next/static/chunks/3802.835e425d6843e779.js +0 -24
  378. package/.next/standalone/agents-manage-ui/.next/static/chunks/397-611c044fe87d89cd.js +0 -1
  379. package/.next/standalone/agents-manage-ui/.next/static/chunks/4101.482e37ad7b4d8b59.js +0 -43
  380. package/.next/standalone/agents-manage-ui/.next/static/chunks/4492-20e1ab26a989aec8.js +0 -1
  381. package/.next/standalone/agents-manage-ui/.next/static/chunks/4786.8e2bd3c6084b0d83.js +0 -63
  382. package/.next/standalone/agents-manage-ui/.next/static/chunks/4a1e02d9-c537fee21142b0db.js +0 -1
  383. package/.next/standalone/agents-manage-ui/.next/static/chunks/5052.aa398bbfbdf4a25b.js +0 -1
  384. package/.next/standalone/agents-manage-ui/.next/static/chunks/6118-2a02432078b2f2f0.js +0 -1
  385. package/.next/standalone/agents-manage-ui/.next/static/chunks/6410-f93d663c6ef0d128.js +0 -2
  386. package/.next/standalone/agents-manage-ui/.next/static/chunks/6419-cc97e3d16c7907dd.js +0 -1
  387. package/.next/standalone/agents-manage-ui/.next/static/chunks/6497-64d489b4b3b89b0a.js +0 -1
  388. package/.next/standalone/agents-manage-ui/.next/static/chunks/6501-2c90923d1b2f0f3e.js +0 -1
  389. package/.next/standalone/agents-manage-ui/.next/static/chunks/6992.d83965ff53297d6a.js +0 -1
  390. package/.next/standalone/agents-manage-ui/.next/static/chunks/7167-7f56dcb4d30b0d06.js +0 -1
  391. package/.next/standalone/agents-manage-ui/.next/static/chunks/718.29e58bde611f434b.js +0 -1
  392. package/.next/standalone/agents-manage-ui/.next/static/chunks/7273-2a07799b9220335f.js +0 -1
  393. package/.next/standalone/agents-manage-ui/.next/static/chunks/7305-4bde6b1356d61f7a.js +0 -1
  394. package/.next/standalone/agents-manage-ui/.next/static/chunks/7548-72eac23478e21cf6.js +0 -25
  395. package/.next/standalone/agents-manage-ui/.next/static/chunks/773.40b145c0733f6112.js +0 -1
  396. package/.next/standalone/agents-manage-ui/.next/static/chunks/776-1b93689bfa34311b.js +0 -1
  397. package/.next/standalone/agents-manage-ui/.next/static/chunks/7775-846c2c087ca8b724.js +0 -1
  398. package/.next/standalone/agents-manage-ui/.next/static/chunks/7829-0a56074397c08ece.js +0 -1
  399. package/.next/standalone/agents-manage-ui/.next/static/chunks/7904-825c751bfba62e0d.js +0 -1
  400. package/.next/standalone/agents-manage-ui/.next/static/chunks/8057-4851dad2e4c79710.js +0 -2
  401. package/.next/standalone/agents-manage-ui/.next/static/chunks/8096-7bededbba20a8c6d.js +0 -1
  402. package/.next/standalone/agents-manage-ui/.next/static/chunks/8098-ddd83ff45bfe3a5d.js +0 -197
  403. package/.next/standalone/agents-manage-ui/.next/static/chunks/8130-05473727afa10148.js +0 -1
  404. package/.next/standalone/agents-manage-ui/.next/static/chunks/8467-977d32f1b1634139.js +0 -1
  405. package/.next/standalone/agents-manage-ui/.next/static/chunks/8499-2a02432078b2f2f0.js +0 -1
  406. package/.next/standalone/agents-manage-ui/.next/static/chunks/8616.ea1f6008d83a0711.js +0 -24
  407. package/.next/standalone/agents-manage-ui/.next/static/chunks/880-2a02432078b2f2f0.js +0 -1
  408. package/.next/standalone/agents-manage-ui/.next/static/chunks/9425-43d6833e2edd012c.js +0 -1
  409. package/.next/standalone/agents-manage-ui/.next/static/chunks/9846-e037fda0c364e432.js +0 -1
  410. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-08055bb8e4382446.js +0 -1
  411. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-d9490f6b6f579170.js +0 -1
  412. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/loading-0afec83059c372f2.js +0 -1
  413. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-d9490f6b6f579170.js +0 -1
  414. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/page-74a91afbcd7ed8fb.js +0 -1
  415. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/loading-0afec83059c372f2.js +0 -1
  416. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-8e935b1928cbd189.js +0 -1
  417. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-2ec81d74c5356465.js +0 -1
  418. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-0afec83059c372f2.js +0 -1
  419. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/page-9e9e45f4ed4671bd.js +0 -1
  420. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-84c46da56823c111.js +0 -1
  421. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/[graphId]/loading-cb0a860db0fa369e.js +0 -1
  422. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page-1eb60b0e4938c014.js +0 -1
  423. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/loading-0afec83059c372f2.js +0 -1
  424. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/new/page-c5b98195dd79bb1b.js +0 -1
  425. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/page-158b4e4e3a38ab44.js +0 -1
  426. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/layout-cb0a860db0fa369e.js +0 -1
  427. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-946383d2e06948f8.js +0 -1
  428. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/page-5dcaab857d668f9c.js +0 -1
  429. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/page-c6c8dab9e2bf498d.js +0 -1
  430. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/page-e1fbd32969de96cb.js +0 -1
  431. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-9eaf84488f4f9f65.js +0 -1
  432. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-8f75d39c519a0275.js +0 -1
  433. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-0afec83059c372f2.js +0 -1
  434. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-e5d5c9a0e199dbf1.js +0 -1
  435. package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-0d1a9bb089c95c35.js +0 -1
  436. package/.next/standalone/agents-manage-ui/.next/static/chunks/webpack-b20dc8e12f728891.js +0 -1
  437. package/.next/standalone/agents-manage-ui/.next/static/css/ad6f03aa74529d84.css +0 -1
  438. /package/.next/standalone/agents-manage-ui/.next/static/{ysAmL8fwnhlbMOx-TKHjN → zCyXob78JMEB3IDoUAavP}/_buildManifest.js +0 -0
  439. /package/.next/standalone/agents-manage-ui/.next/static/{ysAmL8fwnhlbMOx-TKHjN → zCyXob78JMEB3IDoUAavP}/_ssgManifest.js +0 -0
@@ -107,7 +107,7 @@ export function TimelineItem({
107
107
  const textColorClass =
108
108
  activity.status === 'error'
109
109
  ? 'text-red-500 hover:text-red-700'
110
- : 'text-foreground hover:text-primary';
110
+ : 'text-foreground hover:text-primary';
111
111
 
112
112
  return (
113
113
  <div className={`flex flex-col text-muted-foreground relative text-xs`}>
@@ -392,8 +392,8 @@ export function TimelineItem({
392
392
 
393
393
  {/* ai.telemetry.functionId badge for ai.toolCall spans that aren't delegate or transfers */}
394
394
  {activity.type === ACTIVITY_TYPES.TOOL_CALL &&
395
- activity.aiTelemetryFunctionId &&
396
- activity.toolType !== 'delegation' &&
395
+ activity.aiTelemetryFunctionId &&
396
+ activity.toolType !== 'delegation' &&
397
397
  activity.toolType !== 'transfer' && (
398
398
  <div className="mb-1">
399
399
  <Badge variant="code" className="text-xs">
@@ -403,29 +403,28 @@ export function TimelineItem({
403
403
  )}
404
404
 
405
405
  {/* Error display for failed AI/Agent generations */}
406
- {(activity.hasError) &&
407
- activity.otelStatusDescription && (
408
- <div className="space-y-2">
409
- <button
410
- type="button"
411
- onClick={() => onToggleAiMessageCollapse && onToggleAiMessageCollapse(activity.id)}
412
- className="flex items-center gap-1 text-xs text-red-500 hover:text-red-600 transition-colors"
413
- title={isAiMessageCollapsed ? 'Expand error message' : 'Collapse error message'}
414
- >
415
- {isAiMessageCollapsed ? (
416
- <ChevronRight className="h-3 w-3" />
417
- ) : (
418
- <ChevronDown className="h-3 w-3" />
419
- )}
420
- Error Details
421
- </button>
422
- {!isAiMessageCollapsed && (
423
- <Bubble className="bg-red-50 border-red-200 text-red-800 dark:bg-red-900/20 dark:border-red-800 dark:text-red-300">
424
- {activity.otelStatusDescription}
425
- </Bubble>
406
+ {activity.hasError && activity.otelStatusDescription && (
407
+ <div className="space-y-2">
408
+ <button
409
+ type="button"
410
+ onClick={() => onToggleAiMessageCollapse?.(activity.id)}
411
+ className="flex items-center gap-1 text-xs text-red-500 hover:text-red-600 transition-colors"
412
+ title={isAiMessageCollapsed ? 'Expand error message' : 'Collapse error message'}
413
+ >
414
+ {isAiMessageCollapsed ? (
415
+ <ChevronRight className="h-3 w-3" />
416
+ ) : (
417
+ <ChevronDown className="h-3 w-3" />
426
418
  )}
427
- </div>
428
- )}
419
+ Error Details
420
+ </button>
421
+ {!isAiMessageCollapsed && (
422
+ <Bubble className="bg-red-50 border-red-200 text-red-800 dark:bg-red-900/20 dark:border-red-800 dark:text-red-300">
423
+ {activity.otelStatusDescription}
424
+ </Bubble>
425
+ )}
426
+ </div>
427
+ )}
429
428
 
430
429
  <time
431
430
  className="text-xs mb-2 inline-block text-gray-500 dark:text-white/50"
@@ -1,5 +1,5 @@
1
1
  import { AlertTriangle, ChevronDown, ChevronUp, Loader2, RefreshCw } from 'lucide-react';
2
- import { useCallback, useEffect, useMemo, useState } from 'react';
2
+ import { useCallback, useEffect, useMemo, useRef, useState } from 'react';
3
3
  import { toast } from 'sonner';
4
4
  import { StickToBottom } from 'use-stick-to-bottom';
5
5
  import { ConversationTracesLink } from '@/components/traces/signoz-link';
@@ -224,19 +224,49 @@ export function TimelineWrapper({
224
224
  .map((activity) => activity.id);
225
225
  }, [sortedActivities]);
226
226
 
227
- // Initialize AI messages based on view type when activities change
227
+ // Track which messages we've already processed
228
+ const processedIdsRef = useRef<Set<string>>(new Set());
229
+ const lastConversationRef = useRef<string | undefined>(undefined);
230
+
228
231
  useEffect(() => {
229
- if (enableAutoScroll) {
230
- // Live trace view: collapse all AI messages
231
- setCollapsedAiMessages(new Set(aiMessageIds));
232
- setAiMessagesGloballyCollapsed(true);
233
- } else {
234
- // Conversation details view: collapse only ai.streamText.doStream spans
235
- setCollapsedAiMessages(new Set(streamTextIds));
236
- setAiMessagesGloballyCollapsed(streamTextIds.length === aiMessageIds.length);
232
+ // Reset when conversation changes
233
+ if (conversationId !== lastConversationRef.current) {
234
+ lastConversationRef.current = conversationId;
235
+ processedIdsRef.current = new Set();
236
+ setCollapsedAiMessages(new Set());
237
+ setAiMessagesGloballyCollapsed(false);
237
238
  }
238
- }, [aiMessageIds, streamTextIds, enableAutoScroll]);
239
-
239
+
240
+ // Determine which IDs to auto-collapse based on view type
241
+ const idsToProcess = enableAutoScroll ? aiMessageIds : streamTextIds;
242
+
243
+ // Find new IDs that haven't been processed yet
244
+ const newIds = idsToProcess.filter(id => !processedIdsRef.current.has(id));
245
+
246
+ if (newIds.length > 0) {
247
+ // Mark these as processed
248
+ newIds.forEach(id => {
249
+ processedIdsRef.current.add(id);
250
+ });
251
+
252
+ // Add new IDs to collapsed set
253
+ setCollapsedAiMessages(prev => {
254
+ const updated = new Set(prev);
255
+ newIds.forEach(id => {
256
+ updated.add(id);
257
+ });
258
+ return updated;
259
+ });
260
+ // Update global state
261
+ const allProcessed = idsToProcess.every(id => processedIdsRef.current.has(id));
262
+ if (enableAutoScroll) {
263
+ setAiMessagesGloballyCollapsed(allProcessed && aiMessageIds.length > 0);
264
+ } else {
265
+ setAiMessagesGloballyCollapsed(allProcessed && streamTextIds.length === aiMessageIds.length && aiMessageIds.length > 0);
266
+ }
267
+ }
268
+ }, [conversationId, aiMessageIds, streamTextIds, enableAutoScroll]);
269
+
240
270
  // Functions to handle expand/collapse all (memoized to prevent unnecessary re-renders)
241
271
  const expandAllAiMessages = useCallback(() => {
242
272
  setCollapsedAiMessages(new Set());
@@ -1,11 +1,13 @@
1
1
  'use client';
2
2
 
3
- import { ArrowRightLeft, RefreshCw, SparklesIcon, Users, Wrench } from 'lucide-react';
3
+ import { AlertTriangle, ArrowRightLeft, SparklesIcon, Users, Wrench } from 'lucide-react';
4
4
  import { useParams, useRouter, useSearchParams } from 'next/navigation';
5
5
  import { useEffect, useMemo, useState } from 'react';
6
- import { Button } from '@/components/ui/button';
6
+ import { Alert, AlertDescription, AlertTitle } from '@/components/ui/alert';
7
7
  import { Card, CardContent } from '@/components/ui/card';
8
+ import { ExternalLink } from '@/components/ui/external-link';
8
9
  import { useAggregateStats, useConversationStats } from '@/hooks/use-traces';
10
+ import { useSignozConfig } from '@/hooks/use-signoz-config';
9
11
  import { type TimeRange, useTracesQueryState } from '@/hooks/use-traces-query-state';
10
12
  import { getSigNozStatsClient, type SpanFilterOptions } from '@/lib/api/signoz-stats';
11
13
  import { AreaChartCard } from './charts/area-chart-card';
@@ -14,6 +16,7 @@ import { ConversationStatsCard } from './conversation-stats/conversation-stats-c
14
16
  import { CUSTOM, DatePickerWithPresets } from './filters/date-picker';
15
17
  import { GraphFilter } from './filters/graph-filter';
16
18
  import { SpanFilters } from './filters/span-filters';
19
+ import { DOCS_BASE_URL } from '@/constants/page-descriptions';
17
20
 
18
21
  // Time range options
19
22
  const TIME_RANGES = {
@@ -42,6 +45,9 @@ export function TracesOverview({ refreshKey }: TracesOverviewProps) {
42
45
  setSpanFilter,
43
46
  } = useTracesQueryState();
44
47
 
48
+ // Check if Signoz is configured
49
+ const { isLoading: isSignozConfigLoading, configError: signozConfigError } = useSignozConfig();
50
+
45
51
  const [selectedGraph, setSelectedGraph] = useState<string | undefined>(undefined);
46
52
  const [searchQuery, setSearchQuery] = useState<string>('');
47
53
  const [debouncedSearchQuery, setDebouncedSearchQuery] = useState<string>('');
@@ -296,31 +302,46 @@ export function TracesOverview({ refreshKey }: TracesOverviewProps) {
296
302
 
297
303
  return (
298
304
  <div className="space-y-4">
299
- <div className="flex items-center justify-between">
300
- <div className="flex items-center gap-4">
301
- {/* Graph Filter */}
302
- <GraphFilter onSelect={setSelectedGraph} selectedValue={selectedGraph} />
303
- {/* Time Range Filter */}
304
- <DatePickerWithPresets
305
- label="Time range"
306
- onRemove={() => setSelectedTimeRange('15d')}
307
- value={
308
- selectedTimeRange === CUSTOM
309
- ? { from: customStartDate, to: customEndDate }
310
- : selectedTimeRange
311
- }
312
- onAdd={(value: TimeRange) => setSelectedTimeRange(value)}
313
- setCustomDateRange={(start: string, end: string) => setCustomDateRange(start, end)}
314
- options={Object.entries(TIME_RANGES).map(([value, config]) => ({
315
- value,
316
- label: config.label,
317
- }))}
318
- />
319
- </div>
320
- <Button variant="outline" size="sm" onClick={refresh}>
321
- <RefreshCw className="h-4 w-4" />
322
- Refresh
323
- </Button>
305
+ {/* Signoz Configuration Banner */}
306
+ {!isSignozConfigLoading && signozConfigError && (
307
+ <Alert variant="warning">
308
+ <AlertTriangle className="h-4 w-4" />
309
+ <AlertTitle>SigNoz Configuration Error</AlertTitle>
310
+ <AlertDescription>
311
+ <p>
312
+ {signozConfigError} Please follow the instructions in the{' '}
313
+ <ExternalLink
314
+ className="text-amber-700 dark:text-amber-300 dark:hover:text-amber-200"
315
+ iconClassName="text-amber-700 dark:text-amber-300 dark:group-hover/link:text-amber-200"
316
+ href={`${DOCS_BASE_URL}/quick-start/traces`}
317
+ >
318
+ traces setup guide
319
+ </ExternalLink>
320
+ .
321
+ </p>
322
+ </AlertDescription>
323
+ </Alert>
324
+ )}
325
+
326
+ <div className="flex items-center gap-4">
327
+ {/* Graph Filter */}
328
+ <GraphFilter onSelect={setSelectedGraph} selectedValue={selectedGraph} />
329
+ {/* Time Range Filter */}
330
+ <DatePickerWithPresets
331
+ label="Time range"
332
+ onRemove={() => setSelectedTimeRange('15d')}
333
+ value={
334
+ selectedTimeRange === CUSTOM
335
+ ? { from: customStartDate, to: customEndDate }
336
+ : selectedTimeRange
337
+ }
338
+ onAdd={(value: TimeRange) => setSelectedTimeRange(value)}
339
+ setCustomDateRange={(start: string, end: string) => setCustomDateRange(start, end)}
340
+ options={Object.entries(TIME_RANGES).map(([value, config]) => ({
341
+ value,
342
+ label: config.label,
343
+ }))}
344
+ />
324
345
  </div>
325
346
 
326
347
  <div className="flex flex-col gap-4">
@@ -63,7 +63,7 @@ export const SPAN_KEYS = {
63
63
  CONTEXT_URL: 'context.url',
64
64
  CONTEXT_CONFIG_ID: 'context.context_config_id',
65
65
  CONTEXT_AGENT_GRAPH_ID: 'context.agent_graph_id',
66
- CONTEXT_REQUEST_KEYS: 'context.request_context_keys',
66
+ CONTEXT_HEADERS_KEYS: 'context.headers_keys',
67
67
 
68
68
  // Message attributes
69
69
  MESSAGE_CONTENT: 'message.content',
@@ -54,10 +54,8 @@ describe('graph serialize/deserialize', () => {
54
54
  description: 'Graph with self-referencing agent',
55
55
  contextConfig: {
56
56
  id: '',
57
- name: '',
58
- description: '',
59
57
  contextVariables: '',
60
- requestContextSchema: '',
58
+ headersSchema: '',
61
59
  },
62
60
  });
63
61
 
@@ -139,10 +137,8 @@ describe('graph serialize/deserialize', () => {
139
137
  name: 'G',
140
138
  description: 'D',
141
139
  contextConfig: {
142
- name: 'Context',
143
- description: 'Context description',
144
140
  contextVariables: '{}',
145
- requestContextSchema: '{}',
141
+ headersSchema: '{}',
146
142
  },
147
143
  });
148
144
  expect(serialized.id).toBe('g1');
@@ -236,7 +236,7 @@ describe('serializeGraphData', () => {
236
236
  expect((result.agents.agent1 as any).canUse[0]).toEqual({
237
237
  toolId: 'mcp1',
238
238
  toolSelection: ['tool1', 'tool2'],
239
- headers: {},
239
+ headers: null,
240
240
  });
241
241
  });
242
242
 
@@ -282,7 +282,7 @@ describe('serializeGraphData', () => {
282
282
  expect((result.agents.agent1 as any).canUse[0]).toEqual({
283
283
  toolId: 'mcp1',
284
284
  toolSelection: null,
285
- headers: {},
285
+ headers: null,
286
286
  });
287
287
  });
288
288
 
@@ -326,7 +326,7 @@ describe('serializeGraphData', () => {
326
326
  expect((result.agents.agent1 as any).canUse[0]).toEqual({
327
327
  toolId: 'mcp1',
328
328
  toolSelection: [],
329
- headers: {},
329
+ headers: null,
330
330
  });
331
331
  });
332
332
 
@@ -413,7 +413,7 @@ describe('serializeGraphData', () => {
413
413
  expect((result.agents.agent1 as any).canUse[0]).toEqual({
414
414
  toolId: 'mcp1',
415
415
  toolSelection: null, // null means all tools are selected
416
- headers: {},
416
+ headers: null,
417
417
  });
418
418
  });
419
419
  });
@@ -6,6 +6,7 @@ import {
6
6
  agentNodeSourceHandleId,
7
7
  agentNodeTargetHandleId,
8
8
  externalAgentNodeTargetHandleId,
9
+ functionToolNodeHandleId,
9
10
  mcpNodeHandleId,
10
11
  NodeType,
11
12
  } from '@/components/graph/configuration/node-types';
@@ -200,32 +201,65 @@ export function deserializeGraphData(data: FullGraphDefinition): TransformResult
200
201
  nodes.push(agentNode);
201
202
  }
202
203
 
203
- // Note: Tools are now project-scoped and not included in graph data
204
- // Tool visualization will need to be handled at the project level
204
+ // Create tool nodes from canUse items (using tools and functions lookups)
205
205
  for (const agentId of agentIds) {
206
206
  const agent = data.agents[agentId];
207
207
  // Check if agent has canUse property (internal agents)
208
208
  if ('canUse' in agent && agent.canUse && agent.canUse.length > 0) {
209
- // Tools are project-scoped - create nodes from canUse items
210
209
  for (const canUseItem of agent.canUse) {
211
210
  const toolId = canUseItem.toolId;
212
211
  const toolNodeId = nanoid();
213
212
  const relationshipId = canUseItem.agentToolRelationId;
213
+
214
+ // Look up the tool to get its details
215
+ const tool = data.tools?.[toolId];
216
+ const toolType = tool?.config?.type || 'mcp'; // Default to MCP if not found
217
+
218
+ // Create the appropriate node type
219
+ const nodeType = toolType === 'function' ? NodeType.FunctionTool : NodeType.MCP;
220
+
221
+ // Populate node data with tool details from lookup
222
+ const nodeData: any = {
223
+ toolId,
224
+ agentId,
225
+ relationshipId,
226
+ // Add tool details from lookup for proper display
227
+ name: tool?.name,
228
+ description: tool?.description,
229
+ imageUrl: (tool as any)?.imageUrl,
230
+ };
231
+
232
+ // For function tools, add function details from functions lookup
233
+ if (toolType === 'function') {
234
+ const functionId = (tool as any)?.functionId;
235
+ if (functionId) {
236
+ const func = data.functions?.[functionId];
237
+ if (func) {
238
+ nodeData.inputSchema = func.inputSchema;
239
+ nodeData.code = func.executeCode;
240
+ nodeData.dependencies = func.dependencies;
241
+ }
242
+ }
243
+ }
244
+
214
245
  const toolNode: Node = {
215
246
  id: toolNodeId,
216
- type: NodeType.MCP,
247
+ type: nodeType,
217
248
  position: { x: 0, y: 0 },
218
- data: { toolId, agentId, relationshipId },
249
+ data: nodeData,
219
250
  };
220
251
  nodes.push(toolNode);
221
252
 
253
+ // Use the appropriate handle ID based on tool type
254
+ const targetHandle = toolType === 'function' ? functionToolNodeHandleId : mcpNodeHandleId;
255
+
222
256
  const agentToToolEdge: Edge = {
223
257
  id: `edge-${toolNodeId}-${agentId}`,
224
258
  type: EdgeType.Default,
225
259
  source: agentId,
226
260
  sourceHandle: agentNodeSourceHandleId,
227
261
  target: toolNodeId,
228
- targetHandle: mcpNodeHandleId,
262
+ targetHandle,
229
263
  };
230
264
  edges.push(agentToToolEdge);
231
265
  }
@@ -3,9 +3,9 @@ import type { FullGraphDefinition } from '@/lib/types/graph-full';
3
3
  import { formatJsonField } from '@/lib/utils';
4
4
 
5
5
  export type ExtendedFullGraphDefinition = FullGraphDefinition & {
6
- contextConfig?: Partial<Pick<ContextConfig, 'id' | 'name' | 'description'>> & {
6
+ contextConfig?: Partial<Pick<ContextConfig, 'id'>> & {
7
7
  contextVariables?: Record<string, any>;
8
- requestContextSchema?: Record<string, any>;
8
+ headersSchema?: Record<string, any>;
9
9
  };
10
10
  };
11
11
 
@@ -54,10 +54,8 @@ export function extractGraphMetadata(
54
54
  : undefined,
55
55
  contextConfig: {
56
56
  id: graph?.contextConfig?.id ?? '',
57
- name: graph?.contextConfig?.name ?? '',
58
- description: graph?.contextConfig?.description ?? '',
59
57
  contextVariables: formatJsonField(graph?.contextConfig?.contextVariables) || '',
60
- requestContextSchema: formatJsonField(graph?.contextConfig?.requestContextSchema) || '',
58
+ headersSchema: formatJsonField(graph?.contextConfig?.headersSchema) || '',
61
59
  },
62
60
  };
63
61
  }
@@ -115,11 +115,11 @@ export function serializeGraphData(
115
115
 
116
116
  const stopWhen = (node.data as any).stopWhen;
117
117
 
118
- // Build canUse array from edges connecting this agent to MCP nodes
118
+ // Build canUse array from edges connecting this agent to tool nodes (MCP and Function)
119
119
  const canUse: Array<{
120
120
  toolId: string;
121
121
  toolSelection?: string[] | null;
122
- headers?: Record<string, string>;
122
+ headers?: Record<string, string> | null;
123
123
  agentToolRelationId?: string;
124
124
  }> = [];
125
125
 
@@ -165,7 +165,7 @@ export function serializeGraphData(
165
165
  }
166
166
 
167
167
  const tempHeaders = (mcpNode.data as any).tempHeaders;
168
- let toolHeaders: Record<string, string> = {};
168
+ let toolHeaders: Record<string, string> | null = null;
169
169
 
170
170
  if (tempHeaders !== undefined) {
171
171
  if (
@@ -195,6 +195,35 @@ export function serializeGraphData(
195
195
  }
196
196
  }
197
197
 
198
+ // Find edges from this agent to Function Tool nodes
199
+ const agentToFunctionToolEdges = edges.filter(
200
+ (edge) =>
201
+ edge.source === node.id &&
202
+ nodes.some((n) => n.id === edge.target && n.type === NodeType.FunctionTool)
203
+ );
204
+
205
+ for (const edge of agentToFunctionToolEdges) {
206
+ const functionToolNode = nodes.find((n) => n.id === edge.target);
207
+
208
+ if (functionToolNode && functionToolNode.type === NodeType.FunctionTool) {
209
+ const nodeData = functionToolNode.data as any;
210
+ const toolId = nodeData.toolId;
211
+
212
+ if (toolId) {
213
+ // Get the relationshipId if it exists
214
+ const relationshipId = nodeData.relationshipId;
215
+
216
+ // Function tools use the same simple structure as MCP tools
217
+ canUse.push({
218
+ toolId,
219
+ toolSelection: null, // Function tools don't have tool selection
220
+ headers: null, // Function tools don't have headers
221
+ ...(relationshipId && { agentToolRelationId: relationshipId }),
222
+ });
223
+ }
224
+ }
225
+ }
226
+
198
227
  const agent: ExtendedAgent = {
199
228
  id: agentId,
200
229
  name: node.data.name as string,
@@ -295,20 +324,18 @@ export function serializeGraphData(
295
324
 
296
325
  const parsedContextVariables = safeJsonParse(metadata?.contextConfig?.contextVariables);
297
326
 
298
- const parsedRequestContextSchema = safeJsonParse(metadata?.contextConfig?.requestContextSchema);
327
+ const parsedHeadersSchema = safeJsonParse(metadata?.contextConfig?.headersSchema);
299
328
 
300
329
  const hasContextConfig =
301
330
  metadata?.contextConfig &&
302
- ((metadata.contextConfig.name && metadata.contextConfig.name.trim() !== '') ||
303
- (metadata.contextConfig.description && metadata.contextConfig.description.trim() !== '') ||
304
- (parsedContextVariables &&
305
- typeof parsedContextVariables === 'object' &&
306
- parsedContextVariables !== null &&
307
- Object.keys(parsedContextVariables).length > 0) ||
308
- (parsedRequestContextSchema &&
309
- typeof parsedRequestContextSchema === 'object' &&
310
- parsedRequestContextSchema !== null &&
311
- Object.keys(parsedRequestContextSchema).length > 0));
331
+ ((parsedContextVariables &&
332
+ typeof parsedContextVariables === 'object' &&
333
+ parsedContextVariables !== null &&
334
+ Object.keys(parsedContextVariables).length > 0) ||
335
+ (parsedHeadersSchema &&
336
+ typeof parsedHeadersSchema === 'object' &&
337
+ parsedHeadersSchema !== null &&
338
+ Object.keys(parsedHeadersSchema).length > 0));
312
339
 
313
340
  const dataComponents: Record<string, DataComponent> = {};
314
341
  if (dataComponentLookup) {
@@ -387,9 +414,7 @@ export function serializeGraphData(
387
414
  (result as any).contextConfigId = contextConfigId;
388
415
  (result as any).contextConfig = {
389
416
  id: contextConfigId,
390
- name: metadata.contextConfig.name || '',
391
- description: metadata.contextConfig.description || '',
392
- requestContextSchema: parsedRequestContextSchema,
417
+ headersSchema: parsedHeadersSchema,
393
418
  contextVariables: parsedContextVariables,
394
419
  };
395
420
  }
@@ -419,6 +444,40 @@ export function validateSerializedData(data: FullGraphDefinition): string[] {
419
444
  }
420
445
  }
421
446
 
447
+ // Validate function tools for internal agents (check canUse array for function tools)
448
+ if ('canUse' in agent && agent.canUse) {
449
+ for (const canUseItem of agent.canUse) {
450
+ const toolId = canUseItem.toolId;
451
+ const toolType = (canUseItem as any).toolType;
452
+
453
+ // Only validate function tools
454
+ if (toolType === 'function') {
455
+ const functionTool = (canUseItem as any).functionTool;
456
+
457
+ if (!functionTool) {
458
+ errors.push(
459
+ `Function tool '${toolId}' referenced by agent '${agentId}' is missing function tool data`
460
+ );
461
+ continue;
462
+ }
463
+
464
+ // Validate required fields for function tools
465
+ if (!functionTool.name || String(functionTool.name).trim() === '') {
466
+ errors.push(`Function tool '${toolId}' is missing required field: name`);
467
+ }
468
+ if (!functionTool.description || String(functionTool.description).trim() === '') {
469
+ errors.push(`Function tool '${toolId}' is missing required field: description`);
470
+ }
471
+ if (!functionTool.executeCode || String(functionTool.executeCode).trim() === '') {
472
+ errors.push(`Function tool '${toolId}' is missing required field: executeCode`);
473
+ }
474
+ if (!functionTool.inputSchema || Object.keys(functionTool.inputSchema).length === 0) {
475
+ errors.push(`Function tool '${toolId}' is missing required field: inputSchema`);
476
+ }
477
+ }
478
+ }
479
+ }
480
+
422
481
  // Only validate relationships for internal agents (external agents don't have these properties)
423
482
  if ('canTransferTo' in agent) {
424
483
  for (const targetId of agent.canTransferTo ?? []) {
@@ -76,10 +76,8 @@ export const graphStore = create<GraphState>()(
76
76
  name: '',
77
77
  description: '',
78
78
  contextConfig: {
79
- name: '',
80
- description: '',
81
79
  contextVariables: '',
82
- requestContextSchema: '',
80
+ headersSchema: '',
83
81
  },
84
82
  models: undefined,
85
83
  stopWhen: undefined,
@@ -0,0 +1,36 @@
1
+ import { useEffect, useState } from 'react';
2
+
3
+ interface SignozConfigStatus {
4
+ status: string;
5
+ configured: boolean;
6
+ error?: string;
7
+ }
8
+
9
+ export function useSignozConfig() {
10
+ const [isLoading, setIsLoading] = useState(true);
11
+ const [configError, setConfigError] = useState<string | null>(null);
12
+
13
+ useEffect(() => {
14
+ const checkConfig = async () => {
15
+ try {
16
+ setIsLoading(true);
17
+ const response = await fetch('/api/signoz');
18
+ if (!response.ok) {
19
+ throw new Error('Failed to check Signoz configuration');
20
+ }
21
+ const data: SignozConfigStatus = await response.json();
22
+ setConfigError(data.error || null);
23
+ } catch (err) {
24
+ console.error('Error checking Signoz configuration:', err);
25
+ setConfigError(err instanceof Error ? err.message : 'Failed to check SigNoz configuration');
26
+ } finally {
27
+ setIsLoading(false);
28
+ }
29
+ };
30
+
31
+ checkConfig();
32
+ }, []);
33
+
34
+ return { isLoading, configError };
35
+ }
36
+
@@ -4,7 +4,7 @@ import { getContextSuggestions } from '../context-suggestions';
4
4
 
5
5
  describe('getContextSuggestions', () => {
6
6
  const mockContextSchema = {
7
- requestContextSchema: {
7
+ headersSchema: {
8
8
  type: 'object',
9
9
  properties: {
10
10
  user_id: { type: 'string' },
@@ -38,9 +38,9 @@ describe('getContextSuggestions', () => {
38
38
  it('should return all expected suggestions', () => {
39
39
  const suggestions = getContextSuggestions(mockContextSchema);
40
40
  expect(suggestions).toStrictEqual([
41
- 'requestContext.auth_token',
42
- 'requestContext.org_name',
43
- 'requestContext.user_id',
41
+ 'headers.auth_token',
42
+ 'headers.org_name',
43
+ 'headers.user_id',
44
44
  'userName',
45
45
  'userName.name',
46
46
  'userName.preferences',
@@ -187,11 +187,11 @@ describe('getContextSuggestions', () => {
187
187
  responseSchema: z.toJSONSchema(settingsSchema),
188
188
  },
189
189
  },
190
- requestContextSchema: z.toJSONSchema(z.object({ apiKey: z.string() })),
190
+ headersSchema: z.toJSONSchema(z.object({ apiKey: z.string() })),
191
191
  });
192
192
  expect(suggestions).toMatchInlineSnapshot(`
193
193
  [
194
- "requestContext.apiKey",
194
+ "headers.apiKey",
195
195
  "settings",
196
196
  "settings.locale",
197
197
  "settings.theme",