@copilotkit/runtime
Version:
<img src="https://github.com/user-attachments/assets/0a6b64d9-e193-4940-a3f6-60334ac34084" alt="banner" style="border-radius: 12px; border: 2px solid #d6d4fa;" />
53 lines (51 loc) • 2.06 kB
JavaScript
import "reflect-metadata";
import telemetry from "../telemetry/telemetry-client.mjs";
import { isIntelligenceRuntime } from "../core/runtime.mjs";
import { cloneAgentForRequest, parseConnectRequest } from "./shared/agent-utils.mjs";
import { handleIntelligenceConnect } from "./intelligence/connect.mjs";
import { handleSseConnect } from "./sse/connect.mjs";
//#region src/v2/runtime/handlers/handle-connect.ts
async function handleConnectAgent({ runtime, request, agentId }) {
telemetry.capture("oss.runtime.copilot_request_created", {
"cloud.guardrails.enabled": false,
requestType: "connect",
"cloud.api_key_provided": !!request.headers.get("x-copilotcloud-public-api-key"),
...request.headers.get("x-copilotcloud-public-api-key") ? { "cloud.public_api_key": request.headers.get("x-copilotcloud-public-api-key") } : {}
});
try {
const agent = await cloneAgentForRequest(runtime, agentId, request);
if (agent instanceof Response) return agent;
const connectRequest = await parseConnectRequest(request);
if (connectRequest instanceof Response) return connectRequest;
if (isIntelligenceRuntime(runtime)) return handleIntelligenceConnect({
runtime,
request,
agentId,
threadId: connectRequest.input.threadId
});
return handleSseConnect({
runtime,
request,
agentId,
threadId: connectRequest.input.threadId
});
} catch (error) {
console.error("Error running agent:", error);
console.error("Error stack:", error instanceof Error ? error.stack : "No stack trace");
console.error("Error details:", {
name: error instanceof Error ? error.name : "Unknown",
message: error instanceof Error ? error.message : String(error),
cause: error instanceof Error ? error.cause : void 0
});
return new Response(JSON.stringify({
error: "Failed to run agent",
message: error instanceof Error ? error.message : "Unknown error"
}), {
status: 500,
headers: { "Content-Type": "application/json" }
});
}
}
//#endregion
export { handleConnectAgent };
//# sourceMappingURL=handle-connect.mjs.map