Skip to content

merge from origin #3

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 237 commits into
base: v0.0.16-tool-call
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
237 commits
Select commit Hold shift + click to select a range
1364f44
fix Gemini token validation issue with LiteLLM (#735)
handrew May 21, 2025
db462e3
Fix visualization recursion with cycle detection (#737)
rm-openai May 23, 2025
a96108e
Update MCP and tool docs (#736)
rm-openai May 23, 2025
6e078bf
Fix Gemini API content filter handling (#746)
rm-openai May 23, 2025
d46e2ec
Add Portkey AI as a tracing provider (#785)
siddharthsambharia-portkey May 29, 2025
7196862
Added RunErrorDetails object for MaxTurnsExceeded exception (#743)
DanieleMorotti May 29, 2025
47fa8e8
Fixed Python syntax (#665)
sarmadgulzar May 29, 2025
b699d9a
Small fix for litellm model (#789)
robtinn May 30, 2025
16fb29c
Fix typo in assertion message for handoff function (#780)
Rehan-Ul-Haq May 30, 2025
0a28d71
Fix typo: Replace 'two' with 'three' in /docs/mcp.md (#757)
luochang212 May 30, 2025
ad80f78
Update input_guardrails.py (#774)
venkatnaveen7 May 30, 2025
6438350
docs: fix typo in docstring for is_strict_json_schema method (#775)
Rehan-Ul-Haq May 30, 2025
cfe9099
Add comment to handoff_occured misspelling (#792)
rm-openai May 30, 2025
3e7b286
Fix #777 by handling MCPCall events in RunImpl (#799)
seratch Jun 2, 2025
775d3e2
Ensure item.model_dump only contains JSON serializable types (#801)
westhood Jun 2, 2025
d4c7a23
Don't cache agent tools during a run (#803)
rm-openai Jun 2, 2025
995af4d
Only start tracing worker thread on first span/trace (#804)
rm-openai Jun 2, 2025
4046fcb
Add is_enabled to FunctionTool (#808)
rm-openai Jun 3, 2025
204bec1
v0.0.17 (#809)
rm-openai Jun 4, 2025
4a529e6
Add REPL run_demo_loop helper (#811)
rm-openai Jun 4, 2025
05db7a6
Crosslink to js/ts (#815)
rm-openai Jun 4, 2025
5c7c678
Add release documentation (#814)
rm-openai Jun 4, 2025
c98e234
Fix handoff transfer message JSON (#818)
jhills20 Jun 9, 2025
dcb88e6
docs: custom output extraction (#817)
jleguina Jun 9, 2025
8dfd6ff
Added support for passing tool_call_id via the RunContextWrapper (#766)
niv-hertz Jun 9, 2025
0eee6b8
Allow arbitrary kwargs in model (#842)
rm-openai Jun 10, 2025
6d2806f
Fix function_schema name override bug (#872)
rm-openai Jun 16, 2025
281a7b2
adopted float instead of timedelta for timeout parameters (#874)
DanieleMorotti Jun 16, 2025
2b9b8f7
Prompts support (#876)
rm-openai Jun 16, 2025
901d2ac
v0.0.18 (#878)
rm-openai Jun 16, 2025
0cf503e
Allow replacing AgentRunner and TraceProvider (#720)
pakrym-oai Jun 18, 2025
91c62c1
Prepare 0.0.19 release (#895)
pakrym-oai Jun 18, 2025
c1466c6
Add is_enabled to handoffs (#925)
rm-openai Jun 24, 2025
0f21c8a
Removed lines to avoid duplicate output in REPL utility (#928)
DanieleMorotti Jun 24, 2025
d88bf14
Bugfix | Fixed a bug when calling reasoning models with `store=False`…
niv-hertz Jun 24, 2025
3e5f3c0
Point CLAUDE.md to AGENTS.md (#930)
rm-openai Jun 24, 2025
421693a
Fix #890 by adjusting the guardrail document page (#903)
seratch Jun 24, 2025
7665dd1
Add exempt-issue-labels to the issue triage GH Action job (#936)
seratch Jun 25, 2025
c2005f8
Remove duplicate entry from `__init__.py` (#897)
Lightblues Jun 25, 2025
94f8035
Fix #604 Chat Completion model raises runtime error when response.cho…
seratch Jun 25, 2025
653abc5
Fix #892 by adding proper tool description in context.md (#937)
Abbas-Asad Jun 25, 2025
c1cb7ce
Duplicate Classifier in pyproject.toml (#951)
DanielHashmi Jun 27, 2025
a6580a5
fix: add ensure_ascii=False to json.dumps for correct Unicode output …
KatHaruto Jun 27, 2025
271a1a4
Add uv as an alternative Python environment setup option for issue #8…
Sucran Jun 27, 2025
816b770
Fix and Document `parallel_tool_calls` Attribute in ModelSettings (#763)
Rehan-Ul-Haq Jun 27, 2025
0475450
replace .py file with .ipynb for Jupyter example (#262)
ccmien Jun 27, 2025
4450339
feat: add MCP tool filtering support (#861)
devtalker Jun 27, 2025
25db658
Tweak in pyproject.toml (#952)
seratch Jun 27, 2025
c772205
Fix incorrect argument description in `on_trace_end` docstring (#958)
shirazkk Jun 27, 2025
381e90d
Fix #944 by updating the models document page to cover extra_args (#950)
seratch Jun 27, 2025
017ad69
Annotating the openai.Omit type so that ModelSettings can be serializ…
tconley1428 Jun 27, 2025
27912d4
Import Path Inconsistency (#960)
DanielHashmi Jun 27, 2025
fcafae1
Add reasoning content - fix on #494 (#871)
axion66 Jun 27, 2025
8664271
Add safety check handling for ComputerTool (#923)
rm-openai Jun 27, 2025
18cb55e
v0.1.0 (#963)
rm-openai Jun 27, 2025
586d4b2
docs: mention 'name' is required in Agent constructor . fix: mention …
maneeshanif Jul 8, 2025
f09874c
Fix agent lifecycle example output to reflect correct hook execution …
DanielHashmi Jul 8, 2025
d1d2ecc
Support mcp prompts (#1010)
thoo Jul 8, 2025
e5ba91b
Add on_start support to VoiceWorkflowBase and VoicePipeline (#922)
vrtnis Jul 8, 2025
6358cd9
Add Makefile check rule to run all the linters and checkers (#1038)
ant31 Jul 8, 2025
1720e4a
Support for file_input content (#fix 893) (#1009)
ant31 Jul 8, 2025
e251fa6
description_override is not properly used for function_schema.descrip…
HafizFasih Jul 8, 2025
c92fe77
avoid concat tool call delta id (#990)
DeoLeung Jul 8, 2025
db85a6d
Fix #976 MCP filtering, make agent and run ctx optional (#977)
njbrake Jul 8, 2025
6b94ad0
Add Sessions for Automatic Conversation History Management (#752)
knowsuchagency Jul 10, 2025
a9757de
Updated llm_as_a_judge.py (#1055)
zaidrj Jul 11, 2025
e5d3ad7
[1/n] Break Agent into AgentBase+Agent (#1068)
rm-openai Jul 11, 2025
9222bee
[2/n] Introduce RealtimeAgent (#1069)
rm-openai Jul 11, 2025
78675ff
[3/n] Config and items for realtime (#1070)
rm-openai Jul 11, 2025
9d32577
[4/n] Transport interface + events (#1071)
rm-openai Jul 11, 2025
8b7d862
[5/n] OpenAI realtime transport impl (#1072)
rm-openai Jul 11, 2025
3e0122c
[6/n] RealtimeSession + events (#1073)
rm-openai Jul 11, 2025
38c5235
[7/n] Demo for realtime (#1074)
rm-openai Jul 11, 2025
c078c69
Fix typo in Evaluator Instructions (capitalization of "After 5 attemp…
mshsheikh Jul 11, 2025
3a64c6f
[8/n] Make realtime more like the rest of agents sdk (#1076)
rm-openai Jul 12, 2025
c0974d7
Tests for realtime runner (#1079)
rm-openai Jul 12, 2025
7a00edd
Tests for realtime session (#1080)
rm-openai Jul 12, 2025
aab7bdd
Add tests for openai realtime model (#1081)
rm-openai Jul 12, 2025
eafd8df
Fix #968 by upgrading openai package to the latest (#1034)
seratch Jul 12, 2025
a4499d4
Realtime guardrail support (#1082)
rm-openai Jul 12, 2025
741da67
Realtime tracing (#1084)
rm-openai Jul 12, 2025
befe19d
enhancement: Add tool_name to ToolContext to support shared tool hand…
vrtnis Jul 14, 2025
e651a29
Fix incorrect comment order when popping session items (#1086)
MuhammadHassaanArain Jul 14, 2025
bbcf039
Back out "enhancement: Add tool_name to ToolContext to support shared…
rm-openai Jul 14, 2025
3d66226
Realtime: run guardrails without blockign event loop (#1104)
rm-openai Jul 14, 2025
bd988dc
Run make format (#1106)
rm-openai Jul 14, 2025
af4cef3
Realtime: forward exceptions from transport layer (#1107)
rm-openai Jul 14, 2025
b620166
Realtime: update model to have a single send_event method (#1111)
rm-openai Jul 14, 2025
5888cf2
Realtime: send session.update event at connection/handoffs (#1112)
rm-openai Jul 14, 2025
1f2dc81
add numpy dev dependency (#1117)
jhills20 Jul 15, 2025
14154b7
feat(function_schema): Add support for pydantic `Field` annotations i…
georg-wolflein Jul 15, 2025
38108ea
Fix typos and update async for loop variable (#1122)
sarmadalikhanofficial Jul 15, 2025
d6ef221
Realtime: export everything (#1118)
rm-openai Jul 15, 2025
2da6194
Update examples docs with realtime section (#1113)
jhills20 Jul 15, 2025
72d0d75
Retry: Add tool_name to ToolContext for generic tool handlers (#1110)
vrtnis Jul 15, 2025
329a1bf
update-input-guardrail-name (#1053)
Quratulain-bilal Jul 15, 2025
2908eb7
Realtime: fix item parsing (#1119)
rm-openai Jul 15, 2025
8fdbe09
v0.2.0 (#1120)
rm-openai Jul 15, 2025
c7d50cb
Realtime: use SDK types for all messages (#1134)
rm-openai Jul 15, 2025
6293d66
Realtime: introduce a demo without a UI (#1135)
rm-openai Jul 15, 2025
479c171
Realtime: handoffs (#1139)
rm-openai Jul 16, 2025
dff0548
Realtime: move demo audio to separate thread (#1141)
rm-openai Jul 16, 2025
66e5be3
MCP: add support for tool_result.structuredContent (#1150)
rm-openai Jul 16, 2025
99ba260
Correct error message for invalid output types with strict JSON schem…
DanielHashmi Jul 16, 2025
00c87ea
Add Streaming of Function Call Arguments to Chat Completions (#999)
devtalker Jul 16, 2025
076eb72
Empty mcp tool result error (#1142)
thoo Jul 16, 2025
f63cc0c
Unbreak tests (#1157)
rm-openai Jul 16, 2025
32997b2
Realtime: web demo (#1149)
rm-openai Jul 16, 2025
bbbcdae
Realtime docs (#1153)
rm-openai Jul 16, 2025
aeb4381
v0.2.1 (#1151)
rm-openai Jul 16, 2025
ae4ba3c
Add a new GH Actions job to automatically update translated document …
seratch Jul 16, 2025
2f8ea0a
Adjust #598 to only create a PR rather than pushing changes to main b…
seratch Jul 17, 2025
a25dac7
Realtime: only update model settings from session (#1169)
rm-openai Jul 17, 2025
362144e
v0.2.2 (#1170)
rm-openai Jul 17, 2025
72bd289
[realtime] Add direct access to model layer from session (#1172)
rm-openai Jul 17, 2025
fdbc618
Update all translated document pages (#1173)
github-actions[bot] Jul 17, 2025
bc32b99
Correct a few typos in docs (#1128)
mshsheikh Jul 18, 2025
23404e8
fix: ensure ResponseUsage token fields are int, not None (fixes #1179…
kobol Jul 18, 2025
9046577
Add missing guardrail exception import to quickstart (#1161)
slubbers-openai Jul 18, 2025
4b8f40e
fix: fallback to function name for unnamed output_guardrail decorator…
romankhan26 Jul 18, 2025
4a31bb6
Mark some dataclasses as pydantic dataclasses (#1131)
tconley1428 Jul 18, 2025
de8accc
fix: Apply strict JSON schema validation in FunctionTool constructor …
habema Jul 18, 2025
7a8866f
Fix image_generator example error on Windows OS (#1180)
seratch Jul 18, 2025
f20aa40
Update all translated document pages (#1184)
github-actions[bot] Jul 18, 2025
3e100f5
Realtime: add user agent header (#1185)
rm-openai Jul 21, 2025
6cb9639
Realtime: make sure we use the initial model settings (#1198)
rm-openai Jul 21, 2025
68b0ef1
v0.2.3 (#1201)
rm-openai Jul 21, 2025
c5d5010
Add automation script to generate mkdocstrings files (#1048)
seratch Jul 21, 2025
4d1ce04
Set up codex for issues and PRs (#1214)
rm-openai Jul 22, 2025
e0b1cdf
Use real codex action (#1217)
rm-openai Jul 22, 2025
f6a6c51
Update codex action to use repo syntax (#1218)
rm-openai Jul 22, 2025
4350c34
Fixes two issues in the tracing documentation (#1212)
DanielHashmi Jul 23, 2025
b09d37d
Update all translated document pages (#1221)
github-actions[bot] Jul 23, 2025
46101cb
Fix RealtimeModel reference (#1215)
rm-openai Jul 23, 2025
a16da90
Adding docstring to get_weather tool (#1231)
mutahirshah11 Jul 24, 2025
88818fd
Update all translated document pages (#1232)
github-actions[bot] Jul 24, 2025
44042e1
Add LiteLLM to acknowledgements section (#1240)
colesmcintosh Jul 25, 2025
d052c1f
[Bugfix] Fix wrong imports in examples (#1241)
mdagost Jul 25, 2025
7b84678
Realtime: send audio item/content index (#1235)
rm-openai Jul 25, 2025
00412a1
Fix #1227 Chat Completions model fails to handle streaming with opena…
seratch Jul 25, 2025
64b4a5f
Make Trace class inherit from abc.ABC for proper abstract base class …
DanielHashmi Jul 25, 2025
430dbaa
docs: add LangDB AI Gateway as a tracing provider (#1224)
MrunmayS Jul 25, 2025
2c89461
Update all translated document pages (#1251)
github-actions[bot] Jul 26, 2025
7e632c2
Fix type placeholder convention (#1259)
mshsheikh Jul 26, 2025
8f1ed6c
Tweak on guardrail docstrings (#1260)
mshsheikh Jul 28, 2025
e2d2938
Consistently use "Python" in docstrings (#1261)
mshsheikh Jul 28, 2025
a64208c
gpt 4.5-preview is removed, use gpt-4.1 (#1266)
jssmith Jul 28, 2025
75065ba
refactor: remove inherited method from Agent class (#1267)
windsornguyen Jul 28, 2025
c13b163
Fix etc. punctuation (#1268)
mshsheikh Jul 28, 2025
7a4c024
fix: enforce min trigger size=1 to prevent immediate exports (#1270)
mshsheikh Jul 28, 2025
c4d8763
Fix minor issues in exporter docstrings (#1272)
mshsheikh Jul 28, 2025
656ee0c
docs: remove non existent even_if_trace_running mention from trace do…
mshsheikh Jul 28, 2025
bd527ad
fix: convert litellm response with reasoning content to openai messag…
zkllll2002 Jul 28, 2025
2224d45
docs: fix UserContext example (#1280)
kankute-sameer Jul 28, 2025
aba88c7
Fix _export_batches docstring to remove incorrect "threshold" referen…
DanielHashmi Jul 28, 2025
078eef2
Update all translated document pages (#1289)
github-actions[bot] Jul 29, 2025
4cb07d5
feat: add loop safeguard and fix instruction spacing/grammar (#1284)
mshsheikh Jul 29, 2025
d968d7f
Enhance Tool Behavior Documentation for Developer Clarity With Exampl…
MuhammadHamidRaza Jul 29, 2025
114b320
Update all translated document pages (#1291)
github-actions[bot] Jul 29, 2025
b459cc4
Realtime: enable a playback tracker (#1242)
rm-openai Jul 29, 2025
c37c007
Realtime: only cancel response if necessary (#1243)
rm-openai Jul 29, 2025
bdc91df
Realtime: Twilio example (#1216)
rm-openai Jul 29, 2025
8541956
Realtime: forward all raw model events (#1252)
rm-openai Jul 29, 2025
7cc0c31
v0.2.4 (#1301)
rm-openai Jul 29, 2025
d338f03
Fix tag errors in sessions document page (#1307)
seratch Jul 30, 2025
6a19e6e
Update all translated document pages (#1308)
github-actions[bot] Jul 30, 2025
ef812c5
Add temporal demo to docs (#1310)
rm-openai Jul 30, 2025
0233cc0
Fix #1238 by enhancing HandoffInputData and enable passing async func…
seratch Jul 30, 2025
cfed186
Add support to realtime API for setting "speed" of the models respons…
sect2k Jul 30, 2025
a1ad518
Update all translated document pages (#1313)
github-actions[bot] Jul 30, 2025
3a16a24
Examples: use agent to interact with Remote PDF Documents (#1319)
princeaden1 Jul 31, 2025
12102e6
Enhance exception guide in docs (#1321)
MuhammadHamidRaza Jul 31, 2025
473e0a2
Update all translated document pages (#1322)
github-actions[bot] Jul 31, 2025
f92b561
Realtime: make example customizable: (#1332)
rm-openai Jul 31, 2025
d520535
Fix #1325 Export MultiProvider in top level package (#1326)
kobol Jul 31, 2025
32fe6cc
Add tracing guide for non-OpenAI LLMs in docs/tracing.md (#1329)
UmmeHabiba1312 Aug 1, 2025
ab66578
Update all translated document pages (#1336)
github-actions[bot] Aug 1, 2025
a9763dc
docs: Clarify and enhance run_demo_loop utility documentation for beg…
UmmeHabiba1312 Aug 1, 2025
61e4fb8
Fix set_api_key breaking cached property mechanism (#1339)
DanielHashmi Aug 1, 2025
63d72d0
Update all translated document pages (#1341)
github-actions[bot] Aug 1, 2025
5e31be9
Handle processor exceptions and fix tracing log formatting (#1292)
mshsheikh Aug 1, 2025
fb68e77
Fix(mcp): Unreachable structured content branch in invoke_mcp_tool (#…
Kunmeer-SyedMohamedHyder Aug 1, 2025
1f75464
Feat: separate tool_call_item and tool_call_output_item in stream eve…
gdisk Aug 1, 2025
af76c36
Clarify shallow-copy behavior of tools and handoffs in Agent.clone() …
abdul-kabir-jawed Aug 1, 2025
25c61e8
Fix #1277 missing StopAtTools and ToolsToFinalOutputFunction in agent…
seratch Aug 1, 2025
818344c
Fix #980 Chat Completions: fails with function name for tool_choice p…
seratch Aug 1, 2025
5c73311
Fix type annotation and clarify tool behavior docs (#1355)
mshsheikh Aug 3, 2025
e197187
Fix style and wording issues in handoffs.py (#1356)
mshsheikh Aug 3, 2025
907533a
Fix docstring formatting and add safe check for empty message content…
mshsheikh Aug 3, 2025
237d672
Add functionality to update agent during realtime session (#1366)
marysha-openai Aug 4, 2025
54e4087
feat(viz): draw MCP servers (#1368)
aaron-ang Aug 4, 2025
88b8199
Update all translated document pages (#1369)
github-actions[bot] Aug 4, 2025
bc71e8b
Realtime: fix interrupt logic (#1370)
rm-openai Aug 4, 2025
27de49a
Realtime: send session update before tool response (#1388)
rm-openai Aug 7, 2025
5539afc
v0.2.5 (#1398)
rm-openai Aug 7, 2025
6c816c3
feat: support agent output guardrails in realtime (#1381)
jhills20 Aug 8, 2025
efee1a7
Enhanced FAQ lookup tool in examples/customer_service app (#1063)
HasnainCodeHub Aug 11, 2025
9fe9a5e
Improve accuracy of guardrails and lifecycle hook descriptions (#1386)
DanielHashmi Aug 11, 2025
0df7903
Update all translated document pages (#1413)
github-actions[bot] Aug 11, 2025
5b758bd
Add logprobs to ModelSettings (#971)
zain Aug 11, 2025
cb0125c
Add streaming function call arguments example (#1052)
devtalker Aug 11, 2025
975cdec
Updated the default values for two parameters in the ModelSettings cl…
rudra-attri Aug 11, 2025
eb5483b
chore(deps): Bump "openai>=1.99.6,<2" (#1415)
seratch Aug 11, 2025
417c19b
v0.2.6 (#1423)
rm-openai Aug 11, 2025
f5fcd30
Added runtime validation for Agent constructor arguments (#998)
DanielHashmi Aug 11, 2025
ce67311
Realtime: add handoff prompt prefix (#1382)
rm-openai Aug 11, 2025
bad88e7
feat(tests): add tests for unicode content, special characters, and c…
PatrykBochenek Aug 11, 2025
534e2d5
Fix: enforce strict instructions function signature in get_system_pro…
abdullahimran49 Aug 13, 2025
e3b4856
Fix #1407 Add reasoning.effort="minimal" and "verbosity" params to Mo…
seratch Aug 13, 2025
4c436b7
Add a simple gpt-oss example (#1440)
seratch Aug 14, 2025
e4699c3
Fix: Clarify random_number function docstring for inclusive range (#1…
Abbas-Asad Aug 14, 2025
65cb91c
Add input validation and type conversion for user input (#1462)
Abbas-Asad Aug 14, 2025
e976aff
docs: Add a comprehensive example for handling function tool errors. …
MurtazaAliCode Aug 14, 2025
42a98f5
Update all translated document pages (#1469)
github-actions[bot] Aug 14, 2025
aea05a6
Migrate document translation script to gpt-5 (#1470)
seratch Aug 14, 2025
ab3b85f
Change reasoning effort for the translation script
seratch Aug 14, 2025
043b3d6
Update all translated document pages (#1471)
github-actions[bot] Aug 14, 2025
184eafc
docs: Clarify the `is_enabled` parameter in `handoff()` documentation…
Hafiz-Muhammad-Umar12 Aug 14, 2025
a9b8ab3
Update all translated document pages (#1473)
github-actions[bot] Aug 14, 2025
c436389
Realtime: one guardrail trip event per response (#1458)
rm-openai Aug 14, 2025
a17625e
v0.2.7 (#1480)
rm-openai Aug 14, 2025
cec3a9a
Fix: Clarify random_number function docstring for inclusive range (#1…
Abbas-Asad Aug 14, 2025
4b229d1
Add input validation and type conversion for user input (#1476)
Abbas-Asad Aug 14, 2025
a6378ce
Docs: Add missing docstring to get_weather function (#1478)
Abbas-Asad Aug 14, 2025
7560cab
Docs: Clarify that guardrails apply to both user input and agent outp…
Abbas-Asad Aug 14, 2025
90a57d0
Docs: Add missing docstring to how_many_jokes tool (#1479)
Abbas-Asad Aug 14, 2025
ee12d42
Update all translated document pages (#1484)
github-actions[bot] Aug 14, 2025
c913454
Allow modifying the input sent to the model (#1483)
rm-openai Aug 15, 2025
07345d0
Make shallow copies of lists instead of deep copies (#1490)
rm-openai Aug 15, 2025
fcb9b50
Realtime: fix history bug (#1495)
rm-openai Aug 15, 2025
992faf7
Realtime: allow arbitrarily sized messages (#1500)
rm-openai Aug 15, 2025
d36beae
0.2.8 (#1501)
rm-openai Aug 15, 2025
16f0f58
Fix #1494 by adding a link to Responses API documentation (#1502)
seratch Aug 15, 2025
107ef04
Add conditional tool enabling feature to agent as tool. (#1193)
thoo Aug 15, 2025
857c70e
Update all translated document pages (#1503)
github-actions[bot] Aug 15, 2025
cb72933
Rename gpt-5 example file for consistency
seratch Aug 16, 2025
a3128ce
feat(agents): Add on_llm_start and on_llm_end Lifecycle Hooks (#987)
uzair330 Aug 16, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .github/codex/home/config.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
model = "o3"
9 changes: 9 additions & 0 deletions .github/codex/labels/codex-attempt.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
Attempt to solve the reported issue.

If a code change is required, create a new branch, commit the fix, and open a pull request that resolves the problem.

Here is the original GitHub issue that triggered this run:

### {CODEX_ACTION_ISSUE_TITLE}

{CODEX_ACTION_ISSUE_BODY}
7 changes: 7 additions & 0 deletions .github/codex/labels/codex-review.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Review this PR and respond with a very concise final message, formatted in Markdown.

There should be a summary of the changes (1-2 sentences) and a few bullet points if necessary.

Then provide the **review** (1-2 sentences plus bullet points, friendly tone).

{CODEX_ACTION_GITHUB_EVENT_PATH} contains the JSON that triggered this GitHub workflow. It contains the `base` and `head` refs that define this PR. Both refs are available locally.
7 changes: 7 additions & 0 deletions .github/codex/labels/codex-triage.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
Troubleshoot whether the reported issue is valid.

Provide a concise and respectful comment summarizing the findings.

### {CODEX_ACTION_ISSUE_TITLE}

{CODEX_ACTION_ISSUE_BODY}
60 changes: 60 additions & 0 deletions .github/workflows/codex.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: Codex

on:
issues:
types: [opened, labeled]
pull_request:
branches: [main]
types: [labeled]

jobs:
codex:
# This `if` check provides complex filtering logic to avoid running Codex
# on every PR. Admittedly, one thing this does not verify is whether the
# sender has write access to the repo: that must be done as part of a
# runtime step.
#
# Note the label values should match the ones in the .github/codex/labels
# folder.
if: |
(github.event_name == 'issues' && (
(github.event.action == 'labeled' && (github.event.label.name == 'codex-attempt' || github.event.label.name == 'codex-triage'))
)) ||
(github.event_name == 'pull_request' && github.event.action == 'labeled' && github.event.label.name == 'codex-review')
runs-on: ubuntu-latest
permissions:
contents: write # can push or create branches
issues: write # for comments + labels on issues/PRs
pull-requests: write # for PR comments/labels
steps:
# TODO: Consider adding an optional mode (--dry-run?) to actions/codex
# that verifies whether Codex should actually be run for this event.
# (For example, it may be rejected because the sender does not have
# write access to the repo.) The benefit would be two-fold:
# 1. As the first step of this job, it gives us a chance to add a reaction
# or comment to the PR/issue ASAP to "ack" the request.
# 2. It saves resources by skipping the clone and setup steps below if
# Codex is not going to run.

- name: Checkout repository
uses: actions/checkout@v4

# We install the dependencies like we would for an ordinary CI job,
# particularly because Codex will not have network access to install
# these dependencies.
- name: Setup uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true

- name: Install dependencies
run: make sync

# Note it is possible that the `verify` step internal to Run Codex will
# fail, in which case the work to setup the repo was worthless :(
- name: Run Codex
uses: openai/codex/.github/actions/codex@main
with:
openai_api_key: ${{ secrets.PROD_OPENAI_API_KEY }}
github_token: ${{ secrets.GITHUB_TOKEN }}
codex_home: ./.github/codex/home
1 change: 1 addition & 0 deletions .github/workflows/issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ jobs:
days-before-pr-stale: 10
days-before-pr-close: 7
stale-pr-label: "stale"
exempt-issue-labels: "skip-stale"
stale-pr-message: "This PR is stale because it has been open for 10 days with no activity."
close-pr-message: "This PR was closed because it has been inactive for 7 days since being marked as stale."
repo-token: ${{ secrets.GITHUB_TOKEN }}
60 changes: 60 additions & 0 deletions .github/workflows/update-docs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
name: "Update Translated Docs"

# This GitHub Actions job automates the process of updating all translated document pages. Please note the following:
# 1. The translation results may vary each time; some differences in detail are expected.
# 2. When you add a new page to the left-hand menu, **make sure to manually update mkdocs.yml** to include the new item.
# 3. If you switch to a different LLM (for example, from o3 to a newer model), be sure to conduct thorough testing before making the switch.

on:
push:
branches:
- main
paths:
- 'docs/**'
- mkdocs.yml

jobs:
update-docs:
if: "!contains(github.event.head_commit.message, 'Update all translated document pages')"
name: Build and Push Translated Docs
runs-on: ubuntu-latest
timeout-minutes: 20
env:
PROD_OPENAI_API_KEY: ${{ secrets.PROD_OPENAI_API_KEY }}
steps:
- name: Checkout repository
uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup uv
uses: astral-sh/setup-uv@v5
with:
enable-cache: true
- name: Install dependencies
run: make sync
- name: Build full docs
run: make build-full-docs

- name: Commit changes
id: commit
run: |
git config user.name "github-actions[bot]"
git config user.email "github-actions[bot]@users.noreply.github.com"
git add docs/
if [ -n "$(git status --porcelain)" ]; then
git commit -m "Update all translated document pages"
echo "committed=true" >> "$GITHUB_OUTPUT"
else
echo "No changes to commit"
echo "committed=false" >> "$GITHUB_OUTPUT"
fi

- name: Create Pull Request
if: steps.commit.outputs.committed == 'true'
uses: peter-evans/create-pull-request@v6
with:
commit-message: "Update all translated document pages"
title: "Update all translated document pages"
body: "Automated update of translated documentation"
branch: update-translated-docs-${{ github.run_id }}
delete-branch: true
14 changes: 14 additions & 0 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Python Debugger: Python File",
"type": "debugpy",
"request": "launch",
"program": "${file}"
}
]
}
4 changes: 3 additions & 1 deletion AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,8 @@ Welcome to the OpenAI Agents SDK repository. This file contains the main points

Coverage can be generated with `make coverage`.

All python commands should be run via `uv run python ...`

## Snapshot tests

Some tests rely on inline snapshots. See `tests/README.md` for details on updating them:
Expand Down Expand Up @@ -64,6 +66,6 @@ Commit messages should be concise and written in the imperative mood. Small, foc
## What reviewers look for

- Tests covering new behaviour.
- Consistent style: code formatted with `ruff format`, imports sorted, and type hints passing `mypy`.
- Consistent style: code formatted with `uv run ruff format`, imports sorted, and type hints passing `uv run mypy .`.
- Clear documentation for any public API changes.
- Clean history and a helpful PR description.
1 change: 1 addition & 0 deletions CLAUDE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Read the AGENTS.md file for instructions.
9 changes: 7 additions & 2 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,10 @@ format:
uv run ruff format
uv run ruff check --fix

.PHONY: format-check
format-check:
uv run ruff format --check

.PHONY: lint
lint:
uv run ruff check
Expand Down Expand Up @@ -40,6 +44,7 @@ old_version_tests:

.PHONY: build-docs
build-docs:
uv run docs/scripts/generate_ref_files.py
uv run mkdocs build

.PHONY: build-full-docs
Expand All @@ -55,5 +60,5 @@ serve-docs:
deploy-docs:
uv run mkdocs gh-deploy --force --verbose

.PHONY: check
check: format-check lint mypy tests
Loading