mirror of
https://github.com/openai/codex.git
synced 2026-09-09 15:58:47 +00:00
Add dedicated Python goal operations
This commit is contained in:
@@ -150,16 +150,20 @@ attempt. API-key login completes synchronously and does not return a handle.
|
||||
|
||||
### Thread
|
||||
|
||||
- `run(input: str | Input, *, goal: bool = False, approval_mode=None, cwd=None, effort=None, model=None, output_schema=None, personality=None, sandbox: Sandbox | None = None, service_tier=None, summary=None) -> TurnResult`
|
||||
- `turn(input: str | Input, *, goal: bool = False, approval_mode=None, cwd=None, effort=None, model=None, output_schema=None, personality=None, sandbox: Sandbox | None = None, service_tier=None, summary=None) -> TurnHandle`
|
||||
- `run(input: str | Input, *, approval_mode=None, cwd=None, effort=None, model=None, output_schema=None, personality=None, sandbox: Sandbox | None = None, service_tier=None, summary=None) -> TurnResult`
|
||||
- `turn(input: str | Input, *, approval_mode=None, cwd=None, effort=None, model=None, output_schema=None, personality=None, sandbox: Sandbox | None = None, service_tier=None, summary=None) -> TurnHandle`
|
||||
- `run_goal(objective: str) -> TurnResult`
|
||||
- `start_goal(objective: str) -> TurnHandle`
|
||||
- `read(*, include_turns: bool = False) -> ThreadReadResponse`
|
||||
- `set_name(name: str) -> ThreadSetNameResponse`
|
||||
- `compact() -> ThreadCompactStartResponse`
|
||||
|
||||
### AsyncThread
|
||||
|
||||
- `run(input: str | Input, *, goal: bool = False, approval_mode=None, cwd=None, effort=None, model=None, output_schema=None, personality=None, sandbox: Sandbox | None = None, service_tier=None, summary=None) -> Awaitable[TurnResult]`
|
||||
- `turn(input: str | Input, *, goal: bool = False, approval_mode=None, cwd=None, effort=None, model=None, output_schema=None, personality=None, sandbox: Sandbox | None = None, service_tier=None, summary=None) -> Awaitable[AsyncTurnHandle]`
|
||||
- `run(input: str | Input, *, approval_mode=None, cwd=None, effort=None, model=None, output_schema=None, personality=None, sandbox: Sandbox | None = None, service_tier=None, summary=None) -> Awaitable[TurnResult]`
|
||||
- `turn(input: str | Input, *, approval_mode=None, cwd=None, effort=None, model=None, output_schema=None, personality=None, sandbox: Sandbox | None = None, service_tier=None, summary=None) -> Awaitable[AsyncTurnHandle]`
|
||||
- `run_goal(objective: str) -> Awaitable[TurnResult]`
|
||||
- `start_goal(objective: str) -> Awaitable[AsyncTurnHandle]`
|
||||
- `read(*, include_turns: bool = False) -> Awaitable[ThreadReadResponse]`
|
||||
- `set_name(name: str) -> Awaitable[ThreadSetNameResponse]`
|
||||
- `compact() -> Awaitable[ThreadCompactStartResponse]`
|
||||
@@ -184,9 +188,11 @@ phase-less assistant message item.
|
||||
Use `turn(...)` when you need low-level turn control (`stream()`, `steer()`,
|
||||
`interrupt()`) before collecting the turn result.
|
||||
|
||||
Pass `goal=True` to either method for an objective that can continue through
|
||||
multiple internal turns. Streaming, steering, interruption, and the returned
|
||||
`TurnResult` still present one logical turn with one stable ID.
|
||||
Use `run_goal(...)` or `start_goal(...)` for an objective that can continue
|
||||
through multiple internal turns. Goal operations require an idle, persisted
|
||||
thread and use its existing configuration. Starting one replaces any stored
|
||||
goal. Streaming, steering, interruption, and the returned `TurnResult` still
|
||||
present one logical turn with one stable ID.
|
||||
|
||||
## Sandbox
|
||||
|
||||
|
||||
@@ -72,15 +72,16 @@ with Codex() as codex:
|
||||
Use `Thread.turn(...)` when you need a `TurnHandle` for streaming, steering,
|
||||
or interrupting an active turn.
|
||||
|
||||
For a longer objective, opt into goal mode on the operation producing the
|
||||
result:
|
||||
For a longer objective on an idle, persisted thread, run a dedicated goal
|
||||
operation:
|
||||
|
||||
```python
|
||||
result = thread.run("Improve the benchmark coverage in this repository.", goal=True)
|
||||
result = thread.run_goal("Improve the benchmark coverage in this repository.")
|
||||
```
|
||||
|
||||
Goal mode may continue working internally, but it streams and returns as one
|
||||
logical turn.
|
||||
A goal may continue working internally, but it streams and returns as one
|
||||
logical turn. It uses the thread's existing configuration and replaces any
|
||||
stored goal.
|
||||
|
||||
## 4. Choose Sandbox Access
|
||||
|
||||
|
||||
Reference in New Issue
Block a user