v0.1.66

Skyvern-AI/skyvernv0.1.66Apr 1, 2025by wintonzheng

AI Summary

A major release focusing on workflow engine improvements, adding nested loops, file upload blocks, and refactoring the API structure (unified run_task, official router v1). It also adds support for CDP connect browser type.

Key Highlights

  • Added support for nested loop blocks.
  • Added file upload block (backend and UI).
  • Refactored API (unified run_task, official router v1).
  • Added support for CDP connect browser type.
  • Improved block output Jinja reference.

Breaking Changes

  • Renamed TaskRunType to RunType.
  • Renamed TaskRun pydantic model to Run.
  • Renamed TaskRunStatus to RunStatus.
  • Renamed old router to legacy_base_router.

New Features

  • Nested loop blocks support.
  • File upload block.
  • CDP connect browser type support.

Full Release Notes

## What's Changed
* doc for extracted_information_schema by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1971
* ⚡️ Speed up method `SkyvernElement.get_id` by 20% by @misrasaurabh1 in https://github.com/Skyvern-AI/skyvern/pull/1912
* Do not run complete verification for extract blocks or tasks without nav goal + disable complete verification for nav blocks in task v2 run by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1973
* complete verify for DownloadFileBlock by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1975
* dont rasie exeption when multiple actions for actionblock by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1976
* Allow nested loop blocks by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1977
* task v2 support jinja style by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1978
* show outputs in workflow main page by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1982
* add tests dir needed for codeflash by @KRRT7 in https://github.com/Skyvern-AI/skyvern/pull/1957
* Add browser session id permission checking for task v1, v2, and workflow runs by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1980
* workflow run should also run permission checker with browser_session_id by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1984
* track reasoning token and cached token by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1985
* fix cached_tokens & completion_tokens by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1986
* fix StepModel.reasoning_token_count and cached_token_count by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1987
* only show output or files when there is at least one thing to show by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1989
* fern python sdk setup by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1938
* Workflow output hide whatever is not present by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1991
* shu/add fern overrides by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1990
* add agent tag for get task v1 endpoint by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1992
* fix servers in openapi doc by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1993
* make 'element is blocked by another element' log a debug log by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1996
* fail task right away when scraping failed - no need to retry scraping failure at step level by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1997
* update latest openapi by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1994
* revert checkbox detect enhance by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1998
* chore: upgrade fern to `0.56.29` by @dsinghvi in https://github.com/Skyvern-AI/skyvern/pull/1999
* file upload block backend by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2000
* shu/file upload block ui by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2003
* remove unused libraries by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2004
* fix get_or_create_page by ensuring the page is returned by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1830
* support new browser type: cdp connect by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1875
* 🔄 synced local 'skyvern/' with remote 'skyvern/' by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2005
* improve block output jinja reference by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2006
* Consolidate identical layout components by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2007
* auto version bump after github release by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/1988
* improve navigation error handle by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2008
* migrate ProxyLocation to skyvern.schemas.runs by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2011
* unified run_task api by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2012
* official api router v1 by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2013
* migrate url validators to skyvern.utils by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2014
* make aws keys work with credentials by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2015
* rename js sleep to asyncSleepFor by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2016
* code block validation by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2017
* improve date picker selection by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2018
* fix a bug with file upload node by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2019
* Put max height on file panel by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2020
* truncate parameter names when they exceed the given width by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2021
* update too many parameters created when using login block by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2023
* Fix timeline building infinite loop by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2024
* Disable complete verification for returend complete_action when complete_verification flag is set to False by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2026
* fix children not found error in svg conversion by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2027
* check null for document.body and document.documentElement inside function isWindowScrollable by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2028
* add safeWindowScroll function in js by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2029
* safeScrollToTop by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2030
* Handle createPolicy gracefully by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2031
* update window.scroll/scrollTo syntax by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2032
* Render nested blocks correctly in workflow run timeline by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2033
* Show task v2 output instead of extracted information by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2034
* Add opt-in message to CodeBlock by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2025
* update code block node comments by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2035
* update openapi tag for browser session endpoints by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2036
* update autogenerated client sdk by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2010
* skyvern run mcp cli by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2039
* use the BROWSER_REMOTE_DEBUGGING_URL for cdp connect directly by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2040
* TaskRunType -> RunType by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2041
* TaskRun pydantic model gets renamed to Run by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2042
* rename TaskRunStatus -> RunStatus by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2043
* update SkyvernClient using generated client code by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2044
* shu/test discriminated run response schema by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2046
* support get_run, run_task in SkyvernAgent by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2047
* Rename old router to legacy_base_router by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2048
* support get_run, run_task in SkyvernAgent by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2049
* fix skyvern agent local by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2050
* add failure_reason to the TaskRunRepsonse for task v2 by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2052
* upgrade versions and autogenerated client code by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2053
* fix SkyvernClient by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2055

## New Contributors
* @dsinghvi made their first contribution in https://github.com/Skyvern-AI/skyvern/pull/1999

**Full Changelog**: https://github.com/Skyvern-AI/skyvern/compare/v0.1.65...v0.1.66