support passing run_with for run_task endpoint (mostly for task v2) (#4576)

This commit is contained in:
Shuchang Zheng
2026-01-28 20:50:32 -08:00
committed by GitHub
parent 34aadb8c09
commit 69e1ea15cc
3 changed files with 12 additions and 4 deletions

View File

@@ -264,6 +264,7 @@ async def run_task(
extra_http_headers=run_request.extra_http_headers,
browser_session_id=run_request.browser_session_id,
browser_address=run_request.browser_address,
run_with=run_request.run_with,
)
except MissingBrowserAddressError as e:
raise HTTPException(status_code=400, detail=str(e)) from e

View File

@@ -437,6 +437,11 @@ class TaskRunRequest(BaseModel):
description="The CDP address for the task.",
examples=["http://127.0.0.1:9222", "ws://127.0.0.1:9222/devtools/browser/1234567890"],
)
run_with: str | None = Field(
default=None,
description="Whether to run the task with agent or code.",
examples=["agent", "code"],
)
@field_validator("url", "webhook_url", "totp_url")
@classmethod

View File

@@ -209,6 +209,7 @@ async def initialize_task_v2(
browser_session_id=browser_session_id,
extra_http_headers=extra_http_headers,
browser_address=browser_address,
run_with=run_with,
),
workflow_permanent_id=new_workflow.workflow_permanent_id,
organization=organization,
@@ -755,10 +756,11 @@ async def run_task_v2_helper(
context=context,
screenshots=scraped_page.screenshots,
)
await app.WORKFLOW_SERVICE.generate_script_if_needed(
workflow=workflow,
workflow_run=workflow_run,
)
if task_v2.run_with == "code":
await app.WORKFLOW_SERVICE.generate_script_if_needed(
workflow=workflow,
workflow_run=workflow_run,
)
break
if not plan: