{"version":3,"file":"get-runtime-info.cjs","names":["resolveAgents","VERSION","isIntelligenceRuntime"],"sources":["../../../../src/v2/runtime/handlers/get-runtime-info.ts"],"sourcesContent":["import type { AgentCapabilities } from \"@ag-ui/core\";\nimport {\n  CopilotRuntimeLike,\n  isIntelligenceRuntime,\n  resolveAgents,\n} from \"../core/runtime\";\nimport {\n  AgentDescription,\n  RuntimeInfo,\n  type RuntimeLicenseStatus,\n} from \"@copilotkit/shared\";\nimport { VERSION } from \"../core/runtime\";\n\nfunction resolveLicenseStatus(\n  runtime: CopilotRuntimeLike,\n): RuntimeLicenseStatus {\n  if (!runtime.licenseChecker) return \"none\";\n  const status = runtime.licenseChecker.getStatus();\n  if (status.warningSeverity === \"none\") return \"valid\";\n  if (status.error === \"expired\") return \"expired\";\n  if (status.warningSeverity === \"warning\") return \"expiring\";\n  if (status.error) return \"invalid\";\n  if (status.warningSeverity === \"info\") return \"none\";\n  return \"unknown\";\n}\n\ninterface HandleGetRuntimeInfoParameters {\n  runtime: CopilotRuntimeLike;\n  request: Request;\n}\n\nexport async function handleGetRuntimeInfo({\n  runtime,\n  request,\n}: HandleGetRuntimeInfoParameters) {\n  try {\n    const agents = await resolveAgents(runtime.agents, request);\n\n    const agentEntries = await Promise.all(\n      Object.entries(agents).map(async ([name, agent]) => {\n        let capabilities: AgentCapabilities | undefined;\n        try {\n          capabilities = agent.getCapabilities\n            ? await agent.getCapabilities()\n            : undefined;\n        } catch (error) {\n          // Per-agent isolation: a single agent failing to report capabilities\n          // must not take down the entire /info endpoint.\n          console.warn(\n            `Failed to fetch capabilities for agent \"${name}\":`,\n            error instanceof Error ? error.message : error,\n          );\n          capabilities = undefined;\n        }\n\n        const description: AgentDescription = {\n          name,\n          description: agent.description,\n          className: agent.constructor.name,\n          ...(capabilities ? { capabilities } : {}),\n        };\n\n        return [name, description] as const;\n      }),\n    );\n\n    const agentsDict: Record<string, AgentDescription> =\n      Object.fromEntries(agentEntries);\n\n    const runtimeInfo: RuntimeInfo = {\n      version: VERSION,\n      agents: agentsDict,\n      audioFileTranscriptionEnabled: !!runtime.transcriptionService,\n      mode: runtime.mode,\n      ...(isIntelligenceRuntime(runtime)\n        ? {\n            intelligence: {\n              wsUrl: runtime.intelligence.ɵgetClientWsUrl(),\n            },\n          }\n        : {}),\n      a2uiEnabled: !!runtime.a2ui,\n      openGenerativeUIEnabled: !!runtime.openGenerativeUI,\n      ...(isIntelligenceRuntime(runtime)\n        ? { licenseStatus: resolveLicenseStatus(runtime) }\n        : {}),\n    };\n\n    return new Response(JSON.stringify(runtimeInfo), {\n      status: 200,\n      headers: { \"Content-Type\": \"application/json\" },\n    });\n  } catch (error) {\n    return new Response(\n      JSON.stringify({\n        error: \"Failed to retrieve runtime information\",\n        message: error instanceof Error ? error.message : \"Unknown error\",\n      }),\n      {\n        status: 500,\n        headers: { \"Content-Type\": \"application/json\" },\n      },\n    );\n  }\n}\n"],"mappings":";;;;AAaA,SAAS,qBACP,SACsB;AACtB,KAAI,CAAC,QAAQ,eAAgB,QAAO;CACpC,MAAM,SAAS,QAAQ,eAAe,WAAW;AACjD,KAAI,OAAO,oBAAoB,OAAQ,QAAO;AAC9C,KAAI,OAAO,UAAU,UAAW,QAAO;AACvC,KAAI,OAAO,oBAAoB,UAAW,QAAO;AACjD,KAAI,OAAO,MAAO,QAAO;AACzB,KAAI,OAAO,oBAAoB,OAAQ,QAAO;AAC9C,QAAO;;AAQT,eAAsB,qBAAqB,EACzC,SACA,WACiC;AACjC,KAAI;EACF,MAAM,SAAS,MAAMA,8BAAc,QAAQ,QAAQ,QAAQ;EAE3D,MAAM,eAAe,MAAM,QAAQ,IACjC,OAAO,QAAQ,OAAO,CAAC,IAAI,OAAO,CAAC,MAAM,WAAW;GAClD,IAAI;AACJ,OAAI;AACF,mBAAe,MAAM,kBACjB,MAAM,MAAM,iBAAiB,GAC7B;YACG,OAAO;AAGd,YAAQ,KACN,2CAA2C,KAAK,KAChD,iBAAiB,QAAQ,MAAM,UAAU,MAC1C;AACD,mBAAe;;AAUjB,UAAO,CAAC,MAP8B;IACpC;IACA,aAAa,MAAM;IACnB,WAAW,MAAM,YAAY;IAC7B,GAAI,eAAe,EAAE,cAAc,GAAG,EAAE;IACzC,CAEyB;IAC1B,CACH;EAKD,MAAM,cAA2B;GAC/B,SAASC;GACT,QAJA,OAAO,YAAY,aAAa;GAKhC,+BAA+B,CAAC,CAAC,QAAQ;GACzC,MAAM,QAAQ;GACd,GAAIC,sCAAsB,QAAQ,GAC9B,EACE,cAAc,EACZ,OAAO,QAAQ,aAAa,iBAAiB,EAC9C,EACF,GACD,EAAE;GACN,aAAa,CAAC,CAAC,QAAQ;GACvB,yBAAyB,CAAC,CAAC,QAAQ;GACnC,GAAIA,sCAAsB,QAAQ,GAC9B,EAAE,eAAe,qBAAqB,QAAQ,EAAE,GAChD,EAAE;GACP;AAED,SAAO,IAAI,SAAS,KAAK,UAAU,YAAY,EAAE;GAC/C,QAAQ;GACR,SAAS,EAAE,gBAAgB,oBAAoB;GAChD,CAAC;UACK,OAAO;AACd,SAAO,IAAI,SACT,KAAK,UAAU;GACb,OAAO;GACP,SAAS,iBAAiB,QAAQ,MAAM,UAAU;GACnD,CAAC,EACF;GACE,QAAQ;GACR,SAAS,EAAE,gBAAgB,oBAAoB;GAChD,CACF"}