flujo-ai 3.9.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/BUILD_ID +1 -0
- package/.next/app-build-manifest.json +592 -0
- package/.next/app-path-routes-manifest.json +63 -0
- package/.next/build-manifest.json +33 -0
- package/.next/diagnostics/build-diagnostics.json +6 -0
- package/.next/diagnostics/framework.json +1 -0
- package/.next/export-marker.json +6 -0
- package/.next/images-manifest.json +58 -0
- package/.next/next-minimal-server.js.nft.json +1 -0
- package/.next/next-server.js.nft.json +1 -0
- package/.next/package.json +1 -0
- package/.next/prerender-manifest.json +205 -0
- package/.next/react-loadable-manifest.json +83 -0
- package/.next/required-server-files.json +328 -0
- package/.next/routes-manifest.json +305 -0
- package/.next/server/app/_not-found/page.js +4 -0
- package/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_not-found.html +1 -0
- package/.next/server/app/_not-found.meta +8 -0
- package/.next/server/app/_not-found.rsc +16 -0
- package/.next/server/app/api/backup/route.js +2 -0
- package/.next/server/app/api/backup/route.js.nft.json +1 -0
- package/.next/server/app/api/backup/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/browse/route.js +2 -0
- package/.next/server/app/api/browse/route.js.nft.json +1 -0
- package/.next/server/app/api/browse/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/cwd/route.js +2 -0
- package/.next/server/app/api/cwd/route.js.nft.json +1 -0
- package/.next/server/app/api/cwd/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/encryption/secure/route.js +1 -0
- package/.next/server/app/api/encryption/secure/route.js.nft.json +1 -0
- package/.next/server/app/api/encryption/secure/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/env/route.js +2 -0
- package/.next/server/app/api/env/route.js.nft.json +1 -0
- package/.next/server/app/api/env/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/flow/[id]/route.js +1 -0
- package/.next/server/app/api/flow/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/flow/[id]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/flow/prompt-renderer/route.js +2 -0
- package/.next/server/app/api/flow/prompt-renderer/route.js.nft.json +1 -0
- package/.next/server/app/api/flow/prompt-renderer/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/flow/route.js +1 -0
- package/.next/server/app/api/flow/route.js.nft.json +1 -0
- package/.next/server/app/api/flow/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/git/route.js +3 -0
- package/.next/server/app/api/git/route.js.nft.json +1 -0
- package/.next/server/app/api/git/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/init/route.js +1 -0
- package/.next/server/app/api/init/route.js.nft.json +1 -0
- package/.next/server/app/api/init/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/cancel/route.js +2 -0
- package/.next/server/app/api/mcp/cancel/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/cancel/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/prompts/get/route.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/prompts/get/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/servers/[name]/prompts/get/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/prompts/route.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/prompts/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/servers/[name]/prompts/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/resources/read/route.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/resources/read/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/servers/[name]/resources/read/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/resources/route.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/resources/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/servers/[name]/resources/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/route.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/servers/[name]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/status/route.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/status/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/servers/[name]/status/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/servers/[name]/tools/[toolName]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/tools/route.js +1 -0
- package/.next/server/app/api/mcp/servers/[name]/tools/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/servers/[name]/tools/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/servers/route.js +1 -0
- package/.next/server/app/api/mcp/servers/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/servers/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp/test-connection/route.js +1 -0
- package/.next/server/app/api/mcp/test-connection/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp/test-connection/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp-registry/route.js +2 -0
- package/.next/server/app/api/mcp-registry/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp-registry/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/mcp-registry/spotlight/route.js +2 -0
- package/.next/server/app/api/mcp-registry/spotlight/route.js.nft.json +1 -0
- package/.next/server/app/api/mcp-registry/spotlight/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/model/[id]/route.js +1 -0
- package/.next/server/app/api/model/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/model/[id]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/model/provider/route.js +2 -0
- package/.next/server/app/api/model/provider/route.js.nft.json +1 -0
- package/.next/server/app/api/model/provider/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/model/route.js +1 -0
- package/.next/server/app/api/model/route.js.nft.json +1 -0
- package/.next/server/app/api/model/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/model/test/route.js +2 -0
- package/.next/server/app/api/model/test/route.js.nft.json +1 -0
- package/.next/server/app/api/model/test/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/oauth/callback/route.js +2 -0
- package/.next/server/app/api/oauth/callback/route.js.nft.json +1 -0
- package/.next/server/app/api/oauth/callback/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/oauth/initiate/route.js +2 -0
- package/.next/server/app/api/oauth/initiate/route.js.nft.json +1 -0
- package/.next/server/app/api/oauth/initiate/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/oauth/reset/route.js +2 -0
- package/.next/server/app/api/oauth/reset/route.js.nft.json +1 -0
- package/.next/server/app/api/oauth/reset/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/planned-executions/[id]/route.js +1 -0
- package/.next/server/app/api/planned-executions/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/planned-executions/[id]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/planned-executions/[id]/run/route.js +1 -0
- package/.next/server/app/api/planned-executions/[id]/run/route.js.nft.json +1 -0
- package/.next/server/app/api/planned-executions/[id]/run/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/planned-executions/[id]/runs/route.js +1 -0
- package/.next/server/app/api/planned-executions/[id]/runs/route.js.nft.json +1 -0
- package/.next/server/app/api/planned-executions/[id]/runs/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/planned-executions/preview-schedule/route.js +2 -0
- package/.next/server/app/api/planned-executions/preview-schedule/route.js.nft.json +1 -0
- package/.next/server/app/api/planned-executions/preview-schedule/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/planned-executions/route.js +1 -0
- package/.next/server/app/api/planned-executions/route.js.nft.json +1 -0
- package/.next/server/app/api/planned-executions/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/restore/route.js +2 -0
- package/.next/server/app/api/restore/route.js.nft.json +1 -0
- package/.next/server/app/api/restore/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/storage/route.js +2 -0
- package/.next/server/app/api/storage/route.js.nft.json +1 -0
- package/.next/server/app/api/storage/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/update/route.js +2 -0
- package/.next/server/app/api/update/route.js.nft.json +1 -0
- package/.next/server/app/api/update/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/webhooks/[id]/route.js +1 -0
- package/.next/server/app/api/webhooks/[id]/route.js.nft.json +1 -0
- package/.next/server/app/api/webhooks/[id]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/chat/page.js +10 -0
- package/.next/server/app/chat/page.js.nft.json +1 -0
- package/.next/server/app/chat/page_client-reference-manifest.js +1 -0
- package/.next/server/app/chat.html +1 -0
- package/.next/server/app/chat.meta +7 -0
- package/.next/server/app/chat.rsc +20 -0
- package/.next/server/app/docs/page.js +2 -0
- package/.next/server/app/docs/page.js.nft.json +1 -0
- package/.next/server/app/docs/page_client-reference-manifest.js +1 -0
- package/.next/server/app/docs.html +1 -0
- package/.next/server/app/docs.meta +7 -0
- package/.next/server/app/docs.rsc +20 -0
- package/.next/server/app/executions/page.js +5 -0
- package/.next/server/app/executions/page.js.nft.json +1 -0
- package/.next/server/app/executions/page_client-reference-manifest.js +1 -0
- package/.next/server/app/executions.html +1 -0
- package/.next/server/app/executions.meta +7 -0
- package/.next/server/app/executions.rsc +20 -0
- package/.next/server/app/flows/page.js +40 -0
- package/.next/server/app/flows/page.js.nft.json +1 -0
- package/.next/server/app/flows/page_client-reference-manifest.js +1 -0
- package/.next/server/app/flows.html +1 -0
- package/.next/server/app/flows.meta +7 -0
- package/.next/server/app/flows.rsc +21 -0
- package/.next/server/app/index.html +1 -0
- package/.next/server/app/index.meta +7 -0
- package/.next/server/app/index.rsc +20 -0
- package/.next/server/app/mcp/page.js +50 -0
- package/.next/server/app/mcp/page.js.nft.json +1 -0
- package/.next/server/app/mcp/page_client-reference-manifest.js +1 -0
- package/.next/server/app/mcp-flows/route.js +1 -0
- package/.next/server/app/mcp-flows/route.js.nft.json +1 -0
- package/.next/server/app/mcp-flows/route_client-reference-manifest.js +1 -0
- package/.next/server/app/mcp-proxy/[server]/route.js +1 -0
- package/.next/server/app/mcp-proxy/[server]/route.js.nft.json +1 -0
- package/.next/server/app/mcp-proxy/[server]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/mcp.html +1 -0
- package/.next/server/app/mcp.meta +7 -0
- package/.next/server/app/mcp.rsc +20 -0
- package/.next/server/app/models/page.js +3 -0
- package/.next/server/app/models/page.js.nft.json +1 -0
- package/.next/server/app/models/page_client-reference-manifest.js +1 -0
- package/.next/server/app/page.js +2 -0
- package/.next/server/app/page.js.nft.json +1 -0
- package/.next/server/app/page_client-reference-manifest.js +1 -0
- package/.next/server/app/settings/page.js +46 -0
- package/.next/server/app/settings/page.js.nft.json +1 -0
- package/.next/server/app/settings/page_client-reference-manifest.js +1 -0
- package/.next/server/app/settings.html +1 -0
- package/.next/server/app/settings.meta +7 -0
- package/.next/server/app/settings.rsc +20 -0
- package/.next/server/app/v1/chat/completions/route.js +2 -0
- package/.next/server/app/v1/chat/completions/route.js.nft.json +1 -0
- package/.next/server/app/v1/chat/completions/route_client-reference-manifest.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route.js.nft.json +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/breakpoints/route_client-reference-manifest.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js +2 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route.js.nft.json +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/cancel/route_client-reference-manifest.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route.js.nft.json +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/continue/route_client-reference-manifest.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route.js.nft.json +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/debug/step/route_client-reference-manifest.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route.js.nft.json +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/edit-state/route_client-reference-manifest.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js +11 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/events/route.js.nft.json +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/events/route_client-reference-manifest.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route.js.nft.json +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/respond/route_client-reference-manifest.js +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/route.js +2 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/route.js.nft.json +1 -0
- package/.next/server/app/v1/chat/conversations/[conversationId]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/v1/chat/conversations/route.js +2 -0
- package/.next/server/app/v1/chat/conversations/route.js.nft.json +1 -0
- package/.next/server/app/v1/chat/conversations/route_client-reference-manifest.js +1 -0
- package/.next/server/app/v1/models/route.js +2 -0
- package/.next/server/app/v1/models/route.js.nft.json +1 -0
- package/.next/server/app/v1/models/route_client-reference-manifest.js +1 -0
- package/.next/server/app-paths-manifest.json +63 -0
- package/.next/server/chunks/120.js +15 -0
- package/.next/server/chunks/1223.js +1 -0
- package/.next/server/chunks/1373.js +1 -0
- package/.next/server/chunks/1381.js +1 -0
- package/.next/server/chunks/1403.js +6 -0
- package/.next/server/chunks/1555.js +1 -0
- package/.next/server/chunks/1692.js +1 -0
- package/.next/server/chunks/1870.js +1 -0
- package/.next/server/chunks/1905.js +2 -0
- package/.next/server/chunks/1986.js +1 -0
- package/.next/server/chunks/2181.js +17 -0
- package/.next/server/chunks/22.js +4 -0
- package/.next/server/chunks/2253.js +1 -0
- package/.next/server/chunks/232.js +1 -0
- package/.next/server/chunks/2471.js +1 -0
- package/.next/server/chunks/2666.js +1 -0
- package/.next/server/chunks/2695.js +95 -0
- package/.next/server/chunks/2776.js +3 -0
- package/.next/server/chunks/3736.js +1 -0
- package/.next/server/chunks/3984.js +9 -0
- package/.next/server/chunks/4239.js +1 -0
- package/.next/server/chunks/4322.js +1 -0
- package/.next/server/chunks/4706.js +1 -0
- package/.next/server/chunks/4729.js +6 -0
- package/.next/server/chunks/473.js +2 -0
- package/.next/server/chunks/4753.js +8 -0
- package/.next/server/chunks/4989.js +1 -0
- package/.next/server/chunks/5389.js +154 -0
- package/.next/server/chunks/5443.js +1 -0
- package/.next/server/chunks/5486.js +1 -0
- package/.next/server/chunks/5547.js +2 -0
- package/.next/server/chunks/558.js +1 -0
- package/.next/server/chunks/5611.js +6 -0
- package/.next/server/chunks/5734.js +60 -0
- package/.next/server/chunks/5838.js +1 -0
- package/.next/server/chunks/5873.js +22 -0
- package/.next/server/chunks/598.js +1 -0
- package/.next/server/chunks/6064.js +1 -0
- package/.next/server/chunks/62.js +1 -0
- package/.next/server/chunks/6283.js +2 -0
- package/.next/server/chunks/6390.js +28 -0
- package/.next/server/chunks/6542.js +1 -0
- package/.next/server/chunks/6637.js +2 -0
- package/.next/server/chunks/6760.js +1 -0
- package/.next/server/chunks/6936.js +35 -0
- package/.next/server/chunks/6996.js +62 -0
- package/.next/server/chunks/701.js +10 -0
- package/.next/server/chunks/7214.js +6 -0
- package/.next/server/chunks/724.js +27 -0
- package/.next/server/chunks/7412.js +5 -0
- package/.next/server/chunks/7506.js +10 -0
- package/.next/server/chunks/7531.js +52 -0
- package/.next/server/chunks/805.js +2 -0
- package/.next/server/chunks/812.js +2 -0
- package/.next/server/chunks/8298.js +1 -0
- package/.next/server/chunks/8312.js +5 -0
- package/.next/server/chunks/8445.js +82 -0
- package/.next/server/chunks/8460.js +1 -0
- package/.next/server/chunks/8693.js +1 -0
- package/.next/server/chunks/8739.js +2 -0
- package/.next/server/chunks/8938.js +8 -0
- package/.next/server/chunks/9042.js +1 -0
- package/.next/server/chunks/9188.js +1 -0
- package/.next/server/chunks/9273.js +4 -0
- package/.next/server/chunks/9314.js +12 -0
- package/.next/server/chunks/9343.js +5 -0
- package/.next/server/chunks/9406.js +95 -0
- package/.next/server/chunks/9938.js +1 -0
- package/.next/server/chunks/9989.js +1 -0
- package/.next/server/functions-config-manifest.json +10 -0
- package/.next/server/instrumentation.js +1 -0
- package/.next/server/instrumentation.js.nft.json +1 -0
- package/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/.next/server/middleware-build-manifest.js +1 -0
- package/.next/server/middleware-manifest.json +6 -0
- package/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/.next/server/next-font-manifest.js +1 -0
- package/.next/server/next-font-manifest.json +1 -0
- package/.next/server/pages/404.html +1 -0
- package/.next/server/pages/500.html +1 -0
- package/.next/server/pages/_app.js +1 -0
- package/.next/server/pages/_app.js.nft.json +1 -0
- package/.next/server/pages/_document.js +1 -0
- package/.next/server/pages/_document.js.nft.json +1 -0
- package/.next/server/pages/_error.js +19 -0
- package/.next/server/pages/_error.js.nft.json +1 -0
- package/.next/server/pages-manifest.json +6 -0
- package/.next/server/server-reference-manifest.js +1 -0
- package/.next/server/server-reference-manifest.json +1 -0
- package/.next/server/webpack-runtime.js +1 -0
- package/.next/static/GbXXL_8DLT2oVwT-JdpbM/_buildManifest.js +1 -0
- package/.next/static/GbXXL_8DLT2oVwT-JdpbM/_ssgManifest.js +1 -0
- package/.next/static/chunks/1255-13d973e0759ea6d6.js +1 -0
- package/.next/static/chunks/1374-e084b3c40554288a.js +1 -0
- package/.next/static/chunks/1424-01898260211a09d0.js +1 -0
- package/.next/static/chunks/1646.a93085a0445ba909.js +1 -0
- package/.next/static/chunks/1a258343-bcffff1604e3797c.js +1 -0
- package/.next/static/chunks/2003-7710c23acaef11c9.js +1 -0
- package/.next/static/chunks/2005-f9d38c39f10c321f.js +1 -0
- package/.next/static/chunks/2160-4d9f132965bc2a89.js +1 -0
- package/.next/static/chunks/2380-2a7acfa037ec8e80.js +1 -0
- package/.next/static/chunks/2619-04bc32f026a0d946.js +1 -0
- package/.next/static/chunks/2624-b985ab3eac1139c3.js +1 -0
- package/.next/static/chunks/2678-c88052addfb0478a.js +1 -0
- package/.next/static/chunks/2720-2a926505ec98a6de.js +1 -0
- package/.next/static/chunks/3077-565833c67440a7fa.js +1 -0
- package/.next/static/chunks/3217.79ca74c918fc772c.js +1 -0
- package/.next/static/chunks/3235-dfcb73b8d483f8cd.js +1 -0
- package/.next/static/chunks/3272-fd8d59523f61da96.js +1 -0
- package/.next/static/chunks/3403-7c5037145e384171.js +1 -0
- package/.next/static/chunks/3545.c3fbe14528517a75.js +1 -0
- package/.next/static/chunks/3750-38474d67566af4c3.js +1 -0
- package/.next/static/chunks/3810-cee95063d5535307.js +1 -0
- package/.next/static/chunks/39-1732a0b689c7b641.js +1 -0
- package/.next/static/chunks/4754-5c62bb61142f82d1.js +1 -0
- package/.next/static/chunks/488-623d07c3fbc21e28.js +1 -0
- package/.next/static/chunks/4bd1b696-182b6b13bdad92e3.js +1 -0
- package/.next/static/chunks/5139.e4ff9cc3669129ed.js +1 -0
- package/.next/static/chunks/5648-2c6caf3d55f95e11.js +1 -0
- package/.next/static/chunks/5961-828f4f7efc3e1381.js +1 -0
- package/.next/static/chunks/6134-758747aabd77289d.js +8 -0
- package/.next/static/chunks/690-391bc0f482a9f67c.js +1 -0
- package/.next/static/chunks/7126-2bafddf1b09cacac.js +1 -0
- package/.next/static/chunks/7329-78f54f68ea2d37e2.js +1 -0
- package/.next/static/chunks/7396-807a034f58b57712.js +1 -0
- package/.next/static/chunks/7488-b58bc701d0deda00.js +1 -0
- package/.next/static/chunks/7539.41f0448cf9783388.js +1 -0
- package/.next/static/chunks/7583.8a518353bd072db9.js +1 -0
- package/.next/static/chunks/8187.5d6523f30e705998.js +1 -0
- package/.next/static/chunks/8198.cd0d3f8429c02862.js +1 -0
- package/.next/static/chunks/8345.76f420453fc0dee7.js +1 -0
- package/.next/static/chunks/8548-8e4a95334064e8b2.js +1 -0
- package/.next/static/chunks/8598-1b627b3d682b364a.js +1 -0
- package/.next/static/chunks/8862-1314a13b011c4817.js +1 -0
- package/.next/static/chunks/9164-81ca1a1bccdc5ed2.js +1 -0
- package/.next/static/chunks/9195.01a57af6d6cdf1a5.js +1 -0
- package/.next/static/chunks/9244-3281f7fd02003a2c.js +1 -0
- package/.next/static/chunks/9562-93cc45aef3630781.js +1 -0
- package/.next/static/chunks/9718-12d33c1a26bb002d.js +1 -0
- package/.next/static/chunks/app/_not-found/page-81dc485d60f94046.js +1 -0
- package/.next/static/chunks/app/api/backup/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/browse/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/cwd/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/encryption/secure/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/env/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/flow/[id]/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/flow/prompt-renderer/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/flow/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/git/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/init/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/cancel/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/servers/[name]/prompts/get/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/servers/[name]/prompts/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/servers/[name]/resources/read/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/servers/[name]/resources/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/servers/[name]/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/servers/[name]/status/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/servers/[name]/tools/[toolName]/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/servers/[name]/tools/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/servers/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp/test-connection/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp-registry/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/mcp-registry/spotlight/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/model/[id]/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/model/provider/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/model/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/model/test/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/oauth/callback/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/oauth/initiate/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/oauth/reset/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/planned-executions/[id]/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/planned-executions/[id]/run/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/planned-executions/[id]/runs/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/planned-executions/preview-schedule/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/planned-executions/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/restore/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/storage/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/update/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/api/webhooks/[id]/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/chat/page-019d2b836f34f40d.js +1 -0
- package/.next/static/chunks/app/docs/page-2a4cff7c40706a48.js +1 -0
- package/.next/static/chunks/app/executions/page-b46744c507a6e810.js +1 -0
- package/.next/static/chunks/app/flows/page-7b5c0e06951398ac.js +1 -0
- package/.next/static/chunks/app/layout-2878f13d7e253503.js +1 -0
- package/.next/static/chunks/app/mcp/page-1ca55f88a3045b5d.js +1 -0
- package/.next/static/chunks/app/mcp-flows/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/mcp-proxy/[server]/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/models/error-2b00c98abf1e02cf.js +1 -0
- package/.next/static/chunks/app/models/loading-57d1c02d0817fc47.js +1 -0
- package/.next/static/chunks/app/models/page-a20e6c4e1a5a0c9a.js +1 -0
- package/.next/static/chunks/app/page-471879d3918aeeb6.js +1 -0
- package/.next/static/chunks/app/settings/page-88f7e1b65a6681ec.js +1 -0
- package/.next/static/chunks/app/v1/chat/completions/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/breakpoints/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/cancel/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/debug/continue/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/debug/step/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/edit-state/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/events/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/respond/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/v1/chat/conversations/[conversationId]/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/v1/chat/conversations/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/app/v1/models/route-acd5b6e731d45f1a.js +1 -0
- package/.next/static/chunks/ccd63cfe-4a75b90fa4cb53ad.js +1 -0
- package/.next/static/chunks/framework-1548034a53843b9f.js +1 -0
- package/.next/static/chunks/main-app-faff38c77cb00119.js +1 -0
- package/.next/static/chunks/main-be8e823624954fab.js +1 -0
- package/.next/static/chunks/pages/_app-e8b861c87f6f033c.js +1 -0
- package/.next/static/chunks/pages/_error-c8f84f7bd11d43d4.js +1 -0
- package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/.next/static/chunks/webpack-6f17a022ac16e8bd.js +1 -0
- package/.next/static/css/64cb1f185b52a623.css +1 -0
- package/.next/static/css/d1484588c616b291.css +31 -0
- package/.next/static/media/013b72fa676f92e0-s.woff2 +0 -0
- package/.next/static/media/22a5144ee8d83bca-s.p.woff2 +0 -0
- package/.next/static/media/2b5b02fc7e511755-s.woff2 +0 -0
- package/.next/static/media/65f03d54ccadf4a8-s.woff2 +0 -0
- package/.next/static/media/7d4881bb7e1bf84d-s.p.woff2 +0 -0
- package/.next/static/media/9766a7e9e2e0ad5a-s.woff2 +0 -0
- package/.next/static/media/aa016aab0e6d1295-s.woff2 +0 -0
- package/.next/static/media/b66cf8e69499582a-s.woff2 +0 -0
- package/.next/static/media/b9408752a0c24fb9-s.woff2 +0 -0
- package/.next/static/media/e038a29029a234f2-s.woff2 +0 -0
- package/.next/static/media/f639721981034f88-s.woff2 +0 -0
- package/.next/trace +7 -0
- package/.next/types/app/api/backup/route.ts +347 -0
- package/.next/types/app/api/browse/route.ts +347 -0
- package/.next/types/app/api/cwd/route.ts +347 -0
- package/.next/types/app/api/encryption/secure/route.ts +347 -0
- package/.next/types/app/api/env/route.ts +347 -0
- package/.next/types/app/api/flow/[id]/route.ts +347 -0
- package/.next/types/app/api/flow/prompt-renderer/route.ts +347 -0
- package/.next/types/app/api/flow/route.ts +347 -0
- package/.next/types/app/api/git/route.ts +347 -0
- package/.next/types/app/api/init/route.ts +347 -0
- package/.next/types/app/api/mcp/cancel/route.ts +347 -0
- package/.next/types/app/api/mcp/servers/[name]/prompts/get/route.ts +347 -0
- package/.next/types/app/api/mcp/servers/[name]/prompts/route.ts +347 -0
- package/.next/types/app/api/mcp/servers/[name]/resources/read/route.ts +347 -0
- package/.next/types/app/api/mcp/servers/[name]/resources/route.ts +347 -0
- package/.next/types/app/api/mcp/servers/[name]/route.ts +347 -0
- package/.next/types/app/api/mcp/servers/[name]/status/route.ts +347 -0
- package/.next/types/app/api/mcp/servers/[name]/tools/[toolName]/route.ts +347 -0
- package/.next/types/app/api/mcp/servers/[name]/tools/route.ts +347 -0
- package/.next/types/app/api/mcp/servers/route.ts +347 -0
- package/.next/types/app/api/mcp/test-connection/route.ts +347 -0
- package/.next/types/app/api/mcp-registry/route.ts +347 -0
- package/.next/types/app/api/mcp-registry/spotlight/route.ts +347 -0
- package/.next/types/app/api/model/[id]/route.ts +347 -0
- package/.next/types/app/api/model/provider/route.ts +347 -0
- package/.next/types/app/api/model/route.ts +347 -0
- package/.next/types/app/api/model/test/route.ts +347 -0
- package/.next/types/app/api/oauth/callback/route.ts +347 -0
- package/.next/types/app/api/oauth/initiate/route.ts +347 -0
- package/.next/types/app/api/oauth/reset/route.ts +347 -0
- package/.next/types/app/api/planned-executions/[id]/route.ts +347 -0
- package/.next/types/app/api/planned-executions/[id]/run/route.ts +347 -0
- package/.next/types/app/api/planned-executions/[id]/runs/route.ts +347 -0
- package/.next/types/app/api/planned-executions/preview-schedule/route.ts +347 -0
- package/.next/types/app/api/planned-executions/route.ts +347 -0
- package/.next/types/app/api/restore/route.ts +347 -0
- package/.next/types/app/api/storage/route.ts +347 -0
- package/.next/types/app/api/update/route.ts +347 -0
- package/.next/types/app/api/webhooks/[id]/route.ts +347 -0
- package/.next/types/app/chat/page.ts +84 -0
- package/.next/types/app/docs/page.ts +84 -0
- package/.next/types/app/executions/page.ts +84 -0
- package/.next/types/app/flows/page.ts +84 -0
- package/.next/types/app/layout.ts +84 -0
- package/.next/types/app/mcp/page.ts +84 -0
- package/.next/types/app/mcp-flows/route.ts +347 -0
- package/.next/types/app/mcp-proxy/[server]/route.ts +347 -0
- package/.next/types/app/models/page.ts +84 -0
- package/.next/types/app/page.ts +84 -0
- package/.next/types/app/settings/page.ts +84 -0
- package/.next/types/app/v1/chat/completions/route.ts +347 -0
- package/.next/types/app/v1/chat/conversations/[conversationId]/breakpoints/route.ts +347 -0
- package/.next/types/app/v1/chat/conversations/[conversationId]/cancel/route.ts +347 -0
- package/.next/types/app/v1/chat/conversations/[conversationId]/debug/continue/route.ts +347 -0
- package/.next/types/app/v1/chat/conversations/[conversationId]/debug/step/route.ts +347 -0
- package/.next/types/app/v1/chat/conversations/[conversationId]/edit-state/route.ts +347 -0
- package/.next/types/app/v1/chat/conversations/[conversationId]/events/route.ts +347 -0
- package/.next/types/app/v1/chat/conversations/[conversationId]/respond/route.ts +347 -0
- package/.next/types/app/v1/chat/conversations/[conversationId]/route.ts +347 -0
- package/.next/types/app/v1/chat/conversations/route.ts +347 -0
- package/.next/types/app/v1/models/route.ts +347 -0
- package/.next/types/cache-life.d.ts +141 -0
- package/.next/types/package.json +1 -0
- package/.next/types/routes.d.ts +131 -0
- package/.next/types/validator.ts +601 -0
- package/LICENSE +21 -0
- package/README.md +372 -0
- package/bin/flujo.mjs +120 -0
- package/next.config.ts +99 -0
- package/package.json +91 -0
- package/public/favicon.ico +0 -0
- package/public/file.svg +1 -0
- package/public/globe.svg +1 -0
- package/public/next.svg +1 -0
- package/public/vercel.svg +1 -0
- package/public/window.svg +1 -0
- package/scripts/launch-next.mjs +98 -0
package/public/globe.svg
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><g clip-path="url(#a)"><path fill-rule="evenodd" clip-rule="evenodd" d="M10.27 14.1a6.5 6.5 0 0 0 3.67-3.45q-1.24.21-2.7.34-.31 1.83-.97 3.1M8 16A8 8 0 1 0 8 0a8 8 0 0 0 0 16m.48-1.52a7 7 0 0 1-.96 0H7.5a4 4 0 0 1-.84-1.32q-.38-.89-.63-2.08a40 40 0 0 0 3.92 0q-.25 1.2-.63 2.08a4 4 0 0 1-.84 1.31zm2.94-4.76q1.66-.15 2.95-.43a7 7 0 0 0 0-2.58q-1.3-.27-2.95-.43a18 18 0 0 1 0 3.44m-1.27-3.54a17 17 0 0 1 0 3.64 39 39 0 0 1-4.3 0 17 17 0 0 1 0-3.64 39 39 0 0 1 4.3 0m1.1-1.17q1.45.13 2.69.34a6.5 6.5 0 0 0-3.67-3.44q.65 1.26.98 3.1M8.48 1.5l.01.02q.41.37.84 1.31.38.89.63 2.08a40 40 0 0 0-3.92 0q.25-1.2.63-2.08a4 4 0 0 1 .85-1.32 7 7 0 0 1 .96 0m-2.75.4a6.5 6.5 0 0 0-3.67 3.44 29 29 0 0 1 2.7-.34q.31-1.83.97-3.1M4.58 6.28q-1.66.16-2.95.43a7 7 0 0 0 0 2.58q1.3.27 2.95.43a18 18 0 0 1 0-3.44m.17 4.71q-1.45-.12-2.69-.34a6.5 6.5 0 0 0 3.67 3.44q-.65-1.27-.98-3.1" fill="#666"/></g><defs><clipPath id="a"><path fill="#fff" d="M0 0h16v16H0z"/></clipPath></defs></svg>
|
package/public/next.svg
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 394 80"><path fill="#000" d="M262 0h68.5v12.7h-27.2v66.6h-13.6V12.7H262V0ZM149 0v12.7H94v20.4h44.3v12.6H94v21h55v12.6H80.5V0h68.7zm34.3 0h-17.8l63.8 79.4h17.9l-32-39.7 32-39.6h-17.9l-23 28.6-23-28.6zm18.3 56.7-9-11-27.1 33.7h17.8l18.3-22.7z"/><path fill="#000" d="M81 79.3 17 0H0v79.3h13.6V17l50.2 62.3H81Zm252.6-.4c-1 0-1.8-.4-2.5-1s-1.1-1.6-1.1-2.6.3-1.8 1-2.5 1.6-1 2.6-1 1.8.3 2.5 1a3.4 3.4 0 0 1 .6 4.3 3.7 3.7 0 0 1-3 1.8zm23.2-33.5h6v23.3c0 2.1-.4 4-1.3 5.5a9.1 9.1 0 0 1-3.8 3.5c-1.6.8-3.5 1.3-5.7 1.3-2 0-3.7-.4-5.3-1s-2.8-1.8-3.7-3.2c-.9-1.3-1.4-3-1.4-5h6c.1.8.3 1.6.7 2.2s1 1.2 1.6 1.5c.7.4 1.5.5 2.4.5 1 0 1.8-.2 2.4-.6a4 4 0 0 0 1.6-1.8c.3-.8.5-1.8.5-3V45.5zm30.9 9.1a4.4 4.4 0 0 0-2-3.3 7.5 7.5 0 0 0-4.3-1.1c-1.3 0-2.4.2-3.3.5-.9.4-1.6 1-2 1.6a3.5 3.5 0 0 0-.3 4c.3.5.7.9 1.3 1.2l1.8 1 2 .5 3.2.8c1.3.3 2.5.7 3.7 1.2a13 13 0 0 1 3.2 1.8 8.1 8.1 0 0 1 3 6.5c0 2-.5 3.7-1.5 5.1a10 10 0 0 1-4.4 3.5c-1.8.8-4.1 1.2-6.8 1.2-2.6 0-4.9-.4-6.8-1.2-2-.8-3.4-2-4.5-3.5a10 10 0 0 1-1.7-5.6h6a5 5 0 0 0 3.5 4.6c1 .4 2.2.6 3.4.6 1.3 0 2.5-.2 3.5-.6 1-.4 1.8-1 2.4-1.7a4 4 0 0 0 .8-2.4c0-.9-.2-1.6-.7-2.2a11 11 0 0 0-2.1-1.4l-3.2-1-3.8-1c-2.8-.7-5-1.7-6.6-3.2a7.2 7.2 0 0 1-2.4-5.7 8 8 0 0 1 1.7-5 10 10 0 0 1 4.3-3.5c2-.8 4-1.2 6.4-1.2 2.3 0 4.4.4 6.2 1.2 1.8.8 3.2 2 4.3 3.4 1 1.4 1.5 3 1.5 5h-5.8z"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1155 1000"><path d="m577.3 0 577.4 1000H0z" fill="#fff"/></svg>
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
<svg fill="none" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill-rule="evenodd" clip-rule="evenodd" d="M1.5 2.5h13v10a1 1 0 0 1-1 1h-11a1 1 0 0 1-1-1zM0 1h16v11.5a2.5 2.5 0 0 1-2.5 2.5h-11A2.5 2.5 0 0 1 0 12.5zm3.75 4.5a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5M7 4.75a.75.75 0 1 1-1.5 0 .75.75 0 0 1 1.5 0m1.75.75a.75.75 0 1 0 0-1.5.75.75 0 0 0 0 1.5" fill="#666"/></svg>
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* Launches Next.js with TLS settings that let FLUJO connect to MCP servers whose
|
|
4
|
+
* certificates are signed by a custom/private (enterprise) CA.
|
|
5
|
+
*
|
|
6
|
+
* Node.js does NOT trust the operating system's certificate store by default, which is
|
|
7
|
+
* why a streamable-HTTP MCP server over HTTPS with a corporate CA fails with
|
|
8
|
+
* "unable to verify the first certificate" even though `curl` works. This launcher:
|
|
9
|
+
*
|
|
10
|
+
* 1. Adds `--use-system-ca` to NODE_OPTIONS (on Node versions that support it) so Node
|
|
11
|
+
* trusts the OS certificate store — the same store `curl` uses.
|
|
12
|
+
* 2. Maps the friendlier FLUJO_EXTRA_CA_CERTS env var to NODE_EXTRA_CA_CERTS so a
|
|
13
|
+
* specific PEM CA bundle can be trusted without touching the OS store.
|
|
14
|
+
*
|
|
15
|
+
* Both settings propagate to every Node child process Next spawns (including the server),
|
|
16
|
+
* because NODE_OPTIONS / NODE_EXTRA_CA_CERTS are read at process startup.
|
|
17
|
+
*
|
|
18
|
+
* The TLS/CA logic is exported as `buildLaunchEnv()` so the npm-package bin wrapper
|
|
19
|
+
* (bin/flujo.mjs, issue #59) reuses it verbatim instead of duplicating it.
|
|
20
|
+
*/
|
|
21
|
+
import { spawn } from 'node:child_process';
|
|
22
|
+
import process from 'node:process';
|
|
23
|
+
import { pathToFileURL } from 'node:url';
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Return a copy of `baseEnv` with FLUJO's TLS/CA settings applied:
|
|
27
|
+
* - NODE_OPTIONS gains `--use-system-ca` on Node versions that support it.
|
|
28
|
+
* - FLUJO_EXTRA_CA_CERTS is mirrored to NODE_EXTRA_CA_CERTS.
|
|
29
|
+
* Pure apart from a one-time informational log on older Node builds.
|
|
30
|
+
*/
|
|
31
|
+
export function buildLaunchEnv(baseEnv = process.env) {
|
|
32
|
+
const env = { ...baseEnv };
|
|
33
|
+
|
|
34
|
+
// Detect support empirically instead of sniffing the version number. This Set is the
|
|
35
|
+
// authoritative list of flags THIS Node binary accepts inside NODE_OPTIONS, so it is
|
|
36
|
+
// correct across versions, platforms, and nightly/RC builds — and it guarantees we never
|
|
37
|
+
// inject a flag that Node would then reject at startup with a scary error.
|
|
38
|
+
const supportsSystemCa = process.allowedNodeEnvironmentFlags.has('--use-system-ca');
|
|
39
|
+
|
|
40
|
+
if (supportsSystemCa && !/--use-system-ca/.test(env.NODE_OPTIONS || '')) {
|
|
41
|
+
env.NODE_OPTIONS = `${env.NODE_OPTIONS ? `${env.NODE_OPTIONS} ` : ''}--use-system-ca`;
|
|
42
|
+
} else if (!supportsSystemCa && !env.NODE_EXTRA_CA_CERTS && !env.FLUJO_EXTRA_CA_CERTS) {
|
|
43
|
+
// Not an error — older Node simply lacks the flag and falls back to Node's bundled CAs.
|
|
44
|
+
// Only surface this (as info, not a warning) when no CA bundle is already configured,
|
|
45
|
+
// so it never looks alarming on the happy path.
|
|
46
|
+
console.log(
|
|
47
|
+
`[FLUJO] Node ${process.versions.node} has no --use-system-ca flag; using Node's bundled CAs. ` +
|
|
48
|
+
`If an MCP server uses a private/corporate CA, set FLUJO_EXTRA_CA_CERTS (or NODE_EXTRA_CA_CERTS) ` +
|
|
49
|
+
`to your CA file before starting FLUJO.`
|
|
50
|
+
);
|
|
51
|
+
}
|
|
52
|
+
|
|
53
|
+
// Convenience alias so users don't have to remember the exact Node env var name.
|
|
54
|
+
if (env.FLUJO_EXTRA_CA_CERTS && !env.NODE_EXTRA_CA_CERTS) {
|
|
55
|
+
env.NODE_EXTRA_CA_CERTS = env.FLUJO_EXTRA_CA_CERTS;
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
return env;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
/** Spawn `next <passthroughArgs>` with the TLS-configured env and forward its exit. */
|
|
62
|
+
function launchNext(passthroughArgs) {
|
|
63
|
+
const env = buildLaunchEnv();
|
|
64
|
+
|
|
65
|
+
const tlsSummary = [
|
|
66
|
+
env.NODE_OPTIONS ? `NODE_OPTIONS="${env.NODE_OPTIONS}"` : null,
|
|
67
|
+
env.NODE_EXTRA_CA_CERTS ? `NODE_EXTRA_CA_CERTS="${env.NODE_EXTRA_CA_CERTS}"` : null,
|
|
68
|
+
].filter(Boolean).join(', ');
|
|
69
|
+
console.log(`[FLUJO] Starting next ${passthroughArgs.join(' ')}${tlsSummary ? ` (${tlsSummary})` : ''}`);
|
|
70
|
+
|
|
71
|
+
// On Windows the resolved binary is next.cmd, which requires a shell to execute.
|
|
72
|
+
const child = spawn('next', passthroughArgs, {
|
|
73
|
+
stdio: 'inherit',
|
|
74
|
+
env,
|
|
75
|
+
shell: process.platform === 'win32',
|
|
76
|
+
});
|
|
77
|
+
|
|
78
|
+
child.on('error', error => {
|
|
79
|
+
console.error('[FLUJO] Failed to launch next:', error);
|
|
80
|
+
process.exit(1);
|
|
81
|
+
});
|
|
82
|
+
|
|
83
|
+
child.on('exit', (code, signal) => {
|
|
84
|
+
if (signal) {
|
|
85
|
+
process.kill(process.pid, signal);
|
|
86
|
+
} else {
|
|
87
|
+
process.exit(code ?? 0);
|
|
88
|
+
}
|
|
89
|
+
});
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
// Only launch when run directly (`node scripts/launch-next.mjs start -p 4200`), not when
|
|
93
|
+
// imported for buildLaunchEnv (bin/flujo.mjs). Everything after the script name is the
|
|
94
|
+
// Next.js command, e.g. ["start", "-p", "4200"].
|
|
95
|
+
const isMain = import.meta.url === pathToFileURL(process.argv[1] ?? '').href;
|
|
96
|
+
if (isMain) {
|
|
97
|
+
launchNext(process.argv.slice(2));
|
|
98
|
+
}
|