Spaces:
Sleeping
Sleeping
File size: 1,191 Bytes
05c5ed5 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | import { IS_VERCEL_ENV } from "lib/const";
export async function register() {
if (process.env.NEXT_RUNTIME === "nodejs") {
// Enable proxy support for undici (used by AI SDK) via HTTP_PROXY/HTTPS_PROXY env vars
const proxyUrl =
process.env.HTTPS_PROXY ||
process.env.https_proxy ||
process.env.HTTP_PROXY ||
process.env.http_proxy;
if (proxyUrl) {
const { ProxyAgent, setGlobalDispatcher } = await import("undici");
console.log(`[proxy] Using proxy for fetch requests: ${proxyUrl}`);
setGlobalDispatcher(new ProxyAgent(proxyUrl));
}
if (!IS_VERCEL_ENV) {
// run DB migration (skip on Vercel - migrations run separately)
const runMigrate = await import("./lib/db/pg/migrate.pg").then(
(m) => m.runMigrate,
);
await runMigrate().catch((e) => {
console.error(e);
process.exit(1);
});
// Init MCP manager on all environments.
// Cached servers are available instantly; new servers connect in background.
const initMCPManager = await import("./lib/ai/mcp/mcp-manager").then(
(m) => m.initMCPManager,
);
await initMCPManager();
}
}
}
|