Skip to content

backends

backends

__all__ module-attribute

__all__ = [
    "AgentBackend",
    "Codex",
    "CodexAuth",
    "OpenCode",
    "Shell",
]

AgentBackend

id instance-attribute

id: str

command

command(
    prompt: str, run_config: Any | None = None
) -> list[str]

Return command to execute inside sandbox.

materialise

materialise(
    ctx: MaterialiseContext, agent: AgentLike
) -> None

Write backend-specific config into the workspace.

Codex

approval_policy class-attribute instance-attribute

approval_policy: str | None = None

auth class-attribute instance-attribute

auth: CodexAuthConfig = None

extra_config class-attribute instance-attribute

extra_config: dict[str, Any] = Field(default_factory=dict)

features class-attribute instance-attribute

features: dict[str, bool] = Field(default_factory=dict)

id class-attribute instance-attribute

id: str = 'codex'

model class-attribute instance-attribute

model: str | None = None

model_provider class-attribute instance-attribute

model_provider: str | None = None

model_reasoning_effort class-attribute instance-attribute

model_reasoning_effort: str | None = None

model_reasoning_summary class-attribute instance-attribute

model_reasoning_summary: str | None = None

model_verbosity class-attribute instance-attribute

model_verbosity: str | None = None

sandbox_mode class-attribute instance-attribute

sandbox_mode: str | None = None

shell_environment_policy class-attribute instance-attribute

shell_environment_policy: dict[str, Any] = Field(
    default_factory=dict
)
web_search: str | None = None

command

command(
    prompt: str, run_config: Any | None = None
) -> list[str]

materialise

materialise(
    ctx: MaterialiseContext, agent: AgentLike
) -> None

CodexAuth

env_var class-attribute instance-attribute

env_var: str | None = None

method instance-attribute

method: Literal[
    "openai_oauth",
    "openai_api_key_env",
    "host_chatgpt",
    "none",
]

refresh class-attribute instance-attribute

refresh: bool = False

service class-attribute instance-attribute

service: str = 'openai'

host_chatgpt classmethod

host_chatgpt() -> CodexAuth

none classmethod

none() -> CodexAuth

openai_api_key_env classmethod

openai_api_key_env(
    env_var: str = "OPENAI_API_KEY",
    *,
    service: str = "openai",
) -> CodexAuth

openai_oauth classmethod

openai_oauth(*, refresh: bool = False) -> CodexAuth

OpenCode

agent class-attribute instance-attribute

agent: str | None = None

autoupdate class-attribute instance-attribute

autoupdate: bool | str | None = None

compaction class-attribute instance-attribute

compaction: dict[str, Any] = Field(default_factory=dict)

disabled_providers class-attribute instance-attribute

disabled_providers: list[str] = Field(default_factory=list)

enabled_providers class-attribute instance-attribute

enabled_providers: list[str] = Field(default_factory=list)

extra_config class-attribute instance-attribute

extra_config: dict[str, Any] = Field(default_factory=dict)

formatter class-attribute instance-attribute

formatter: bool | dict[str, Any] | None = None

id class-attribute instance-attribute

id: str = 'opencode'

instructions class-attribute instance-attribute

instructions: list[str] = Field(default_factory=list)

lsp class-attribute instance-attribute

lsp: bool | dict[str, Any] | None = None

model class-attribute instance-attribute

model: str | None = None

permission class-attribute instance-attribute

permission: (
    PermissionAction
    | dict[str, PermissionRule]
    | PermissionPolicy
    | None
) = None

provider class-attribute instance-attribute

provider: dict[str, Any] = Field(default_factory=dict)

share class-attribute instance-attribute

share: str | None = None

small_model class-attribute instance-attribute

small_model: str | None = None

snapshot class-attribute instance-attribute

snapshot: bool | None = None

command

command(
    prompt: str, run_config: Any | None = None
) -> list[str]

materialise

materialise(
    ctx: MaterialiseContext, agent: AgentLike
) -> None

Shell

command_prefix class-attribute instance-attribute

command_prefix: list[str] = Field(
    default_factory=lambda: ["sh", "-lc"]
)

id class-attribute instance-attribute

id: str = 'shell'

command

command(
    prompt: str, run_config: object | None = None
) -> list[str]

materialise

materialise(
    ctx: MaterialiseContext, agent: AgentLike
) -> None