@inkeep/agents-manage-ui 0.18.0 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.next/standalone/agents-manage-ui/.next/BUILD_ID +1 -1
- package/.next/standalone/agents-manage-ui/.next/app-build-manifest.json +216 -216
- package/.next/standalone/agents-manage-ui/.next/app-path-routes-manifest.json +8 -8
- package/.next/standalone/agents-manage-ui/.next/build-manifest.json +5 -5
- package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +3 -3
- package/.next/standalone/agents-manage-ui/.next/react-loadable-manifest.json +58 -45
- package/.next/standalone/agents-manage-ui/.next/routes-manifest.json +28 -28
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js +2 -0
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{graphs/[graphId] → agents/[agentId]}/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page_client-reference-manifest.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page.js +2 -0
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{graphs → agents}/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/new/page_client-reference-manifest.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +2 -0
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page_client-reference-manifest.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/api-keys/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/artifacts/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/components/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/new/providers/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/credentials/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/ai-calls/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.rsc +10 -10
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/conversations/[conversationId]/route_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/api/signoz/route_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app-paths-manifest.json +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2067.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2083.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3509.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3547.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/4087.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/4154.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6641.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6836.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7457.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7504.js +184 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/8498.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/8961.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{9079.js → 9590.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/middleware-build-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/middleware-react-loadable-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/pages/404.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/pages/500.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/server-reference-manifest.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{10947.aff5ec5feefc387a.js → 10947.73083cee3ebfdd34.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/13059.60bee0d0411df43b.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/20874-08310a7ec3b20498.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{22063.87c2ae19978ae03d.js → 22063.887c7b17b8c9bfc1.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{23113.f7d83c7fca28a3d3.js → 23113.e6360a0c0f4c8c63.js} +13 -13
- package/.next/standalone/agents-manage-ui/.next/static/chunks/23624-24cf5c441db07bb8.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{24583.07233e43c19e5550.js → 24583.9a7b1c9eb9f47dd7.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{32168.beb48a371c8d9e14.js → 32168.04681e7292ae5f02.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{34281.bfa37a0f2e8289bf.js → 34281.1bf5026a1cfe5341.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{61164-1637eefc1be6811f.js → 37213-4ddda8db7bed5851.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/44263.a51d1880f431e009.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/49858-7df5d3e19fc00977.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{46303-9b88a06eb3999056.js → 51471-755bb651d0b16cb1.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{54869.3948e58aaf639e39.js → 54869.d01a2a03379d8648.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/71558-452532a4a91f1f8c.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/7190-756a652b28a2506a.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{72414.d9e1d168863e8622.js → 72414.61d7a405fb742cec.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/78225-048fec2920ee12a7.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{80258.31ce0607c4dcaf8e.js → 80258.7b7fab0125073635.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{88531.b43a6d6a4556c35b.js → 88531.cd6dff55887dae2f.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{89308.ff02245a9b309101.js → 89308.b13e1d136ed8e103.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{89814.200ea79fac7482d9.js → 89814.9c8e7e476bf1798d.js} +2 -2
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{920632d2.585c99e4737f3367.js → 920632d2.e78476844c160de0.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/92775-d3dc9c35a7a9d12c.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/99103.91d81aff14ea1d7e.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/993.190288a5b2780074.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/error-8ae206d1430882ab.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{graphs/[graphId]/loading-2e73ab0d984262a3.js → agents/[agentId]/loading-721e10fd249e4b77.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/page-6698176eeabcc156.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/error-aa8e3feab2fca22e.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/loading-f63f184c7d568cae.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/new/page-1d103e4d651d7a06.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/page-84c3978faa593514.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-046ce91f9f4b58d1.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/{page-4caa4b2afa7c5fd8.js → page-79453364e7ee1e6e.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/loading-f63f184c7d568cae.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/{page-4caa4b2afa7c5fd8.js → page-79453364e7ee1e6e.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/{page-54f858363248c4f8.js → page-8efa71d1665595b1.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/{page-02e2e2784316b212.js → page-25eac5b6eff6c429.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/loading-f63f184c7d568cae.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/{page-02e2e2784316b212.js → page-25eac5b6eff6c429.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/{page-908bbdaffc6d68be.js → page-ea168ca8954c0f11.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/{page-c53615fcfc25656f.js → page-73c6f90aee5d7131.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-9af967edcbcc262c.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-f63f184c7d568cae.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-39bb464377ffce09.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-5e91f67243336c39.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{layout-2e73ab0d984262a3.js → layout-721e10fd249e4b77.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/{page-ae00e0718aec4f4f.js → page-9e93a22f4ce731fc.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/{page-dc66bc7918683ed0.js → page-cd80af85c7c3f0d9.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{page-3b35ec1ae9cfc841.js → page-e58d76ff092f7998.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-9a3710bbb956210c.js → page-e729f6c22e2efd93.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/{page-19d7430a79f63bd4.js → page-00cee6f3d629b552.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-48512f59a08d0878.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-fbeca2b1ed7d223a.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-f63f184c7d568cae.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-99398afc3638246f.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-af34e7ee2aaa93dd.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{webpack-37d0370712192597.js → webpack-f66da7226d8e2dc1.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/css/42e93c4387888412.css +1 -0
- package/.next/standalone/agents-manage-ui/package.json +2 -1
- package/.next/standalone/package.json +1 -0
- package/.next/standalone/packages/agents-core/package.json +3 -1
- package/README.md +2 -2
- package/package.json +5 -4
- package/src/app/[tenantId]/page.tsx +1 -1
- package/src/app/[tenantId]/projects/[projectId]/{graphs/[graphId] → agents/[agentId]}/error.tsx +3 -3
- package/src/app/[tenantId]/projects/[projectId]/{graphs/[graphId] → agents/[agentId]}/loading.tsx +1 -1
- package/src/app/[tenantId]/projects/[projectId]/{graphs/[graphId] → agents/[agentId]}/page.tsx +14 -14
- package/src/app/[tenantId]/projects/[projectId]/{graphs → agents}/error.tsx +1 -1
- package/src/app/[tenantId]/projects/[projectId]/{graphs → agents}/loading.tsx +3 -3
- package/src/app/[tenantId]/projects/[projectId]/{graphs → agents}/new/page.tsx +6 -6
- package/src/app/[tenantId]/projects/[projectId]/agents/page.tsx +50 -0
- package/src/app/[tenantId]/projects/[projectId]/api-keys/page.tsx +12 -12
- package/src/app/[tenantId]/projects/[projectId]/page.tsx +1 -1
- package/src/app/api/signoz/conversations/[conversationId]/route.ts +123 -95
- package/src/app/api/signoz/route.ts +1 -1
- package/src/app/layout.tsx +1 -1
- package/src/app/page.tsx +1 -1
- package/src/components/{graph/graph.tsx → agent/agent.tsx} +70 -70
- package/src/components/{graph/configuration/graph-types.tsx → agent/configuration/agent-types.tsx} +7 -7
- package/src/components/agent/configuration/model-options.tsx +74 -0
- package/src/components/{graph → agent}/configuration/node-types.tsx +12 -12
- package/src/components/{graph/error-display/graph-error-summary.tsx → agent/error-display/agent-error-summary.tsx} +21 -21
- package/src/components/{graph → agent}/error-display/error-indicator.tsx +2 -2
- package/src/components/{graph → agent}/node-library/node-library.tsx +1 -1
- package/src/components/{graph → agent}/nodes/external-agent-node.tsx +3 -3
- package/src/components/{graph → agent}/nodes/function-tool-node.tsx +2 -2
- package/src/components/{graph → agent}/nodes/mcp-node.tsx +2 -2
- package/src/components/{graph/nodes/agent-node.tsx → agent/nodes/sub-agent-node.tsx} +8 -8
- package/src/components/{graph → agent}/playground/chat-widget.tsx +10 -6
- package/src/components/{graph → agent}/playground/playground.tsx +3 -3
- package/src/components/{graph → agent}/sidepane/edges/edge-editor.tsx +2 -2
- package/src/components/{graph → agent}/sidepane/metadata/context-config.tsx +3 -3
- package/src/components/{graph → agent}/sidepane/metadata/metadata-editor.tsx +34 -34
- package/src/components/{graph → agent}/sidepane/nodes/external-agent-node-editor.tsx +4 -4
- package/src/components/{graph → agent}/sidepane/nodes/mcp-node-editor.tsx +4 -4
- package/src/components/{graph → agent}/sidepane/nodes/model-section.tsx +11 -11
- package/src/components/{graph → agent}/sidepane/nodes/model-selector.tsx +1 -1
- package/src/components/{graph/sidepane/nodes/agent-node-editor.tsx → agent/sidepane/nodes/sub-agent-node-editor.tsx} +9 -9
- package/src/components/{graph → agent}/sidepane/sidepane.tsx +10 -10
- package/src/components/{graph → agent}/toolbar/toolbar.tsx +5 -5
- package/src/components/{graphs/graph-item-menu.tsx → agents/agent-item-menu.tsx} +6 -6
- package/src/components/{graphs/graph-item.tsx → agents/agent-item.tsx} +7 -7
- package/src/components/agents/agents-list.tsx +20 -0
- package/src/components/{graphs/delete-graph-confirmation.tsx → agents/delete-agent-confirmation.tsx} +11 -11
- package/src/components/{graphs/new-graph-item.tsx → agents/new-agent-item.tsx} +4 -4
- package/src/components/api-keys/api-keys-table.tsx +4 -4
- package/src/components/api-keys/form/api-key-form.tsx +8 -8
- package/src/components/api-keys/form/form-configuration.tsx +1 -1
- package/src/components/api-keys/form/validation.ts +1 -1
- package/src/components/api-keys/new-api-key-dialog.tsx +7 -7
- package/src/components/form/prompt-editor.tsx +2 -2
- package/src/components/icons/empty-state/{graphs.tsx → agents.tsx} +2 -2
- package/src/components/projects/form/form-configuration.ts +1 -1
- package/src/components/projects/form/model-inheritance-info.tsx +1 -1
- package/src/components/projects/form/project-form.tsx +2 -2
- package/src/components/projects/form/project-models-section.tsx +2 -2
- package/src/components/projects/form/project-sandbox-section.tsx +3 -8
- package/src/components/projects/form/project-stopwhen-section.tsx +4 -4
- package/src/components/projects/new-project-dialog.tsx +1 -1
- package/src/components/sidebar-nav/sidebar-nav.tsx +2 -2
- package/src/components/traces/ai-calls-breakdown.tsx +36 -36
- package/src/components/traces/conversation-detail.tsx +3 -3
- package/src/components/traces/conversation-stats/conversation-list-item.tsx +3 -3
- package/src/components/traces/filters/{graph-filter.tsx → agent-filter.tsx} +18 -18
- package/src/components/traces/filters/span-filters.tsx +5 -5
- package/src/components/traces/timeline/render-panel-content.tsx +46 -24
- package/src/components/traces/timeline/span-attributes.tsx +1 -1
- package/src/components/traces/timeline/timeline-item.tsx +52 -140
- package/src/components/traces/timeline/timeline-wrapper.tsx +3 -1
- package/src/components/traces/timeline/types.ts +12 -3
- package/src/components/traces/traces-overview.tsx +31 -31
- package/src/components/ui/inheritance-indicator.tsx +12 -13
- package/src/constants/page-descriptions.tsx +4 -4
- package/src/features/{graph → agent}/commands/commands.ts +18 -18
- package/src/features/{graph → agent}/domain/__tests__/roundtrip.test.ts +17 -17
- package/src/features/{graph → agent}/domain/__tests__/serialize.test.ts +29 -29
- package/src/features/agent/domain/agent-initializer-helpers.ts +61 -0
- package/src/features/{graph → agent}/domain/deserialize.ts +7 -7
- package/src/features/{graph → agent}/domain/index.ts +1 -1
- package/src/features/{graph → agent}/domain/serialize.ts +23 -23
- package/src/features/{graph/state/use-graph-store.ts → agent/state/use-agent-store.ts} +25 -25
- package/src/features/{graph/ui/use-graph-shortcuts.ts → agent/ui/use-agent-shortcuts.ts} +3 -3
- package/src/hooks/{use-graph-errors.ts → use-agent-errors.ts} +5 -5
- package/src/hooks/use-ai-calls-query-state.ts +5 -5
- package/src/hooks/use-auto-prefill-id-zustand.ts +1 -1
- package/src/hooks/use-node-editor.ts +3 -3
- package/src/hooks/use-side-pane.ts +2 -2
- package/src/hooks/use-traces.ts +6 -6
- package/src/lib/README.md +19 -19
- package/src/lib/actions/{graph-full.ts → agent-full.ts} +51 -51
- package/src/lib/api/agent-full-client.ts +109 -0
- package/src/lib/api/signoz-stats.ts +88 -88
- package/src/lib/events.ts +1 -1
- package/src/lib/index.ts +23 -23
- package/src/lib/services/save-agent.ts +14 -0
- package/src/lib/types/{graph-full.ts → agent-full.ts} +19 -19
- package/src/lib/utils/{graph-error-parser.ts → agent-error-parser.ts} +42 -43
- package/src/lib/utils/orphaned-tools-detector.ts +5 -5
- package/src/lib/utils/project-redirect.ts +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page.js +0 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page_client-reference-manifest.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page.js +0 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/new/page_client-reference-manifest.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page.js +0 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/graphs/page_client-reference-manifest.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/1416.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2539.js +0 -184
- package/.next/standalone/agents-manage-ui/.next/server/chunks/4204.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6540.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/680.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7053.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/13059.0f033f4d5351c1db.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/23624-e46204ab16d88ea6.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/44263.5a5fc5d38c77f3d2.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/45548-2feb5c3147a3df2d.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/48130-d79da4489e6e5400.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/49858-ab228fb8f6c251f2.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/57167-9fe188f014a01587.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/71558-7bf7ebd9d3317b9c.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/92775-f593988dc6089885.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/99103.3ef66b745fb33df3.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/993.b56536cb8cab5157.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-61a74d9b1af35d5a.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/loading-f262904f64bb3b83.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/loading-f262904f64bb3b83.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-28ac9ec69a37069e.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-f262904f64bb3b83.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-c61fdb48240d9ddd.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/page-296b11d90d358cd5.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/[graphId]/error-931affb0037bb07e.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/[graphId]/page-4da5133b55e3c3c9.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/error-a95deb3a2467dd39.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/loading-f262904f64bb3b83.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/new/page-00314d610dad371d.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/graphs/page-27e6b999553d284b.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-66cb87d5a5ec16d0.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-c3ebce6d6ddebd58.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-f262904f64bb3b83.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/page-d46bc319d7ec19d5.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/layout-740e040256515ab6.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/css/1d0ded4d212712b9.css +0 -1
- package/src/app/[tenantId]/projects/[projectId]/graphs/page.tsx +0 -50
- package/src/components/graph/configuration/model-options.tsx +0 -68
- package/src/components/graphs/graph-list.tsx +0 -20
- package/src/features/graph/domain/graph-initializer-helpers.ts +0 -61
- package/src/lib/api/graph-full-client.ts +0 -112
- package/src/lib/services/save-graph.ts +0 -14
- /package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/{graphs → agents}/page.js.nft.json +0 -0
- /package/.next/standalone/agents-manage-ui/.next/static/{rhLZkiKuuBIKaQm9C0bPX → r9-qxih7lU6hx6EFo0V8E}/_buildManifest.js +0 -0
- /package/.next/standalone/agents-manage-ui/.next/static/{rhLZkiKuuBIKaQm9C0bPX → r9-qxih7lU6hx6EFo0V8E}/_ssgManifest.js +0 -0
- /package/src/components/{graph → agent}/configuration/edge-types.tsx +0 -0
- /package/src/components/{graph → agent}/edges/agent-to-agent-edge.tsx +0 -0
- /package/src/components/{graph → agent}/edges/default-edge.tsx +0 -0
- /package/src/components/{graph → agent}/edges/self-loop-edge.tsx +0 -0
- /package/src/components/{graph → agent}/markers/default-marker.tsx +0 -0
- /package/src/components/{graph → agent}/markers/selected-marker.tsx +0 -0
- /package/src/components/{graph → agent}/node-library/node-item.tsx +0 -0
- /package/src/components/{graph → agent}/nodes/base-node.tsx +0 -0
- /package/src/components/{graph → agent}/nodes/handle.tsx +0 -0
- /package/src/components/{graph → agent}/nodes/mcp-placeholder-node.tsx +0 -0
- /package/src/components/{graph → agent}/nodes/node-tab.tsx +0 -0
- /package/src/components/{graph → agent}/playground/custom-headers-dialog.tsx +0 -0
- /package/src/components/{graph → agent}/playground/ikp-message.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/collapsible-settings.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/heading.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/component-selector/component-dropdown.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/component-selector/component-header.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/component-selector/component-selector.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/component-selector/selected-components.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/credential-selector.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/empty-state.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/expandable-text-area.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/form-fields.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/function-tool-node-editor.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/mcp-selector/loading.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/mcp-selector/mcp-selector.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/nodes/mcp-selector/mcp-server-item.tsx +0 -0
- /package/src/components/{graph → agent}/sidepane/section.tsx +0 -0
- /package/src/features/{graph → agent}/commands/command-manager.ts +0 -0
|
@@ -6,10 +6,10 @@ import { Button } from '@/components/ui/button';
|
|
|
6
6
|
import { Card, CardContent, CardHeader, CardTitle } from '@/components/ui/card';
|
|
7
7
|
import { Collapsible, CollapsibleContent, CollapsibleTrigger } from '@/components/ui/collapsible';
|
|
8
8
|
import { useSidePane } from '@/hooks/use-side-pane';
|
|
9
|
-
import type {
|
|
9
|
+
import type { AgentErrorSummary, ProcessedAgentError } from '@/lib/utils/agent-error-parser';
|
|
10
10
|
|
|
11
|
-
interface
|
|
12
|
-
errorSummary:
|
|
11
|
+
interface AgentErrorSummaryProps {
|
|
12
|
+
errorSummary: AgentErrorSummary;
|
|
13
13
|
onClose: () => void;
|
|
14
14
|
onNavigateToNode?: (nodeId: string) => void;
|
|
15
15
|
onNavigateToEdge?: (edgeId: string) => void;
|
|
@@ -17,10 +17,10 @@ interface GraphErrorSummaryProps {
|
|
|
17
17
|
|
|
18
18
|
interface ErrorGroupProps {
|
|
19
19
|
title: string;
|
|
20
|
-
errors:
|
|
20
|
+
errors: ProcessedAgentError[];
|
|
21
21
|
icon: React.ReactNode;
|
|
22
22
|
onNavigate?: (id: string) => void;
|
|
23
|
-
getItemLabel?: (error:
|
|
23
|
+
getItemLabel?: (error: ProcessedAgentError) => string;
|
|
24
24
|
}
|
|
25
25
|
|
|
26
26
|
function ErrorGroup({ title, errors, icon, onNavigate, getItemLabel }: ErrorGroupProps) {
|
|
@@ -28,7 +28,7 @@ function ErrorGroup({ title, errors, icon, onNavigate, getItemLabel }: ErrorGrou
|
|
|
28
28
|
|
|
29
29
|
if (errors.length === 0) return null;
|
|
30
30
|
|
|
31
|
-
const groupedErrors: Record<string,
|
|
31
|
+
const groupedErrors: Record<string, ProcessedAgentError[]> = {};
|
|
32
32
|
for (const error of errors) {
|
|
33
33
|
const key = error.nodeId || error.edgeId || 'general';
|
|
34
34
|
if (!groupedErrors[key]) groupedErrors[key] = [];
|
|
@@ -90,12 +90,12 @@ function ErrorGroup({ title, errors, icon, onNavigate, getItemLabel }: ErrorGrou
|
|
|
90
90
|
);
|
|
91
91
|
}
|
|
92
92
|
|
|
93
|
-
export function
|
|
93
|
+
export function AgentErrorSummaryComponent({
|
|
94
94
|
errorSummary,
|
|
95
95
|
onClose,
|
|
96
96
|
onNavigateToNode,
|
|
97
97
|
onNavigateToEdge,
|
|
98
|
-
}:
|
|
98
|
+
}: AgentErrorSummaryProps) {
|
|
99
99
|
const { setQueryState } = useSidePane();
|
|
100
100
|
|
|
101
101
|
const handleNavigateToNode = (nodeId: string) => {
|
|
@@ -116,22 +116,22 @@ export function GraphErrorSummaryComponent({
|
|
|
116
116
|
onNavigateToEdge?.(edgeId);
|
|
117
117
|
};
|
|
118
118
|
|
|
119
|
-
const
|
|
119
|
+
const subAgentErrors = Object.values(errorSummary.subAgentErrors).flat();
|
|
120
120
|
const functionToolErrors = Object.values(errorSummary.functionToolErrors).flat();
|
|
121
121
|
const edgeErrors = Object.values(errorSummary.edgeErrors).flat();
|
|
122
|
-
const
|
|
122
|
+
const agentErrors = errorSummary.agentErrors;
|
|
123
123
|
|
|
124
|
-
const getAgentLabel = (error:
|
|
125
|
-
// You might want to get the actual agent name from the
|
|
124
|
+
const getAgentLabel = (error: ProcessedAgentError) => {
|
|
125
|
+
// You might want to get the actual agent name from the agent data
|
|
126
126
|
return `Agent (${error.nodeId})`;
|
|
127
127
|
};
|
|
128
128
|
|
|
129
|
-
const getFunctionToolLabel = (error:
|
|
130
|
-
// You might want to get the actual function tool name from the
|
|
129
|
+
const getFunctionToolLabel = (error: ProcessedAgentError) => {
|
|
130
|
+
// You might want to get the actual function tool name from the agent data
|
|
131
131
|
return `Function Tool (${error.nodeId})`;
|
|
132
132
|
};
|
|
133
133
|
|
|
134
|
-
const getConnectionLabel = (error:
|
|
134
|
+
const getConnectionLabel = (error: ProcessedAgentError) => {
|
|
135
135
|
return `Connection (${error.edgeId})`;
|
|
136
136
|
};
|
|
137
137
|
|
|
@@ -150,12 +150,12 @@ export function GraphErrorSummaryComponent({
|
|
|
150
150
|
</CardHeader>
|
|
151
151
|
<CardContent className="space-y-2 px-3 overflow-y-auto max-h-[calc(80vh-80px)] scrollbar-thin scrollbar-thumb-red-200 dark:scrollbar-thumb-red-800 scrollbar-track-transparent hover:scrollbar-thumb-red-300 dark:hover:scrollbar-thumb-red-700">
|
|
152
152
|
<div className="text-xs text-red-600 dark:text-red-400 mb-2">
|
|
153
|
-
Fix these issues to save your
|
|
153
|
+
Fix these issues to save your agent:
|
|
154
154
|
</div>
|
|
155
155
|
|
|
156
156
|
<ErrorGroup
|
|
157
|
-
title="Agent Errors"
|
|
158
|
-
errors={
|
|
157
|
+
title="Sub Agent Errors"
|
|
158
|
+
errors={subAgentErrors}
|
|
159
159
|
icon={<Zap className="w-3 h-3" />}
|
|
160
160
|
onNavigate={handleNavigateToNode}
|
|
161
161
|
getItemLabel={getAgentLabel}
|
|
@@ -178,8 +178,8 @@ export function GraphErrorSummaryComponent({
|
|
|
178
178
|
/>
|
|
179
179
|
|
|
180
180
|
<ErrorGroup
|
|
181
|
-
title="
|
|
182
|
-
errors={
|
|
181
|
+
title="Agent Configuration Errors"
|
|
182
|
+
errors={agentErrors}
|
|
183
183
|
icon={<AlertCircle className="w-3 h-3" />}
|
|
184
184
|
/>
|
|
185
185
|
|
|
@@ -194,4 +194,4 @@ export function GraphErrorSummaryComponent({
|
|
|
194
194
|
}
|
|
195
195
|
|
|
196
196
|
// Export with the expected name for compatibility
|
|
197
|
-
export {
|
|
197
|
+
export { AgentErrorSummaryComponent as AgentErrorSummary };
|
|
@@ -2,10 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
import { AlertCircle } from 'lucide-react';
|
|
4
4
|
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip';
|
|
5
|
-
import type {
|
|
5
|
+
import type { ProcessedAgentError } from '@/lib/utils/agent-error-parser';
|
|
6
6
|
|
|
7
7
|
interface ErrorIndicatorProps {
|
|
8
|
-
errors:
|
|
8
|
+
errors: ProcessedAgentError[];
|
|
9
9
|
className?: string;
|
|
10
10
|
}
|
|
11
11
|
|
|
@@ -4,7 +4,7 @@ import { NodeType, nodeTypeMap } from '../configuration/node-types';
|
|
|
4
4
|
import { NodeItem } from './node-item';
|
|
5
5
|
|
|
6
6
|
const nodeTypes: NodeItem[] = [
|
|
7
|
-
nodeTypeMap[NodeType.
|
|
7
|
+
nodeTypeMap[NodeType.SubAgent],
|
|
8
8
|
nodeTypeMap[NodeType.ExternalAgent],
|
|
9
9
|
nodeTypeMap[NodeType.MCPPlaceholder],
|
|
10
10
|
nodeTypeMap[NodeType.FunctionTool],
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { type NodeProps, Position } from '@xyflow/react';
|
|
2
2
|
import { BotMessageSquare } from 'lucide-react';
|
|
3
3
|
import { Badge } from '@/components/ui/badge';
|
|
4
|
-
import { NODE_WIDTH } from '@/features/
|
|
5
|
-
import {
|
|
4
|
+
import { NODE_WIDTH } from '@/features/agent/domain/deserialize';
|
|
5
|
+
import { useAgentErrors } from '@/hooks/use-agent-errors';
|
|
6
6
|
import type { AgentNodeData } from '../configuration/node-types';
|
|
7
7
|
import { externalAgentNodeTargetHandleId } from '../configuration/node-types';
|
|
8
8
|
import { ErrorIndicator } from '../error-display/error-indicator';
|
|
@@ -13,7 +13,7 @@ import { NodeTab } from './node-tab';
|
|
|
13
13
|
export function ExternalAgentNode(props: NodeProps & { data: AgentNodeData }) {
|
|
14
14
|
const { data, selected, id } = props;
|
|
15
15
|
const { name, description } = data;
|
|
16
|
-
const { getNodeErrors, hasNodeErrors } =
|
|
16
|
+
const { getNodeErrors, hasNodeErrors } = useAgentErrors();
|
|
17
17
|
|
|
18
18
|
// Use the agent ID from node data if available, otherwise fall back to React Flow node ID
|
|
19
19
|
const subAgentId = data.id || id;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { type NodeProps, Position } from '@xyflow/react';
|
|
2
2
|
import { Code } from 'lucide-react';
|
|
3
|
-
import {
|
|
3
|
+
import { useAgentErrors } from '@/hooks/use-agent-errors';
|
|
4
4
|
import { type FunctionToolNodeData, functionToolNodeHandleId } from '../configuration/node-types';
|
|
5
5
|
import { ErrorIndicator } from '../error-display/error-indicator';
|
|
6
6
|
import { BaseNode, BaseNodeHeader, BaseNodeHeaderTitle } from './base-node';
|
|
@@ -13,7 +13,7 @@ export function FunctionToolNode(props: NodeProps & { data: FunctionToolNodeData
|
|
|
13
13
|
const name = String(data.name || 'Function Tool');
|
|
14
14
|
const description = String(data.description || '');
|
|
15
15
|
|
|
16
|
-
const { getNodeErrors, hasNodeErrors } =
|
|
16
|
+
const { getNodeErrors, hasNodeErrors } = useAgentErrors();
|
|
17
17
|
|
|
18
18
|
const functionToolId = data.toolId || data.functionToolId || id;
|
|
19
19
|
const nodeErrors = getNodeErrors(functionToolId);
|
|
@@ -2,7 +2,7 @@ import { type NodeProps, Position } from '@xyflow/react';
|
|
|
2
2
|
import { getActiveTools } from '@/app/utils/active-tools';
|
|
3
3
|
import { MCPToolImage } from '@/components/mcp-servers/mcp-tool-image';
|
|
4
4
|
import { Badge } from '@/components/ui/badge';
|
|
5
|
-
import {
|
|
5
|
+
import { useAgentStore } from '@/features/agent/state/use-agent-store';
|
|
6
6
|
import { getCurrentSelectedToolsForNode } from '@/lib/utils/orphaned-tools-detector';
|
|
7
7
|
import { type MCPNodeData, mcpNodeHandleId } from '../configuration/node-types';
|
|
8
8
|
import { BaseNode, BaseNodeHeader, BaseNodeHeaderTitle } from './base-node';
|
|
@@ -12,7 +12,7 @@ const TOOLS_SHOWN_LIMIT = 4;
|
|
|
12
12
|
|
|
13
13
|
export function MCPNode(props: NodeProps & { data: MCPNodeData }) {
|
|
14
14
|
const { data, selected } = props;
|
|
15
|
-
const { toolLookup, agentToolConfigLookup, edges } =
|
|
15
|
+
const { toolLookup, agentToolConfigLookup, edges } = useAgentStore((state) => ({
|
|
16
16
|
toolLookup: state.toolLookup,
|
|
17
17
|
agentToolConfigLookup: state.agentToolConfigLookup,
|
|
18
18
|
edges: state.edges,
|
|
@@ -5,9 +5,9 @@ import { AnthropicIcon } from '@/components/icons/anthropic';
|
|
|
5
5
|
import { GoogleIcon } from '@/components/icons/google';
|
|
6
6
|
import { OpenAIIcon } from '@/components/icons/openai';
|
|
7
7
|
import { Badge } from '@/components/ui/badge';
|
|
8
|
-
import { NODE_WIDTH } from '@/features/
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
8
|
+
import { NODE_WIDTH } from '@/features/agent/domain/deserialize';
|
|
9
|
+
import { useAgentStore } from '@/features/agent/state/use-agent-store';
|
|
10
|
+
import { useAgentErrors } from '@/hooks/use-agent-errors';
|
|
11
11
|
import type { AgentNodeData } from '../configuration/node-types';
|
|
12
12
|
import { agentNodeSourceHandleId, agentNodeTargetHandleId } from '../configuration/node-types';
|
|
13
13
|
import { ErrorIndicator } from '../error-display/error-indicator';
|
|
@@ -41,16 +41,16 @@ const ListSection = ({
|
|
|
41
41
|
);
|
|
42
42
|
};
|
|
43
43
|
|
|
44
|
-
export function
|
|
44
|
+
export function SubAgentNode(props: NodeProps & { data: AgentNodeData }) {
|
|
45
45
|
const { data, selected, id } = props;
|
|
46
46
|
const { name, isDefault, description, models } = data;
|
|
47
47
|
const modelName = models?.base?.model;
|
|
48
48
|
|
|
49
|
-
const { dataComponentLookup, artifactComponentLookup } =
|
|
49
|
+
const { dataComponentLookup, artifactComponentLookup } = useAgentStore((state) => ({
|
|
50
50
|
dataComponentLookup: state.dataComponentLookup,
|
|
51
51
|
artifactComponentLookup: state.artifactComponentLookup,
|
|
52
52
|
}));
|
|
53
|
-
const { getNodeErrors, hasNodeErrors } =
|
|
53
|
+
const { getNodeErrors, hasNodeErrors } = useAgentErrors();
|
|
54
54
|
|
|
55
55
|
// Use the agent ID from node data if available, otherwise fall back to React Flow node ID
|
|
56
56
|
const subAgentId = data.id || id;
|
|
@@ -82,10 +82,10 @@ export function AgentNode(props: NodeProps & { data: AgentNodeData }) {
|
|
|
82
82
|
<BaseNodeHeader className="flex items-center justify-between gap-2">
|
|
83
83
|
<div className="flex items-center gap-2 min-w-0">
|
|
84
84
|
<Bot className="size-4 text-muted-foreground" />
|
|
85
|
-
<BaseNodeHeaderTitle>{name || '
|
|
85
|
+
<BaseNodeHeaderTitle>{name || 'SubAgent'}</BaseNodeHeaderTitle>
|
|
86
86
|
</div>
|
|
87
87
|
<Badge variant="primary" className="text-xs uppercase">
|
|
88
|
-
|
|
88
|
+
SubAgent
|
|
89
89
|
</Badge>
|
|
90
90
|
{hasErrors && (
|
|
91
91
|
<ErrorIndicator errors={nodeErrors} className="absolute -top-2 -right-2 w-6 h-6" />
|
|
@@ -8,7 +8,7 @@ import { useRuntimeConfig } from '@/contexts/runtime-config-context';
|
|
|
8
8
|
import { IkpMessage as IkpMessageComponent } from './ikp-message';
|
|
9
9
|
|
|
10
10
|
interface ChatWidgetProps {
|
|
11
|
-
|
|
11
|
+
agentId?: string;
|
|
12
12
|
projectId: string;
|
|
13
13
|
tenantId: string;
|
|
14
14
|
conversationId: string;
|
|
@@ -121,7 +121,7 @@ const styleOverrides = `
|
|
|
121
121
|
`;
|
|
122
122
|
|
|
123
123
|
export function ChatWidget({
|
|
124
|
-
|
|
124
|
+
agentId,
|
|
125
125
|
projectId,
|
|
126
126
|
tenantId,
|
|
127
127
|
conversationId,
|
|
@@ -143,15 +143,16 @@ export function ChatWidget({
|
|
|
143
143
|
clearTimeout(stopPollingTimeoutRef.current);
|
|
144
144
|
stopPollingTimeoutRef.current = null;
|
|
145
145
|
}
|
|
146
|
-
|
|
146
|
+
|
|
147
147
|
// Set a new timeout for 5 minutes
|
|
148
148
|
stopPollingTimeoutRef.current = setTimeout(() => {
|
|
149
149
|
stopPolling();
|
|
150
150
|
stopPollingTimeoutRef.current = null;
|
|
151
151
|
}, POLLING_TIMEOUT_MS);
|
|
152
|
-
}, [stopPolling
|
|
152
|
+
}, [stopPolling]);
|
|
153
153
|
|
|
154
154
|
// Reset timeout when new activities come in AFTER assistant message received
|
|
155
|
+
// biome-ignore lint/correctness/useExhaustiveDependencies: activities length is intentionally tracked to reset timeout on new activities
|
|
155
156
|
useEffect(() => {
|
|
156
157
|
// Only reset timeout if we've already received the assistant message and new activities were added
|
|
157
158
|
if (hasReceivedAssistantMessageRef.current) {
|
|
@@ -246,11 +247,14 @@ export function ChatWidget({
|
|
|
246
247
|
dark: '/assets/inkeep-icons/icon-sky.svg',
|
|
247
248
|
},
|
|
248
249
|
conversationId,
|
|
249
|
-
graphUrl:
|
|
250
|
+
graphUrl: (() => {
|
|
251
|
+
console.log('INKEEP_AGENTS_RUN_API_URL:', INKEEP_AGENTS_RUN_API_URL);
|
|
252
|
+
return agentId ? `${INKEEP_AGENTS_RUN_API_URL}/api/chat` : undefined;
|
|
253
|
+
})(),
|
|
250
254
|
headers: {
|
|
251
255
|
'x-inkeep-tenant-id': tenantId,
|
|
252
256
|
'x-inkeep-project-id': projectId,
|
|
253
|
-
'x-inkeep-
|
|
257
|
+
'x-inkeep-agent-id': agentId,
|
|
254
258
|
Authorization: `Bearer ${INKEEP_AGENTS_RUN_API_BYPASS_SECRET}`,
|
|
255
259
|
...customHeaders,
|
|
256
260
|
},
|
|
@@ -9,7 +9,7 @@ import { ChatWidget } from './chat-widget';
|
|
|
9
9
|
import CustomHeadersDialog from './custom-headers-dialog';
|
|
10
10
|
|
|
11
11
|
interface PlaygroundProps {
|
|
12
|
-
|
|
12
|
+
agentId: string;
|
|
13
13
|
projectId: string;
|
|
14
14
|
tenantId: string;
|
|
15
15
|
setShowPlayground: (show: boolean) => void;
|
|
@@ -17,7 +17,7 @@ interface PlaygroundProps {
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
export const Playground = ({
|
|
20
|
-
|
|
20
|
+
agentId,
|
|
21
21
|
projectId,
|
|
22
22
|
tenantId,
|
|
23
23
|
closeSidePane,
|
|
@@ -78,7 +78,7 @@ export const Playground = ({
|
|
|
78
78
|
setConversationId={setConversationId}
|
|
79
79
|
startPolling={startPolling}
|
|
80
80
|
stopPolling={stopPolling}
|
|
81
|
-
|
|
81
|
+
agentId={agentId}
|
|
82
82
|
projectId={projectId}
|
|
83
83
|
tenantId={tenantId}
|
|
84
84
|
customHeaders={customHeaders}
|
|
@@ -4,7 +4,7 @@ import { DashedSplineIcon } from '@/components/icons/dashed-spline';
|
|
|
4
4
|
import { Badge } from '@/components/ui/badge';
|
|
5
5
|
import { Checkbox } from '@/components/ui/checkbox';
|
|
6
6
|
import { Label } from '@/components/ui/label';
|
|
7
|
-
import {
|
|
7
|
+
import { useAgentActions } from '@/features/agent/state/use-agent-store';
|
|
8
8
|
import type { A2AEdgeData } from '../../configuration/edge-types';
|
|
9
9
|
|
|
10
10
|
type RelationshipOptionProps = {
|
|
@@ -79,7 +79,7 @@ function EdgeEditor({ selectedEdge }: EdgeEditorProps) {
|
|
|
79
79
|
const { updateEdgeData, setEdges } = useReactFlow();
|
|
80
80
|
const sourceNode = useNodesData(selectedEdge.source);
|
|
81
81
|
const targetNode = useNodesData(selectedEdge.target);
|
|
82
|
-
const { markUnsaved } =
|
|
82
|
+
const { markUnsaved } = useAgentActions();
|
|
83
83
|
|
|
84
84
|
// Check if this is a self-loop (source and target are the same)
|
|
85
85
|
const isSelfLoop = selectedEdge.source === selectedEdge.target;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ExpandableJsonEditor } from '@/components/form/expandable-json-editor';
|
|
2
|
-
import type { ContextConfig,
|
|
2
|
+
import type { ContextConfig, AgentMetadata } from '../../configuration/agent-types';
|
|
3
3
|
import { SectionHeader } from '../section';
|
|
4
4
|
|
|
5
5
|
export function ContextConfigForm({
|
|
@@ -7,7 +7,7 @@ export function ContextConfigForm({
|
|
|
7
7
|
updateMetadata,
|
|
8
8
|
}: {
|
|
9
9
|
contextConfig: ContextConfig;
|
|
10
|
-
updateMetadata: (field: keyof
|
|
10
|
+
updateMetadata: (field: keyof AgentMetadata, value: AgentMetadata[keyof AgentMetadata]) => void;
|
|
11
11
|
}) {
|
|
12
12
|
const { contextVariables, headersSchema } = contextConfig;
|
|
13
13
|
|
|
@@ -23,7 +23,7 @@ export function ContextConfigForm({
|
|
|
23
23
|
<div className="space-y-8">
|
|
24
24
|
<SectionHeader
|
|
25
25
|
title="Context configuration"
|
|
26
|
-
description="Configure dynamic context for this
|
|
26
|
+
description="Configure dynamic context for this agent."
|
|
27
27
|
/>
|
|
28
28
|
<div className="flex flex-col space-y-8">
|
|
29
29
|
<ExpandableJsonEditor
|
|
@@ -19,7 +19,7 @@ import { Separator } from '@/components/ui/separator';
|
|
|
19
19
|
import { Textarea } from '@/components/ui/textarea';
|
|
20
20
|
import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip';
|
|
21
21
|
import { useRuntimeConfig } from '@/contexts/runtime-config-context';
|
|
22
|
-
import {
|
|
22
|
+
import { useAgentActions, useAgentStore } from '@/features/agent/state/use-agent-store';
|
|
23
23
|
import { useAutoPrefillIdZustand } from '@/hooks/use-auto-prefill-id-zustand';
|
|
24
24
|
import { useProjectData } from '@/hooks/use-project-data';
|
|
25
25
|
import { CollapsibleSettings } from '../collapsible-settings';
|
|
@@ -33,7 +33,7 @@ const ExecutionLimitInheritanceInfo = () => {
|
|
|
33
33
|
return (
|
|
34
34
|
<ul className="space-y-1.5 list-disc list-outside pl-4">
|
|
35
35
|
<li>
|
|
36
|
-
<span className="font-medium">transferCountIs</span>: Project →
|
|
36
|
+
<span className="font-medium">transferCountIs</span>: Project → Agent only (controls
|
|
37
37
|
transfers between agents)
|
|
38
38
|
</li>
|
|
39
39
|
<li>
|
|
@@ -45,8 +45,8 @@ const ExecutionLimitInheritanceInfo = () => {
|
|
|
45
45
|
set anywhere
|
|
46
46
|
</li>
|
|
47
47
|
<li>
|
|
48
|
-
<span className="font-medium">
|
|
49
|
-
this
|
|
48
|
+
<span className="font-medium">Agent scope</span>: This limit applies to all agents within
|
|
49
|
+
this agent
|
|
50
50
|
</li>
|
|
51
51
|
</ul>
|
|
52
52
|
);
|
|
@@ -54,17 +54,17 @@ const ExecutionLimitInheritanceInfo = () => {
|
|
|
54
54
|
|
|
55
55
|
function MetadataEditor() {
|
|
56
56
|
const params = useParams();
|
|
57
|
-
const metadata =
|
|
58
|
-
const {
|
|
59
|
-
const { id, name, description, contextConfig, models, stopWhen,
|
|
57
|
+
const metadata = useAgentStore((state) => state.metadata);
|
|
58
|
+
const { agentId, tenantId, projectId } = params;
|
|
59
|
+
const { id, name, description, contextConfig, models, stopWhen, agentPrompt, statusUpdates } =
|
|
60
60
|
metadata;
|
|
61
61
|
const { INKEEP_AGENTS_RUN_API_URL } = useRuntimeConfig();
|
|
62
|
-
const
|
|
62
|
+
const agentUrl = `${INKEEP_AGENTS_RUN_API_URL}/api/chat`;
|
|
63
63
|
|
|
64
64
|
// Fetch project data for inheritance indicators
|
|
65
65
|
const { project } = useProjectData();
|
|
66
66
|
|
|
67
|
-
const { markUnsaved, setMetadata } =
|
|
67
|
+
const { markUnsaved, setMetadata } = useAgentActions();
|
|
68
68
|
|
|
69
69
|
const updateMetadata: typeof setMetadata = useCallback(
|
|
70
70
|
(...attrs) => {
|
|
@@ -81,17 +81,17 @@ function MetadataEditor() {
|
|
|
81
81
|
[updateMetadata]
|
|
82
82
|
);
|
|
83
83
|
|
|
84
|
-
// Auto-prefill ID based on name field (only for new
|
|
84
|
+
// Auto-prefill ID based on name field (only for new agent)
|
|
85
85
|
useAutoPrefillIdZustand({
|
|
86
86
|
nameValue: name,
|
|
87
87
|
idValue: id,
|
|
88
88
|
onIdChange: handleIdChange,
|
|
89
|
-
isEditing: !!
|
|
89
|
+
isEditing: !!agentId,
|
|
90
90
|
});
|
|
91
91
|
|
|
92
92
|
return (
|
|
93
93
|
<div className="space-y-8">
|
|
94
|
-
{
|
|
94
|
+
{agentId && (
|
|
95
95
|
<div className="space-y-2">
|
|
96
96
|
<div className="text-sm leading-none font-medium flex items-center gap-1">
|
|
97
97
|
Chat URL
|
|
@@ -100,13 +100,13 @@ function MetadataEditor() {
|
|
|
100
100
|
<Info className="w-3 h-3 text-muted-foreground" />
|
|
101
101
|
</TooltipTrigger>
|
|
102
102
|
<TooltipContent>
|
|
103
|
-
Use this endpoint to chat with your
|
|
104
|
-
|
|
103
|
+
Use this endpoint to chat with your agent or connect it to the Inkeep widget via the
|
|
104
|
+
agentUrl prop. Supports streaming responses with the Vercel AI SDK data stream
|
|
105
105
|
protocol.
|
|
106
106
|
</TooltipContent>
|
|
107
107
|
</Tooltip>
|
|
108
108
|
</div>
|
|
109
|
-
<CopyableSingleLineCode code={
|
|
109
|
+
<CopyableSingleLineCode code={agentUrl} />
|
|
110
110
|
<ExternalLink href={`/${tenantId}/projects/${projectId}/api-keys`}>
|
|
111
111
|
Create API key
|
|
112
112
|
</ExternalLink>
|
|
@@ -118,7 +118,7 @@ function MetadataEditor() {
|
|
|
118
118
|
label="Name"
|
|
119
119
|
value={name}
|
|
120
120
|
onChange={(e) => updateMetadata('name', e.target.value)}
|
|
121
|
-
placeholder="My
|
|
121
|
+
placeholder="My agent"
|
|
122
122
|
isRequired
|
|
123
123
|
/>
|
|
124
124
|
<InputField
|
|
@@ -127,11 +127,11 @@ function MetadataEditor() {
|
|
|
127
127
|
label="Id"
|
|
128
128
|
value={id || ''}
|
|
129
129
|
onChange={(e) => updateMetadata('id', e.target.value)}
|
|
130
|
-
disabled={!!
|
|
131
|
-
placeholder="my-
|
|
130
|
+
disabled={!!agentId} // only editable if no agentId is set (i.e. new agent)
|
|
131
|
+
placeholder="my-agent"
|
|
132
132
|
description={
|
|
133
|
-
!
|
|
134
|
-
? 'Choose a unique identifier for this
|
|
133
|
+
!agentId
|
|
134
|
+
? 'Choose a unique identifier for this agent. Using an existing id will replace that agent.'
|
|
135
135
|
: undefined
|
|
136
136
|
}
|
|
137
137
|
isRequired
|
|
@@ -142,26 +142,26 @@ function MetadataEditor() {
|
|
|
142
142
|
label="Description"
|
|
143
143
|
value={description}
|
|
144
144
|
onChange={(e) => updateMetadata('description', e.target.value)}
|
|
145
|
-
placeholder="This
|
|
145
|
+
placeholder="This agent is used to..."
|
|
146
146
|
className="max-h-96"
|
|
147
147
|
/>
|
|
148
148
|
<div className="space-y-2">
|
|
149
149
|
<ExpandableTextArea
|
|
150
|
-
id="
|
|
151
|
-
label="
|
|
152
|
-
value={
|
|
153
|
-
onChange={(value) => updateMetadata('
|
|
154
|
-
placeholder="System-level instructions for this
|
|
150
|
+
id="agent-prompt"
|
|
151
|
+
label="Agent prompt"
|
|
152
|
+
value={agentPrompt || ''}
|
|
153
|
+
onChange={(value) => updateMetadata('agentPrompt', value)}
|
|
154
|
+
placeholder="System-level instructions for this agent..."
|
|
155
155
|
className="max-h-96"
|
|
156
156
|
/>
|
|
157
157
|
<p className="text-xs text-muted-foreground">
|
|
158
|
-
System-level prompt that defines the intended audience and overall goal of this
|
|
158
|
+
System-level prompt that defines the intended audience and overall goal of this agent.
|
|
159
159
|
Applied to all agents.
|
|
160
160
|
</p>
|
|
161
161
|
</div>
|
|
162
162
|
<Separator />
|
|
163
163
|
|
|
164
|
-
{/*
|
|
164
|
+
{/* Agent Model Settings */}
|
|
165
165
|
<div className="space-y-8">
|
|
166
166
|
<SectionHeader
|
|
167
167
|
title="Default models"
|
|
@@ -194,7 +194,7 @@ function MetadataEditor() {
|
|
|
194
194
|
Base model
|
|
195
195
|
<InheritanceIndicator
|
|
196
196
|
{...getModelInheritanceStatus(
|
|
197
|
-
'
|
|
197
|
+
'agent',
|
|
198
198
|
models?.base?.model,
|
|
199
199
|
project?.models?.base?.model
|
|
200
200
|
)}
|
|
@@ -257,7 +257,7 @@ function MetadataEditor() {
|
|
|
257
257
|
Structured output model
|
|
258
258
|
<InheritanceIndicator
|
|
259
259
|
{...getModelInheritanceStatus(
|
|
260
|
-
'
|
|
260
|
+
'agent',
|
|
261
261
|
models?.structuredOutput?.model,
|
|
262
262
|
project?.models?.structuredOutput?.model
|
|
263
263
|
)}
|
|
@@ -316,7 +316,7 @@ function MetadataEditor() {
|
|
|
316
316
|
Summarizer model
|
|
317
317
|
<InheritanceIndicator
|
|
318
318
|
{...getModelInheritanceStatus(
|
|
319
|
-
'
|
|
319
|
+
'agent',
|
|
320
320
|
models?.summarizer?.model,
|
|
321
321
|
project?.models?.summarizer?.model
|
|
322
322
|
)}
|
|
@@ -355,11 +355,11 @@ function MetadataEditor() {
|
|
|
355
355
|
|
|
356
356
|
<Separator />
|
|
357
357
|
|
|
358
|
-
{/*
|
|
358
|
+
{/* Agent Execution Limits */}
|
|
359
359
|
<div className="space-y-8">
|
|
360
360
|
<SectionHeader
|
|
361
361
|
title="Execution limits"
|
|
362
|
-
description="Configure
|
|
362
|
+
description="Configure agent-level execution limits for transfers between agents."
|
|
363
363
|
titleTooltip={
|
|
364
364
|
<div>
|
|
365
365
|
<p>How execution limit inheritance works:</p>
|
|
@@ -373,7 +373,7 @@ function MetadataEditor() {
|
|
|
373
373
|
<Label htmlFor="transfer-count">Max transfers</Label>
|
|
374
374
|
<InheritanceIndicator
|
|
375
375
|
{...getExecutionLimitInheritanceStatus(
|
|
376
|
-
'
|
|
376
|
+
'agent',
|
|
377
377
|
'transferCountIs',
|
|
378
378
|
stopWhen?.transferCountIs,
|
|
379
379
|
project?.stopWhen?.transferCountIs
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import type { Node } from '@xyflow/react';
|
|
2
2
|
import { useCallback } from 'react';
|
|
3
3
|
import { ExpandableJsonEditor } from '@/components/form/expandable-json-editor';
|
|
4
|
+
import type { ErrorHelpers } from '@/hooks/use-agent-errors';
|
|
4
5
|
import { useAutoPrefillIdZustand } from '@/hooks/use-auto-prefill-id-zustand';
|
|
5
|
-
import type { ErrorHelpers } from '@/hooks/use-graph-errors';
|
|
6
6
|
import { useNodeEditor } from '@/hooks/use-node-editor';
|
|
7
7
|
import type { Credential } from '@/lib/api/credentials';
|
|
8
8
|
import type { ExternalAgentNodeData } from '../../configuration/node-types';
|
|
@@ -43,8 +43,8 @@ export function ExternalAgentNodeEditor({
|
|
|
43
43
|
return (
|
|
44
44
|
<div className="space-y-8 flex flex-col">
|
|
45
45
|
<p className="text-sm text-muted-foreground">
|
|
46
|
-
External agents are agents
|
|
47
|
-
(Agent-to-Agent) protocol. External agents enable you to delegate tasks between
|
|
46
|
+
External agents are agents that live outside of your project that can communicate using the
|
|
47
|
+
A2A (Agent-to-Agent) protocol. External agents enable you to delegate tasks between agent
|
|
48
48
|
within the agent framework or to third-party services.
|
|
49
49
|
</p>
|
|
50
50
|
|
|
@@ -92,7 +92,7 @@ export function ExternalAgentNodeEditor({
|
|
|
92
92
|
onChange={handleInputChange}
|
|
93
93
|
placeholder="https://api.example.com/agent"
|
|
94
94
|
error={getFieldError('baseUrl')}
|
|
95
|
-
tooltip="This URL is used to discover the agent's capabilities and communicate with it using the A2A protocol. For locally hosted
|
|
95
|
+
tooltip="This URL is used to discover the agent's capabilities and communicate with it using the A2A protocol. For locally hosted agent defined with the agent-framework this would be: http://localhost:3002/tenants/:tenantId/projects/:projectId/agents/:agentId"
|
|
96
96
|
/>
|
|
97
97
|
<ExpandableJsonEditor
|
|
98
98
|
name="headers"
|
|
@@ -10,14 +10,14 @@ import { ExternalLink } from '@/components/ui/external-link';
|
|
|
10
10
|
import { Input } from '@/components/ui/input';
|
|
11
11
|
import { Label } from '@/components/ui/label';
|
|
12
12
|
import { Tooltip, TooltipContent, TooltipTrigger } from '@/components/ui/tooltip';
|
|
13
|
-
import {
|
|
13
|
+
import { useAgentActions, useAgentStore } from '@/features/agent/state/use-agent-store';
|
|
14
14
|
import { getToolTypeAndName } from '@/lib/utils/mcp-utils';
|
|
15
15
|
import {
|
|
16
16
|
getCurrentHeadersForNode,
|
|
17
17
|
getCurrentSelectedToolsForNode,
|
|
18
18
|
} from '@/lib/utils/orphaned-tools-detector';
|
|
19
19
|
import type { MCPNodeData } from '../../configuration/node-types';
|
|
20
|
-
import type { AgentToolConfigLookup } from '../../
|
|
20
|
+
import type { AgentToolConfigLookup } from '../../agent';
|
|
21
21
|
|
|
22
22
|
interface MCPServerNodeEditorProps {
|
|
23
23
|
selectedNode: Node<MCPNodeData>;
|
|
@@ -33,10 +33,10 @@ export function MCPServerNodeEditor({
|
|
|
33
33
|
tenantId: string;
|
|
34
34
|
projectId: string;
|
|
35
35
|
}>();
|
|
36
|
-
const { markUnsaved } =
|
|
36
|
+
const { markUnsaved } = useAgentActions();
|
|
37
37
|
|
|
38
38
|
// Only use toolLookup - single source of truth
|
|
39
|
-
const { toolLookup, edges } =
|
|
39
|
+
const { toolLookup, edges } = useAgentStore((state) => ({
|
|
40
40
|
toolLookup: state.toolLookup,
|
|
41
41
|
edges: state.edges,
|
|
42
42
|
}));
|