From 88fc7be8c1e8ca70b6d0222ac23253af6fb09502 Mon Sep 17 00:00:00 2001 From: 0xallam Date: Sun, 26 Apr 2026 16:03:07 -0700 Subject: [PATCH] Support xhigh reasoning effort --- strix/config/settings.py | 2 +- strix/core/inputs.py | 8 ++++++-- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/strix/config/settings.py b/strix/config/settings.py index fea3ce1..6e696b1 100644 --- a/strix/config/settings.py +++ b/strix/config/settings.py @@ -26,7 +26,7 @@ from pydantic import AliasChoices, Field from pydantic_settings import BaseSettings, SettingsConfigDict -ReasoningEffort = Literal["low", "medium", "high"] +ReasoningEffort = Literal["none", "minimal", "low", "medium", "high", "xhigh"] _BASE_CONFIG = SettingsConfigDict( case_sensitive=False, diff --git a/strix/core/inputs.py b/strix/core/inputs.py index 3d65803..4922526 100644 --- a/strix/core/inputs.py +++ b/strix/core/inputs.py @@ -3,7 +3,7 @@ from __future__ import annotations import json -from typing import Any, Literal +from typing import TYPE_CHECKING, Any from agents.model_settings import ModelSettings from openai.types.shared import Reasoning @@ -11,6 +11,10 @@ from openai.types.shared import Reasoning from strix.config.models import DEFAULT_MODEL_RETRY +if TYPE_CHECKING: + from strix.config.settings import ReasoningEffort + + # Default max_turns budget passed to the SDK runner. DEFAULT_MAX_TURNS = 500 @@ -106,7 +110,7 @@ def build_scope_context(scan_config: dict[str, Any]) -> dict[str, Any]: def make_model_settings( - reasoning_effort: Literal["low", "medium", "high"] | None, + reasoning_effort: ReasoningEffort | None, ) -> ModelSettings: model_settings = ModelSettings( parallel_tool_calls=False,