@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
@@ -10,12 +10,12 @@ interface MCPServerItemProps {
10
10
  }
11
11
 
12
12
  export function MCPServerItem({ mcp, onClick }: MCPServerItemProps) {
13
- const server = mcp.config?.mcp?.server;
13
+ const server = mcp.config?.type === 'mcp' ? (mcp.config as any).mcp?.server : undefined;
14
14
  const { id, name, availableTools, imageUrl, config } = mcp;
15
15
 
16
16
  const activeTools = getActiveTools({
17
17
  availableTools,
18
- activeTools: config?.mcp?.activeTools,
18
+ activeTools: config?.type === 'mcp' ? (config as any).mcp?.activeTools : undefined,
19
19
  });
20
20
 
21
21
  const toolCount = activeTools?.length ?? 0;
@@ -11,6 +11,7 @@ import { edgeTypeMap } from '../configuration/edge-types';
11
11
  import {
12
12
  type AgentNodeData,
13
13
  type ExternalAgentNodeData,
14
+ type FunctionToolNodeData,
14
15
  type MCPNodeData,
15
16
  NodeType,
16
17
  nodeTypeMap,
@@ -21,6 +22,7 @@ import { Heading } from './heading';
21
22
  import MetadataEditor from './metadata/metadata-editor';
22
23
  import { AgentNodeEditor } from './nodes/agent-node-editor';
23
24
  import { ExternalAgentNodeEditor } from './nodes/external-agent-node-editor';
25
+ import { FunctionToolNodeEditor } from './nodes/function-tool-node-editor';
24
26
  import { MCPServerNodeEditor } from './nodes/mcp-node-editor';
25
27
  import { MCPSelector } from './nodes/mcp-selector/mcp-selector';
26
28
 
@@ -119,6 +121,11 @@ export function SidePane({
119
121
  />
120
122
  );
121
123
  }
124
+ case NodeType.FunctionTool: {
125
+ return (
126
+ <FunctionToolNodeEditor selectedNode={selectedNode as Node<FunctionToolNodeData>} />
127
+ );
128
+ }
122
129
  default:
123
130
  return null;
124
131
  }
@@ -7,22 +7,22 @@ import { isMacOs } from '@/lib/utils';
7
7
 
8
8
  interface ToolbarProps {
9
9
  onSubmit: () => void;
10
- isPreviewDisabled?: boolean;
10
+ inPreviewDisabled?: boolean;
11
11
  toggleSidePane: () => void;
12
12
  setShowPlayground: (show: boolean) => void;
13
13
  }
14
14
 
15
15
  export function Toolbar({
16
16
  onSubmit,
17
- isPreviewDisabled,
17
+ inPreviewDisabled,
18
18
  toggleSidePane,
19
19
  setShowPlayground,
20
20
  }: ToolbarProps) {
21
21
  const dirty = useGraphStore((state) => state.dirty);
22
- const saveButtonRef = useRef<HTMLButtonElement>(null!);
22
+ const saveButtonRef = useRef<HTMLButtonElement>(null);
23
23
  const PreviewButton = (
24
24
  <Button
25
- disabled={dirty || isPreviewDisabled}
25
+ disabled={dirty || inPreviewDisabled}
26
26
  variant="outline"
27
27
  type="button"
28
28
  onClick={() => setShowPlayground(true)}
@@ -38,7 +38,7 @@ export function Toolbar({
38
38
  if (!isShortcutPressed) return;
39
39
  event.preventDefault();
40
40
  // Using button ref instead onSubmit to respect button's disabled state
41
- saveButtonRef.current.click();
41
+ saveButtonRef.current?.click();
42
42
  }
43
43
 
44
44
  window.addEventListener('keydown', handleSaveShortcut);
@@ -49,7 +49,7 @@ export function Toolbar({
49
49
 
50
50
  return (
51
51
  <div className="flex gap-2">
52
- {dirty || isPreviewDisabled ? (
52
+ {dirty || inPreviewDisabled ? (
53
53
  <Tooltip>
54
54
  <TooltipTrigger asChild>
55
55
  <div>{PreviewButton}</div>
@@ -66,10 +66,10 @@ export function Toolbar({
66
66
  <Button
67
67
  onClick={onSubmit}
68
68
  variant={dirty ? 'default' : 'outline'}
69
- disabled={!dirty && !isPreviewDisabled}
69
+ disabled={!dirty && !inPreviewDisabled}
70
70
  ref={saveButtonRef}
71
71
  >
72
- {isPreviewDisabled ? 'Save' : 'Save changes'}
72
+ {inPreviewDisabled ? 'Save' : 'Save changes'}
73
73
  </Button>
74
74
  <Button type="button" variant="outline" onClick={toggleSidePane}>
75
75
  <Settings className="w-4 h-4" />
@@ -107,7 +107,7 @@ export function AvailableToolsCard({
107
107
  activeTools,
108
108
  }: {
109
109
  tools: MCPTool['availableTools'];
110
- activeTools: MCPTool['config']['mcp']['activeTools'];
110
+ activeTools: string[] | undefined;
111
111
  }) {
112
112
  if (!tools) return null; // parent component already makes sure to handle this
113
113
 
@@ -129,7 +129,7 @@ export function MCPToolItem({
129
129
 
130
130
  const activeTools = getActiveTools({
131
131
  availableTools: tool.availableTools,
132
- activeTools: tool.config?.mcp?.activeTools,
132
+ activeTools: tool.config.type === 'mcp' ? tool.config.mcp.activeTools : undefined,
133
133
  });
134
134
 
135
135
  return (
@@ -157,7 +157,7 @@ export function MCPToolItem({
157
157
  </ItemCardHeader>
158
158
  <ItemCardContent>
159
159
  <div className="space-y-3 min-w-0">
160
- <URLDisplay url={tool.config.mcp.server.url} />
160
+ <URLDisplay url={tool.config.type === 'mcp' ? tool.config.mcp.server.url : ''} />
161
161
 
162
162
  {/* Key metrics in a structured layout */}
163
163
  <div className="flex items-center gap-2 flex-wrap">
@@ -191,16 +191,16 @@ export function ViewMCPServerDetails({
191
191
  {/* Server URL */}
192
192
  <div className="space-y-2">
193
193
  <ItemLabel>Server URL</ItemLabel>
194
- <CopyableSingleLineCode code={tool.config.mcp.server.url} />
194
+ {tool.config.type === 'mcp' && <CopyableSingleLineCode code={tool.config.mcp.server.url} />}
195
195
  </div>
196
196
 
197
197
  {/* Transport and Credential */}
198
198
  <div className="grid grid-cols-1 md:grid-cols-2 gap-4">
199
- {tool.config.mcp.transport && (
199
+ {(tool.config as any).mcp.transport && (
200
200
  <div className="space-y-2">
201
201
  <ItemLabel>Transport Type</ItemLabel>
202
202
  <ItemValue>
203
- {<Badge variant="code">{tool.config.mcp.transport.type}</Badge>}
203
+ {<Badge variant="code">{(tool.config as any).mcp.transport.type}</Badge>}
204
204
  </ItemValue>
205
205
  </div>
206
206
  )}
@@ -235,13 +235,13 @@ export function ViewMCPServerDetails({
235
235
  <div className="flex gap-2 items-center">
236
236
  <ItemLabel>Active Tools</ItemLabel>
237
237
  <Badge variant="code" className="border-none px-2 text-[10px] text-muted-foreground">
238
- {tool.config.mcp.activeTools === undefined
238
+ {(tool.config as any).mcp.activeTools === undefined
239
239
  ? (tool.availableTools?.length ?? 0)
240
- : (tool.config.mcp.activeTools?.length ?? 0)}
240
+ : ((tool.config as any).mcp.activeTools?.length ?? 0)}
241
241
  </Badge>
242
242
  </div>
243
243
  <ItemValue>
244
- {tool.config.mcp.activeTools === undefined ? (
244
+ {(tool.config as any).mcp.activeTools === undefined ? (
245
245
  // All tools are active (undefined means all)
246
246
  tool.availableTools && tool.availableTools.length > 0 ? (
247
247
  <div className="flex flex-wrap gap-2">
@@ -256,10 +256,11 @@ export function ViewMCPServerDetails({
256
256
  ) : (
257
257
  <div className="text-sm text-muted-foreground">No tools available</div>
258
258
  )
259
- ) : tool.config.mcp.activeTools && tool.config.mcp.activeTools.length > 0 ? (
259
+ ) : (tool.config as any).mcp.activeTools &&
260
+ (tool.config as any).mcp.activeTools.length > 0 ? (
260
261
  // Specific tools are active - check availability
261
262
  <div className="flex flex-wrap gap-2">
262
- {tool.config.mcp.activeTools.map((toolName) => {
263
+ {(tool.config as any).mcp.activeTools.map((toolName: string) => {
263
264
  const isAvailable =
264
265
  tool.availableTools?.some((t) => t.name === toolName) ?? false;
265
266
  return (
@@ -278,7 +279,7 @@ export function ViewMCPServerDetails({
278
279
  {tool.availableTools && tool.availableTools.length > 0 && (
279
280
  <AvailableToolsCard
280
281
  tools={tool.availableTools}
281
- activeTools={tool.config.mcp.activeTools}
282
+ activeTools={(tool.config as any).mcp.activeTools}
282
283
  />
283
284
  )}
284
285
  </div>
@@ -24,4 +24,10 @@ export const defaultValues: ProjectFormData = {
24
24
  },
25
25
  },
26
26
  stopWhen: undefined,
27
+ sandboxConfig: {
28
+ provider: 'local',
29
+ runtime: 'node22',
30
+ timeout: 30000,
31
+ vcpus: 1,
32
+ },
27
33
  };
@@ -1,9 +1,11 @@
1
1
  'use client';
2
2
 
3
3
  import { zodResolver } from '@hookform/resolvers/zod';
4
+ import type { SandboxConfigSchema } from '@inkeep/agents-core/client-exports';
4
5
  import { useRouter } from 'next/navigation';
5
6
  import { useForm } from 'react-hook-form';
6
7
  import { toast } from 'sonner';
8
+ import type { z } from 'zod';
7
9
  import { GenericInput } from '@/components/form/generic-input';
8
10
  import { GenericTextarea } from '@/components/form/generic-textarea';
9
11
  import { Button } from '@/components/ui/button';
@@ -13,6 +15,7 @@ import { useAutoPrefillId } from '@/hooks/use-auto-prefill-id';
13
15
  import { createProjectAction, updateProjectAction } from '@/lib/actions/projects';
14
16
  import { defaultValues } from './form-configuration';
15
17
  import { ProjectModelsSection } from './project-models-section';
18
+ import { ProjectSandboxSection } from './project-sandbox-section';
16
19
  import { ProjectStopWhenSection } from './project-stopwhen-section';
17
20
  import { type ProjectFormData, projectSchema } from './validation';
18
21
 
@@ -55,6 +58,38 @@ const serializeData = (data: ProjectFormData) => {
55
58
 
56
59
  return cleaned;
57
60
  };
61
+ const cleanSandboxConfig = (
62
+ sandboxConfig: z.infer<typeof SandboxConfigSchema> | null | undefined
63
+ ): z.infer<typeof SandboxConfigSchema> | undefined => {
64
+ // If sandboxConfig is null, undefined, or empty object, return undefined
65
+ if (
66
+ !sandboxConfig ||
67
+ (typeof sandboxConfig === 'object' && Object.keys(sandboxConfig).length === 0)
68
+ ) {
69
+ return undefined;
70
+ }
71
+
72
+ const cleaned: Partial<NonNullable<z.infer<typeof SandboxConfigSchema>>> = {};
73
+ if (sandboxConfig.provider) {
74
+ cleaned.provider = sandboxConfig.provider;
75
+ }
76
+ if (sandboxConfig.runtime) {
77
+ cleaned.runtime = sandboxConfig.runtime;
78
+ }
79
+ if (sandboxConfig.timeout !== null && sandboxConfig.timeout !== undefined) {
80
+ cleaned.timeout = sandboxConfig.timeout;
81
+ }
82
+ if (sandboxConfig.vcpus !== null && sandboxConfig.vcpus !== undefined) {
83
+ cleaned.vcpus = sandboxConfig.vcpus;
84
+ }
85
+
86
+ // If no valid properties, return undefined
87
+ if (Object.keys(cleaned).length === 0) {
88
+ return undefined;
89
+ }
90
+
91
+ return cleaned as z.infer<typeof SandboxConfigSchema>;
92
+ };
58
93
 
59
94
  return {
60
95
  ...data,
@@ -78,6 +113,7 @@ const serializeData = (data: ProjectFormData) => {
78
113
  : undefined,
79
114
  },
80
115
  stopWhen: cleanStopWhen(data.stopWhen),
116
+ sandboxConfig: cleanSandboxConfig(data.sandboxConfig),
81
117
  };
82
118
  };
83
119
 
@@ -186,6 +222,10 @@ export function ProjectForm({
186
222
 
187
223
  <ProjectStopWhenSection control={form.control} />
188
224
 
225
+ <Separator />
226
+
227
+ <ProjectSandboxSection control={form.control} />
228
+
189
229
  <div className={`flex gap-3 ${onCancel ? 'justify-end' : 'justify-start'}`}>
190
230
  {onCancel && (
191
231
  <Button type="button" variant="outline" onClick={onCancel} disabled={isSubmitting}>
@@ -0,0 +1,139 @@
1
+ 'use client';
2
+
3
+ import { ChevronRight, Info } from 'lucide-react';
4
+ import { useEffect, useState } from 'react';
5
+ import { type Control, useFormState } from 'react-hook-form';
6
+ import { GenericInput } from '@/components/form/generic-input';
7
+ import { GenericSelect } from '@/components/form/generic-select';
8
+ import { Button } from '@/components/ui/button';
9
+ import { Collapsible, CollapsibleContent, CollapsibleTrigger } from '@/components/ui/collapsible';
10
+ import { InfoCard } from '@/components/ui/info-card';
11
+ import { Label } from '@/components/ui/label';
12
+ import type { ProjectFormData } from './validation';
13
+
14
+ interface ProjectSandboxSectionProps {
15
+ control: Control<ProjectFormData>;
16
+ }
17
+
18
+ const providerOptions = [
19
+ { value: 'local', label: 'Local' },
20
+ { value: 'vercel', label: 'Vercel' },
21
+ { value: 'daytona', label: 'Daytona' },
22
+ ];
23
+
24
+ const runtimeOptions = [
25
+ { value: 'node22', label: 'Node.js 22' },
26
+ { value: 'typescript', label: 'TypeScript' },
27
+ ];
28
+
29
+ export function ProjectSandboxSection({ control }: ProjectSandboxSectionProps) {
30
+ const [isOpen, setIsOpen] = useState(false);
31
+ const { errors } = useFormState({ control });
32
+
33
+ const hasSandboxErrors = !!(
34
+ errors.sandboxConfig?.provider ||
35
+ errors.sandboxConfig?.runtime ||
36
+ errors.sandboxConfig?.timeout ||
37
+ errors.sandboxConfig?.vcpus
38
+ );
39
+
40
+ // Auto-open the collapsible when there are errors in the sandbox section
41
+ useEffect(() => {
42
+ if (hasSandboxErrors) {
43
+ setIsOpen(true);
44
+ }
45
+ }, [hasSandboxErrors]);
46
+
47
+ return (
48
+ <div className="space-y-4">
49
+ <div>
50
+ <Label className="text-sm font-medium">Sandbox configuration</Label>
51
+ <p className="text-sm text-muted-foreground mt-1">
52
+ Configure the execution environment for functions in this project
53
+ </p>
54
+ </div>
55
+
56
+ <Collapsible
57
+ open={isOpen}
58
+ onOpenChange={setIsOpen}
59
+ className="border rounded-md bg-background"
60
+ >
61
+ <CollapsibleTrigger asChild>
62
+ <Button
63
+ type="button"
64
+ variant="ghost"
65
+ size="sm"
66
+ className="flex items-center justify-start gap-2 w-full group p-0 h-auto hover:!bg-transparent transition-colors py-2 px-4"
67
+ >
68
+ <ChevronRight className="h-4 w-4 transition-transform duration-200 group-data-[state=open]:rotate-90" />
69
+ Configure sandbox settings
70
+ </Button>
71
+ </CollapsibleTrigger>
72
+ <CollapsibleContent className="space-y-6 mt-4 data-[state=closed]:animate-[collapsible-up_200ms_ease-out] data-[state=open]:animate-[collapsible-down_200ms_ease-out] overflow-hidden px-4 pb-6">
73
+ <div className="space-y-4">
74
+ <GenericSelect
75
+ control={control}
76
+ name="sandboxConfig.provider"
77
+ label="Provider"
78
+ description="Choose the sandbox provider for function execution."
79
+ options={providerOptions}
80
+ placeholder="Select a provider"
81
+ selectTriggerClassName="w-full"
82
+ isRequired
83
+ />
84
+
85
+ <GenericSelect
86
+ control={control}
87
+ name="sandboxConfig.runtime"
88
+ label="Runtime"
89
+ description="Select the runtime environment for your functions."
90
+ options={runtimeOptions}
91
+ placeholder="Select a runtime"
92
+ selectTriggerClassName="w-full"
93
+ isRequired
94
+ />
95
+
96
+ <GenericInput
97
+ control={control}
98
+ name="sandboxConfig.timeout"
99
+ label="Timeout (ms)"
100
+ placeholder="30000"
101
+ description="Maximum execution time for functions in milliseconds (1000-300000)."
102
+ type="number"
103
+ min="1000"
104
+ max="300000"
105
+ />
106
+
107
+ <GenericInput
108
+ control={control}
109
+ name="sandboxConfig.vcpus"
110
+ label="vCPUs"
111
+ placeholder="1"
112
+ description="Number of virtual CPUs allocated for function execution (1-8)."
113
+ type="number"
114
+ min="1"
115
+ max="8"
116
+ />
117
+ </div>
118
+
119
+ <InfoCard title="Sandbox configuration info:" Icon={Info}>
120
+ <div className="text-sm space-y-2">
121
+ <p>
122
+ <strong>Local:</strong> Functions run in your local environment with full access to
123
+ system resources.
124
+ </p>
125
+ <p>
126
+ <strong>Vercel:</strong> Functions run on Vercel's serverless platform with
127
+ automatic scaling.
128
+ </p>
129
+ <p>
130
+ <strong>Daytona:</strong> Functions run in isolated development environments with
131
+ persistent storage.
132
+ </p>
133
+ </div>
134
+ </InfoCard>
135
+ </CollapsibleContent>
136
+ </Collapsible>
137
+ </div>
138
+ );
139
+ }
@@ -1,3 +1,4 @@
1
+ import { SandboxConfigSchema } from '@inkeep/agents-core/client-exports';
1
2
  import { z } from 'zod';
2
3
 
3
4
  const modelSettingsSchema = z.object({
@@ -24,6 +25,8 @@ const projectStopWhenSchema = z
24
25
  })
25
26
  .optional();
26
27
 
28
+ const sandboxConfigSchema = SandboxConfigSchema.optional();
29
+
27
30
  export const projectSchema = z.object({
28
31
  id: z
29
32
  .string()
@@ -42,6 +45,7 @@ export const projectSchema = z.object({
42
45
  .max(500, 'Description must be less than 500 characters'),
43
46
  models: projectModelsSchema,
44
47
  stopWhen: projectStopWhenSchema,
48
+ sandboxConfig: sandboxConfigSchema,
45
49
  });
46
50
 
47
51
  export type ProjectFormData = z.infer<typeof projectSchema>;
@@ -10,9 +10,24 @@ import {
10
10
  StatusBadge,
11
11
  } from '@/components/traces/timeline/blocks';
12
12
  import { Bubble, CodeBubble } from '@/components/traces/timeline/bubble';
13
+ import { SpanAttributes } from '@/components/traces/timeline/span-attributes';
13
14
  import type { ConversationDetail, SelectedPanel } from '@/components/traces/timeline/types';
14
15
  import { Badge } from '@/components/ui/badge';
15
- import { SpanAttributes } from '@/components/traces/timeline/span-attributes';
16
+
17
+ // Reusable component for tool arguments/results
18
+ function ToolDataBlock({ label, data }: { label: string; data: string }) {
19
+ return (
20
+ <LabeledBlock label={label}>
21
+ <Streamdown>{`\`\`\`json\n${(() => {
22
+ try {
23
+ return JSON.stringify(JSON.parse(data), null, 2);
24
+ } catch {
25
+ return data;
26
+ }
27
+ })()}\n\`\`\``}</Streamdown>
28
+ </LabeledBlock>
29
+ );
30
+ }
16
31
 
17
32
  export function renderPanelContent({
18
33
  selected,
@@ -273,32 +288,8 @@ export function renderPanelContent({
273
288
  }
274
289
  />
275
290
  <StatusBadge status={a.status} />
276
- {a.toolCallArgs && (
277
- <LabeledBlock label="Tool arguments">
278
- <CodeBubble className="max-h-60 overflow-y-auto">
279
- <Streamdown>{`\`\`\`json\n${(() => {
280
- try {
281
- return JSON.stringify(JSON.parse(a.toolCallArgs), null, 2);
282
- } catch {
283
- return a.toolCallArgs;
284
- }
285
- })()}\n\`\`\``}</Streamdown>
286
- </CodeBubble>
287
- </LabeledBlock>
288
- )}
289
- {a.toolCallResult && (
290
- <LabeledBlock label="Tool result">
291
- <CodeBubble className="max-h-60 overflow-y-auto">
292
- <Streamdown>{`\`\`\`json\n${(() => {
293
- try {
294
- return JSON.stringify(JSON.parse(a.toolCallResult), null, 2);
295
- } catch {
296
- return a.toolCallResult;
297
- }
298
- })()}\n\`\`\``}</Streamdown>
299
- </CodeBubble>
300
- </LabeledBlock>
301
- )}
291
+ {a.toolCallArgs && <ToolDataBlock label="Tool arguments" data={a.toolCallArgs} />}
292
+ {a.toolCallResult && <ToolDataBlock label="Tool result" data={a.toolCallResult} />}
302
293
  <Info label="Timestamp" value={formatDateTime(a.timestamp)} />
303
294
  </Section>
304
295
  <Divider />
@@ -330,32 +321,8 @@ export function renderPanelContent({
330
321
  }
331
322
  />
332
323
  <StatusBadge status={a.status} />
333
- {a.toolCallArgs && (
334
- <LabeledBlock label="Tool arguments">
335
- <CodeBubble className="max-h-60 overflow-y-auto">
336
- <Streamdown>{`\`\`\`json\n${(() => {
337
- try {
338
- return JSON.stringify(JSON.parse(a.toolCallArgs), null, 2);
339
- } catch {
340
- return a.toolCallArgs;
341
- }
342
- })()}\n\`\`\``}</Streamdown>
343
- </CodeBubble>
344
- </LabeledBlock>
345
- )}
346
- {a.toolCallResult && (
347
- <LabeledBlock label="Tool result">
348
- <CodeBubble className="max-h-60 overflow-y-auto">
349
- <Streamdown>{`\`\`\`json\n${(() => {
350
- try {
351
- return JSON.stringify(JSON.parse(a.toolCallResult), null, 2);
352
- } catch {
353
- return a.toolCallResult;
354
- }
355
- })()}\n\`\`\``}</Streamdown>
356
- </CodeBubble>
357
- </LabeledBlock>
358
- )}
324
+ {a.toolCallArgs && <ToolDataBlock label="Tool arguments" data={a.toolCallArgs} />}
325
+ {a.toolCallResult && <ToolDataBlock label="Tool result" data={a.toolCallResult} />}
359
326
  <Info label="Timestamp" value={formatDateTime(a.timestamp)} />
360
327
  </Section>
361
328
  <Divider />
@@ -388,32 +355,8 @@ export function renderPanelContent({
388
355
  </LabeledBlock>
389
356
  <Info label="Agent" value={a.agentName || 'Unknown agent'} />
390
357
  <StatusBadge status={a.status} />
391
- {a.toolCallArgs && (
392
- <LabeledBlock label="Tool arguments">
393
- <CodeBubble className="max-h-60 overflow-y-auto">
394
- <Streamdown>{`\`\`\`json\n${(() => {
395
- try {
396
- return JSON.stringify(JSON.parse(a.toolCallArgs), null, 2);
397
- } catch {
398
- return a.toolCallArgs;
399
- }
400
- })()}\n\`\`\``}</Streamdown>
401
- </CodeBubble>
402
- </LabeledBlock>
403
- )}
404
- {a.toolCallResult && (
405
- <LabeledBlock label="Tool result">
406
- <CodeBubble className="max-h-60 overflow-y-auto">
407
- <Streamdown>{`\`\`\`json\n${(() => {
408
- try {
409
- return JSON.stringify(JSON.parse(a.toolCallResult), null, 2);
410
- } catch {
411
- return a.toolCallResult;
412
- }
413
- })()}\n\`\`\``}</Streamdown>
414
- </CodeBubble>
415
- </LabeledBlock>
416
- )}
358
+ {a.toolCallArgs && <ToolDataBlock label="Tool arguments" data={a.toolCallArgs} />}
359
+ {a.toolCallResult && <ToolDataBlock label="Tool result" data={a.toolCallResult} />}
417
360
  <Info label="Timestamp" value={formatDateTime(a.timestamp)} />
418
361
  </Section>
419
362
  <Divider />
@@ -442,32 +385,8 @@ export function renderPanelContent({
442
385
  </LabeledBlock>
443
386
  )}
444
387
  <StatusBadge status={a.status} />
445
- {a.toolCallArgs && (
446
- <LabeledBlock label="Tool arguments">
447
- <CodeBubble className="max-h-60 overflow-y-auto">
448
- <Streamdown>{`\`\`\`json\n${(() => {
449
- try {
450
- return JSON.stringify(JSON.parse(a.toolCallArgs), null, 2);
451
- } catch {
452
- return a.toolCallArgs;
453
- }
454
- })()}\n\`\`\``}</Streamdown>
455
- </CodeBubble>
456
- </LabeledBlock>
457
- )}
458
- {a.toolCallResult && (
459
- <LabeledBlock label="Tool result">
460
- <CodeBubble className="max-h-60 overflow-y-auto">
461
- <Streamdown>{`\`\`\`json\n${(() => {
462
- try {
463
- return JSON.stringify(JSON.parse(a.toolCallResult), null, 2);
464
- } catch {
465
- return a.toolCallResult;
466
- }
467
- })()}\n\`\`\``}</Streamdown>
468
- </CodeBubble>
469
- </LabeledBlock>
470
- )}
388
+ {a.toolCallArgs && <ToolDataBlock label="Tool arguments" data={a.toolCallArgs} />}
389
+ {a.toolCallResult && <ToolDataBlock label="Tool result" data={a.toolCallResult} />}
471
390
  <Info label="Timestamp" value={formatDateTime(a.timestamp)} />
472
391
  </Section>
473
392
  <Divider />