From d933ece5decdeaf8139acef7e44f57c72f8a6494 Mon Sep 17 00:00:00 2001 From: Shuchang Zheng Date: Thu, 16 Oct 2025 00:48:19 -0700 Subject: [PATCH] make run_with and ai_fallback work in the public API (#3732) --- skyvern/forge/sdk/routes/agent_protocol.py | 4 ++++ skyvern/schemas/runs.py | 9 +++++++++ 2 files changed, 13 insertions(+) diff --git a/skyvern/forge/sdk/routes/agent_protocol.py b/skyvern/forge/sdk/routes/agent_protocol.py index ed9c4eb4..7390f222 100644 --- a/skyvern/forge/sdk/routes/agent_protocol.py +++ b/skyvern/forge/sdk/routes/agent_protocol.py @@ -341,6 +341,8 @@ async def run_workflow( max_screenshot_scrolls=workflow_run_request.max_screenshot_scrolls, extra_http_headers=workflow_run_request.extra_http_headers, browser_address=workflow_run_request.browser_address, + run_with=workflow_run_request.run_with, + ai_fallback=workflow_run_request.ai_fallback, ) try: @@ -371,6 +373,8 @@ async def run_workflow( downloaded_files=None, recording_url=None, app_url=f"{settings.SKYVERN_APP_URL.rstrip('/')}/workflows/{workflow_run.workflow_permanent_id}/{workflow_run.workflow_run_id}", + run_with=workflow_run.run_with, + ai_fallback=workflow_run.ai_fallback, ) diff --git a/skyvern/schemas/runs.py b/skyvern/schemas/runs.py index f3f3eda6..9aa41bc3 100644 --- a/skyvern/schemas/runs.py +++ b/skyvern/schemas/runs.py @@ -502,6 +502,15 @@ class TaskRunResponse(BaseRunResponse): class WorkflowRunResponse(BaseRunResponse): run_type: Literal[RunType.workflow_run] = Field(description="Type of run - always workflow_run for workflow runs") + run_with: str | None = Field( + default=None, + description="Whether the workflow run was executed with agent or code", + examples=["agent", "code"], + ) + ai_fallback: bool | None = Field( + default=None, + description="Whether to fallback to AI if code run fails.", + ) run_request: WorkflowRunRequest | None = Field( default=None, description="The original request parameters used to start this workflow run" )