UNPKG

@openai/agents-core

Version:

The OpenAI Agents SDK is a lightweight yet powerful framework for building multi-agent workflows.

38 lines • 1.51 kB
import { copyManifestMountCredentialExposurePolicy, Environment, Manifest, } from "../manifest.mjs"; export function sandboxRunAsName(runAs) { if (runAs === undefined) { return undefined; } if (typeof runAs === 'string') { return runAs.trim(); } return runAs.name; } export function manifestWithRunAsUser(manifest, runAs) { const runAsName = sandboxRunAsName(runAs); if (!runAsName || manifestHasUser(manifest, runAsName)) { return manifest; } const updatedManifest = new Manifest({ version: manifest.version, root: manifest.root, entries: structuredClone(manifest.entries), environment: Object.fromEntries(Object.entries(manifest.environment).map(([key, value]) => [ key, value instanceof Environment ? value.init() : value, ])), users: [...structuredClone(manifest.users), { name: runAsName }], groups: structuredClone(manifest.groups), extraPathGrants: structuredClone(manifest.extraPathGrants), remoteMountCommandAllowlist: [...manifest.remoteMountCommandAllowlist], }); copyManifestMountCredentialExposurePolicy(updatedManifest, manifest); return updatedManifest; } function manifestHasUser(manifest, name) { if (manifest.users.some((user) => user.name === name)) { return true; } return manifest.groups.some((group) => group.users?.some((user) => user.name === name)); } //# sourceMappingURL=runAsManifest.mjs.map