v1.0.31
Skyvern-AI/skyvernv1.0.31Apr 14, 2026by github-actions[bot]
AI Summary
Significant improvements to caching mechanisms and parallel execution, alongside a major repository design pattern refactor and security hardening.
Key Highlights
- Cache data-extraction-summary across loop iterations
- Parallel workflow loops (backend engine, sessions, concurrency)
- Repository Design Pattern implementation
- Security updates (litellm, fastmcp)
- Agent-aware CLI with JSON envelope
New Features
- Cache extract-information results per workflow run
- Parallel loop execution engine
- Repository Design Pattern refactor
- Agent-aware CLI with --json envelope
- Structured telemetry fields for extraction-cache
Full Release Notes
## What's Changed Version bumped from 1.0.32 to 1.0.31 ### Recent Changes - chore: Add GPT-5.4 mini model support (#5782) (c321bd60) - fix(SKY-9430): bypass parse_api_response for reviewer LLM calls (#5781) (d12571e6) - docs: align self-host README + docs with SQLite-first default (#5774) (d06ee9c1) - fix(SKY-9451): keep WIP workflow on copilot errors (#5779) (2e11376f) - docs(compose): clarify env-file vs inline-environment contract (#5773) (e214989f) **Full Changelog**: https://github.com/Skyvern-AI/skyvern/compare/v1.0.32...v1.0.31 ## What's Changed * SKY-8818: progressive wait_until for file_download navigation + low max_steps observability by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5431 * fix: resolve workflow parameter templates in cached extraction prompts by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/5432 * fix: use dynamic selectors for navigation blocks inside for-loops by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/5434 * feat: pass block termination criteria to script reviewer by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/5435 * fix(SKY-8803): unblock concurrent browser launches in parallel for-loop engine by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5436 * fix: validate bare interaction calls missing selector and ai argument by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/5437 * fix(SKY-8810): fix US_WA timezone and set LANG=en_US.UTF-8 on Hetzner pods by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/5438 * fix: classify proxy failures as PROXY_ERROR, not BROWSER_ERROR by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/5441 * fix: bump fastmcp minimum to >=3.2.0 in integration overrides by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/5442 * docs: move Glama badge to MCP section, fix docs link by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/5414 * [NO-TICKET] Bump + test deps by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5443 * fix: prevent agent-mode runs from triggering script regeneration by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/5444 * chore: bump eslint-plugin-react-refresh to ^0.4.26 by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/5452 * Revert Parallel Workflow Loops (SKY-8175, SKY-8176, SKY-8177, SKY-8180) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5445 * Remove unnecessary S3 PUTs by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/5448 * fix: resolve noVNC RFB constructor failure after Vite 8 upgrade by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/5455 * fix: prevent loop block UI overflow in run details sidebar by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5456 * [SKY-8863] Address spillover by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5457 * [Oncall] [SKY-8859] Log malformed auth token shape without changing auth behavior by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/5458 * Cache extract-information results per workflow run (SKY-8819) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5459 * [NO-TICKET] Remove dir, add to ignore, add pr template by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5453 * [NO-TICKET] Preserve zero token counts in LLM duration metrics log by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5462 * fix: ScriptTerminationException swallowed by download/action/login block runners by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/5463 * Cache data-extraction-summary LLM calls across loop iterations by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/5465 * feat: add Gemini flex service tier configs for 50% cost savings by @pedrohsdb in https://github.com/Skyvern-AI/skyvern/pull/5466 * fix: remove litellm git source that breaks Docker build by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/5467 * docs: Add keywords and descriptions for every page, rewrote llms.txt, added another redirect by @kunalm2345 in https://github.com/Skyvern-AI/skyvern/pull/5461 * fix(SKY-8778): click-first + re-scrape diff for shadow DOM comboboxes by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/5471 * Update API specifications with fern api update by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/5470 * Normalize feature flag resolution logging by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/5472 * Add andrewneilson to auto-merge-sync by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/5473 * [NO-TICKET] add name to merge sync by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5474 * fix: fail immediately on non-retriable navigation errors (SKY-8875) by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/4976 * fix: prevent block output from leaking across loop iterations (#SKY-8835) by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/5475 * Remove Glama watermarks by @suchintan in https://github.com/Skyvern-AI/skyvern/pull/5476 * Fix loop-scoped Task V2 download filtering by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/5477 * Optimize step count query to fix DB timeouts (SKY-8910) by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/5478 * SKY-8781 preserve login credential keys on MCP workflow updates by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/5479 * fix: align Items per page pagination styling across runs pages (SKY-8868) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5480 * feat(extraction-cache): structured telemetry fields (SKY-8870) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5482 * feat(extraction-cache): shadow-mode correctness verification (SKY-8871) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5483 * Add undo/redo to workflow editor (SKY-8869) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5484 * fix(extraction-shadow): follow-up to SKY-8871 — cycle, dead code, comment nits by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5486 * SKY-8879 copilot-stack/01: hygiene carve-outs by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/5489 * feat: add CLI telemetry to close PostHog blind spot by @marcmuon in https://github.com/Skyvern-AI/skyvern/pull/5491 * Add andrewneilson to sync-skyvern-cloud workflow by @andrewneilson in https://github.com/Skyvern-AI/skyvern/pull/5490 * fix: scope downloaded files to current task block (#SKY-8914) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5492 * feat: add summarize-output LLM endpoint for workflow runs (SKY-8857) by @AronPerez in https://github.com/Skyvern-AI/skyvern/pull/5493 * Bump version to 1.0.31 by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/5494 **Full Changelog**: https://github.com/Skyvern-AI/skyvern/compare/v1.0.30...v1.0.31