@inkeep/agents-manage-ui 0.39.3 → 0.39.5
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-path-routes-manifest.json +7 -7
- package/.next/standalone/agents-manage-ui/.next/build-manifest.json +3 -3
- package/.next/standalone/agents-manage-ui/.next/prerender-manifest.json +3 -3
- package/.next/standalone/agents-manage-ui/.next/react-loadable-manifest.json +11 -11
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/page.js.nft.json +1 -1
- 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/(index)/page.js +2 -0
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/(index)/page.js.nft.json +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/(index)/page_client-reference-manifest.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.js +6 -6
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/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 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/agents/page_client-reference-manifest.js +1 -1
- 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.js.nft.json +1 -1
- 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 +2 -2
- 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.js.nft.json +1 -1
- 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.js.nft.json +1 -1
- 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 +2 -2
- 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 +3 -2
- 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 +3 -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.js.nft.json +1 -1
- 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]/external-agents/[externalAgentId]/edit/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page.js +3 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/new/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/external-agents/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.js.nft.json +1 -1
- 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 +3 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.js.nft.json +1 -1
- 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.js.nft.json +1 -1
- 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.js.nft.json +1 -1
- 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 +3 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/page.js.nft.json +1 -1
- 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 +3 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/settings/page.js.nft.json +1 -1
- 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 +2 -2
- 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 +4 -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/[projectId]/traces/tool-calls/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/tool-calls/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/[projectId]/traces/tool-calls/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/settings/page.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/settings/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/settings/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.html +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_full.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_global-error.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_index.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/_global-error.segments/_tree.segment.rsc +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.js.nft.json +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 +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_full.segment.rsc +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_head.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_index.segment.rsc +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_not-found.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/accept-invitation/[invitationId]/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/accept-invitation/[invitationId]/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/accept-invitation/[invitationId]/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route.js +5 -6
- package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/api/data-components/[dataComponentId]/generate-render/route_client-reference-manifest.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_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/device/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/device/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/device/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/device.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/device.rsc +9 -9
- package/.next/standalone/agents-manage-ui/.next/server/app/device.segments/_full.segment.rsc +9 -9
- package/.next/standalone/agents-manage-ui/.next/server/app/device.segments/_head.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/device.segments/_index.segment.rsc +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/app/device.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/device.segments/device/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/device.segments/device.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/index.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/index.rsc +9 -9
- package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_full.segment.rsc +9 -9
- package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_head.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_index.segment.rsc +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/app/index.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/login/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login.rsc +9 -9
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_full.segment.rsc +9 -9
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_head.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_index.segment.rsc +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/login/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/login.segments/login.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/logout/route_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization/page.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization/page.js.nft.json +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization/page_client-reference-manifest.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.html +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.rsc +9 -9
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_full.segment.rsc +9 -9
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_head.segment.rsc +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_index.segment.rsc +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/_tree.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/no-organization/__PAGE__.segment.rsc +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/no-organization.segments/no-organization.segment.rsc +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.js.nft.json +1 -1
- 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 +7 -7
- package/.next/standalone/agents-manage-ui/.next/server/chunks/1229.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/1304.js +2 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{9380.js → 2090.js} +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2550.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2807.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2970.js +3 -3
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3142.js +2 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{8386.js → 3166.js} +3 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/4297.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/5141.js +19 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6024.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6961.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7264.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7475.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7747.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{1279.js → 7850.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7927.js +2 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/8202.js +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/8428.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/server/chunks/8832.js +8 -8
- package/.next/standalone/agents-manage-ui/.next/server/chunks/{6599.js → 8980.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/9564.js +10 -0
- 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 +2 -2
- 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/12694-74eed2b96c932249.js +5 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/15751.4aee7ad5bb344230.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/18110-0300af0b45136941.js +14 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/26088.4c4161f954333c6e.js +23 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/26936-ee239ba850d833fb.js +7 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/28265-3908886453a7a27a.js +10 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{29247-d68a80eb925edd70.js → 29247-142722ce03ad66df.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/31597-7a9a6cc3c37e72a7.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/33538-913163d6de7a8917.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{44414.a92ffc4a59bc6713.js → 44414.7ca075c549503511.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/44447-7e32eaf700059aa2.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/51932-f42ca2c4ad83114d.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{57544-5a4088673144600b.js → 57544-5f0eb66ca45c177b.js} +3 -3
- package/.next/standalone/agents-manage-ui/.next/static/chunks/60655-c5803f5e374993e0.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/65006-407614754e321199.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{7256.4f1159afdecd12fe.js → 7256.82e8ff8b3f524a93.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/73754-605e9e576b571e03.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/76861-e6d4d9db6b529522.js +11 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{78295-a27da1184099ddc1.js → 78295-af4caa1f2e988caf.js} +2 -2
- package/.next/standalone/agents-manage-ui/.next/static/chunks/82769-e2742b46ec7dbf5f.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/8669-313a62c4c7363db5.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/88893-ddbf43580a7dbd80.js +4 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/{9798a8e4-e9db6f9d9a18f186.js → 9798a8e4-a7cd55753165df3d.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/error-283b8c8ebf10e597.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/layout-dabb812173851f2a.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/page-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/(index)/layout-becf4828d2447be1.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/(index)/loading-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/{page-97d5c988e704def0.js → (index)/page-b4eb86870dd6e7a2.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/{layout-7a7060ef9a77a7b8.js → layout-813baf2b5c18b033.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/loading-ccc215c5da335e98.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/{page-8e3f99c35a73ed1d.js → page-1ccfd94b02315bf6.js} +17 -17
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/{page-78bced04841cbdfe.js → page-6e335d8b7fc9ac3f.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-f0c972aa26a21df9.js +7 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-f4a38dc58ee6081a.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-4fbf9ccd31a35ccf.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/{page-cfdc80e720d33579.js → page-46698726cdd4b241.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page-e7d0197b3c405f8f.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-776359bcaae968b4.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-9880bc5041a90082.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-175f83f6197bb109.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-014b9bbc4aad5fb4.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-38d6ccdfc9c36076.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-a109b29feb821155.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/{page-b353567438219bd8.js → page-66dfa1d412ae8a8d.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/{page-220e836dd4b6c7fa.js → page-97d3bc0e7e2199c6.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/{page-4fed3dcf06007768.js → page-0b4ae1563ea603b2.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page-6c5ccd6cfba35fa6.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/new/page-21d8f974af1c9fb4.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/{page-79c2e8195b47670f.js → page-9889a2ec4c5c4337.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/{layout-41d3d2371022c410.js → layout-3b3e4ce458b2b0ce.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/loading-9b724d00c98ef119.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page-560b852d1eb53ca9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-9729f6e3ab93b9e2.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-f63c93d0766064c9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/{page-1cd0d194426690ac.js → page-a54d509d46b6b805.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/page-6eb4c97e6a92f97f.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/settings/{page-f59aa22ea840d31d.js → page-e4fa846c64d8c10d.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/page-380915f5a20b19ef.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-4bccb1bec10ce7fb.js +2 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-cfbfbb8f8418f1a7.js +5 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/tool-calls/page-528d4675d70c0394.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/settings/layout-7600a849a0219764.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/settings/loading-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/settings/page-4674f85f005008bf.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/_global-error/page-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/_not-found/page-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/accept-invitation/[invitationId]/{page-974b91e53ffd205e.js → page-e081ddc04e5a3f1e.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/api/data-components/[dataComponentId]/generate-render/route-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/api/signoz/conversations/[conversationId]/route-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/api/signoz/route-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/device/page-f7ccb2ba0af03681.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/{layout-60be0f71d7ddf4f4.js → layout-c091f91cf9f85e15.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/login/page-7bad6cadb87a4736.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/logout/route-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/no-organization/{page-0520c2ff174c67ea.js → page-0383b220d2087869.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/{not-found-e4cc8b2fea991eaf.js → not-found-28201f8b8e1e347e.js} +1 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/page-691f6610c27d482a.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/next/dist/client/components/builtin/app-error-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/next/dist/client/components/builtin/forbidden-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/next/dist/client/components/builtin/unauthorized-8cab46ee32ee58f9.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/chunks/webpack-193e54f1e1c02f7c.js +1 -0
- package/.next/standalone/agents-manage-ui/.next/static/css/b41df3dfdce15e0f.css +1 -0
- package/.next/standalone/agents-manage-ui/package.json +2 -2
- package/.next/standalone/packages/agents-core/package.json +1 -1
- package/package.json +5 -5
- package/src/app/[tenantId]/{settings/error.tsx → error.tsx} +1 -1
- package/src/app/[tenantId]/projects/(index)/layout.tsx +5 -0
- package/src/app/[tenantId]/projects/(index)/loading.tsx +15 -0
- package/src/app/[tenantId]/projects/(index)/page.tsx +52 -0
- package/src/app/[tenantId]/projects/[projectId]/agents/[agentId]/loading.tsx +27 -19
- package/src/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.client.tsx +33 -34
- package/src/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.dynamic.tsx +9 -0
- package/src/app/[tenantId]/projects/[projectId]/agents/[agentId]/page.tsx +44 -26
- package/src/app/[tenantId]/projects/[projectId]/agents/page.tsx +15 -17
- package/src/app/[tenantId]/projects/[projectId]/api-keys/page.tsx +17 -24
- package/src/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page.tsx +12 -15
- package/src/app/[tenantId]/projects/[projectId]/artifacts/new/page.tsx +2 -5
- package/src/app/[tenantId]/projects/[projectId]/artifacts/page.tsx +24 -26
- package/src/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page.tsx +27 -33
- package/src/app/[tenantId]/projects/[projectId]/components/new/page.tsx +3 -7
- package/src/app/[tenantId]/projects/[projectId]/components/page.tsx +33 -40
- package/src/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page.tsx +21 -29
- package/src/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page.tsx +3 -7
- package/src/app/[tenantId]/projects/[projectId]/credentials/new/page.tsx +10 -13
- package/src/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page.tsx +8 -12
- package/src/app/[tenantId]/projects/[projectId]/credentials/new/providers/page.tsx +18 -24
- package/src/app/[tenantId]/projects/[projectId]/credentials/page.tsx +42 -50
- package/src/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/edit/page.tsx +10 -14
- package/src/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page.tsx +22 -26
- package/src/app/[tenantId]/projects/[projectId]/external-agents/new/page.tsx +8 -12
- package/src/app/[tenantId]/projects/[projectId]/external-agents/page.tsx +29 -37
- package/src/app/[tenantId]/projects/[projectId]/loading.tsx +17 -0
- package/src/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page.tsx +10 -14
- package/src/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page.tsx +23 -26
- package/src/app/[tenantId]/projects/[projectId]/mcp-servers/new/page.tsx +14 -1
- package/src/app/[tenantId]/projects/[projectId]/mcp-servers/page.tsx +29 -37
- package/src/app/[tenantId]/projects/[projectId]/page.tsx +2 -2
- package/src/app/[tenantId]/projects/[projectId]/settings/page.tsx +15 -21
- package/src/app/[tenantId]/projects/[projectId]/traces/ai-calls/page.tsx +2 -5
- package/src/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page.tsx +2 -5
- package/src/app/[tenantId]/projects/[projectId]/traces/page.tsx +2 -5
- package/src/app/[tenantId]/projects/[projectId]/traces/tool-calls/page.tsx +2 -5
- package/src/app/[tenantId]/settings/layout.tsx +11 -0
- package/src/app/[tenantId]/settings/loading.tsx +6 -11
- package/src/app/[tenantId]/settings/page.tsx +77 -17
- package/src/components/agent/configuration/model-options.tsx +4 -0
- package/src/components/agent/copilot/components/connect-tool-card.tsx +129 -84
- package/src/components/agent/copilot/components/sub-agent-tool-relation-result.tsx +3 -0
- package/src/components/agent/copilot/copilot-chat.tsx +1 -0
- package/src/components/agent/copilot/message-parts/message.tsx +4 -0
- package/src/components/agent/copilot/message-parts/tool-result.tsx +3 -0
- package/src/components/errors/full-page-error.tsx +2 -7
- package/src/components/external-agents/view-external-agent-details.tsx +1 -1
- package/src/components/layout/body-template.tsx +12 -4
- package/src/components/layout/header-menus.tsx +14 -6
- package/src/components/layout/site-header.tsx +1 -1
- package/src/components/mcp-servers/form/mcp-server-form.tsx +1 -0
- package/src/components/mcp-servers/selection/mcp-server-selection.tsx +34 -41
- package/src/components/mcp-servers/view-mcp-server-details-project-scope.tsx +1 -0
- package/src/components/theme-toggle.tsx +2 -11
- package/src/components/ui/breadcrumbs.tsx +11 -7
- package/src/hooks/use-oauth-login.ts +2 -8
- package/src/hooks/use-scope-selection.tsx +106 -0
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js +0 -2
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page.js.nft.json +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/app/[tenantId]/projects/page_client-reference-manifest.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/2331.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3526.js +0 -19
- package/.next/standalone/agents-manage-ui/.next/server/chunks/376.js +0 -2
- package/.next/standalone/agents-manage-ui/.next/server/chunks/3870.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/4404.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6348.js +0 -10
- package/.next/standalone/agents-manage-ui/.next/server/chunks/6699.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/7760.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/8104.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/8870.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/9184.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/server/chunks/9637.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/13071-ceccb85c519c3f02.js +0 -10
- package/.next/standalone/agents-manage-ui/.next/static/chunks/143.f2a227fb038eb7c8.js +0 -23
- package/.next/standalone/agents-manage-ui/.next/static/chunks/15751.f41acae2d28d9fc4.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/16476-f3f4a7d9d8d39770.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/2072-5c873b65cfe08cd3.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/38422-034c6b2175cf0bf2.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/40905-4932036bb20f8592.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/41147-91590767c089f224.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/44447-17b5e72df61ae67e.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/50467-777bdb0f605fb4d7.js +0 -11
- package/.next/standalone/agents-manage-ui/.next/static/chunks/53242-6be13538c0f58a26.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/5760-07f9187cd05fafa9.js +0 -4
- package/.next/standalone/agents-manage-ui/.next/static/chunks/59055-b22063d12ac3a359.js +0 -5
- package/.next/standalone/agents-manage-ui/.next/static/chunks/62023-e39e0ff952176af1.js +0 -3
- package/.next/standalone/agents-manage-ui/.next/static/chunks/63050-0afac0a06cbbefce.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/65006-ff4719c293443515.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/65239-e7a34bca752e6b99.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/68452-a481de84cae6627d.js +0 -7
- package/.next/standalone/agents-manage-ui/.next/static/chunks/73012-223687a8cc722401.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/73160-58607761875c106f.js +0 -5
- package/.next/standalone/agents-manage-ui/.next/static/chunks/83348-54cc7420df24938c.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/87255-add7034a65258744.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/91091-5fec454541e7df9d.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/layout-a6a0d7358b38fea9.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/page-edb923be7f6f9928.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/[agentId]/loading-68874943e76a74d3.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/agents/loading-71afeb3b4b57ab44.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/api-keys/page-afe5bc7779052d09.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/[artifactComponentId]/page-d98b29c6d0d03555.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/loading-eedbd1fcd8280d96.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/artifacts/new/page-e0614f31c691971d.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/[dataComponentId]/page-244af94427168ef3.js +0 -14
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/loading-f40af490f742f838.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/new/page-2b99f31e0805b8d1.js +0 -14
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/components/page-984e5bdb34a677d9.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/[credentialId]/page-b52bf1b5e557c121.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/bearer/page-a8b869f42e44f2c3.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/page-e9ce59a5607499a5.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/credentials/new/providers/[providerId]/page-ae95d3c3a713813e.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/[externalAgentId]/page-41c68dc0b7e8ccac.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/external-agents/new/page-762a146348e5e10c.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/edit/page-4ae3fbd90d5382d3.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/[mcpServerId]/page-a42065d1429e114e.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/layout-6e61d6939b656515.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/mcp-servers/new/page-f8559b16b0b59f61.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/page-5626086abf298ab8.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/ai-calls/page-7f73df193b190c87.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/conversations/[conversationId]/page-2b59cb7f21e770a1.js +0 -2
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/page-685b8053fbf375be.js +0 -5
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/[projectId]/traces/tool-calls/page-288ad80714a5ed3c.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/error-4fe0946a0364bf9b.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/projects/loading-d651f79f2019db6a.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/settings/error-bb636efa83bef810.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/settings/loading-96b88e135d8a0e4f.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/[tenantId]/settings/page-c2ebc2b19a3b4255.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/_global-error/page-edb923be7f6f9928.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/_not-found/page-edb923be7f6f9928.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/api/data-components/[dataComponentId]/generate-render/route-edb923be7f6f9928.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/api/signoz/conversations/[conversationId]/route-edb923be7f6f9928.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/api/signoz/route-edb923be7f6f9928.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/device/page-a0fff95189a7cd5b.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/login/page-71102f70344cd683.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/logout/route-edb923be7f6f9928.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/app/page-35cdb812fa27c2ff.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/next/dist/client/components/builtin/app-error-edb923be7f6f9928.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/next/dist/client/components/builtin/forbidden-edb923be7f6f9928.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/next/dist/client/components/builtin/unauthorized-edb923be7f6f9928.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/chunks/webpack-7d5f632dead1170c.js +0 -1
- package/.next/standalone/agents-manage-ui/.next/static/css/dafd59c3a6b16c05.css +0 -1
- package/src/app/[tenantId]/projects/[projectId]/agents/loading.tsx +0 -20
- package/src/app/[tenantId]/projects/[projectId]/artifacts/loading.tsx +0 -20
- package/src/app/[tenantId]/projects/[projectId]/components/loading.tsx +0 -20
- package/src/app/[tenantId]/projects/[projectId]/mcp-servers/new/layout.tsx +0 -22
- package/src/app/[tenantId]/projects/error.tsx +0 -23
- package/src/app/[tenantId]/projects/loading.tsx +0 -20
- package/src/app/[tenantId]/projects/page.tsx +0 -62
- package/src/components/layout/main-content.tsx +0 -14
- package/src/components/settings/loading.tsx +0 -10
- package/src/components/settings/settings-content.tsx +0 -82
- /package/.next/standalone/agents-manage-ui/.next/static/{lBKCeyjiK8HntrFR9VTbV → mpAQx5pKg3-wpWP-iU3P-}/_buildManifest.js +0 -0
- /package/.next/standalone/agents-manage-ui/.next/static/{lBKCeyjiK8HntrFR9VTbV → mpAQx5pKg3-wpWP-iU3P-}/_ssgManifest.js +0 -0
|
@@ -1,9 +1,12 @@
|
|
|
1
1
|
import { CheckCircle2, ExternalLink, Loader2, XCircle } from 'lucide-react';
|
|
2
2
|
import { useEffect, useState } from 'react';
|
|
3
|
+
import type { CredentialScope } from '@/components/mcp-servers/form/validation';
|
|
3
4
|
import { MCPToolImage } from '@/components/mcp-servers/mcp-tool-image';
|
|
4
5
|
import { Button } from '@/components/ui/button';
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
6
|
+
import { useScopeSelection } from '@/hooks/use-scope-selection';
|
|
7
|
+
import { getThirdPartyOAuthRedirectUrl } from '@/lib/api/mcp-catalog';
|
|
8
|
+
import { fetchMCPTool, updateMCPTool } from '@/lib/api/tools';
|
|
9
|
+
import type { MCPTool } from '@/lib/types/tools';
|
|
7
10
|
|
|
8
11
|
/**
|
|
9
12
|
* Parameters for initiating OAuth login for an MCP tool
|
|
@@ -13,7 +16,7 @@ export interface OAuthLoginParams {
|
|
|
13
16
|
mcpServerUrl: string;
|
|
14
17
|
toolName: string;
|
|
15
18
|
thirdPartyConnectAccountUrl?: string;
|
|
16
|
-
credentialScope
|
|
19
|
+
credentialScope: 'project' | 'user';
|
|
17
20
|
}
|
|
18
21
|
|
|
19
22
|
/**
|
|
@@ -26,6 +29,7 @@ export interface ConnectToolCardProps {
|
|
|
26
29
|
targetTenantId?: string;
|
|
27
30
|
targetProjectId?: string;
|
|
28
31
|
onConnect: OAuthLoginHandler;
|
|
32
|
+
refreshAgentGraph?: (options?: { fetchTools?: boolean }) => Promise<void>;
|
|
29
33
|
}
|
|
30
34
|
|
|
31
35
|
export function ConnectToolCard({
|
|
@@ -33,6 +37,7 @@ export function ConnectToolCard({
|
|
|
33
37
|
targetTenantId,
|
|
34
38
|
targetProjectId,
|
|
35
39
|
onConnect,
|
|
40
|
+
refreshAgentGraph,
|
|
36
41
|
}: ConnectToolCardProps) {
|
|
37
42
|
const [status, setStatus] = useState<'idle' | 'loading' | 'connecting' | 'success' | 'error'>(
|
|
38
43
|
'loading'
|
|
@@ -42,10 +47,18 @@ export function ConnectToolCard({
|
|
|
42
47
|
name: string;
|
|
43
48
|
imageUrl?: string;
|
|
44
49
|
url: string;
|
|
45
|
-
|
|
50
|
+
toolStatus: MCPTool['status'];
|
|
46
51
|
credentialScope?: 'project' | 'user';
|
|
47
52
|
} | null>(null);
|
|
48
53
|
|
|
54
|
+
// Scope selection hook for optional scope dialog
|
|
55
|
+
const { requestScopeSelection, ScopeDialog } = useScopeSelection<undefined>({
|
|
56
|
+
onConfirm: async (scope: CredentialScope) => {
|
|
57
|
+
await executeConnect(scope);
|
|
58
|
+
refreshAgentGraph?.({ fetchTools: true });
|
|
59
|
+
},
|
|
60
|
+
});
|
|
61
|
+
|
|
49
62
|
useEffect(() => {
|
|
50
63
|
const fetchDetails = async () => {
|
|
51
64
|
if (!targetTenantId || !targetProjectId || !toolId) {
|
|
@@ -57,41 +70,23 @@ export function ConnectToolCard({
|
|
|
57
70
|
try {
|
|
58
71
|
const tool = await fetchMCPTool(targetTenantId, targetProjectId, toolId);
|
|
59
72
|
const serverUrl = tool.config?.mcp?.server?.url || '';
|
|
60
|
-
const isThirdPartyMCPServer = serverUrl.includes('composio.dev');
|
|
61
73
|
const credentialScope = (tool.credentialScope as 'project' | 'user') || 'project';
|
|
62
74
|
|
|
63
|
-
let thirdPartyConnectAccountUrl: string | undefined;
|
|
64
|
-
|
|
65
|
-
// Fetch third-party connect URL if this is a third-party server with needs_auth status
|
|
66
|
-
if (isThirdPartyMCPServer && tool.status === 'needs_auth') {
|
|
67
|
-
try {
|
|
68
|
-
const response = await fetchThirdPartyMCPServer(
|
|
69
|
-
targetTenantId,
|
|
70
|
-
targetProjectId,
|
|
71
|
-
serverUrl,
|
|
72
|
-
credentialScope
|
|
73
|
-
);
|
|
74
|
-
if (response.data?.thirdPartyConnectAccountUrl) {
|
|
75
|
-
thirdPartyConnectAccountUrl = response.data.thirdPartyConnectAccountUrl;
|
|
76
|
-
}
|
|
77
|
-
} catch (thirdPartyErr) {
|
|
78
|
-
console.error('Failed to fetch third-party connect URL:', thirdPartyErr);
|
|
79
|
-
setErrorMessage(
|
|
80
|
-
'Failed to fetch third-party connect URL. Go to the MCP server page to see more details.'
|
|
81
|
-
);
|
|
82
|
-
}
|
|
83
|
-
} else if (isThirdPartyMCPServer && tool.status === 'healthy') {
|
|
84
|
-
setStatus('success');
|
|
85
|
-
}
|
|
86
|
-
|
|
87
75
|
setToolDetails({
|
|
88
76
|
name: tool.name,
|
|
89
77
|
imageUrl: tool.imageUrl,
|
|
90
78
|
url: serverUrl,
|
|
91
|
-
|
|
79
|
+
toolStatus: tool.status,
|
|
92
80
|
credentialScope,
|
|
93
81
|
});
|
|
94
|
-
|
|
82
|
+
|
|
83
|
+
// Set final status based on tool health
|
|
84
|
+
if (tool.status === 'healthy') {
|
|
85
|
+
setStatus('success');
|
|
86
|
+
refreshAgentGraph?.({ fetchTools: true });
|
|
87
|
+
} else {
|
|
88
|
+
setStatus('idle');
|
|
89
|
+
}
|
|
95
90
|
} catch (err) {
|
|
96
91
|
console.error('Failed to fetch tool details:', err);
|
|
97
92
|
setStatus('error');
|
|
@@ -100,25 +95,56 @@ export function ConnectToolCard({
|
|
|
100
95
|
};
|
|
101
96
|
|
|
102
97
|
fetchDetails();
|
|
103
|
-
}, [toolId, targetTenantId, targetProjectId]);
|
|
98
|
+
}, [toolId, targetTenantId, targetProjectId, refreshAgentGraph]);
|
|
104
99
|
|
|
105
|
-
|
|
106
|
-
|
|
100
|
+
/**
|
|
101
|
+
* Executes the actual connection with the given scope.
|
|
102
|
+
*/
|
|
103
|
+
const executeConnect = async (scope: CredentialScope) => {
|
|
104
|
+
if (!toolId || !toolDetails || !targetTenantId || !targetProjectId) {
|
|
107
105
|
setStatus('error');
|
|
108
106
|
setErrorMessage('Tool ID and details are required to complete OAuth');
|
|
109
107
|
return;
|
|
110
108
|
}
|
|
111
109
|
|
|
110
|
+
await updateMCPTool(targetTenantId, targetProjectId, toolId, {
|
|
111
|
+
credentialScope: scope,
|
|
112
|
+
});
|
|
113
|
+
|
|
112
114
|
setStatus('connecting');
|
|
113
115
|
setErrorMessage('');
|
|
114
116
|
|
|
117
|
+
// proceed with OAuth flow
|
|
118
|
+
const isThirdPartyServer = toolDetails.url.includes('composio.dev');
|
|
119
|
+
let credentialScopedRedirectUrl: string | null = null;
|
|
120
|
+
if (isThirdPartyServer) {
|
|
121
|
+
try {
|
|
122
|
+
credentialScopedRedirectUrl = await getThirdPartyOAuthRedirectUrl(
|
|
123
|
+
targetTenantId,
|
|
124
|
+
targetProjectId,
|
|
125
|
+
toolDetails.url,
|
|
126
|
+
scope
|
|
127
|
+
);
|
|
128
|
+
|
|
129
|
+
if (!credentialScopedRedirectUrl) {
|
|
130
|
+
setStatus('error');
|
|
131
|
+
setErrorMessage('Failed to get OAuth URL. Please try connecting from the detail page.');
|
|
132
|
+
return;
|
|
133
|
+
}
|
|
134
|
+
} catch {
|
|
135
|
+
setStatus('error');
|
|
136
|
+
setErrorMessage('Failed to get OAuth URL. Please try connecting from the detail page.');
|
|
137
|
+
return;
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
115
141
|
try {
|
|
116
142
|
await onConnect({
|
|
117
143
|
toolId,
|
|
118
144
|
toolName: toolDetails.name,
|
|
119
145
|
mcpServerUrl: toolDetails.url,
|
|
120
|
-
thirdPartyConnectAccountUrl:
|
|
121
|
-
credentialScope:
|
|
146
|
+
thirdPartyConnectAccountUrl: credentialScopedRedirectUrl ?? undefined,
|
|
147
|
+
credentialScope: scope,
|
|
122
148
|
});
|
|
123
149
|
setStatus('success');
|
|
124
150
|
} catch (error) {
|
|
@@ -128,6 +154,20 @@ export function ConnectToolCard({
|
|
|
128
154
|
}
|
|
129
155
|
};
|
|
130
156
|
|
|
157
|
+
/**
|
|
158
|
+
* Handles the Connect button click.
|
|
159
|
+
* Shows scope selection dialog if enabled, otherwise proceeds directly.
|
|
160
|
+
*/
|
|
161
|
+
const handleConnectClick = () => {
|
|
162
|
+
if (!toolId || !toolDetails) {
|
|
163
|
+
setStatus('error');
|
|
164
|
+
setErrorMessage('Tool ID and details are required to complete OAuth');
|
|
165
|
+
return;
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
requestScopeSelection(toolDetails.name, undefined);
|
|
169
|
+
};
|
|
170
|
+
|
|
131
171
|
if (status === 'loading') {
|
|
132
172
|
return (
|
|
133
173
|
<div className="p-4 rounded-lg border border-border bg-card shadow-sm">
|
|
@@ -140,58 +180,63 @@ export function ConnectToolCard({
|
|
|
140
180
|
}
|
|
141
181
|
|
|
142
182
|
return (
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
183
|
+
<>
|
|
184
|
+
<div className="p-4 rounded-lg border border-border bg-card shadow-sm">
|
|
185
|
+
{/* Main row: Logo, Title, Button */}
|
|
186
|
+
<div className="flex items-center gap-3 flex-wrap">
|
|
187
|
+
{toolDetails && (
|
|
188
|
+
<MCPToolImage
|
|
189
|
+
imageUrl={toolDetails.imageUrl}
|
|
190
|
+
name={toolDetails.name}
|
|
191
|
+
size={24}
|
|
192
|
+
className="shrink-0"
|
|
193
|
+
/>
|
|
194
|
+
)}
|
|
195
|
+
|
|
196
|
+
<h3 className="flex-1 min-w-0 text-base font-semibold text-foreground">
|
|
197
|
+
{toolDetails?.name || toolId}
|
|
198
|
+
</h3>
|
|
199
|
+
|
|
200
|
+
{status !== 'success' && (
|
|
201
|
+
<Button
|
|
202
|
+
onClick={handleConnectClick}
|
|
203
|
+
disabled={status === 'connecting' || !toolId}
|
|
204
|
+
className="gap-2"
|
|
205
|
+
size="sm"
|
|
206
|
+
>
|
|
207
|
+
{status === 'connecting' ? (
|
|
208
|
+
<>
|
|
209
|
+
<Loader2 className="size-4 animate-spin" />
|
|
210
|
+
Connecting...
|
|
211
|
+
</>
|
|
212
|
+
) : (
|
|
213
|
+
<>
|
|
214
|
+
<ExternalLink className="size-4" />
|
|
215
|
+
Connect
|
|
216
|
+
</>
|
|
217
|
+
)}
|
|
218
|
+
</Button>
|
|
219
|
+
)}
|
|
220
|
+
</div>
|
|
221
|
+
|
|
222
|
+
{/* Status messages below */}
|
|
223
|
+
{status === 'success' && (
|
|
224
|
+
<div className="flex items-center gap-2 mt-3 text-sm text-green-600 dark:text-green-400">
|
|
225
|
+
<CheckCircle2 className="size-4" />
|
|
226
|
+
<span>Successfully added!</span>
|
|
227
|
+
</div>
|
|
153
228
|
)}
|
|
154
229
|
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
<Button
|
|
161
|
-
onClick={handleConnectClick}
|
|
162
|
-
disabled={status === 'connecting' || !toolId}
|
|
163
|
-
className="gap-2"
|
|
164
|
-
size="sm"
|
|
165
|
-
>
|
|
166
|
-
{status === 'connecting' ? (
|
|
167
|
-
<>
|
|
168
|
-
<Loader2 className="size-4 animate-spin" />
|
|
169
|
-
Connecting...
|
|
170
|
-
</>
|
|
171
|
-
) : (
|
|
172
|
-
<>
|
|
173
|
-
<ExternalLink className="size-4" />
|
|
174
|
-
Connect
|
|
175
|
-
</>
|
|
176
|
-
)}
|
|
177
|
-
</Button>
|
|
230
|
+
{status === 'error' && (
|
|
231
|
+
<div className="flex items-start gap-2 mt-3 text-sm text-destructive">
|
|
232
|
+
<XCircle className="size-4 mt-0.5" />
|
|
233
|
+
<span>{errorMessage || 'Connection failed. Please try again.'}</span>
|
|
234
|
+
</div>
|
|
178
235
|
)}
|
|
179
236
|
</div>
|
|
180
237
|
|
|
181
|
-
{/*
|
|
182
|
-
{
|
|
183
|
-
|
|
184
|
-
<CheckCircle2 className="size-4" />
|
|
185
|
-
<span>Successfully authenticated!</span>
|
|
186
|
-
</div>
|
|
187
|
-
)}
|
|
188
|
-
|
|
189
|
-
{status === 'error' && (
|
|
190
|
-
<div className="flex items-start gap-2 mt-3 text-sm text-destructive">
|
|
191
|
-
<XCircle className="size-4 mt-0.5" />
|
|
192
|
-
<span>{errorMessage || 'Connection failed. Please try again.'}</span>
|
|
193
|
-
</div>
|
|
194
|
-
)}
|
|
195
|
-
</div>
|
|
238
|
+
{/* Scope selection dialog */}
|
|
239
|
+
{ScopeDialog}
|
|
240
|
+
</>
|
|
196
241
|
);
|
|
197
242
|
}
|
|
@@ -10,6 +10,7 @@ interface SubAgentToolRelationResultProps {
|
|
|
10
10
|
targetTenantId?: string;
|
|
11
11
|
targetProjectId?: string;
|
|
12
12
|
onConnect: OAuthLoginHandler;
|
|
13
|
+
refreshAgentGraph?: (options?: { fetchTools?: boolean }) => Promise<void>;
|
|
13
14
|
}
|
|
14
15
|
|
|
15
16
|
/**
|
|
@@ -21,6 +22,7 @@ export function SubAgentToolRelationResult({
|
|
|
21
22
|
targetTenantId,
|
|
22
23
|
targetProjectId,
|
|
23
24
|
onConnect,
|
|
25
|
+
refreshAgentGraph,
|
|
24
26
|
}: SubAgentToolRelationResultProps) {
|
|
25
27
|
if (relations.length === 0) {
|
|
26
28
|
return null;
|
|
@@ -35,6 +37,7 @@ export function SubAgentToolRelationResult({
|
|
|
35
37
|
targetTenantId={targetTenantId}
|
|
36
38
|
targetProjectId={targetProjectId}
|
|
37
39
|
onConnect={onConnect}
|
|
40
|
+
refreshAgentGraph={refreshAgentGraph}
|
|
38
41
|
/>
|
|
39
42
|
))}
|
|
40
43
|
</>
|
|
@@ -209,6 +209,7 @@ export function CopilotChat({ agentId, tenantId, projectId, refreshAgentGraph }:
|
|
|
209
209
|
targetProjectId: projectId,
|
|
210
210
|
targetAgentId: agentId,
|
|
211
211
|
onOAuthLogin: handleOAuthLogin,
|
|
212
|
+
refreshAgentGraph: refreshAgentGraph,
|
|
212
213
|
cookieHeader: cookieHeader,
|
|
213
214
|
copilotToken: copilotToken,
|
|
214
215
|
}),
|
|
@@ -28,6 +28,7 @@ interface IkpMessageProps {
|
|
|
28
28
|
targetProjectId?: string;
|
|
29
29
|
targetAgentId?: string;
|
|
30
30
|
onOAuthLogin?: OAuthLoginHandler;
|
|
31
|
+
refreshAgentGraph?: (options?: { fetchTools?: boolean }) => Promise<void>;
|
|
31
32
|
cookieHeader?: string;
|
|
32
33
|
copilotToken?: string;
|
|
33
34
|
}
|
|
@@ -162,6 +163,7 @@ export const IkpMessageComponent: FC<IkpMessageProps> = ({
|
|
|
162
163
|
targetProjectId,
|
|
163
164
|
targetAgentId,
|
|
164
165
|
onOAuthLogin,
|
|
166
|
+
refreshAgentGraph,
|
|
165
167
|
cookieHeader,
|
|
166
168
|
copilotToken,
|
|
167
169
|
}) => {
|
|
@@ -327,6 +329,7 @@ export const IkpMessageComponent: FC<IkpMessageProps> = ({
|
|
|
327
329
|
targetProjectId={targetProjectId}
|
|
328
330
|
targetAgentId={targetAgentId}
|
|
329
331
|
onOAuthLogin={onOAuthLogin}
|
|
332
|
+
refreshAgentGraph={refreshAgentGraph}
|
|
330
333
|
/>
|
|
331
334
|
)}
|
|
332
335
|
</div>
|
|
@@ -385,6 +388,7 @@ export const IkpMessage = (props: any) => {
|
|
|
385
388
|
targetProjectId={otherProps.targetProjectId}
|
|
386
389
|
targetAgentId={otherProps.targetAgentId}
|
|
387
390
|
onOAuthLogin={otherProps.onOAuthLogin}
|
|
391
|
+
refreshAgentGraph={otherProps.refreshAgentGraph}
|
|
388
392
|
cookieHeader={otherProps.cookieHeader}
|
|
389
393
|
copilotToken={otherProps.copilotToken}
|
|
390
394
|
/>
|
|
@@ -32,6 +32,7 @@ interface ToolResultProps {
|
|
|
32
32
|
targetProjectId?: string;
|
|
33
33
|
targetAgentId?: string;
|
|
34
34
|
onOAuthLogin?: OAuthLoginHandler;
|
|
35
|
+
refreshAgentGraph?: (options?: { fetchTools?: boolean }) => Promise<void>;
|
|
35
36
|
}
|
|
36
37
|
|
|
37
38
|
// ============================================================================
|
|
@@ -101,6 +102,7 @@ export const ToolResult = ({
|
|
|
101
102
|
targetTenantId,
|
|
102
103
|
targetProjectId,
|
|
103
104
|
onOAuthLogin,
|
|
105
|
+
refreshAgentGraph,
|
|
104
106
|
}: ToolResultProps) => {
|
|
105
107
|
const content = data.details.data.output?.result?.content || [];
|
|
106
108
|
|
|
@@ -129,6 +131,7 @@ export const ToolResult = ({
|
|
|
129
131
|
targetTenantId={targetTenantId}
|
|
130
132
|
targetProjectId={targetProjectId}
|
|
131
133
|
onConnect={handleConnect}
|
|
134
|
+
refreshAgentGraph={refreshAgentGraph}
|
|
132
135
|
/>
|
|
133
136
|
|
|
134
137
|
{/* Add more result renderers here as new types are supported:
|
|
@@ -5,19 +5,14 @@ import Link from 'next/link';
|
|
|
5
5
|
import { useRouter } from 'next/navigation';
|
|
6
6
|
import { useEffect, useState } from 'react';
|
|
7
7
|
import { BodyTemplate } from '@/components/layout/body-template';
|
|
8
|
-
import { MainContent } from '@/components/layout/main-content';
|
|
9
8
|
import { Button } from '@/components/ui/button';
|
|
10
9
|
import { buildLoginUrlWithCurrentPath } from '@/lib/utils/auth-redirect';
|
|
11
10
|
|
|
12
11
|
export default function FullPageError({ statusCode, errorCode, ...props }: FullPageErrorProps) {
|
|
13
12
|
const resolvedStatusCode = statusCode ?? getStatusCodeFromErrorCode(errorCode);
|
|
14
13
|
return (
|
|
15
|
-
<BodyTemplate
|
|
16
|
-
|
|
17
|
-
>
|
|
18
|
-
<MainContent className="flex-1">
|
|
19
|
-
<ErrorContent statusCode={resolvedStatusCode} errorCode={errorCode} {...props} />
|
|
20
|
-
</MainContent>
|
|
14
|
+
<BodyTemplate breadcrumbs={[resolvedStatusCode ? `${resolvedStatusCode} Error` : 'Error']}>
|
|
15
|
+
<ErrorContent statusCode={resolvedStatusCode} errorCode={errorCode} {...props} />
|
|
21
16
|
</BodyTemplate>
|
|
22
17
|
);
|
|
23
18
|
}
|
|
@@ -49,7 +49,7 @@ export function ViewExternalAgentDetails({
|
|
|
49
49
|
};
|
|
50
50
|
|
|
51
51
|
return (
|
|
52
|
-
<div className="
|
|
52
|
+
<div className="space-y-8">
|
|
53
53
|
{/* Header */}
|
|
54
54
|
<div className="flex items-center justify-between">
|
|
55
55
|
<div className="flex items-center gap-3">
|
|
@@ -1,16 +1,24 @@
|
|
|
1
1
|
import { SiteHeader } from '@/components/layout/site-header';
|
|
2
|
+
import type { BreadcrumbItem } from '@/components/ui/breadcrumbs';
|
|
3
|
+
import { cn } from '@/lib/utils';
|
|
2
4
|
|
|
3
5
|
type BodyTemplateProps = {
|
|
4
6
|
children: React.ReactNode;
|
|
5
|
-
breadcrumbs
|
|
7
|
+
breadcrumbs: BreadcrumbItem[];
|
|
8
|
+
className?: string;
|
|
6
9
|
};
|
|
7
10
|
|
|
8
|
-
export function BodyTemplate({ children, breadcrumbs }: BodyTemplateProps) {
|
|
11
|
+
export function BodyTemplate({ children, breadcrumbs, className }: BodyTemplateProps) {
|
|
9
12
|
return (
|
|
10
13
|
<div className="h-[calc(100vh-16px)] flex flex-col overflow-hidden">
|
|
11
14
|
<SiteHeader breadcrumbs={breadcrumbs} />
|
|
12
|
-
<div
|
|
13
|
-
|
|
15
|
+
<div
|
|
16
|
+
className={cn(
|
|
17
|
+
'flex flex-col flex-1 overflow-y-auto scrollbar-thin',
|
|
18
|
+
'scrollbar-thumb-muted-foreground/30 dark:scrollbar-thumb-muted-foreground/50 scrollbar-track-transparent h-full w-full min-h-0 bg-muted/20 dark:bg-background'
|
|
19
|
+
)}
|
|
20
|
+
>
|
|
21
|
+
<div id="main-content" className={cn('p-6 grow', className)}>
|
|
14
22
|
{children}
|
|
15
23
|
</div>
|
|
16
24
|
</div>
|
|
@@ -1,23 +1,31 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
-
import {
|
|
3
|
+
import { useTheme } from 'next-themes';
|
|
4
|
+
import { useEffect } from 'react';
|
|
5
|
+
import { MONACO_THEME_NAME } from '@/constants/theme';
|
|
6
|
+
import { useMonacoStore } from '@/features/agent/state/use-monaco-store';
|
|
4
7
|
import { useAuthSession } from '@/hooks/use-auth';
|
|
8
|
+
import { useIsMounted } from '@/hooks/use-is-mounted';
|
|
5
9
|
import { UserMenu } from '../auth/user-menu';
|
|
6
10
|
import { ThemeToggle } from '../theme-toggle';
|
|
7
11
|
import { Skeleton } from '../ui/skeleton';
|
|
8
12
|
|
|
9
13
|
export function HeaderMenus() {
|
|
10
|
-
const [hasMounted, setHasMounted] = useState(false);
|
|
11
14
|
const { user, isLoading } = useAuthSession();
|
|
15
|
+
const { resolvedTheme } = useTheme();
|
|
16
|
+
const isMounted = useIsMounted();
|
|
17
|
+
const monaco = useMonacoStore((state) => state.monaco);
|
|
12
18
|
|
|
13
19
|
useEffect(() => {
|
|
14
|
-
|
|
15
|
-
|
|
20
|
+
const isDark = resolvedTheme === 'dark';
|
|
21
|
+
const monacoTheme = isDark ? MONACO_THEME_NAME.dark : MONACO_THEME_NAME.light;
|
|
22
|
+
monaco?.editor.setTheme(monacoTheme);
|
|
23
|
+
}, [resolvedTheme, monaco]);
|
|
16
24
|
|
|
17
25
|
// Always render skeleton on server and initial client render to prevent hydration mismatch
|
|
18
|
-
if (!
|
|
26
|
+
if (!isMounted || isLoading) {
|
|
19
27
|
return <Skeleton className="h-7 w-7" />;
|
|
20
28
|
}
|
|
21
29
|
|
|
22
|
-
return
|
|
30
|
+
return user ? <UserMenu /> : <ThemeToggle />;
|
|
23
31
|
}
|
|
@@ -4,7 +4,7 @@ import { Separator } from '@/components/ui/separator';
|
|
|
4
4
|
import { SidebarTrigger } from '@/components/ui/sidebar';
|
|
5
5
|
import { HeaderMenus } from './header-menus';
|
|
6
6
|
|
|
7
|
-
export function SiteHeader({ breadcrumbs }: { breadcrumbs
|
|
7
|
+
export function SiteHeader({ breadcrumbs }: { breadcrumbs: BreadcrumbItem[] }) {
|
|
8
8
|
return (
|
|
9
9
|
<header className="h-(--header-height) shrink-0 border-b transition-[width,height] ease-linear group-has-data-[collapsible=icon]/sidebar-wrapper:h-(--header-height) bg-muted/20 dark:bg-background rounded-t-[14px] flex items-center gap-1 px-4 lg:gap-2 lg:px-6">
|
|
10
10
|
<SidebarTrigger className="-ml-1 text-muted-foreground hover:text-foreground hover:bg-accent dark:text-muted-foreground dark:hover:text-foreground dark:hover:bg-accent/50" />
|
|
@@ -12,13 +12,13 @@ import {
|
|
|
12
12
|
import { Button } from '@/components/ui/button';
|
|
13
13
|
import { Input } from '@/components/ui/input';
|
|
14
14
|
import { useOAuthLogin } from '@/hooks/use-oauth-login';
|
|
15
|
+
import { useScopeSelection } from '@/hooks/use-scope-selection';
|
|
15
16
|
import type { Credential } from '@/lib/api/credentials';
|
|
16
17
|
import { getThirdPartyOAuthRedirectUrl } from '@/lib/api/mcp-catalog';
|
|
17
18
|
import { createMCPTool } from '@/lib/api/tools';
|
|
18
19
|
import type { PrebuiltMCPServer } from '@/lib/data/prebuilt-mcp-servers';
|
|
19
20
|
import { generateId } from '@/lib/utils/id-utils';
|
|
20
21
|
import { PrebuiltServersGrid } from './prebuilt-servers-grid';
|
|
21
|
-
import { ScopeSelectionDialog } from './scope-selection-dialog';
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
24
|
* Remove user_id from Composio URLs before storing in DB.
|
|
@@ -48,8 +48,6 @@ export function MCPServerSelection({ credentials, tenantId, projectId }: MCPServ
|
|
|
48
48
|
const [loadingServerId, setLoadingServerId] = useState<string>();
|
|
49
49
|
const [selectedMode, setSelectedMode] = useState<SelectionMode>('popular');
|
|
50
50
|
const [searchQuery, setSearchQuery] = useState('');
|
|
51
|
-
const [scopeDialogOpen, setScopeDialogOpen] = useState(false);
|
|
52
|
-
const [pendingServer, setPendingServer] = useState<PrebuiltMCPServer | null>(null);
|
|
53
51
|
const router = useRouter();
|
|
54
52
|
|
|
55
53
|
const { handleOAuthLogin } = useOAuthLogin({
|
|
@@ -57,20 +55,14 @@ export function MCPServerSelection({ credentials, tenantId, projectId }: MCPServ
|
|
|
57
55
|
projectId,
|
|
58
56
|
});
|
|
59
57
|
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
setScopeDialogOpen(true);
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
const createServerWithScope = async (server: PrebuiltMCPServer, scope: CredentialScope) => {
|
|
58
|
+
const createServerWithScope = async ({
|
|
59
|
+
server,
|
|
60
|
+
scope,
|
|
61
|
+
}: {
|
|
62
|
+
server: PrebuiltMCPServer;
|
|
63
|
+
scope: CredentialScope;
|
|
64
|
+
}) => {
|
|
72
65
|
setLoadingServerId(server.id);
|
|
73
|
-
setPendingServer(null);
|
|
74
66
|
|
|
75
67
|
const mcpServerName = server.name;
|
|
76
68
|
const serverUrl = removeComposioUserId(server.url);
|
|
@@ -97,35 +89,26 @@ export function MCPServerSelection({ credentials, tenantId, projectId }: MCPServ
|
|
|
97
89
|
|
|
98
90
|
const newTool = await createMCPTool(tenantId, projectId, mcpToolData);
|
|
99
91
|
|
|
100
|
-
//
|
|
101
|
-
if (scope === CredentialScopeEnum.user) {
|
|
102
|
-
toast.success(
|
|
103
|
-
`${server.name} MCP server created. Users can connect their own accounts from the detail page.`
|
|
104
|
-
);
|
|
105
|
-
router.push(`/${tenantId}/projects/${projectId}/mcp-servers/${newTool.id}`);
|
|
106
|
-
return;
|
|
107
|
-
}
|
|
108
|
-
|
|
109
|
-
// For project-scoped, proceed with OAuth
|
|
92
|
+
// proceed with OAuth flow
|
|
110
93
|
const isThirdPartyServer = serverUrl.includes('composio.dev');
|
|
111
94
|
|
|
112
95
|
if (server.isOpen) {
|
|
113
96
|
toast.success(`${server.name} MCP server created successfully`);
|
|
114
97
|
router.push(`/${tenantId}/projects/${projectId}/mcp-servers/${newTool.id}`);
|
|
115
98
|
} else if (isThirdPartyServer) {
|
|
116
|
-
|
|
117
|
-
const projectScopedRedirectUrl = await getThirdPartyOAuthRedirectUrl(
|
|
99
|
+
const credentialScopedRedirectUrl = await getThirdPartyOAuthRedirectUrl(
|
|
118
100
|
tenantId,
|
|
119
101
|
projectId,
|
|
120
102
|
serverUrl,
|
|
121
|
-
|
|
103
|
+
scope
|
|
122
104
|
);
|
|
123
|
-
if (
|
|
105
|
+
if (credentialScopedRedirectUrl) {
|
|
124
106
|
handleOAuthLogin({
|
|
125
107
|
toolId: newTool.id,
|
|
126
108
|
mcpServerUrl: serverUrl,
|
|
127
109
|
toolName: mcpServerName,
|
|
128
|
-
thirdPartyConnectAccountUrl:
|
|
110
|
+
thirdPartyConnectAccountUrl: credentialScopedRedirectUrl,
|
|
111
|
+
credentialScope: scope,
|
|
129
112
|
});
|
|
130
113
|
} else {
|
|
131
114
|
// Fallback: redirect to detail page if we couldn't get the OAuth URL
|
|
@@ -133,7 +116,12 @@ export function MCPServerSelection({ credentials, tenantId, projectId }: MCPServ
|
|
|
133
116
|
router.push(`/${tenantId}/projects/${projectId}/mcp-servers/${newTool.id}`);
|
|
134
117
|
}
|
|
135
118
|
} else {
|
|
136
|
-
handleOAuthLogin({
|
|
119
|
+
handleOAuthLogin({
|
|
120
|
+
toolId: newTool.id,
|
|
121
|
+
mcpServerUrl: serverUrl,
|
|
122
|
+
toolName: mcpServerName,
|
|
123
|
+
credentialScope: scope,
|
|
124
|
+
});
|
|
137
125
|
}
|
|
138
126
|
} catch (error) {
|
|
139
127
|
console.error('Failed to create prebuilt MCP server:', error);
|
|
@@ -142,9 +130,19 @@ export function MCPServerSelection({ credentials, tenantId, projectId }: MCPServ
|
|
|
142
130
|
}
|
|
143
131
|
};
|
|
144
132
|
|
|
145
|
-
const
|
|
146
|
-
|
|
147
|
-
createServerWithScope(
|
|
133
|
+
const { requestScopeSelection, ScopeDialog } = useScopeSelection<PrebuiltMCPServer>({
|
|
134
|
+
onConfirm: (scope, server) => {
|
|
135
|
+
createServerWithScope({ server, scope });
|
|
136
|
+
},
|
|
137
|
+
});
|
|
138
|
+
|
|
139
|
+
const handleSelectPrebuiltServer = (server: PrebuiltMCPServer) => {
|
|
140
|
+
// For servers that require auth, show scope selection dialog first
|
|
141
|
+
if (server.isOpen) {
|
|
142
|
+
// Open servers don't need credentials, proceed directly
|
|
143
|
+
createServerWithScope({ server, scope: CredentialScopeEnum.project });
|
|
144
|
+
} else {
|
|
145
|
+
requestScopeSelection(server.name, server);
|
|
148
146
|
}
|
|
149
147
|
};
|
|
150
148
|
|
|
@@ -203,12 +201,7 @@ export function MCPServerSelection({ credentials, tenantId, projectId }: MCPServ
|
|
|
203
201
|
)}
|
|
204
202
|
|
|
205
203
|
{/* Scope selection dialog for prebuilt servers */}
|
|
206
|
-
|
|
207
|
-
open={scopeDialogOpen}
|
|
208
|
-
onOpenChange={setScopeDialogOpen}
|
|
209
|
-
serverName={pendingServer?.name ?? ''}
|
|
210
|
-
onConfirm={handleScopeConfirm}
|
|
211
|
-
/>
|
|
204
|
+
{ScopeDialog}
|
|
212
205
|
</>
|
|
213
206
|
);
|
|
214
207
|
}
|