v0.2.4
Skyvern-AI/skyvernv0.2.4Jul 9, 2025by wintonzheng
AI Summary
Adds VNC streaming capabilities and enhances credential management. It also introduces user-defined browser headers and Workflow CodeGen.
Key Highlights
- VNC streaming component for workflows
- User-defined browser headers
- 1Password integration
- Workflow CodeGen
- Dependency upgrades (tornado, axios, etc.)
New Features
- VNC streaming component
- User-defined browser headers
- 1Password integration
- Workflow CodeGen
- Dependency upgrades
Full Release Notes
## What's Changed * edit 1pass parameter by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2732 * added raw dada logs by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2736 * fix file exists issue in create_folder_if_not_exist by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2731 * validate credential IDs before workflow execution by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2737 * Workflow CodeGen by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2740 * skip llm artifact creation when empty prompt by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2742 * use browser session id in taskv2 POST by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2744 * add browser session id to task settings by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2745 * add novnc in preparation for cloud sync of vnc streaming web component by @jomido in https://github.com/Skyvern-AI/skyvern/pull/2743 * add a vnc streaming component for workflows by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2746 * handle null organization_id in artifact queries for backward compatibility by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2748 * added 1 password in the dropdown by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2733 * user defined browser header by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2752 * feat: add task status mapping and failure reason handling for block results by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2594 * remove unused index on primary keys by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2754 * add artifacts_org_created_at_index for artifacts table by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2755 * Update prompting-guide.mdx by @kati3-design in https://github.com/Skyvern-AI/skyvern/pull/2758 * remove <br>s which break fern docs by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2759 * task v2 doesn't have failure_reason by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2760 * frontend support browser header by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2761 * fix extra headers label/explainer by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2762 * refactored skyvern workflow start cli by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2615 * Fix artifact retrieval and URL generation in get_run_artifacts endpoint by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2765 * added proper svg by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2750 * Added Kubernetes deployment files by @cristian-branet in https://github.com/Skyvern-AI/skyvern/pull/2719 * fix k8s yaml format by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2766 * Automatically write workflow_run_id if one isn't specified for a specific artifact by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2767 * fix azure LLM key by @rajaie in https://github.com/Skyvern-AI/skyvern/pull/2769 * add taskv2 and task id to artifacts by default if present in context by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2770 * Fix credential naming in UI to use 'credentials', 'credentials_1', etc. by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2773 * fix task v2 block dont have output by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2778 * parse action context before triggering the sequential click logic by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2780 * Fix OnePassword parameter labeling to show 'credential' instead of 'onepassword' by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2774 * WebSocket Command Channel by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2782 * in which pylon replaces intercom by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2783 * Improve TOTP docs & README & Make CLI actually support typer + py3.11 by @suchintan in https://github.com/Skyvern-AI/skyvern/pull/2791 * Better error message on screen timeouts by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2793 * update verification code prompt by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2797 * fallback to take screenshot with animation allowed by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2798 * Add Run id as a parameter to the artifacts table by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2799 * Quick task id bugfix by @suchintan in https://github.com/Skyvern-AI/skyvern/pull/2800 * do not parse the dropped element twice by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2801 * Remove x-api-key from logs by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2802 * Add RESIDENTIAL_AU proxy support for Australia by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2803 * udated pyproject to fix typer errors by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2804 * Add RESIDENTIAL_AU frontend support for Australia proxies by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2805 * Improve listbox option selection handling by using get() method and adding a check for None by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2788 * Jon/browser stream component by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2808 * Bump llama-index from 0.12.19 to 0.12.28 in /integrations/llama_index by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2809 * Bump h11 from 0.14.0 to 0.16.0 in /integrations/llama_index by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2810 * Bump python-jose from 3.3.0 to 3.4.0 by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2811 * Bump body-parser and express in /skyvern-frontend by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2816 * Bump tornado from 6.4.2 to 6.5 by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2818 * Bump protobuf from 5.29.3 to 5.29.5 in /integrations/llama_index by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2812 * more robust front-end detection bcaz skyvern run ui not running randomly so improving the discoverablity by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2819 * Enable pyupgrade on skyvern/cli by @asherf in https://github.com/Skyvern-AI/skyvern/pull/2806 * Fix typos by @asherf in https://github.com/Skyvern-AI/skyvern/pull/2807 * Bump python-jose from 3.3.0 to 3.4.0 by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2824 * Bump tornado from 6.4.2 to 6.5 by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2825 * Bump h11 from 0.14.0 to 0.16.0 in /integrations/langchain by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2822 * Bump protobuf from 5.29.3 to 5.29.5 in /integrations/langchain by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2823 * Bump braces from 3.0.2 to 3.0.3 in /skyvern-frontend by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2820 * Bump urllib3 from 2.4.0 to 2.5.0 by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2821 * Bump requests from 2.32.3 to 2.32.4 in /integrations/llama_index by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2833 * Bump @babel/runtime from 7.24.1 to 7.27.6 in /skyvern-frontend by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2831 * Bump micromatch and lint-staged in /skyvern-frontend by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2830 * Bump brace-expansion from 1.1.11 to 1.1.12 in /skyvern-frontend by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2827 * Bump jinja2 from 3.1.5 to 3.1.6 in /integrations/langchain by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2832 * Bump vite from 5.2.2 to 5.4.19 in /skyvern-frontend by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2834 * Bump axios from 1.6.8 to 1.8.2 in /skyvern-frontend by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2835 * Bump urllib3 from 2.3.0 to 2.5.0 in /integrations/langchain by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2836 * Bump requests from 2.32.3 to 2.32.4 in /integrations/langchain by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2837 * Bump python-multipart from 0.0.6 to 0.0.18 by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2838 * Bump protobuf from 6.30.2 to 6.31.1 by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2839 * Bump jinja2 from 3.1.5 to 3.1.6 in /integrations/llama_index by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2842 * Bump urllib3 from 2.3.0 to 2.5.0 in /integrations/llama_index by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2843 * Bump requests from 2.32.3 to 2.32.4 by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2844 * add pointer detect for h element by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2846 * fallback to nanoid when crypto fails by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/2845 * extend select agent to support date picker by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2849 * add gemini 2 5 support by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2850 * scroll back after screenshot by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2851 * Bump cross-spawn from 7.0.3 to 7.0.6 in /integrations/n8n by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2813 * Bump semver from 5.7.1 to 5.7.2 in /integrations/n8n by @dependabot in https://github.com/Skyvern-AI/skyvern/pull/2814 * fixed the openrouter stuff by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2630 * Clean up alembic migrations: fix HTTP request block columns and add parameters column by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2848 * enable inline import alert and fix inline imports by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2856 * Add CLI stop server command by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2775 * laminar ovservability by @skull8888888 in https://github.com/Skyvern-AI/skyvern/pull/2857 * Add CLI stop ui command by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2776 * Add CLI stop all command by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2777 * update image reference in the observability doc by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2863 * fix poetry lock by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2864 * rename variable by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2865 * resolve N8N community node issues by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2861 * add browser_session_id to these tables: tasks, workflow_runs & task v2 by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2869 * create task, task v2 and workflow run with browser_session_id by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2872 * map sync pr commenter to their own gh account by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2566 * Update API specifications with fern api update by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2871 * use SKYVERN_CLOUD_GH_PAT as the main sync github token by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2873 * validate browser session id when running tasks or workflows by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2874 * Refactor Skyvern node operations to consolidate display options and improve code organization by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2868 * fix sync to cloud by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2877 * implement an endpoint for running one or more labelled blocks in a workflow by @jomido in https://github.com/Skyvern-AI/skyvern/pull/2878 * Jon/optimistic browser session id fetch by @jomido in https://github.com/Skyvern-AI/skyvern/pull/2879 * Enhance WorkflowNodeLibraryPanel with input focus management using useRef and useEffect for improved user experience by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2880 * Fix fern artifacts tab by @suchintan in https://github.com/Skyvern-AI/skyvern/pull/2875 * update kash's git email by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2881 * add .cursor/rules to gitignore by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2883 * get back code removed by accidental sync by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2884 * increase max step for datapicker agent by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/2886 * laminar integration by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/2887 * Re-enable codeflash optimizations by @misrasaurabh1 in https://github.com/Skyvern-AI/skyvern/pull/2891 * MVP Debugger UI by @jomido in https://github.com/Skyvern-AI/skyvern/pull/2888 * Fix dependabot plus MCP CLI type error by @suchintan in https://github.com/Skyvern-AI/skyvern/pull/2885 * Fix MCP Upgrade in langchain + llamaindex by @suchintan in https://github.com/Skyvern-AI/skyvern/pull/2894 * add credentials to new axios client by @jomido in https://github.com/Skyvern-AI/skyvern/pull/2897 * APIKeyNotFound Exception by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2892 * Upgrade skyvern front-end to resolve dependabot alerts by @suchintan in https://github.com/Skyvern-AI/skyvern/pull/2895 * add session pool by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/2899 * added UI for HTTP block by @Prakashmaheshwaran in https://github.com/Skyvern-AI/skyvern/pull/2900 * use minutes for pbs timeout by @jomido in https://github.com/Skyvern-AI/skyvern/pull/2901 * add skyvern element check and uncheck by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/2902 * parameterize data schema in workflow by @LawyZheng in https://github.com/Skyvern-AI/skyvern/pull/2903 * parametrize 1password vault_id and item_id by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2898 * Create forloop-guide.mdx by @kati3-design in https://github.com/Skyvern-AI/skyvern/pull/2890 * Upgrade n8n worklfow to resolve axios dependabot alert by @suchintan in https://github.com/Skyvern-AI/skyvern/pull/2893 * Add files via upload - ForLoop Guide by @kati3-design in https://github.com/Skyvern-AI/skyvern/pull/2889 * MCP Upgrade by @suchintan in https://github.com/Skyvern-AI/skyvern/pull/2904 * update suchintan email in sync PR by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2906 * fix fastmcp dependency and the mis-synced code by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2908 * fix retry webhook link in the 'Webhook FAQs' page by @wintonzheng in https://github.com/Skyvern-AI/skyvern/pull/2909 * Jon/browser session stream by @jomido in https://github.com/Skyvern-AI/skyvern/pull/2910 * Jon/browser session view by @jomido in https://github.com/Skyvern-AI/skyvern/pull/2911 ## New Contributors * @rajaie made their first contribution in https://github.com/Skyvern-AI/skyvern/pull/2769 * @dependabot made their first contribution in https://github.com/Skyvern-AI/skyvern/pull/2809 * @skull8888888 made their first contribution in https://github.com/Skyvern-AI/skyvern/pull/2857 **Full Changelog**: https://github.com/Skyvern-AI/skyvern/compare/v0.2.3...v0.2.4