UNPKG

openclaw

Version:

Multi-channel AI gateway with extensible messaging integrations

27 lines (26 loc) • 1.33 kB
import { a as hasGatewayClientCap, t as GATEWAY_CLIENT_CAPS } from "./client-info-C8RatpKO.mjs"; import { r as transferGatewayOperatorSourceIdentity } from "./operator-run-authority-DfunQUuj.mjs"; import { o as transferGatewayLocalUserIngress } from "./local-user-ingress-Ct0iaaFP.mjs"; //#region src/gateway/agent-turn/principal.ts /** Captures the transport identity without rebuilding its trusted metadata. */ function captureAgentTurnPrincipal(client) { if (!client) return null; const principal = { authenticatedUserId: client.authenticatedUserId, authenticatedUserProfile: client.authenticatedUserProfile, connId: client.connId, connect: client.connect, internal: client.internal, isDeviceTokenAuth: client.isDeviceTokenAuth }; transferGatewayLocalUserIngress(client, principal); transferGatewayOperatorSourceIdentity(client, principal); return principal; } /** Preserve capability-gated tool-event observation across agent turn entry paths. */ function resolveAgentTurnRunObserver(params) { const connId = params.principal?.connId; return connId && hasGatewayClientCap(params.principal?.connect?.caps, GATEWAY_CLIENT_CAPS.TOOL_EVENTS) ? (runId) => params.registerToolEventRecipient(runId, connId) : void 0; } //#endregion export { resolveAgentTurnRunObserver as n, captureAgentTurnPrincipal as t };