Source code for acodex.types.thread_options
from __future__ import annotations
from typing import TYPE_CHECKING, Literal, TypeAlias, TypedDict
if TYPE_CHECKING:
from typing_extensions import NotRequired
ApprovalMode: TypeAlias = Literal["never", "on-request", "on-failure", "untrusted"]
SandboxMode: TypeAlias = Literal["read-only", "workspace-write", "danger-full-access"]
ModelReasoningEffort: TypeAlias = Literal["minimal", "low", "medium", "high", "xhigh"]
WebSearchMode: TypeAlias = Literal["disabled", "cached", "live"]
[docs]
class ThreadOptions(TypedDict):
"""Thread-level options applied to each turn."""
model: NotRequired[str]
"""Model name override."""
sandbox_mode: NotRequired[SandboxMode]
"""Sandbox mode for command execution."""
working_directory: NotRequired[str]
"""Working directory used for the turn."""
skip_git_repo_check: NotRequired[bool]
"""Whether to skip repository checks."""
model_reasoning_effort: NotRequired[ModelReasoningEffort]
"""Requested model reasoning effort."""
network_access_enabled: NotRequired[bool]
"""Whether network access is enabled in sandboxed execution."""
web_search_mode: NotRequired[WebSearchMode]
"""Web search mode configuration."""
web_search_enabled: NotRequired[bool]
"""Legacy web search enable/disable flag."""
approval_policy: NotRequired[ApprovalMode]
"""Approval policy for tool and command execution."""
additional_directories: NotRequired[list[str]]
"""Additional directories to add to the execution workspace."""