From model to agent: Equipping the Responses API with a computer environment

OpenAI built a secure, scalable agent runtime using the Responses API, shell tool, and hosted containers—enabling file operations, tool execution, and state persistence for LLM agents.
Architecture: Responses API as the agent control plane
OpenAI uses the Responses API (not Chat Completions API) as the core orchestration interface for agents, enabling structured generation of tool_calls, state_transitions, and file I/O instructions—not just free-form text. The API natively supports JSON Schema output constraints and multi-step execution flow orchestration.
Core runtime components
- Shell tool: A standardized tool definition that lets agents execute bash commands (e.g.,
curl,jq,python -c) inside isolated sandboxes, with automatic capture of stdout/stderr and exit codes; - Hosted containers: Lightweight Linux containers (not Docker-in-Docker), fully managed by OpenAI; each agent session receives a dedicated, short-lived container instance with an ephemeral filesystem and resource limits (default: 2GB RAM / 1 vCPU);
- State management: Cross-step key-value storage via the
session_statefield in the Responses API (max 1MB), supporting serialized Python dicts or JSON—no external database required.
Security and scalability design
- All containers disable network access by default (opt-in only via
allow_network: true) and prohibit privileged mode, device mounting, or root privileges; - File uploads/downloads undergo SHA-256 verification and size limits (≤ 50MB per file); all temporary files are auto-cleaned upon session termination;
- Horizontal scaling is achieved via container pooling + request queuing, supporting >10K concurrent agent sessions with P99 latency < 3.2s (including cold start).