
OpenAI Agents Python SDK
github.com/openai/openai-agents-python- Category
- AI Agents
- Rank
- No. 73Tools index
- Pricing
- Open Source
- Type
- TOOL
- Builder
- openai
- GitHub
- 29.3k stars
- Latest release
- v0.22.1
- Date
About
A lightweight framework for building multi-agent workflows in Python. Supports agent handoffs, tools, guardrails, human-in-the-loop interactions, and works with 100+ LLMs beyond just OpenAI.
What it does
A Python library for running configurable language-model workers across text, sandbox, realtime, and voice workloads. It can delegate tasks between workers, expose local or hosted capabilities, retain conversation history, pause for approvals, validate boundaries, and record execution traces.
Why it's ranked here
The SDK combines unusually broad orchestration coverage with a typed, compact starting interface. It addresses ordinary text runs, long-lived workspace tasks, streaming audio, model portability, and operational tracing in one package. The trade is breadth: production adoption means choosing among many execution modes, providers, session backends, and optional integrations.
What's good
The public surface covers synchronous and asynchronous execution, streamed results, structured outputs, retries, approvals, guardrails, and tool errors. Handoffs can filter conversation input while preserving session history. Built-in tracing exposes agent, model, tool, guardrail, speech, and handoff activity. The project also enforces formatting, two strict type checkers, parallel tests, integration profiles, and a coverage threshold.
Tradeoffs
Python 3.10 is the minimum, and several capabilities require optional dependency groups. Local sandbox execution supports macOS and Linux, while Windows needs Docker or a hosted client. The large public surface and many backend choices raise configuration and testing demands. Server-managed conversations also disable some handoff history controls.
How to use it well
Use it when a Python team needs one orchestration layer for tool-using assistants, specialist delegation, approval gates, persistent sessions, or voice experiences. Start with text execution, then add tracing and guardrails before introducing handoffs or sandboxes. Install only the extras each deployment needs. It does not cover JavaScript or TypeScript development, which has a separate SDK.
Technical notes+
pyproject.toml defines the openai-agents Hatchling package, Python >=3.10, strict typing metadata, core dependencies, and extras for voice, Redis, SQLAlchemy, Docker, hosted sandboxes, and other backends. src/agents/__init__.py re-exports the main Agent, Runner, model, tool, retry, session, guardrail, and tracing APIs, while lazily resolving SQLiteSession. src/agents/mcp/__init__.py lazily imports MCP server transports, and src/agents/mcp/server.py implements stdio, SSE, and streamable HTTP integration with timeout validation and credential-safe transport error handling. src/agents/handoffs/__init__.py models delegation as a typed tool call with strict JSON schema, optional input filtering, dynamic enablement, and history nesting controls. src/agents/realtime/__init__.py, src/agents/voice/__init__.py, and src/agents/sandbox/__init__.py expose distinct realtime, speech pipeline, and workspace execution surfaces. The Makefile runs Ruff, mypy, Pyright, parallel and serial pytest suites, multiple integration profiles, and coverage with an 85 percent minimum.
Observed
- License
- MIT
- Primary language
- Python
- Runtime requirement
- Python 3.10 or newer
- Packaging
- PyPI package named openai-agents, built with Hatchling
- Interface
- Typed Python library with synchronous, asynchronous, and streaming execution surfaces
- Platform support
- Package metadata is OS independent; local Unix sandbox support is documented for macOS and Linux, with Docker or hosted clients for Windows
- Protocol integration
- MCP client support includes stdio, SSE, and streamable HTTP transports
- Quality structure
- Ruff, mypy, Pyright, pytest, integration profiles, and coverage enforcement are configured
Read from README.md, Makefile, pyproject.toml, src/agents/__init__.py, src/agents/mcp/server.py, src/agents/mcp/__init__.py, src/agents/voice/__init__.py, src/agents/memory/__init__.py, src/agents/models/__init__.py, src/agents/sandbox/__init__.py, src/agents/tracing/__init__.py, src/agents/handoffs/__init__.py, src/agents/realtime/__init__.py, src/agents/extensions/__init__.py.
What it can do
Create multi-agent workflows
Agent definitions and workflow configuration → Coordinated multi-agent system
Enable agent handoffs
Agent conversation state and handoff triggers → Transferred conversation to target agent
Execute agent tools
Tool definitions and parameters → Tool execution results
Apply guardrails to agent behavior
Guardrail rules and agent responses → Validated and filtered agent outputs
Enable human-in-the-loop interactions
Agent state and human intervention points → Human-reviewed or modified agent decisions
Trace agent workflow execution
Agent workflow run data → Execution trace and debugging information
Build realtime voice agents
Voice input and agent configuration → Real-time voice responses
Tags
Tech Stack
Comments (0)
No comments yet
Editorially curated, with community endorsements as a secondary signal. Corrections welcome.