Changelog
New features, improvements, and fixes in Skyvern
New features
- Copilot Ask/Build/Code Mode Routing — The Copilot now routes each request based on the active mode: Ask returns answers without modifying the workflow, Build creates or updates workflows, and Code generates executable code blocks. (#6459)
- GCS Storage Backend — Added Google Cloud Storage as an artifact storage backend for self-hosted deployments. (#6442)
- Key-Optional Labels and Flexible Tag Filters — Tags now support key-optional labels, and tag filter queries accept more flexible formats for richer agent organization. (#6458)
- Self-Serve Editor Onboarding — New users in the workflow editor now see a get-started modal with intent routing and template cards, a 4-stop guided product tour, and smart empty states on the dashboard and runs pages to accelerate time-to-first-automation. (#6475)
Improvements
- Deterministic Copilot Code-Block Synthesis — Code blocks generated by the Copilot from scouted page interactions are now deterministic, producing consistent scripts across repeated generations. (#6463)
- Smarter Element Focus in Page Analysis — The agent now drops non-navigable links from its internal element tree, reducing noise and improving targeting accuracy. (#6461)
- Workflow Builder Left Sidebar Preserved — The left sidebar in the workflow builder now stays open when you switch between blocks, keeping your panel state between edits. (#6453)
- TOTP Prioritized Over Webhook for OTP — Stored TOTP secrets are now tried before webhook polling when retrieving one-time passwords, speeding up authentication flows that use stored credentials. (#6451)
- Improved Caching for Click-Reached Blocks — Scout interactions for blocks reached via click are now automatically credited toward the cached script, increasing cache hit rates. (#6450)
- Accessible Status Badges — Status badges across the product have been updated with improved contrast and consistent pill styling for better accessibility. (#6444)
- Block Title Editable from Settings Sidebar — Workflow block titles can now be edited from the right-hand settings sidebar, without needing to use the inline editor on the canvas. (#6443)
- API Reference Split into Agents and Runs Sections — The public API reference is now organized into separate Agents and Runs sections for easier navigation. (#6448)
- Label-First Tag Editor and Flexible Tag Filter UI — The tag editor now accepts standalone labels or
group:labelformat in a single input, and the filter bar supports filtering by label, group, or group:label for richer agent organization. (#6470)
Bug fixes
- Fixed org-verified discovered credentials not being credited in the Copilot credential gate, which could prevent runs from starting. (#6462)
- Fixed OTP codes from previous workflow runs being picked up and incorrectly used in new runs. (#6455)
- Fixed persistent-session screen recordings not appearing in the run view when the recording timestamp fell outside the run’s time window. (#6454)
- Fixed Copilot inconsistently asking for a URL before running discovery when the user had only named a site without providing one. (#6473)
- Fixed Copilot asking for a URL after already successfully navigating to the requested site during discovery. (#6472)
Week of June 1, 2026
Workflows are now Agents, feature preview, tag filters, OSS schedules, captcha improvements
New features
-
Workflows are now Agents — We’ve renamed “Workflows” to “Agents” across the product, public API, and docs. The API is now served under
/agents(e.g.POST /v1/run/agents) and accepts anagent_idalias forworkflow_id(samewpid_value), withagent_idechoed in responses. Fully backwards-compatible: existingworkflow_idinputs,/workflowsendpoints, SDK methods, and bookmarked doc URLs all keep working. - Feature Preview Section in Settings — A new “Feature Preview” panel in account settings lets you opt into upcoming features before they are fully released. (#6318)
-
Filter Workflows by Tags — The
GET /workflowsAPI now accepts a?tags=query parameter to filter results by tag. (#6334) - Workflow Schedules in Open Source — Self-hosted Skyvern deployments now support workflow schedules, previously a cloud-only feature. (#6344)
- Claude Opus 4.8 Support — Added Claude Opus 4.8 as a selectable model for both direct Anthropic and AWS Bedrock inference paths. (#6409)
- Automatic Re-save of Expired Credential Sessions — Saved credential sessions that have expired or encountered an error are now automatically re-saved, keeping browser profiles available without manual intervention. (#6435)
- GPT-5-mini Support — Added GPT-5-mini as a selectable LLM for customers using their own OpenAI API keys, providing a faster, lower-cost inference option.
Improvements
- Improved CAPTCHA Solving Reliability — Added a timeout circuit breaker and better timing around CAPTCHA solves on submit-protected pages, reducing failures caused by timing races. (#6349)
- Undo/Redo Moved to Canvas Toolbar — Undo and redo controls are back on the workflow canvas toolbar for easier access. (#6310)
- Better Loading and Error States in Browser Streams — Improved copy and animations for loading and error states across all browser stream views. (#6332)
- Extended Credential Test Timeout — The browser profile credential test now polls for up to 10 minutes, accommodating slower authentication flows that previously timed out. (#6359)
- Code-First Copilot Validation Gates — The code-first Copilot now runs preflight checks, MCP evidence gates, and validation steps before executing generated code blocks, reducing silent failures. (#6410)
- OpenRouter Cost Tracking — LLM token counts and costs are now tracked for runs using OpenRouter models, making per-run spending visible alongside other LLM providers. (#6427)
- CUA and Claude Opus Models Now Enterprise-Only — The CUA browser-control mode and Claude Opus model family are now reserved for enterprise accounts. (#6420)
Bug fixes
- Fixed session cookies not being restored when reusing a saved browser profile. (#6362)
- Fixed TOTP codes not being recovered from webhook response bodies that are not strictly valid JSON. (#6354)
- Fixed webhook responses being truncated at 2KB when routed through the NAT proxy.
- Fixed filtered dropdown options not being selectable in certain search-driven input components. (#6348)
- Fixed block prompts not rendering in the workflow version comparison view. (#6331)
- Fixed agent navigation buttons rendered via CSS
::before/::afterpseudo-content icons being missed when the icon element’s bounding rect was zero due to out-of-flow positioning. (#6385) - Fixed credential edit form values and in-progress test state being cleared when the credentials list refreshed in the background during a browser profile test. (#6404)
- Fixed workflow canvas layout not updating correctly when a container block is collapsed. (#6436)
- Fixed session cookie capture not persisting correctly when saving browser credential sessions. (#6434)
- Fixed persistent browser session final status not being reconciled when a session close races a timeout cleanup.
- Fixed shadow DOM inputs inside closed dropdown components incorrectly being forced visible. (#6433)
New features
- Redesigned Sidebar Navigation — The app sidebar has been redesigned with collapsible groups, improved visual hierarchy, and a cleaner layout. (#6211)
- Workflow Run Retry — Workflow runs can now be retried directly from the UI or API without creating a new run from scratch. (#6195)
- New Workflow Run Page Layout — The workflow run detail page has been split into a compact timeline and a detail panel for faster navigation and better readability. (#6214)
- Copilot Turn Narrative — The workflow copilot now displays a summary bubble after each turn, giving you a clear audit trail of what the agent did and decided. (#6231)
- Block Completion Progress on Run Page — The workflow run page now shows an N/M progress indicator so you can see how many blocks have completed at a glance. (#6230)
- Selector and AI Fallback Fields in Action Blocks — Action blocks now expose explicit selector and AI fallback configuration, giving you finer control over element targeting. (#6212)
- Workflow Tagging API — Tags can now be created, applied, queried, and managed via the API for programmatic workflow organization. (#6251)
- Run Cost Visibility in Task Runs — Task runs now expose LLM, proxy, and captcha cost fields, making per-run spending trackable via the API. (#6219)
- Double-Click Action Support — The click action block now supports double-click for elements that require it. (#6166)
- Search on Credentials Page — Added a search bar to the credentials page for quick filtering by name.
Improvements
- “Inputs” Replaces “Parameters” Across the UI — Workflow block parameters are now consistently labeled “Inputs” throughout the editor and run views. (#6296)
- Sidebar Flyout on Hover — Hovering over a collapsed sidebar icon now reveals the flyout menu without requiring a click. (#6270)
- Copilot Follows Live Frontier During Runs — The copilot chat panel now tracks the active workflow frontier as the run progresses, keeping you oriented on the agent’s current work. (#6283)
- Completed Copilot Turns Collapse to Summary Card — Finished copilot turns now collapse into a compact summary card, reducing clutter in long sessions. (#6280)
- Copilot Workflow Proposal Staged View — Accepting or rejecting a copilot workflow proposal now shows a staged diff view that snaps back cleanly on cancel or reject. (#6260)
- Browser Profile Saving Indicator — A placeholder row now appears while a browser profile is being saved, giving immediate visual confirmation that the save is in progress. (#6215)
- Copilot Loop Detection — The copilot now detects when it is stuck repeating the same reply and actively rewrites its approach to break the loop. (#6161)
Bug fixes
- Fixed credentials with embedded multi-placeholder secret references not being resolved correctly during workflow runs. (#6245)
Week of May 18, 2026
Guided browser profile setup, archived artifact status, webhook retry, download fixes
New features
- Guided Browser Profile Setup — A new step-by-step flow walks you through creating a saved browser profile, making it easier to set up persistent login sessions. (#6043)
- MCP Setup in Cloud Settings — Added a dedicated MCP setup section to cloud account settings for easier MCP client configuration.
- Draggable Workflow Blocks — Blocks in the workflow editor can now be reordered by dragging and collapsed to save space, making it easier to navigate complex workflows.
- CDP Connect Headers — The workflow editor now exposes a settings field for custom CDP connect headers, enabling authentication with remotely managed browser instances. (#6125)
- Credits Consumed per Run — Workflow run detail pages now show how many credits were consumed by that specific run. (#6133)
- Bulk Cancel Runs — A new API endpoint lets you cancel multiple in-progress workflow runs in a single request.
Improvements
- Archived Artifact Status — Workflow runs now show when their artifacts have been archived, with a clear status indicator in the UI. (#6075)
- Automatic Webhook Retry on Infrastructure Failures — Workflow webhooks are now retried automatically after transient infrastructure failures, reducing missed notifications. (#6062)
- Faster Script-Mode Runs — Speculative extract-action steps are skipped in script-mode workflows, cutting unnecessary LLM calls. (#6057)
- LLM Router Length-Truncation Fallback — When a model response is cut off by a length limit, the router now automatically retries with a fallback model instead of returning a partial response. (#6079)
- Analytics Range Extended to 365 Days — The analytics dashboard now offers a “365 days” time range, replacing “All time” which was slow for high-volume accounts.
- Copilot Recovers from Unexpected Errors — The workflow copilot now catches unexpected errors mid-run and presents a recovery option instead of silently stopping. (#6143)
- Copilot Surfaces Missing-Context Fallback — When the copilot lacks enough context to proceed, it now shows a clear fallback message explaining what information is needed. (#6144)
- Reduced LLM Context Overflow Failures — Prompt data (element trees, extraction goals) is now capped before being sent to the LLM, significantly reducing context-overflow and rate-limit errors on complex pages. (#6098)
Bug fixes
- Fixed popup pages opened during a run not being included in session recordings. (#6078)
- Fixed XHR-triggered file downloads not being captured when using download action blocks. (#6054)
- Fixed transient download-error popups incorrectly causing run failures. (#6080)
- Fixed child tasks not being terminated and workflow runs getting resurrected after a cleanup cron timeout. (#6047)
- Fixed copilot feasibility check stalling when given diagnostic input for an existing workflow. (#6061)
- Fixed reCAPTCHA v2 invisible variant being misidentified as v3, causing solve failures.
- Fixed downloaded file links on workflow runs showing internal storage paths instead of actual filenames. (#6137)
- Fixed the workflow copilot stopping unexpectedly when a browser session becomes unresponsive. (#6106)
New features
- Analytics Dashboard — A new /analytics page provides a breakdown of workflow run activity and performance over time. (#5980)
- Browser Profile Management Page — A dedicated browser profiles page lets you view, search, and rename your saved browser profiles. (#5990)
- Smarter Element Targeting — The agent now uses deterministic HTML element-tree compression, improving selector reliability on complex pages. (#5970)
- Block-Scoped Parameter Prompts in Debugger — The workflow debugger now prompts for parameters scoped to the specific block being tested, making per-block runs easier to set up.
Improvements
- Scheduled Trigger Badge on Runs Page — The global Runs page now shows a badge on runs triggered by a schedule, making scheduled runs easy to identify. (#5948)
- Signed Artifact Content URLs — Artifact content URLs are now always signed with configurable expiry for secure access control. (#5940)
- Faster Workflow Run API — The GET workflow run endpoint has been significantly optimized for speed. (#5993)
- Copilot Diff View Detects Nested Changes — The Copilot diff panel now correctly highlights changes inside nested conditional and loop blocks. (#5945)
- Output Parameter Size Protection — Workflow output parameter values are now capped to prevent oversized JSON payloads from causing downstream failures. (#5974)
Bug fixes
- Fixed scheduled workflow runs not appearing on the global Runs page. (#5949)
- Fixed webhook delivery silently failing on transient 403, 5xx, or network errors. (#5952)
- Fixed artifact downloads failing for clients that send HTTP Range request headers. (#5982)
- Fixed FileParserBlock failures not appearing in workflow run outputs. (#5964)
Week of May 4, 2026
While Loop block, multiple schedules per workflow, Google Sheets connector, browser session runs tab
New features
- While Loop Block — A new workflow block type that repeats a sub-workflow until a condition is met, enabling dynamic iteration without a fixed loop count. (#5809)
- Multiple Schedules per Workflow — Workflows can now have multiple independent schedules (e.g., run at 9am on weekdays and noon on weekends). (#5799)
- Google Sheets Connector (Open Source) — The Google Sheets connector authentication flow is now part of the open source package. (#5815)
- Runs Tab on Browser Session Page — The browser session detail page now includes a Runs tab listing all workflow runs associated with that session. (#5830)
- Per-Workflow Total Step Cap — A new workflow-run step cap lets you limit the maximum number of agent steps across all blocks in a single run. (#5834)
Improvements
- TOTP Scoped to Active Credential — Credential-derived TOTP values are now scoped to the active credential, preventing stale tokens from being used mid-run. (#5805)
- Browser Dialogs Surfaced to Agent — JavaScript dialogs (alerts, confirms, prompts) that the browser blocks are now surfaced to the agent so it can adapt its next action. (#5810)
Bug fixes
- Fixed the workflow-deleted banner not appearing on the run detail page when the parent workflow has been deleted. (#5800)
Week of April 27, 2026
MCP CLI for schedules and config, copilot hard-cancel, cursor in recordings, artifact URL improvements
New features
- Workflow Schedule Management via MCP — Manage workflow schedules from MCP clients (e.g., Claude Code) using the new
skyvern scheduleCLI commands. (#5713) - Org Settings via MCP — Configure organization settings from MCP clients using the new
skyvern configCLI tool. (#5694) - MCP OAuth Org Selection — Multi-org users can now choose which organization to connect to during MCP OAuth authentication. (#5699)
- Platform-Level JS Dialog Handler — The agent now handles JavaScript dialogs at the browser level using LLM-guided decision logic, improving reliability on dialog-heavy pages. (#5679)
- Print-to-PDF in Downloaded Files — Workflow blocks that trigger a browser print-to-PDF now expose the resulting file in the block’s downloaded files list. (#5784)
Improvements
- Cursor Visualization in Run Recordings — Playwright recordings now overlay a visible cursor, making it easy to follow the agent’s actions when reviewing a recording. (#5683)
- Short Signed Recording URLs — Browser session recording links are now compact signed URLs instead of full S3 paths. (#5686)
- Configurable Artifact URL Expiry — A settings field lets you control how long artifact content URLs stay valid before expiring. (#5690)
- Copilot Hard-Cancel — A hard-cancel button immediately stops an in-progress copilot run without waiting for the current step to finish. (#5726)
- Copilot Reuses Live Debug Browser Session — When testing a workflow from the debugger, the copilot now reuses the open browser session instead of starting a new one. (#5709)
- Copilot Surfaces WIP Workflow on Timeout — If the copilot times out or a test fails, it now offers the in-progress workflow so you can review and continue. (#5755)
- Pre-Filled Debugger Run Dialog — The Run dialog in the workflow debugger now pre-fills with values from your last run. (#5724)
- Copilot Atomic Workflow Accept — Accepting a copilot workflow proposal now applies all block changes atomically, preventing partial updates. (#5695)
- Loop Block Failure-Handling Clarity — The loop block UI has clearer controls and labels for configuring how failures inside the loop are handled. (#5731)
Bug fixes
- Fixed the in-progress workflow not being preserved when closing the copilot mid-run. (#5787)
Improvements
- Copilot Live Status Narration — The workflow editor copilot now displays a short live status line while it works, so you can see what the agent is doing instead of waiting in silence. (#5567)
-
Renamed Browser Profile Reset Action — The API endpoint for clearing a persisted browser session has been renamed from
/browser_session/refreshto/browser_session/reset_profilefor clarity. The old path remains available as a deprecated alias. (#5572) - Fewer Screenshots for API Runs — Screenshot capture frequency has been reduced for API-triggered runs, lowering storage overhead on long-running automations without affecting interactive sessions. (#5565)
Bug fixes
- Fixed the workflow copilot incorrectly proposing a workflow it had just failed to build. The copilot now only surfaces an Accept/Reject panel when the last test actually passed. (#5574)
- Fixed 2FA entry failing on pages with custom overlay input components where the real input field is hidden. The agent now types digit keys directly when no interactable input exists. (#5568)
v1.0.23 — April 14, 2026
Saudi Arabia proxy, workflow error mapping, smarter caching, MCP OAuth, AI output summaries, and reliability fixes
New features
-
Saudi Arabia Proxy Location — Added
RESIDENTIAL_SAas a proxy geolocation option for automations targeting Saudi Arabian websites. -
Workflow-Level Error Code Mapping — Workflows now support an
error_code_mappingfield that all blocks inherit automatically. Block-level mappings still take precedence, giving you a single place to define default error handling without repeating it on every block. (#5506) - AI Summarize for Workflow Run Outputs — A magic-wand “Summarize with AI” button now appears next to block and workflow run output sections, generating a plain-language summary of raw JSON output on demand. (#5556)
-
Reset Browser Profile API — A new
POST /workflows/{workflow_permanent_id}/browser_session/reset_profileendpoint clears a corrupted persisted browser session so the next run starts from a fresh browser state. (#5544) - MCP OAuth for Remote Clients — MCP clients (e.g. Claude Code, Codex) can now complete browser-based OAuth to authenticate with Skyvern without getting stuck in redirect chains. (#5558)
-
OpenClaw MCP Setup —
skyvern setup openclawandskyvern mcp switchnow support OpenClaw as an MCP client target for both remote and local stdio configurations. (#5536)
Improvements
- Smarter Extraction Cache Keys — The extraction cache now normalizes session-volatile tokens (random UUIDs, CSRF values, nonce query params, timestamps) before hashing cache keys. Semantically identical page visits now share cached extraction results, improving cache hit rates across workflow re-runs. (#5504)
-
Reduced Rate-Limit Errors on Extraction Prompts — Extraction prompts are now capped in size before being sent to the LLM. Oversized
previous_extracted_information,extracted_information_schema, and element trees are truncated rather than sent whole, significantly reducing429 RESOURCE_EXHAUSTEDerrors on high-volume workflows. (#5502) - Cross-Run Extraction Cache — Extraction results are now cached in Redis across workflow runs, scoped to the workflow. Recurring scheduled workflows skip redundant LLM calls when the page content hasn’t changed. (#5562)
- Copilot Survives Tab Switches and Reconnects — The workflow copilot agent now runs to completion even if the browser tab is closed or the connection drops mid-request, and the AI reply is persisted so it appears when you reconnect. (#5560)
- Copilot Fails Fast on Unresolvable URLs — The workflow copilot now immediately surfaces the real error (e.g. DNS resolution failure) and stops retrying when a URL cannot be reached, rather than reporting success. (#5563)
Bug fixes
- Fixed CSV parsing failing on files whose first header row exceeded ~1 MB, causing valid wide-format CSVs to be rejected with “Could not determine delimiter”. (#5510)
- Fixed a browser automation crash on sites with cross-origin stylesheets (e.g. MUI-based apps). CSS hover styles are now parsed entirely in memory without modifying the DOM, preventing React reconciliation errors that caused the agent to loop until max steps. (#5508)
- Fixed context-window overflow failures being misdiagnosed. Steps that fail due to oversized input are now correctly counted and short-circuit to a clear
LLM_ERRORfailure reason instead of triggering a redundant LLM-based failure analysis. (#5507) - Fixed workflow file-download blocks losing their configured
download_suffixat task finalization, causing downloaded files to be persisted without the expected filename suffix. (#5499) - Fixed cached scripts for non-ATS workflows incorrectly generating
fill_form()calls, which defeated the performance benefits of caching by delegating back to AI at runtime. (#5497) - Fixed the pagination navigator on the Workflow Past Runs and Run History pages being right-aligned instead of centered.
- Fixed run recordings missing an end timestamp and broken scrubbing. Recordings are now finalized with a stream-copy remux so players correctly show duration and support seeking. (#5551)
- Fixed tag input fields (e.g. skill set fields on job application forms) not selecting values from the dropdown. These fields are now correctly treated as auto-completion inputs. (#5557)
- Fixed per-step video sync spawning a redundant ffmpeg process on every step, causing CPU spikes and log noise. (#5559)
- Fixed workflow parameter edit and delete buttons being hidden when a parameter name was too long.
- Fixed webhook delivery failing silently when a stored webhook URL had a leading or trailing space. (#5550)
New features
- Adaptive Caching (Script Generation) — Skyvern can now learn from repeated workflow runs and generate cached scripts that speed up future executions. When a block runs successfully, Skyvern records a reusable script and replays it on subsequent runs, falling back to the AI agent only if the script fails. (#4908, #4916, #4917, #4920, #4922, #4931)
- Workflow Trigger Block — A new block type that lets one workflow trigger another from within the workflow editor. Chain workflows together as building blocks for complex automations. (#4885)
-
Browser-based CLI Signup — New users can sign up for Skyvern Cloud directly from the CLI. Running
skyvern signupopens a browser flow that creates your account and stores your API key locally. (#4925) -
Interactive ngrok Tunnel —
skyvern browser servecan now create an ngrok tunnel automatically, making it easy to expose your local browser to Skyvern Cloud without manual network configuration. (#4924) -
South Korea Proxy Location — Added
RESIDENTIAL_KRas a proxy geolocation option for automations targeting South Korean websites. (#4918) - Downloaded Files Tab — Browser session detail pages now include a Downloaded Files tab for viewing and accessing files captured during a session. (#4911)
-
CDP Proxy Authentication — Remote browser connections now support authenticated proxies via the CDP
Fetch.authRequiredprotocol. (#4936) - Remote Browser Download Interception — File downloads triggered by XHR requests and other non-navigation events are now captured when using remote CDP browser connections. (#4906, #4921, #4934)
Improvements
- Renamed “Login-Free” to “Saved Profile” — Clearer terminology throughout the UI. Browser session checkbox wording has also been improved. (#4914)
- TOTP Verification Improvements — Better timer handling, expired code retry, 2FA banner suppression, and more reliable goal-text extraction during TOTP flows. (#4860)
-
TOTP Webhook includes
workflow_permanent_id— Easier to identify which workflow is requesting a 2FA code. (#4871) -
Consolidated Gemini 3 Pro Model Key —
VERTEX_GEMINI_3_PROnow auto-resolves to the latest version, so you no longer need to update config when Google releases point versions. (#4926) - Browser Rotation for Remote Connections — Remote browser environments now support context rotation, improving reliability for long-running automations. (#4929)
Bug fixes
- Fixed a race condition where final task status could be overwritten by a late-arriving non-final status. (#4928)
- Conditional blocks no longer crash when evaluating empty or null parameters. (#4907)
- Browser sessions using
FORCE_BROWSER_SESSIONno longer time out prematurely. (#4903) - SVG-based captcha text is now correctly extracted during DOM scraping. (#4880)
- MCP remote tool handlers now route to the correct API environment. (#4869)
- MCP remote auth token comparison no longer fails on encrypted tokens. (#4863)
skyvern quickstartnow handles local PostgreSQL without a pre-existingskyvernrole. (#4878)- WebSocket URLs through ngrok tunnels now rewrite correctly for live browser streaming. (#4927)
New features
-
current_dateReserved Parameter — Workflows now have a built-incurrent_dateparameter that resolves to today’s date automatically. (#4854) - Reserved Parameters in Block Editor — The workflow block parameter picker now shows reserved system parameters, making them discoverable without memorizing names. (#4857)
-
Natural Language Loop
data_schema— Loop blocks driven by natural language extraction now support adata_schemafield for consistent output structure. (#4851) - Gemini 3.1 Pro and Inception Mercury-2 — Two new LLM engine options for your automations. (#4847)
-
MCP Server on API Service — The MCP remote server is now mounted at
/mcpon the existing API, eliminating the need for a separate process. (#4843)
Improvements
- Workflow save validation (HTTP 422) now returns clear, field-level error messages. (#4852)
- Browser launch errors now show actionable messages instead of raw exceptions. (#4844)
- Cloud LLM fallback overrides are now properly applied when selecting models. (#4839)
Bug fixes
New features
- Browser Profile Testing UI (Frontend) — The Browsers page now lets you launch a test run against a saved browser profile to confirm its login state is still valid before scheduling production workflows. (#4833)
- 2FA Verification Code UI and Notifications — When a workflow pauses for a 2FA code, the UI now shows a clear prompt and pushes a notification so you don’t miss it. (#4787)
Improvements
- 2FA Backend Cleanup — Refactored the 2FA pipeline to make code delivery more reliable across both the UI form and the API endpoint. (#4826)
New features
- Gated Admin Impersonation for MCP API Keys — Adds gated admin controls so support engineers can impersonate an organization scope when troubleshooting MCP-based automations, with audit-friendly access controls. (#4822)
Improvements
- Environment Variables Override Mounted API Keys — In Skyvern’s Streamlit-based deployment, env vars now take precedence over keys baked into the image, making local overrides simpler. (#4824)
New features
- Browser Profile Testing — Test browser profiles directly from the UI to verify that saved login sessions are still valid. Workflows can also run with a saved browser profile, enabling login-free automations that reuse authenticated sessions. (#4818)
Bug fixes
- When both a TOTP credential and a webhook are configured for 2FA, the credential is now correctly prioritized. (#4811)
New features
-
Skyvern Skills Package — The new
skyvern skillCLI command provides pre-built workflow templates and reference documentation for common automation patterns. (#4817) - Clear Cached Scripts API — A new endpoint lets you clear cached automation scripts for a workflow when a target website changes and you want to force Skyvern to re-learn. (#4809)
New features
- Automatic 2FA Detection Without TOTP Credentials — Skyvern now detects when a website asks for a 2FA code even without pre-configured TOTP credentials. The system pauses and waits for you to provide the code via the UI or webhook. (#4786)
- Full CLI Parity with MCP — The CLI now supports browser session management, credential management, block operations, and enhanced workflow commands. Everything available through MCP is now accessible from the command line. (#4789, #4792, #4793)
- Claude Opus 4.6 CUA Support — Anthropic’s Claude Opus 4.6 is now available as a Computer Use Agent model for driving browser interactions. (#4780)
Improvements
- The workflow run timeline now properly displays loop iterations and conditional branches, making complex runs easier to debug. (#4782)
Bug fixes
New features
- Unified Browser Task Block — The Navigation V1 and Task V2 blocks have been merged into a single Browser Task block. The block now exposes both engines as a dropdown, simplifying the workflow editor and reducing block-type confusion. (#4695)
- Block Discovery MCP Tools — Added MCP tools that let AI assistants enumerate available block types and their schemas, plus richer instructions for building workflows through MCP. (#4683)
- Edit Existing Credentials API — A new endpoint lets you update credential values without deleting and recreating them, preserving credential IDs across changes. (#4693)
-
Filter Workflow Runs by Error Code and Search Key — The workflow runs list endpoint now supports
error_codeandsearch_keyquery parameters for narrowing down failed runs. (#4694) - GPT-5 Mini in Model Selector — GPT-5 Mini is now selectable as an LLM engine. GPT-5 has been hidden in favor of more reliable variants. (#4686)
Improvements
-
Block Failure Reasons Surfaced in UI — Every block type now shows its
failure_reasonin the run timeline, making debugging non-obvious failures faster. (#4672) - Webhook Payload Truncation in Logs — Large webhook payloads are now truncated in log entries, keeping logs readable without losing context. (#4701)
Bug fixes
- Fixed the cursor jumping to the end while editing conditional expressions in the workflow editor. (#4682)
- Fixed dotted Jinja variables (e.g.
{{ block_output.field }}) rendering incorrectly in the expression preview. (#4684) - The API now returns 404 instead of 500 when a workflow is not found. (#4699)
v1.0.13 — February 10, 2026
Cached scripts for control-flow blocks, OTEL, and workflow editor polish
New features
- Conditional Block Caching — The script cache now supports Conditional blocks, so workflows that branch based on page state can replay from cache instead of re-running the AI agent. (#4642)
- OpenTelemetry Backend — Skyvern can now export metrics, traces, and logs to any OTEL-compatible collector for centralized observability. (#4632)
- Workflow API Route Reorganization — Workflow API endpoints have been split into focused routers, making the OpenAPI surface easier to navigate. (#4628)
Improvements
- Workflow Copilot Auto-Opens for Empty Workflows — When you create a new workflow with no blocks yet, the Workflow Copilot opens by default to help you get started. (#4625)
- Run Workflow Button Moved to Top — The Run button now lives at the top of the workflow editor for easier access. (#4626)
- Skip LLM for Single-Match Location Autocomplete — Location autocomplete now skips the LLM call when only one option matches the user’s input, reducing cost and latency. (#4631)
- Improved Version History Icon — The workflow version history button now uses an icon that better represents document versions. (#4640)
Bug fixes
- Fixed
ForLoopblocks failing to execute under script caching (regression from v1.0.12). (#4630) - Fixed
ActionDragPathsubscript error in CUA drag-action parsing. (#4623) - Fixed cron-scheduled tasks getting stuck with “task not found” errors. (#4627)
- Fixed parameter creation dialog not clearing default-value state when switching to credential type. (#4622)
- Fixed debugger loop-block visual overlap when the status row appeared. (#4641)
New features
- Task V2 Termination — Task V2 (the planner-agent-validator system) can now be terminated mid-run via API, matching the cancel behavior already available for Task V1. (#4589)
-
ForLoop Block Caching — Cached scripts now support
ForLoopblocks. Workflows that iterate over lists can replay from cache after the first successful run. (#4600) - Conditional Block Caching — Initial support for caching workflows that include conditional branching. (#4603)
-
run_withParameter for Run Task — Therun_taskendpoint now accepts arun_withparameter so you can target Task V2 (or future variants) without changing the endpoint. (#4576) -
skyvern run devCommand — A new CLI command spins up a Superset workspace alongside the standard dev environment for local analytics work. (#4593)
Improvements
- All Branch Evaluations Shown in Conditional Block Timeline — The run timeline now shows every conditional branch’s evaluation result, not just the chosen one — useful when debugging “why did it pick that branch?” (#4577)
- Sidebar Expand/Collapse Icon — Replaced the pin icon with a chevron, matching common conventions. (#4586)
- PDF Parsing Token Cap — PDF parsing now caps token volume per request to avoid total failure on very large documents. (#4602)
-
DATABASE_STRINGParameter on Quickstart —skyvern quickstartnow accepts aDATABASE_STRINGargument for explicit DB connection configuration. (#4580)
Bug fixes
New features
- Workflow Copilot Generally Available — The Workflow Copilot is now enabled for all users. Describe what you want in natural language and it generates a multi-block workflow you can edit. (#4533)
- Browser Sessions v2 Frontend — The new browser session management UI lands on the Browsers page, building on the v2 backend shipped in v1.0.10. (#4514)
-
TOTP Endpoint OTP Type Filter — The TOTP listing endpoint now accepts an
otp_typequery parameter for filtering numeric codes vs. magic links. (#4529) - Mintlify Documentation Setup — Skyvern’s documentation site moves to Mintlify, with redirects for the legacy Fern URLs. (#4516)
Improvements
-
Async File I/O via aiofiles — Replaced blocking file I/O with
aiofilesthroughout the agent runtime, improving throughput on I/O-heavy workloads. (#4520) -
Cached Experimentation Provider TTL —
BaseExperimentationProvidernow caches feature-flag lookups with a per-item TTL, reducing pressure on the experimentation backend. (#4536, #4540)
Bug fixes
- Fixed
ai_fallbacknot being read correctly from the database for cached workflow runs. (#4524) - Fixed iframe-tree extraction crashing when the page raised a transient exception. (#4530)
- Fixed the workflow version comparison view ordering versions on the wrong sides. (#4531)
- Fixed the workflow history panel scroll behavior in debug mode. (#4532)
- Fixed
TypeErrorwhen comparing offset-naive and offset-aware datetimes during workflow scheduling. (#4534) - Fixed schema regeneration overwriting unchanged block field names. (#4535)
- Fixed
uvicornreload breaking on Windows due to async event loop policy. (#4538)
v1.0.10 — January 22, 2026
Browser Sessions v2 backend, general text CAPTCHA, and TOTP webhook retries
New features
- Browser Sessions v2 (Backend) — A new persistent browser session architecture with cleaner lifecycle management, better resource reuse, and improved reliability for long-running automations. The frontend follows in v1.0.11. (#4515)
- General Text CAPTCHA Solver — Skyvern can now solve a wider range of text-based CAPTCHAs without site-specific configuration. (#4517)
- TOTP Webhook Retries — TOTP webhook delivery now retries automatically on transient failures, reducing the rate of “no code received” errors during 2FA flows. (#4518)
-
Block-Label Validation in
run_blocks— Therun_blocksendpoint now validates block labels up front, returning a clear error instead of failing partway through execution. (#4500)
Improvements
- Confirmation Dialog Shows Affected Blocks — Deleting a parameter or block now lists every block that references it, so you don’t accidentally break downstream logic. (#4519)
- Workflow Updates Return 409 on Race — Concurrent workflow updates now return HTTP 409 instead of silently overwriting each other. (#4510)
- Tiktoken Caching — Tokenizer instances are now cached, cutting per-step overhead on token counting. (#4521)
Bug fixes
v1.0.9 — January 20, 2026
Print PDF block, Workflow Copilot streaming, and persistent session billing
New features
- Print PDF Block — A new workflow block that prints the current page to PDF and saves it to your run’s downloaded files, useful for archiving receipts, invoices, and reports. (#4452)
- HTTP File Downloads — The HTTP Request block can now download files directly via HTTP (not just GET JSON), enabling workflows that pull artifacts from authenticated APIs. (#4440)
- Workflow Copilot Streaming with Cancel — The Workflow Copilot now streams its responses with a cancel button, so you can stop generation mid-stream if you want to refine your prompt. (#4437, #4456)
- “Execute on Any Outcome” (Finally) Block Option — Blocks can now be configured to run regardless of whether prior blocks succeeded, enabling cleanup steps and “always send report” workflows. (#4443)
- Persistent Browser Session Uptime Billing — Billing v2 now meters persistent browser session uptime separately, with PostHog feature flags controlling rollout. (#4444)
- GPT-5 Mini Flex Engine — Added GPT-5 Mini Flex as an available LLM engine. (#4432)
- Clipboard Copy over HTTP — The browser now exposes clipboard copy functionality that works in HTTP-served browser sessions, not just HTTPS. (#4446)
Improvements
- HTTP Block Boolean and Integer Templates — The HTTP Request block now correctly passes boolean and integer template values without coercing them to strings. (#4435)
- Bitwarden and Azure Vault Tooltips — Added inline help tooltips explaining how to set up Bitwarden and Azure Key Vault credential sources. (#4447)
- Smaller S3 Objects Use STANDARD Tier — Storage cost optimization: small artifacts now use STANDARD instead of GLACIER_IR. (#4453)
- Reduced Max SVG Parsing — Lowered the SVG parsing cap to prevent runaway memory usage on pathological pages. (#4430)
New features
- Workflow Copilot v1 — The first version of the Workflow Copilot ships behind a feature flag. Describe a workflow in natural language and the copilot generates blocks, parameters, and connections you can edit on the canvas. (#4401, #4413, #4416, #4423)
- Per-Action Credit Billing (Billing v2) — A new billing model meters credits per browser action instead of per step, giving more predictable cost behavior on action-heavy workflows. (#4398)
- Azure Key Vault Secret Storage — Skyvern can now store and retrieve credentials from Azure Key Vault as a managed secret backend. (#4384)
- Conditional Inside Conditional — Conditional blocks can now be nested inside other conditional blocks for richer branching logic. (#4362)
-
Reference Workflow Output in Sub-Blocks — Blocks can now reference upstream
workflow_outputvariables, simplifying multi-stage workflows. (#4414) - Browser Type Choice for Persistent Browser Sessions — Persistent sessions now let you choose the browser type (Chromium, etc.) at create time. (#4406)
- Browser Extension Support for PBS — Persistent browser sessions can launch with a specified browser extension. (#4364)
-
Step Count in Webhooks and Run Payloads — Webhook payloads and
get_runresponses now includestep_countfor cost reconciliation. (#4410) - PH (Philippines) Proxy Location — Added Philippines as a residential proxy option. (#4395)
- TextPromptBlock Artifact Storage — TextPromptBlock now saves the LLM prompt and response as run artifacts for debugging. (#4361)
- Action–Screenshot Linking — Actions in the run timeline now link directly to the screenshot captured at the time of execution, so you can see what the agent saw when it made each decision. (#4403, #4404)
Improvements
- Clearer Errors for Missing Workflow Parameters — Missing required parameters now return a clear HTTP 400 instead of HTTP 500. (#4380)
-
Empty-String Defaults for String Parameters — Workflow string parameters without explicit defaults now initialize to
""instead ofnull, matching common Jinja-template expectations. (#4382) -
HAR Files Use Zstd Compression — HAR archives now ship as
.har.zst, cutting storage size significantly with no fidelity loss. (#4420) -
Hydrated Workflow Title in Run Responses —
workflow_runresponses now include the workflow title for cleaner logging without an extra API call. (#4363) -
Cached Workflow-Script Lookup —
get_workflow_script_by_cache_key_valueis now cached and post-action execution can re-enable code generation. (#4385) - Updated Datacenter Proxy Provider — Datacenter proxies now route through a new provider with broader IP coverage. (#4386)
- Improved Conditional NL Branch Tooltip — Updated tooltip and placeholder text on conditional blocks to better describe how natural-language branches are evaluated. (#4368, #4369)
-
OLLAMA Vision Support Toggle — Added
OLLAMA_SUPPORTS_VISIONenv var to enable vision-capable Ollama models. (#4351)
Bug fixes
- Fixed older credentials becoming inaccessible after an internal schema change. (#4358)
- Fixed scrolling actions misfiring on pages with overflow-hidden ancestors. (#4389)
- Fixed
close_browser_on_completionnot being honored during workflow run cleanup. (#4381) - Fixed run-ID generation collisions under high concurrency. (#4383)
- Fixed empty browser-extension config crashing PBS launch. (#4365)
- Fixed wrong screenshots being attached to certain actions. (#4400)
- Fixed nested DB connection management in workflow execution. (#4402, #4411)
- Fixed
local variable not definederrors in cached-action execution. (#4376) - Fixed artifacts endpoint incorrectly including
api/in the path. (#4417) - Fixed S3 storage class selection for small objects (
_get_storage_class_for_org). (#4424) - Fixed cached actions executing without a brief settling delay. (#4418)

