Code sandboxes are becoming the hidden runtime of AI agents
Agents increasingly use Python, shells, containers and disposable workspaces to inspect files and produce artifacts. The model writes the command; the execution system decides what that command can reach and damage.
What is happening?
Giving an AI agent a shell is like giving it a small computer. It can calculate, search files, run tests, transform data and build useful outputs. It can also delete files, install unsafe packages, expose secrets or consume unlimited resources when the surrounding system permits those actions. The important control is therefore not a sentence telling the model to be careful. It is a disposable execution environment with a narrow identity, limited files, no network by default, pinned software, strict resource limits and independent checks on every artifact that leaves the sandbox.
Why this trend is moving
- 01AI agents now routinely run commands, inspect repositories, process files and generate executable artifacts rather than returning text alone.
- 02Hosted shell and code-execution tools are becoming standard components of major model and agent platforms.
- 03Persistent workspaces and programmatic tool calling allow agents to complete longer tasks inside execution environments.
- 04Terminal and coding benchmarks show that environment configuration can materially change measured agent performance.
- 05MicroVMs, hardened containers, gVisor and WebAssembly provide several isolation tiers for untrusted generated code.
- 06Supply-chain attacks, mutable packages, secret exposure and network exfiltration make dependency and egress control part of the agent design.
- 07Organizations need verifiable artifacts, not only model claims that a command ran successfully.
What this means in practice
- The model and the execution runtime should be treated as separate systems with separate security and reliability controls.
- Every generated command, uploaded file, downloaded package and tool result should be treated as untrusted input.
- A standard container may be sufficient for bounded internal work but is not automatically the right boundary for hostile multi-tenant code.
- Internet access should be disabled by default and restored only through destination-specific policy and short-lived credentials.
- Package installation needs the same provenance, pinning and review controls as production software.
- CPU, memory, process, disk, output and fleet-concurrency limits must be enforced independently.
- A task counts as complete only when an independent verifier accepts the exact output artifact or external state.
What the headline leaves out
This is the practical technical view: how the system is put together, where it can fail, and what a real deployment asks from the team running it.
How it is built
A production execution service starts with a task contract describing the required artifact, allowed languages, files, destinations and side effects. A policy engine selects a process sandbox, hardened container, user-space kernel, microVM or WebAssembly runtime according to the code source and escape consequence. The environment starts from a minimal immutable image whose digest, dependencies and provenance are known. Only task-scoped inputs are mounted, with the base filesystem read-only and scratch storage quota-limited. Network access is denied unless an allowlisting proxy grants a specific destination and temporary credential. Commands run as a non-root task identity under syscall, capability and resource restrictions. The platform records commands, environment, logs, files and resource use. Independent tests, scanners and postcondition checks validate the exact artifact digest before export. Teardown revokes credentials and destroys or verifiably resets the workspace.
How inference behaves
Code-enabled agents operate in a loop: the model proposes Python, shell or file operations; the runtime executes them; structured results return to the model; and the model decides the next step. Hosted interpreters provide a fixed library set, while shell environments can run multiple languages, package managers and build tools. Containers package files and processes but commonly share the host kernel. gVisor adds a user-space kernel layer, while Firecracker and Kata use virtual-machine boundaries. WebAssembly runtimes expose a narrower capability model for compatible code. Images, mounts, network policy, identities, cgroups, seccomp, proxies, scanners and artifact stores form the actual control plane.
What the tests can miss
A credible evaluation verifies both task success and containment. It tests filesystem escape, network egress, credential exposure, resource exhaustion, dependency reproducibility, workspace reset, artifact integrity, sandbox escape resistance, side-channel assumptions, cold-start latency, execution efficiency and evidence completeness. The harness must pin images, packages, resource limits and test versions because infrastructure changes can move coding-agent scores. Adversarial cases should include malicious repositories, unsafe archives, symlinks, install hooks, fork bombs, oversized output, metadata-service requests, prompt injection inside files and generated artifacts containing secrets or active content.
What deployment involves
Start with a fixed hosted interpreter for calculation and data transformation. For broader tasks, use a minimal no-network disposable environment and one tenant per workspace. Add reviewed dependency profiles before allowing package installation. Route higher-risk or multi-tenant workloads to gVisor, microVM or equivalent isolation. Introduce network access only through an authenticated proxy and issue target-specific short-lived credentials. Scan outputs and run independent verification before export. Canary changes to the base image, sandbox runtime, kernel, package set and policy against representative and adversarial tasks. Keep deterministic functions or ordinary services for work that does not need a general shell.
Where the risks sit
Generated code can exploit application, runtime, kernel, hypervisor, package and network weaknesses. Containers reduce accidental interference but may share the host kernel. Stronger sandboxes also retain side-channel, host-patching and denial-of-service assumptions. Mounted Docker or Kubernetes sockets can turn a container into host control. Internet access creates exfiltration and dependency risks. Environment variables, shell history, logs and output files can leak secrets. Production controls require least-privilege identities, immutable images, restricted mounts, blocked metadata, default-deny egress, target-bound credentials, syscall and capability limits, quotas, malware and secret scanning, rapid patching, revocation and connected audit evidence.
What it really costs
Complete cost includes model tokens, environment allocation, cold starts, warm capacity, images, package mirrors, storage, network proxies, scanners, verification, human review, failed runs and security operations. Warm reuse lowers latency but raises residual-state and patching risk. MicroVMs can strengthen reset and kernel isolation while increasing image and startup overhead. Fixed interpreters are cheaper to govern but less flexible. The useful denominator is a verified accepted artifact completed under the correct policy, not commands executed, containers started or raw benchmark tasks attempted.
What the evidence supports
The trend is well established. OpenAI describes a Responses API shell and hosted workspace with restricted network access, and has published detailed sandbox and approval designs for Codex. Anthropic’s code-execution tool runs Bash and file operations in a sandboxed container, including persistent state and programmatic tool use in newer versions. Google’s Gemini API iteratively runs Python under fixed runtime and file limits. Firecracker, gVisor, Kata, OCI, Docker and Kubernetes provide established isolation and resource-control building blocks, while SLSA, Sigstore, SPDX and CycloneDX address software provenance and component records. Terminal-Bench, SWE-bench and coding-agent studies show that execution environments are part of measured capability. Security research also shows that containers, microVMs and shared hardware retain attack surfaces and side channels. The evidence supports code execution as core agent infrastructure, provided that the runtime—not the model—enforces the boundary.
How it works in practice
Code execution turns an AI agent from a text generator into an operator that can inspect files, transform data, run tests and create artifacts. The capability is useful because code is precise and composable. It is dangerous for the same reason. A production runtime must assume generated commands, downloaded packages, uploaded files and tool output can be hostile, then enforce filesystem, network, identity, resource, provenance and lifecycle boundaries outside the model.
How the parts work together
The headline technology is only one part of the product. Reliability, security and cost are usually decided by the handoffs around it.
- 01
Task and execution contract
Define the intended output, permitted languages, files, tools, network destinations, credentials, side effects and completion evidence before the agent receives a shell or interpreter.
- 02
Sandbox identity and isolation tier
Select a process sandbox, hardened container, user-space kernel, microVM or disposable VM according to the threat model. Assign one tenant and one bounded task identity to each execution environment.
- 03
Reproducible runtime image
Start from a pinned, minimal image with known language, system and library versions. Verify image digest, build provenance and vulnerability status before admitting it to the runtime pool.
- 04
Scoped inputs and filesystem
Mount only required inputs. Keep the base image read-only, isolate writable scratch space, block host paths and metadata services, and label every uploaded or generated artifact with origin and sensitivity.
- 05
Network and dependency control
Default to no network. When access is required, route through an allowlisted proxy with destination, method, size and credential controls. Resolve packages from approved repositories or prebuilt images rather than arbitrary runtime downloads.
- 06
Execution and resource enforcement
Run commands under a non-root identity with syscall, capability, CPU, memory, process, disk, time and output limits. Capture commands, environment, exit state, logs and changed files without relying on the agent’s summary.
- 07
Artifact and result verification
Scan outputs, compare expected postconditions, run independent tests and inspect diffs before files, code, data or messages leave the sandbox. Approval binds to the exact artifact digest and consequence.
- 08
Teardown, evidence and regression
Destroy or reset the environment, revoke temporary credentials, retain governed evidence, and replay representative and adversarial tasks after model, image, policy or sandbox changes.
Estimate the limits before the demo
These equations are planning tools rather than substitutes for testing. They help expose a design that is unlikely to fit its hardware, budget, reliability or risk limits.
Effective execution authority is an intersection
effective authority = task contract ∩ sandbox policy ∩ identity permissions ∩ filesystem scope ∩ network policy A model instruction cannot widen the technical boundary. An action is possible only when every independently enforced layer permits it.
- A shell may read the mounted repository but cannot read the user’s home directory.
- A data-analysis job may use pandas without reaching the public internet.
- A package-install request fails unless the package and repository are approved.
Resource exposure grows with concurrency and limits
maximum fleet exposure ≈ active sandboxes × per-sandbox CPU, memory, disk, process and network limits Per-container limits that look small can become dangerous at fleet scale. Capacity planning and abuse controls must account for concurrent environments, retries and abandoned tasks.
- One 4 GB sandbox is manageable; 2,000 simultaneous sandboxes reserve up to 8 TB.
- A fork bomb is contained only when process and CPU limits are independently enforced.
- Output limits prevent thousands of tasks from filling shared logs or object storage.
The useful denominator is a verified artifact
cost per accepted artifact = model + sandbox + storage + network + scanning + verification + review + failed runs ÷ verified accepted artifacts A completed command or passing self-reported test is not the business outcome. Count only outputs that satisfy independent checks and are accepted for use.
- A spreadsheet counts after formulas, totals and file integrity are verified.
- A code patch counts after independent tests and review pass.
- A cheaper sandbox is not economical when cold starts and missing packages increase retries.
Code execution is a separate system, not a model feature
An AI model can write a command, but an external runtime decides whether that command runs and what it can reach. OpenAI’s shell environment, Anthropic’s code-execution container and Google’s Python execution tool all expose this separation in different ways. The model produces code or commands; the platform executes them and returns results for another model step.
That distinction matters during incidents. A harmful command is a model-behavior problem. Allowing it to read credentials, contact an arbitrary host or overwrite a production directory is an execution-control problem. Refusal training and prompt rules may reduce bad proposals, but they cannot replace kernel, hypervisor, identity and network enforcement.
The runtime contract should be visible to both the agent and the operator: which languages exist, which directories persist, whether internet access is available, how long a process may run and what evidence will be retained.
- Keep model policy and runtime policy separate.
- Treat every generated command as untrusted input.
- Return structured execution results, not only terminal text.
- Record the exact environment that produced each artifact.
Choose the isolation layer from the threat model
A standard container shares the host kernel. Namespaces, capabilities, seccomp and cgroups can narrow access, but a kernel escape may cross the boundary. gVisor moves much of the system-call surface into a user-space application kernel. Firecracker and Kata place workloads behind a virtual-machine boundary. WebAssembly runtimes expose a smaller capability-oriented interface for compatible workloads.
Stronger isolation usually adds startup time, memory, compatibility or operational cost. A short arithmetic calculation in a fixed Python environment may not need the same boundary as an agent that runs arbitrary build scripts from an unknown repository.
The decision should consider code origin, tenant separation, secrets, network access, native extensions, kernel attack surface and consequence of escape. No sandbox eliminates side channels, host vulnerabilities or denial-of-service risk.
- Use one tenant per strong isolation boundary.
- Prefer microVMs or equivalent isolation for hostile multi-tenant code.
- Use WebAssembly where a narrow portable capability model is sufficient.
- Document what the selected runtime does not protect.
The workspace needs an explicit lifecycle
Uploaded archives, repositories, notebooks and documents can contain executable hooks, path traversal, symbolic links, oversized files or instructions intended to redirect the agent. Generated files can contain malware, secrets or hidden active content. A workspace should therefore begin empty or from a verified image and receive only task-scoped inputs.
The base filesystem should be immutable. Writable data belongs in a limited scratch volume with quotas and a known retention period. Host sockets, package-manager credentials, cloud metadata endpoints and unrelated user directories should not be mounted.
Persistent environments improve iterative work but create state confusion. The agent may assume a file, variable or installed package exists when it belongs to another environment or an earlier task. Reuse should be explicit, tenant-bound and observable, with reset and snapshot integrity controls.
- Reject unsafe archive paths and unexpected device files.
- Mount inputs read-only where possible.
- Separate durable artifacts from disposable scratch state.
- Destroy abandoned environments and revoke their credentials.
Network egress should be an exception, not a default convenience
A network-enabled shell can download dependencies, call APIs and publish results. It can also exfiltrate uploaded data, fetch malicious code, scan internal services or reach cloud metadata. OpenAI’s published Codex controls and Firecracker’s production guidance both treat network policy as an external control rather than something the guest should govern.
The safest default is no network. Approved access should pass through a proxy that authenticates the sandbox, allowlists destinations and methods, strips ambient credentials, limits transfer size and logs requests. Internal networks and metadata services remain blocked unless the task contract names them.
Secrets should arrive just in time, scoped to one target and one operation. They should not be written into prompts, shell history, environment dumps or persistent images. A sandbox that needs broad cloud credentials is a sign that the task boundary is too wide.
- Block link-local metadata addresses.
- Use target-specific short-lived credentials.
- Separate dependency retrieval from arbitrary web access.
- Scan outbound artifacts and enforce data-loss policy outside the model.
Reproducibility starts before the first agent command
Language package managers often execute build scripts and resolve mutable dependency graphs. Letting an agent install the latest package from the public internet introduces supply-chain risk and makes results difficult to reproduce. A package name in a prompt is not provenance.
Production runtimes should use pinned images, lockfiles, checksums and approved mirrors. OCI image digests identify exact images, while SLSA and in-toto provenance can describe how an artifact was built. SBOM formats such as SPDX or CycloneDX record included components but do not prove that every component is safe.
Runtime images need the same lifecycle as production software: vulnerability scanning, patch qualification, deprecation, rollback and evidence that the image used in evaluation matches the image used in deployment.
- Pin image and dependency digests.
- Disable arbitrary install hooks where practical.
- Prefer prebuilt, reviewed runtime profiles.
- Store package, image and build provenance with every accepted artifact.
Timeouts alone do not control resource abuse
Generated code can allocate memory, create processes, fill disks, emit unbounded output or loop on network requests without being intentionally malicious. A wall-clock timeout stops only one dimension of the problem.
CPU quota, memory limit, process count, file descriptors, disk bytes, inode count, output bytes and network rate should be enforced by the host. Limits need deterministic failure states so the agent can recover without repeatedly launching the same exhausted workload.
Fleet-level admission control is equally important. Thousands of individually constrained sandboxes can still exhaust hosts, queues or storage. Per-user budgets, concurrency limits, cancellation and garbage collection prevent abandoned agent loops from becoming an infrastructure incident.
- Enforce pids, memory and disk limits independently.
- Cap stdout, stderr and generated artifact size.
- Expose structured resource-exhaustion errors.
- Account for retries and concurrent sandboxes in capacity planning.
The artifact must be verified outside the generating loop
An agent may run a test it wrote itself, misread terminal output or declare success after a partial command. A spreadsheet may open but contain wrong formulas. A patch may pass a narrow test while breaking another feature. A chart may be generated from the wrong column.
Verification should use independent tests, schema checks, file parsing, malware scanning, secret scanning, reproducible reruns and human review proportional to consequence. The verifier should inspect the exact artifact digest that will leave the sandbox.
Logs and diffs are evidence, not proof by themselves. Terminal-Bench and coding-agent evaluations show that infrastructure configuration can materially affect results, so acceptance evidence must include runtime image, resource limits, dependencies and test harness versions.
- Verify authoritative outputs, not the agent’s final message.
- Separate generator and verifier where practical.
- Bind approval to artifact digest and destination.
- Retain failed runs that reveal missing controls.
Cold starts, image fleets and cleanup determine the economics
A code sandbox platform manages image building, warm pools, scheduling, file transfer, secrets, quotas, logs, artifact storage, vulnerability response and teardown. The model call may be only one part of the cost and latency.
Warm reuse reduces startup delay but increases cross-task state and patching risk. Disposable microVMs provide stronger reset semantics but require image and snapshot integrity. A fixed hosted interpreter is simple and predictable but cannot satisfy tasks that need custom binaries.
Measure accepted artifacts per dollar and per operator hour. Include cold starts, failed dependency resolution, scans, retained files, human review and infrastructure updates. A general shell is not automatically better than a narrow function or deterministic data pipeline.
- Use the narrowest execution primitive that completes the task.
- Track cold-start and queue latency separately from model latency.
- Canary image, policy and runtime upgrades.
- Retire unused environments and dependency profiles.
What a benchmark worth believing should report
A performance number means little unless the workload, system configuration and quality bar are fixed. This is the minimum record a team should keep.
| Metric | How to measure it | Why it matters |
|---|---|---|
| Task-completion validity | Verify the required external artifact or state with an independent checker. | A successful command or agent message is not the outcome. |
| Filesystem isolation | Attempt reads and writes outside allowed mounts, including symlinks, sockets and archive traversal. | Workspace escape can expose host or other-tenant data. |
| Network-policy enforcement | Test public, internal, metadata, DNS and covert egress paths under each runtime profile. | Network access can become an exfiltration or pivot channel. |
| Credential containment | Check that credentials are target-bound, short-lived, absent from logs and revoked after teardown. | A sandbox escape is worse when broad secrets are present. |
| Resource containment | Run CPU, memory, process, disk, file-descriptor and output exhaustion cases. | Untrusted code must fail without degrading the host or neighboring tasks. |
| Dependency reproducibility | Rebuild and rerun with pinned images, lockfiles and package mirrors, then compare digests and outputs. | Mutable dependencies undermine evidence and rollback. |
| Artifact integrity | Record hashes, provenance, scan status and exact verifier results for exported files. | Approval must refer to the artifact actually delivered. |
| Sandbox reset quality | Test whether files, processes, variables, caches and credentials survive beyond their permitted lifecycle. | Residual state creates cross-task and cross-tenant leakage. |
| Escape resistance | Run maintained adversarial suites against syscall, namespace, hypervisor and device boundaries. | The isolation layer is a security product that needs continuous testing. |
| Side-channel exposure | Document shared hardware and storage channels and test relevant mitigations for the threat model. | Virtualization changes but does not eliminate all leakage. |
| Cold-start and queue latency | Report p50, p95 and p99 environment acquisition, image start and first-command times. | Runtime startup can dominate short tasks. |
| Execution efficiency | Track useful CPU time, retries, failed installs, cancelled work and idle warm-pool time. | A high task count can hide infrastructure waste. |
| Evidence completeness | Reconstruct model, command, image, dependencies, policy, files, approvals and final artifact. | Incidents and reproducibility require one connected trace. |
| Complete cost per accepted artifact | Include model, compute, storage, network, scanning, verification, review, failure and operations. | Sandbox price alone does not establish value. |
Four sensible deployment patterns
Fixed hosted interpreter
- Where it fits
- Math, tabular analysis, visualization and document transformation using a controlled library set.
- What you take on
- Predictable and easy to govern, but limited language, package and system compatibility.
Hardened disposable container
- Where it fits
- Single-tenant internal tasks using reviewed images and moderate trust inputs.
- What you take on
- Fast and compatible, while still sharing the host kernel and requiring strong namespace, capability and seccomp policy.
MicroVM-isolated agent workspace
- Where it fits
- Arbitrary repositories, third-party scripts or multi-tenant execution with higher escape consequences.
- What you take on
- Stronger kernel boundary and reset semantics with higher startup, image and operational cost.
Tiered execution fabric
- Where it fits
- A platform routes calculation, WebAssembly, container and microVM workloads by risk and compatibility.
- What you take on
- Efficient use of isolation levels, but policy routing and cross-environment state become complex.
Where projects usually go wrong
The model runs with the user’s full permissions
What you see: A generated command can read home directories, SSH keys or cloud credentials.
What to do: Use a separate non-root task identity and mount only approved paths.
A standard container is assumed to be a complete security boundary
What you see: Host-kernel attack surface is ignored for hostile multi-tenant code.
What to do: Select gVisor, microVM or equivalent isolation when the threat model requires it.
Internet access is enabled by default
What you see: Code downloads unreviewed packages or sends uploaded data to arbitrary hosts.
What to do: Default-deny egress and use an authenticated allowlisting proxy.
Package installation is unconstrained
What you see: Mutable dependencies or install scripts alter behavior between runs.
What to do: Use pinned images, lockfiles, checksums and approved mirrors.
Host paths or sockets are mounted
What you see: The sandbox can control Docker, Kubernetes or other host services.
What to do: Block privileged sockets and use purpose-built task interfaces.
Only wall-clock time is limited
What you see: Fork bombs, memory pressure or disk filling affect neighboring tasks before timeout.
What to do: Enforce cgroup, process, disk, inode, descriptor and output limits.
Warm environments leak state
What you see: A later task sees files, variables, caches or credentials from an earlier user.
What to do: Use tenant-bound reuse, verified reset or disposable environments.
The agent verifies its own output
What you see: Self-written tests pass while the required business condition is wrong.
What to do: Use independent checks and bind approval to the exported artifact digest.
Logs capture secrets
What you see: Environment dumps, commands or stack traces expose credentials and private data.
What to do: Use secret injection, redaction, scoped logging and retention controls.
Sandbox snapshots are trusted without integrity controls
What you see: Tampered or stale memory and disk state is resumed.
What to do: Authenticate, encrypt, version and qualify snapshots before reuse.
Runtime upgrades are deployed without regression
What you see: A kernel, image, package or policy change breaks isolation or task behavior.
What to do: Pin versions, run adversarial and representative suites, canary and preserve rollback.
Success is measured by executions
What you see: More commands and cheaper compute hide retries, bad artifacts and operator workload.
What to do: Measure verified accepted artifacts and complete cost.
A checklist you can actually use
- Define the exact artifact or state the execution must produce.
- Classify code, files, packages and network destinations by trust and sensitivity.
- Choose the isolation tier from the escape consequence and tenant model.
- Assign a unique non-root identity to each task environment.
- Use a minimal immutable base image identified by digest.
- Verify image build provenance and vulnerability status.
- Mount only task-required inputs and prefer read-only access.
- Keep writable scratch space separate and quota-limited.
- Block host sockets, devices, home directories and metadata services.
- Default to no network and allowlist necessary destinations through a proxy.
- Issue target-specific short-lived credentials only when needed.
- Pin language and package dependencies with hashes or lockfiles.
- Use approved mirrors or prebuilt dependency profiles.
- Drop Linux capabilities and apply syscall restrictions.
- Enforce CPU, memory, process, disk, descriptor, time and output limits.
- Return structured exit, resource and filesystem-change information.
- Scan generated artifacts for malware, secrets and unsafe active content.
- Run independent tests and authoritative postcondition checks.
- Bind human approval to the exact artifact hash and destination.
- Destroy or verified-reset the environment after its retention window.
- Revoke credentials and remove temporary network permissions at teardown.
- Replay representative and adversarial tasks after runtime changes.
- Measure complete cost per verified accepted artifact.
Terms worth knowing
- Sandbox
- A constrained execution environment intended to limit what code can access or affect.
- Container
- An operating-system-level isolation and packaging mechanism that commonly shares the host kernel.
- MicroVM
- A lightweight virtual machine designed to provide a hardware-virtualization boundary with lower overhead than a general-purpose VM.
- User-space kernel
- A runtime component that implements much of the guest system-call interface outside the host kernel, as in gVisor.
- Seccomp
- A Linux mechanism that restricts the system calls a process may make.
- Capability
- A discrete Linux privilege that can be granted or removed independently of full root authority.
- cgroup
- A Linux control group used to account for and limit CPU, memory, process and other resources.
- Egress policy
- Rules controlling which network destinations and protocols a workload may contact.
- Immutable image
- A versioned runtime filesystem that is not modified during task execution.
- Artifact digest
- A cryptographic hash identifying the exact file or image being evaluated or delivered.
- Build provenance
- Verifiable information describing where, when and how a software artifact was produced.
- SBOM
- A software bill of materials listing components included in an image or application.
- Cold start
- The time required to allocate and initialize a fresh execution environment before useful work begins.
- Warm reuse
- Reusing an existing environment to reduce startup time while accepting additional state-management risk.
- Postcondition
- An authoritative condition that must be true after execution for the task to count as successful.
Primary references and technical starting points
These sources support the architecture, runtime, benchmark and security claims. Vendor capabilities can change, so the article records the distinction between established evidence, measured product behavior and editorial interpretation.
- 01 OpenAI: Equipping Responses API with a computer environmentopenai.com
- 02 OpenAI: The next evolution of the Agents SDKopenai.com
- 03 OpenAI: Running Codex safelyopenai.com
- 04 OpenAI: Building the Codex Windows sandboxopenai.com
- 05 OpenAI: Introducing Codexopenai.com
- 06 OpenAI: New tools and features in the Responses APIopenai.com
- 07 OpenAI API: Model guidance and programmatic tool callingdevelopers.openai.com
- 08 OpenAI: File uploads FAQhelp.openai.com
- 09 Anthropic: Code execution toolplatform.claude.com
- 10 Anthropic: Tool use overviewplatform.claude.com
- 11 Anthropic: Files APIplatform.claude.com
- 12 Anthropic: Data retentionprivacy.anthropic.com
- 13 Anthropic: Infrastructure noise in agentic coding evalsanthropic.com
- 14 Google Gemini API: Code executionai.google.dev
- 15 Google Gemini API: Interactions APIai.google.dev
- 16 Google Gemini API: Filesai.google.dev
- 17 Google Gemini API: Pricingai.google.dev
- 18 Firecracker repository and overviewgithub.com
- 19 Firecracker design and threat containmentgithub.com
- 20 Firecracker production host setupgithub.com
- 21 Firecracker seccomp guidancegithub.com
- 22 Firecracker jailergithub.com
- 23 Firecracker snapshot securitygithub.com
- 24 Firecracker releasesgithub.com
- 25 firecracker-containerdgithub.com
- 26 gVisor security modelgvisor.dev
- 27 gVisor security introductiongvisor.dev
- 28 gVisor container security platformgvisor.dev
- 29 gVisor networking guidegvisor.dev
- 30 gVisor filesystem guidegvisor.dev
- 31 Kata Containers documentationkatacontainers.io
- 32 Kata Containers architecturegithub.com
- 33 OCI Runtime Specificationspecs.opencontainers.org
- 34 OCI Image Specificationspecs.opencontainers.org
- 35 Open Container Initiative overviewopencontainers.org
- 36 OCI Runtime Spec v1.3opencontainers.org
- 37 NIST SP 800-190: Application Container Security Guidenist.gov
- 38 NIST SP 800-218: Secure Software Development Frameworkcsrc.nist.gov
- 39 NIST AI Risk Management Frameworknist.gov
- 40 Docker: Seccomp security profilesdocs.docker.com
- 41 Docker: Rootless modedocs.docker.com
- 42 Docker: Runtime resource constraintsdocs.docker.com
- 43 Docker: Container networkingdocs.docker.com
- 44 Docker: Volumesdocs.docker.com
- 45 Kubernetes: Security contextkubernetes.io
- 46 Kubernetes: Resource managementkubernetes.io
- 47 Kubernetes: Network policieskubernetes.io
- 48 Kubernetes: RuntimeClasskubernetes.io
- 49 Kubernetes: Pod Security Standardskubernetes.io
- 50 SLSA provenance specificationslsa.dev
- 51 SLSA build provenanceslsa.dev
- 52 Sigstore Cosigndocs.sigstore.dev
- 53 in-toto frameworkin-toto.io
- 54 SPDX specificationspdx.dev
- 55 CycloneDX specificationcyclonedx.org
- 56 The Update Frameworktheupdateframework.io
- 57 WebAssembly System Interfacewasi.dev
- 58 Wasmtime securitydocs.wasmtime.dev
- 59 WebAssembly security modelwebassembly.org
- 60 Wasm component modelcomponent-model.bytecodealliance.org
- 61 Terminal-Bench repositorygithub.com
- 62 Terminal-Bench announcementtbench.ai
- 63 Terminal-Bench Challengestbench.ai
- 64 Terminal-Bench 2.0 paperarxiv.org
- 65 SWE-benchswebench.com
- 66 SWE-agentgithub.com
- 67 Blending Containers and Virtual Machinesdoi.org
- 68 Attacks are Forwardedusenix.org
- 69 Sandlockarxiv.org
- 70 Dynamic Frequency-Based Fingerprinting Attacksarxiv.org
- 71 Isolation Failure From Shared Storagearxiv.org
- 72 A Flexible Containment Mechanism for Executing Untrusted Codeusenix.org
- 73 OWASP: Prompt Injectiongenai.owasp.org
- 74 OWASP: Insecure Output Handlinggenai.owasp.org