Commit Graph

207 Commits

Author SHA1 Message Date
Kazuhiro Sera 8221e424db feat(realtime): track response usage in session context (#3812) 2026-07-13 07:42:49 +09:00
Kazuhiro Sera 5a9d221f0e docs: stabilize two examples 2026-07-11 10:18:18 +09:00
Kazuhiro Sera e1f7c12515 fix: make conditional tools and web search examples deterministic 2026-07-11 09:38:53 +09:00
Kazuhiro Sera 0354f482a8 feat: add hosted multi-agent beta support (#3788) 2026-07-10 17:46:43 +09:00
Kazuhiro Sera 28026bcd01 docs: stabilize tool guardrail and web search examples 2026-07-10 08:24:36 +09:00
Kazuhiro Sera 133208381c feat: add GPT-5.6 model defaults and migrate examples (#3774) 2026-07-10 07:58:22 +09:00
Kazuhiro Sera 909c5c434a feat: update default realtime model to gpt-realtime-2.1 (#3740) 2026-07-07 09:23:20 +09:00
Kazuhiro Sera 4a7dc08d31 docs: make hosted_mcp/on_approval.py stabler 2026-07-07 08:50:54 +09:00
Kazuhiro Sera a898061dfa docs: make markdown style consistent across the project 2026-07-04 09:04:30 +09:00
Kazuhiro Sera 92137d222b docs: improve hosted MCP tool example 2026-06-24 14:39:32 +09:00
Kazuhiro Sera f706d65124 chore: adjust examples-auto-run skill 2026-06-24 07:27:57 +09:00
Alex Bevilacqua 9411cee8e2 docs: add MongoDB session example under examples/memory (#3036) 2026-05-28 09:37:00 +00:00
Kazuhiro Sera 921135630b fix: #3512 type tool-end hook results as object (#3518) 2026-05-28 17:57:33 +09:00
Shaurya Singh 65774ce88d docs: fix duplicated word in usaspending glossary example (#3445) 2026-05-18 17:05:16 +09:00
Kazuhiro Sera 4c3de2df65 docs: update MCP examples (#3342) 2026-05-11 11:34:56 +09:00
Kazuhiro Sera a6a4cc5143 feat: improve examples auto-run coverage and artifact handling (#3328) 2026-05-10 14:25:47 +09:00
Kazuhiro Sera 73bc963398 chore: improve automated example coverage and local service handling (#3297) 2026-05-09 16:17:49 +09:00
Kazuhiro Sera 0a76dd03ce docs: improve auto run for examples 2026-05-08 16:56:37 +09:00
Kazuhiro Sera f47d486985 fix: #3169 constrain local sandbox artifact sources to base dir (#3177) 2026-05-08 15:25:13 +09:00
Kazuhiro Sera 1660d306b5 feat: default realtime sessions to gpt-realtime-2 (#3190) 2026-05-08 15:24:41 +09:00
Kazuhiro Sera a91f630f79 fix: skip prerequisite-bound examples in auto runs 2026-05-07 20:03:01 +09:00
Abdulrahman Alfozan c88f339d32 Update examples and defaults to GPT-5.5 (#3016) 2026-04-25 10:31:54 +09:00
mcgrew-oai c2cb031461 chore: harden uv dependency resolution (#3014) 2026-04-24 08:03:31 +09:00
Abdulrahman Alfozan 734d42490a docs: clarify lazy skill source host paths (#2998) 2026-04-22 10:26:28 +09:00
qiyaoq-oai 377204714d feat: support sandbox extra path grants (#2920)
- Add SandboxPathGrant manifest support for explicit access to absolute
paths outside sandbox workspace.
- Centralize path handling in WorkspacePathPolicy.normalize_path(...),
including extra grant matching, symlink-aware host validation, and
most-specific grant selection.
- Harden access boundaries by rejecting filesystem-root grants, // root
aliases, and grants that resolve to /.
- Preserve nested grant semantics, including writable parent + read-only
child cases through remote symlink targets and macOS exec confinement.
- Update sandbox provider integrations to use shared path policy across
Docker, Unix-local, Runloop, Vercel, Cloudflare, E2B, Modal, Daytona,
and Blaxel.
2026-04-17 15:26:51 -07:00
Jason Steving 3ad12bc273 chore: Bump temporalio Dep in Temporal Example (#2918)
Version 1.26.0 of `temporalio` comes with sandbox agent support out of
the box. No more need for the temporary vendoring to backport the
functionality into the prior 1.25.x version. That was a temporary
workaround to ensure the example worked on day 1 since we (Temporal) had
to wait on making our release until after this project published 0.14.0
to avoid leaking the feature early.
2026-04-16 16:43:06 -07:00
Kazuhiro Sera 901348023d fix: #2873 preserve computer driver compatibility for modifier keys (#2877) 2026-04-16 03:43:15 +09:00
Steve Coffey 2d665c9a67 Sandbox Agents (#2889)
### Sandbox Agents

This release adds **Sandbox Agents**, a beta SDK surface for running
agents with a persistent, isolated workspace. Sandbox agents keep the
normal `Agent` and `Runner` flow, but add workspace manifests,
sandbox-native capabilities, sandbox clients, snapshots, and resume
support so agents can work over real files, run commands, edit
repositories, generate artifacts, and continue work across runs.

Key pieces:

- `SandboxAgent`: an `Agent` with sandbox defaults such as
`default_manifest`, sandbox instructions, capabilities, and `run_as`.
- `Manifest`: a fresh-workspace contract for files, directories, local
files, local directories, Git repos, environment, users, groups, and
mounts.
- `SandboxRunConfig`: per-run sandbox wiring for client creation, live
session injection, serialized session resume, manifest overrides,
snapshots, and materialization concurrency limits.
- Built-in capabilities for shell access, filesystem editing and image
inspection, skills, memory, and compaction.
- Workspace snapshots and serialized sandbox session state for
reconnecting to existing work or seeding a fresh sandbox from saved
contents.

### Sandbox clients and hosted providers

Sandbox agents now support local, containerized, and hosted execution
backends:

- `UnixLocalSandboxClient` for fast local development.
- `DockerSandboxClient` for container isolation and image parity.
- Hosted sandbox clients for Blaxel, Cloudflare, Daytona, E2B, Modal,
Runloop, and Vercel through optional extras.

The release also adds provider-specific examples and mount strategies
for common storage backends, including S3, Cloudflare R2, Google Cloud
Storage, Azure Blob Storage, and S3 Files where supported by the
selected backend.

### Sandbox memory

Adds a sandbox memory capability that lets future sandbox-agent runs
learn from prior runs. Memory stores extracted lessons in the sandbox
workspace, injects a concise summary into later runs, and uses
progressive disclosure so agents can search deeper rollout summaries
only when useful.

Memory supports:

- Read-only or generate-only modes.
- Live updates when the agent discovers stale memory.
- Multi-turn grouping through `conversation_id`, SDK `Session`,
`RunConfig.group_id`, or generated run IDs.
- Separate memory layouts for isolating memory across agents or
workflows.
- S3-backed examples for persisted memory across runs.

### Workspace mounts, snapshots, and resume

This release adds a full workspace entry and mount model for sandbox
sessions:

- Local files and directories.
- Synthetic files and directories.
- Git repository entries.
- Remote storage mounts for S3, R2, GCS, Azure Blob Storage, and S3
Files.
- Provider-specific mount strategies across Docker, Modal, Cloudflare,
Blaxel, Daytona, E2B, and Runloop.
- Portable snapshots with path normalization, symlink preservation,
mount-safe snapshotting, and remote snapshot support.
- Resume paths through runner-managed `RunState`, explicit
`SandboxSessionState`, or saved snapshots.

### Examples and tutorials

Adds a large `examples/sandbox/` suite covering:

- Local Unix and Docker sandbox runners.
- Docker mount smoke tests for S3, GCS, Azure Blob Storage, and S3
Files.
- Sandbox coding tasks with skills.
- Sandbox agents as tools and handoff patterns.
- Memory examples, including multi-agent/multi-turn memory and S3-backed
memory.
- Tax-prep and healthcare-support workflows.
- Dataroom QA and metric extraction tutorials.
- Repository code review tutorial.
- Vision website clone tutorial.
- Provider examples for Blaxel, Cloudflare, Daytona, E2B, Modal,
Runloop, Temporal, and Vercel.

### Runtime, tracing, and model plumbing

The release includes the runtime plumbing needed to make sandbox agents
work naturally inside the existing SDK:

- Runner-managed sandbox preparation, capability binding, session
lifecycle, state serialization, and resume behavior.
- Sandbox-aware `RunState` serialization.
- Unified sandbox tracing with SDK spans.
- Token usage on tracing spans.
- Runner-managed prompt cache key defaults.
- OpenAI agent registration and harness ID configuration.
- Safer redaction of sensitive MCP tool outputs when sensitive tracing
is disabled.
- Additional OpenAI client/model utilities and Chat Completions
coverage.


## Documentation & Other Changes

- docs: add Asqav to external tracing processors list.
- docs: update translated document pages.

Co-authored-by: Abdulrahman Alfozan <alfozan@openai.com>
Co-authored-by: Aditya Singh <60082699+adityasingh2400@users.noreply.github.com>
Co-authored-by: Andi Liu <andi@openai.com>
Co-authored-by: Aron <263346377+aron-cf@users.noreply.github.com>
Co-authored-by: ashwinnathan-openai <ashwinnathan@openai.com>
Co-authored-by: Codex <noreply@openai.com>
Co-authored-by: cploujoux <cploujoux@blaxel.ai>
Co-authored-by: elainegan-openai <168589666+elainegan-openai@users.noreply.github.com>
Co-authored-by: Elias Freider <freider@users.noreply.github.com>
Co-authored-by: Erik Dunteman <erik@erikds-macbook-air.local>
Co-authored-by: Jason Liu <jasonliu@openai.com>
Co-authored-by: Jason Steving <32336750+jasonsteving99@users.noreply.github.com>
Co-authored-by: Kazuhiro Sera <seratch@openai.com>
Co-authored-by: Lovre Pešut <lovre.pesut@gmail.com>
Co-authored-by: Lucas Wang <lucas_wang@lucas-futures.com>
Co-authored-by: Matt Brockman <matt.brockman@e2b.dev>
Co-authored-by: Mish Ushakov <mishushakov@users.noreply.github.com>
Co-authored-by: Naresh <ghostwriternr@gmail.com>
Co-authored-by: nicholasclark-openai <nicholasclark@openai.com>
Co-authored-by: qiyaoq-oai <qiyaoq@openai.com>
Co-authored-by: Scott Trinh <scott@scotttrinh.com>
Co-authored-by: tode-rl <tony@runloop.ai>
Co-authored-by: Wendy Jiao <wendyjiao@openai.com>
2026-04-15 10:00:40 -07:00
Kazuhiro Sera 881f402aa2 fix: harden example auto-runs against PATH and port conflicts (#2770) 2026-03-25 16:31:44 +09:00
Kazuhiro Sera 1c0ff599c8 feat: add any-llm model support with responses-compatible routing (#2706) 2026-03-25 11:38:43 +09:00
Kazuhiro Sera 0cc4805c00 fix: #2760 wait for realtime response.done before follow-up response.create (#2763) 2026-03-25 07:59:29 +09:00
Kazuhiro Sera f0df572428 fix: default realtime websocket model to gpt-realtime-1.5 (#2737) 2026-03-20 16:15:47 +09:00
teri-oai 230a9d6759 Highlight gpt-realtime-1.5 in public docs (#2724)
**Default guidance in public documentation**
https://openai.github.io/openai-agents-python/

**Before**
The public Agents SDK docs still mostly pointed realtime users at
gpt-realtime, so new users were landing on stale guidance instead of the
recommended gpt-realtime-1.5 path. This showed up in the top-level docs
entry points and the English realtime quickstart/guide.

**After**
The public documentation now points new realtime users to
gpt-realtime-1.5 in the top-level discovery pages and the English
realtime quickstart/guide. The SDK’s implicit runtime default was
intentionally left unchanged, so this updates guidance without changing
behavior for existing integrations that omit model_name.
2026-03-19 15:17:40 -07:00
Kazuhiro Sera 1959dd3ba9 feat: #2658 preserve explicit approval rejection messages across resume flows (#2660) 2026-03-13 14:23:32 +09:00
Kazuhiro Sera 3a5267340a feat: add opt-in model retry policies (#2651) 2026-03-12 12:32:54 +09:00
Kazuhiro Sera 1f55c42c35 fix: show the GA computer alias in tracing (#2641) 2026-03-09 15:22:25 +09:00
Kazuhiro Sera 4f40c01e35 fix: #2624 migrate ComputerTool to the GA computer tool (#2626) 2026-03-08 08:33:05 +09:00
Lovish Arora 9a1aa7d325 fix(memory): #2618 make SQLiteSession satisfy Session protocol (#2619)
Co-authored-by: Kazuhiro Sera <seratch@openai.com>
2026-03-07 13:25:33 +09:00
Kazuhiro Sera 8d1094d21b docs: refresh docs and examples to gpt-5.4 (#2615) 2026-03-07 01:45:49 +09:00
Wen-Tien Chang a70a002314 Add local shell skill example (#2612) 2026-03-07 00:48:19 +09:00
Kazuhiro Sera 9ac31ab49f feat: add Responses API tool search support (#2610) 2026-03-06 19:23:38 +09:00
Kazuhiro Sera 9b1f6eddc8 docs: improve examples for auto runs 2026-03-06 17:59:35 +09:00
Kazuhiro Sera 6e05fec62c docs: update a few examples 2026-03-06 17:14:32 +09:00
Kazuhiro Sera c4a2fcb750 feat: add Responses websocket model and stream_ws example (#2530) 2026-02-24 07:08:06 +09:00
Kazuhiro Sera b6b291f684 chore: drop Python 3.9 support across metadata, CI, and docs (#2474) 2026-02-13 11:39:12 -08:00
Kazuhiro Sera 0793a8ce91 feat: add container shell + skills support (#2469) 2026-02-11 09:56:03 -08:00
Kazuhiro Sera f923b13707 feat: add run-context thread reuse for codex_tool (#2425) 2026-02-07 07:02:31 +09:00
Kazuhiro Sera f03b4c86c8 docs: tweak a few examples for stable runs 2026-02-05 09:47:25 +09:00
Kazuhiro Sera 01f9c3775e docs: update a few outdated MCP examples 2026-02-04 21:08:22 +09:00
Kazuhiro Sera d6c4390134 feat: add tool_error_formatter for customizing error tool output (#2400) 2026-02-03 21:06:37 +09:00