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