import type { GatewayRequest, OutboundMessage } from '../protocol.js'; import { makeResponse } from '../protocol.js'; export interface SystemHandlerDeps { startTime: number; version: string; getSessionCount: () => number; getToolCount: () => number; getConnectionCount: () => number; } export function createSystemHandlers(deps: SystemHandlerDeps) { return { 'system.health': async (request: GatewayRequest): Promise => { return makeResponse(request.id, { status: 'ok', uptime: Math.floor((Date.now() - deps.startTime) / 1000), version: deps.version, sessions: deps.getSessionCount(), tools: deps.getToolCount(), connections: deps.getConnectionCount(), }); }, }; }