From 5a99236affd3930776588b7ee018641633a1ae08 Mon Sep 17 00:00:00 2001 From: Jonas Pacheco Date: Mon, 6 Apr 2026 15:30:32 -0300 Subject: [PATCH] feat(kernel): adiciona proxy /kernel para Dashboard MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Instala http-proxy-middleware - Configura proxy /kernel -> localhost:5001 - Permite acessar Kernel pelo mesmo domínio da aplicação - WebSocket support habilitado --- server/index.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/server/index.ts b/server/index.ts index df3bc11..15381ca 100644 --- a/server/index.ts +++ b/server/index.ts @@ -9,6 +9,7 @@ import { spawn } from "child_process"; import path from "path"; import { logger, httpLogger } from "./logger"; import { ArcadiaKernel } from "./kernel"; // Kernel Nativo - Semana 3 +import { createProxyMiddleware } from "http-proxy-middleware"; // Proxy pro Kernel interface ManagedService { name: string; @@ -358,6 +359,17 @@ export function log(message: string, source = "express") { await registerRoutes(httpServer, app); + // Proxy pro Kernel Dashboard (acessível via /kernel) + if (process.env.KERNEL_ENABLED === 'true') { + app.use('/kernel', createProxyMiddleware({ + target: 'http://localhost:5001', + changeOrigin: true, + pathRewrite: { '^/kernel': '' }, + ws: true, // WebSocket support + })); + log('Proxy do Kernel configurado em /kernel'); + } + await registerAllTools(); const { jobQueueService } = await import("./governance/jobQueue");