Releases: dyad-sh/dyad
v0.40.0-beta.1
Full release notes: https://www.dyad.sh/docs/releases/0.40.0-beta.1
What's Changed
- Allow wwwillchen-bot in claude PR review workflow by @wwwillchen in #2882
- fix: improve terminated stream retry telemetry and bump retries to 3 by @wwwillchen in #2877
- fix(triage): make issue title updates much more conservative by @wwwillchen-bot in #2888
- Propagate request id properly for OpenAI Response API model (e.g. GPT 5.2) by @wwwillchen in #2876
- Switch PR review workflow runner to macOS ARM self-hosted by @wwwillchen in #2893
- fix: block unsafe root-like delete_file paths by @wwwillchen in #2859
- chore: add princeaden1 to PR review responder allowed users by @wwwillchen in #2894
- Refactor Prompt Library to Support Slug-Based Skills and Slash Commands by @princeaden1 in #2712
- ci: ensure Homebrew paths available for gh on self-hosted macOS runners by @wwwillchen in #2896
- Allow selecting an app in home chat input by @azizmejri1 in #2832
- chore: add dyadbot to allowlists by @wwwillchen in #2899
- fix: deflake E2E tests (partial_response.spec.ts) by @dyadbot in #2907
- feat: add voice input feature with transcription support by @princeaden1 in #2344
- fix: sanitize tool-call inputs to prevent LiteLLM invalid dict error by @wwwillchen-bot in #2890
- fix: prevent duplicate release notes checks using ref by @wwwillchen-bot in #2912
- ci: cancel claude rebase when PR closes by @wwwillchen in #2915
- feat: add max tool call steps setting by @wwwillchen-bot in #2900
- feat: capture uncaught IPC handler errors as PostHog exceptions by @wwwillchen in #2886
- Fix preview iframe URL error & create debugging skill by @wwwillchen in #2887
- fix: handle branch deletion when branch doesn't exist locally by @wwwillchen-bot in #2910
- feat: allow multiple apps to run concurrently with garbage collection by @wwwillchen-bot in #2825
- Add image selection and swapping in the visual editor by @azizmejri1 in #2717
- Adding a cleanup routine for media files by @azizmejri1 in #2842
- ci: disable package manager cache in release workflow by @wwwillchen-bot in #2929
- Use GitHub App tokens in Claude workflows by @wwwillchen in #2936
- chore: remove merge-pr workflow by @wwwillchen-bot in #2930
- Bump to v0.39.0 by @wwwillchen in #2954
- Create promote-beta-to-stable skill by @wwwillchen in #2955
- Adding a tip banner for chat notification by @azizmejri1 in #2901
- Allow users to preview generated images by @azizmejri1 in #2918
- fix: refresh user budget when pro key is set via deep link by @wwwillchen in #2956
- Web fetching tool by @azizmejri1 in #2920
- ci: harden GitHub Actions workflow permissions by @wwwillchen-bot in #2928
- chore: enable display_report and use deterministic git push by @wwwillchen in #2959
- chore: add dyad-assistant to all trusted author lists by @wwwillchen in #2963
- feat: gate home chat app selector behind experiment setting by @wwwillchen in #2964
- Fix: firing queued messages when in other chat by @azizmejri1 in #2931
- Fix error message handling in local agent error responses by @wwwillchen in #2983
- fix: check staged changes before committing to prevent 'nothing to commit' error by @wwwillchen-bot in #2991
- Add dynamic language model catalog support by @wwwillchen in #2914
- feat: add image utilities and improve web crawl token handling by @wwwillchen-bot in #2892
- Improve chat responsiveness during streamed code output by @wwwillchen in #2987
- perf: send incremental streaming updates via IPC instead of full messages array by @wwwillchen-bot in #2988
- Bump to v0.40.0-beta.1 by @wwwillchen in #2995
New Contributors
Full Changelog: v0.39.0-beta.1...v0.40.0-beta.1
v0.39.0
Full release notes: https://www.dyad.sh/docs/releases/0.39.0
What's Changed
- Prevent concurrent file copying by @azizmejri1 in #2841
- Update Supabase prompt to use execute_sql tool for database operations by @wwwillchen in #2829
- Bump to v0.39.0-beta.1 by @wwwillchen in #2855
- fix: prevent supabase org credentials from being lost due to stale settings reads by @wwwillchen in #2821
- Fix gitAdd to skip staging files ignored by .gitignore by @wwwillchen-bot in #2707
- fix: increase tool call limit to 50 and show clear pause message by @wwwillchen-bot in #2828
Full Changelog: v0.38.0...v0.39.0
v0.39.0-beta.1
Full release notes: https://www.dyad.sh/docs/releases/0.39.0-beta.1
What's Changed
- Image generation tool by @azizmejri1 in #2789
- chore: bump @ai-sdk/openai to latest by @wwwillchen in #2812
- Handle local agent connection recovery by @wwwillchen in #2853
- Prevent concurrent file copying by @azizmejri1 in #2841
- Update Supabase prompt to use execute_sql tool for database operations by @wwwillchen in #2829
- Bump to v0.39.0-beta.1 by @wwwillchen in #2855
- fix: prevent supabase org credentials from being lost due to stale settings reads by @wwwillchen in #2821
- Fix gitAdd to skip staging files ignored by .gitignore by @wwwillchen-bot in #2707
- fix: increase tool call limit to 50 and show clear pause message by @wwwillchen-bot in #2828
v0.38.0
Full release notes: https://www.dyad.sh/docs/releases/0.38.0
What's Changed
- fix: hide Fix with AI button while streaming by @wwwillchen-bot in #2771
- Add planning_questionnaire to the agent mode by @azizmejri1 in #2566
- fix: deflake E2E tests (github-import.spec.ts) by @wwwillchen-bot in #2775
- feat: add cc:request label step to pr-push skill by @wwwillchen in #2773
- feat: remove * and fix crash; refactor useParseRouter hook and add tests by @wwwillchen-bot in #2780
- improving file attachement handling by @azizmejri1 in #2757
- fix: provide stable Monaco model path in file editor by @wwwillchen-bot in #2781
- Persist todos across chat turns by @azizmejri1 in #2713
- Fixing todo persistence PR regression by @azizmejri1 in #2803
- plan: add web-fetch-local-agent implementation plan by @wwwillchen in #2801
- ci: cap pr-review responder retries by @wwwillchen-bot in #2798
- fix: deflake E2E tests (attach_image.spec.ts, context_compaction.spec.ts) by @wwwillchen-bot in #2793
- Include SQL execution result in execute_sql tool output by @wwwillchen in #2797
- Updating priveleged authors by @azizmejri1 in #2810
- Add add-models skill by @wwwillchen in #2786
- refactor(TokenBar): improve token display formatting by @wwwillchen-bot in #2783
- Bump to v0.38.0-beta.1 by @wwwillchen in #2811
Full Changelog: v0.37.0...v0.38.0
v0.38.0-beta.1
Full release notes: https://www.dyad.sh/docs/releases/0.38.0-beta.1
What's Changed
- fix: hide Fix with AI button while streaming by @wwwillchen-bot in #2771
- Add planning_questionnaire to the agent mode by @azizmejri1 in #2566
- fix: deflake E2E tests (github-import.spec.ts) by @wwwillchen-bot in #2775
- feat: add cc:request label step to pr-push skill by @wwwillchen in #2773
- feat: remove * and fix crash; refactor useParseRouter hook and add tests by @wwwillchen-bot in #2780
- improving file attachement handling by @azizmejri1 in #2757
- fix: provide stable Monaco model path in file editor by @wwwillchen-bot in #2781
- Persist todos across chat turns by @azizmejri1 in #2713
- Fixing todo persistence PR regression by @azizmejri1 in #2803
- plan: add web-fetch-local-agent implementation plan by @wwwillchen in #2801
- ci: cap pr-review responder retries by @wwwillchen-bot in #2798
- fix: deflake E2E tests (attach_image.spec.ts, context_compaction.spec.ts) by @wwwillchen-bot in #2793
- Include SQL execution result in execute_sql tool output by @wwwillchen in #2797
- Updating priveleged authors by @azizmejri1 in #2810
- Add add-models skill by @wwwillchen in #2786
- refactor(TokenBar): improve token display formatting by @wwwillchen-bot in #2783
- Bump to v0.38.0-beta.1 by @wwwillchen in #2811
Full Changelog: v0.37.0...v0.38.0-beta.1
v0.37.0
Full release notes: https://www.dyad.sh/docs/releases/0.37.0
What's Changed
- refactor: modularize e2e test helpers into separate modules by @wwwillchen-bot in #2556
- feat: broaden safe pipe whitelist in gh permission hook by @wwwillchen in #2581
- fix: configure push remote for fork PRs in claude-rebase workflow by @wwwillchen in #2583
- ci: skip tests when only .claude/ or rules/ files changed by @wwwillchen in #2584
- fix: skip package-lock.json in pr-push unless package.json changed by @wwwillchen in #2585
- ci: auto-label conflicting PRs with cc:rebase on main push by @wwwillchen in #2587
- refactor: expose PageObject component page objects publicly by @wwwillchen-bot in #2582
- feat: add daily deflake-e2e-recent-prs skill and workflow by @wwwillchen in #2590
- Add pr-screencast command and update claude settings by @wwwillchen-bot in #2591
- Add GitHub Actions workflow for auto-merging PRs by @wwwillchen-bot in #2588
- feat: add needs-human PR status labels and unified review marker by @wwwillchen in #2589
- feat: add workflow to draft stale PRs after 7 days of inactivity by @wwwillchen in #2586
- Github workflows readme by @wwwillchen in #2594
- refactor(ProModeSelector): wrap build mode settings in accordion by @wwwillchen-bot in #2555
- Adding a shortcut for zooming by @azizmejri1 in #2562
- fix: use stable artifact name for Playwright HTML report by @wwwillchen in #2595
- fix: use PAT for label-rebase-prs to trigger rebase workflow by @wwwillchen in #2596
- Create sub-agents which are supervised for claude workflows by @wwwillchen in #2597
- refactor(ci): simplify workflows by removing workflow_dispatch and using PAT for pushes by @wwwillchen in #2598
- Remove deprecated agent mode and consolidate with build mode by @wwwillchen in #2435
- Add i18n internationalization support with language selector by @wwwillchen in #2450
- AI Conflict Resolver by @princeaden1 in #2240
- fix(e2e): use correct page object sub-components in createGitConflict helper by @wwwillchen in #2604
- move ActionHeader from TitleBar to right side bar by @wwwillchen-bot in #2553
- Simplify Playwright summary to single re-run command by @wwwillchen in #2605
- Use PR_RW_GITHUB_TOKEN for draft-stale-prs workflow by @wwwillchen in #2608
- Add workflow to cancel Claude PR review after merge by @wwwillchen in #2609
- ci: use 2 e2e shards for self-hosted Mac mini runners by @wwwillchen in #2606
- Replace deflake-e2e-recent-prs with deflake-e2e-recent-commits by @wwwillchen in #2607
- Update E2E tests for UI label changes and editor interactions by @wwwillchen-bot in #2611
- Add /dyad:pr-push step to pr-fix skill by @wwwillchen in #2612
- Improve E2E test resilience for logs_server and update snapshot by @wwwillchen-bot in #2613
- use ai-bots env for draft-stale-prs by @wwwillchen in #2614
- fix: use per-worker port for fake LLM server in parallel tests by @wwwillchen-bot in #2557
- Add playwright env var settings allowed by @wwwillchen in #2616
- Add CI cleanup script for self-hosted macOS runners by @wwwillchen in #2617
- Update npm config and CI workflows by @wwwillchen in #2621
- ci: add nightly disk cleanup for self-hosted runner ci1 by @wwwillchen in #2620
- feat: support cc:request:now label for immediate PR review trigger by @wwwillchen in #2618
- Switch CI PR review to swarm-pr-review and fix /tmp file access by @wwwillchen in #2623
- feat: display line numbers in DyadRead component by @wwwillchen-bot in #2615
- Allow $(gh ...) command substitution in permission hook by @wwwillchen in #2622
- Support compaction mid-turn by @wwwillchen in #2524
- fix: add missing createdAt to mid-turn compaction test messages by @wwwillchen in #2624
- feat: make Plan mode available for all users by @wwwillchen-bot in #2625
- Replace ChatLogsData with comprehensive SessionDebugBundle schema by @wwwillchen in #2488
- Support browser-like tabs for better multi-chat experience by @wwwillchen in #2619
- Improve Help dialog UX: DRY refactor, animations, and visual hierarchy by @wwwillchen in #2629
- Improve system prompt instructions for local agents by @wwwillchen in #2628
- Update language model constants with latest configurations by @wwwillchen in #2633
- Refetch user budget on app load and after saving Dyad Pro key by @wwwillchen-bot in #2632
- Update Claude PR Review workflow configuration by @wwwillchen in #2640
- Add feedback-to-issues command by @wwwillchen in #2639
- Update PR Review Responder workflow to do an extra push just in case by @wwwillchen in #2641
- Exempt gh issue commands from shell injection checks by @wwwillchen in #2638
- Refactor multi-pr-review to use specialized reviewer personas by @wwwillchen in #2644
- Improve E2E test stability for Capacitor and Next.js component selection by @wwwillchen-bot in #2646
- Extend deflake-e2e-recent-commits to scan PRs by wwwillchen/wwwillchen-bot by @wwwillchen in #2647
- Prompt the user for attachement type after dragging the file by @azizmejri1 in #2563
- Fix preview navigation black screen when selecting routes from dropdown by @wwwillchen-bot in #2610
- Remove ChatActivity component and associated references by @wwwillchen-bot in #2648
- Fix scroll behavior when switching between chats by @wwwillchen in #2643
- Improving chat input aesthetics by @azizmejri1 in #2561
- Add telemetry sampling for non-Pro users by @wwwillchen-bot in #2642
- Add ci2 runner to nightly cleanup workflow by @wwwillchen in #2645
- Add Claude rules review workflow by @wwwillchen-bot in #2652
- Relax shell injection checks in permission hooks by @wwwillchen in #2653
- Add step to remove needs-human:review-issue label after push by @wwwillchen-bot in #2654
- feat: ensure local agent completes todos before ending turn by @wwwillchen-bot in #2601
- Bump to v0.37.0 beta 1 by @wwwillchen in #2656
- Fix CI build by updating Node version specification in release workflow by @wwwillchen in #2658
- Add MCP experiment toggle for build mode by @wwwillchen in #2659
- Make title bar more easy to drag / move MacOs controls to more standard by @wwwillchen in #2660
- fix: add retry logic to npm ci for Windows CI flakiness by @wwwillchen in #2657
- Improve release workflow: use NuGet for Azure Trusted Signing by @wwwillchen in #2661
- Migrate all Claude Code commands to skills format by @wwwillchen in #2663
- Update AGENTS.md - remove learnings and add TS note by @wwwillchen in #2667
- Improve CI cleanup workflow for macOS runners by @wwwillchen in #2664
- Update security review snapshot to use placeholder for system message by @wwwillchen-bot in #2668
- Update AGENTS.md - remove learnings and add TS note by @wwwillchen in #2669
- Add Playwright debug skill for E2E test debugging by @wwwillchen in #2671
- Add dyad:swarm-to-plan skill for collaborative planning sessions by @wwwillchen in #2670
- Suppress noisy stderr output in test suite by @wwwillchen in #2665
- Product principles by @wwwillchen in https://gi...
v0.37.0-beta.2
Full release notes: https://www.dyad.sh/docs/releases/0.37.0-beta.2
What's Changed
- Update AGENTS.md - remove learnings and add TS note by @wwwillchen in #2667
- Improve CI cleanup workflow for macOS runners by @wwwillchen in #2664
- Update security review snapshot to use placeholder for system message by @wwwillchen-bot in #2668
- Update AGENTS.md - remove learnings and add TS note by @wwwillchen in #2669
- Add Playwright debug skill for E2E test debugging by @wwwillchen in #2671
- Add dyad:swarm-to-plan skill for collaborative planning sessions by @wwwillchen in #2670
- Suppress noisy stderr output in test suite by @wwwillchen in #2665
- Product principles by @wwwillchen in #2672
- Add product principles guidance to PR fix skills by @wwwillchen in #2674
- bump to v0.37.0 stable by @wwwillchen in #2678
- feat: merge release builds and publish from one job by @wwwillchen-bot in #2662
- Add cloud sandboxes planning document by @wwwillchen in #2675
- chore: add skills symlink by @wwwillchen in #2690
- ci: pass GITHUB_TOKEN as GH_TOKEN in deflake e2e workflow by @wwwillchen in #2689
- fix: deflake E2E tests (setup_flow, chat_history, Navigation) by @wwwillchen in #2681
- Refactor settings schema with Zod validation and add readSettings tests by @wwwillchen-bot in #2676
- Add convex backend support plan by @wwwillchen in #2693
- chore: update Playwright summary upload by @wwwillchen in #2691
- Improve SecurityReview E2E test wait logic by @wwwillchen-bot in #2696
- Improve chat_history E2E test stability with toPass() retry by @wwwillchen-bot in #2699
- ci: add reboot and verification steps to nightly runner cleanup (drive-by clean up fast push) by @wwwillchen in #2708
- remove sudo for reboot by @wwwillchen in #2709
- Revert "remove sudo for reboot (#2709)" by @wwwillchen in #2710
- Fix release workflow publish command by @wwwillchen in #2711
- docs: update pr-push skill instructions by @wwwillchen-bot in #2714
- Move favorite button from app list to app details page by @wwwillchen-bot in #2704
- fix(e2e): skip external operations in E2E test mode by @wwwillchen-bot in #2716
- refactor(multi-pr-review): remove Python scripts and use Task tool directly by @wwwillchen-bot in #2719
- docs: emphasize build & rules-reading requirements in AGENTS.md by @wwwillchen in #2720
- Add context menu to chat tabs with bulk close actions by @wwwillchen-bot in #2705
- docs: add app icons/emoji feature plan by @wwwillchen in #2722
- ci: route deflake E2E workflow to PAT token by @wwwillchen in #2726
- Allow users to queue messages by @azizmejri1 in #2120
- fix(e2e): deflake context_limit_banner, attach_image, and prompt_libr… by @wwwillchen in #2725
- Add AI permission request hook and multi-platform roadmap by @wwwillchen in #2734
- fix(e2e): fix themes_management test selectors for theme name inputs by @wwwillchen-bot in #2728
- docs: add verification guidance for testing changes by @wwwillchen in #2731
- Add dangerous action safeguards plan by @wwwillchen in #2733
- ci: add flakiness report upload workflow for fork PRs by @wwwillchen-bot in #2727
- devops: simplify upload to flakiness.io by @aslushnikov in #2735
- Add cross-platform ADRs and xplat planning doc by @wwwillchen in #2737
- docs: add faster PR workflows planning document by @wwwillchen in #2739
- fix: deflake E2E tests (setup_flow.spec.ts) by @wwwillchen-bot in #2740
- Add check-workflows skill for monitoring GitHub Actions workflow health by @wwwillchen in #2738
- Bump to v0.37.0 Beta 2 by @wwwillchen in #2743
New Contributors
- @aslushnikov made their first contribution in #2735
Full Changelog: v0.37.0-beta.1...v0.37.0-beta.2
v0.37.0-beta.1
Full release notes: https://www.dyad.sh/docs/releases/0.37.0-beta.1
What's Changed
- refactor: modularize e2e test helpers into separate modules by @wwwillchen-bot in #2556
- feat: broaden safe pipe whitelist in gh permission hook by @wwwillchen in #2581
- fix: configure push remote for fork PRs in claude-rebase workflow by @wwwillchen in #2583
- ci: skip tests when only .claude/ or rules/ files changed by @wwwillchen in #2584
- fix: skip package-lock.json in pr-push unless package.json changed by @wwwillchen in #2585
- ci: auto-label conflicting PRs with cc:rebase on main push by @wwwillchen in #2587
- refactor: expose PageObject component page objects publicly by @wwwillchen-bot in #2582
- feat: add daily deflake-e2e-recent-prs skill and workflow by @wwwillchen in #2590
- Add pr-screencast command and update claude settings by @wwwillchen-bot in #2591
- Add GitHub Actions workflow for auto-merging PRs by @wwwillchen-bot in #2588
- feat: add needs-human PR status labels and unified review marker by @wwwillchen in #2589
- feat: add workflow to draft stale PRs after 7 days of inactivity by @wwwillchen in #2586
- Github workflows readme by @wwwillchen in #2594
- refactor(ProModeSelector): wrap build mode settings in accordion by @wwwillchen-bot in #2555
- Adding a shortcut for zooming by @azizmejri1 in #2562
- fix: use stable artifact name for Playwright HTML report by @wwwillchen in #2595
- fix: use PAT for label-rebase-prs to trigger rebase workflow by @wwwillchen in #2596
- Create sub-agents which are supervised for claude workflows by @wwwillchen in #2597
- refactor(ci): simplify workflows by removing workflow_dispatch and using PAT for pushes by @wwwillchen in #2598
- Remove deprecated agent mode and consolidate with build mode by @wwwillchen in #2435
- Add i18n internationalization support with language selector by @wwwillchen in #2450
- AI Conflict Resolver by @princeaden1 in #2240
- fix(e2e): use correct page object sub-components in createGitConflict helper by @wwwillchen in #2604
- move ActionHeader from TitleBar to right side bar by @wwwillchen-bot in #2553
- Simplify Playwright summary to single re-run command by @wwwillchen in #2605
- Use PR_RW_GITHUB_TOKEN for draft-stale-prs workflow by @wwwillchen in #2608
- Add workflow to cancel Claude PR review after merge by @wwwillchen in #2609
- ci: use 2 e2e shards for self-hosted Mac mini runners by @wwwillchen in #2606
- Replace deflake-e2e-recent-prs with deflake-e2e-recent-commits by @wwwillchen in #2607
- Update E2E tests for UI label changes and editor interactions by @wwwillchen-bot in #2611
- Add /dyad:pr-push step to pr-fix skill by @wwwillchen in #2612
- Improve E2E test resilience for logs_server and update snapshot by @wwwillchen-bot in #2613
- use ai-bots env for draft-stale-prs by @wwwillchen in #2614
- fix: use per-worker port for fake LLM server in parallel tests by @wwwillchen-bot in #2557
- Add playwright env var settings allowed by @wwwillchen in #2616
- Add CI cleanup script for self-hosted macOS runners by @wwwillchen in #2617
- Update npm config and CI workflows by @wwwillchen in #2621
- ci: add nightly disk cleanup for self-hosted runner ci1 by @wwwillchen in #2620
- feat: support cc:request:now label for immediate PR review trigger by @wwwillchen in #2618
- Switch CI PR review to swarm-pr-review and fix /tmp file access by @wwwillchen in #2623
- feat: display line numbers in DyadRead component by @wwwillchen-bot in #2615
- Allow $(gh ...) command substitution in permission hook by @wwwillchen in #2622
- Support compaction mid-turn by @wwwillchen in #2524
- fix: add missing createdAt to mid-turn compaction test messages by @wwwillchen in #2624
- feat: make Plan mode available for all users by @wwwillchen-bot in #2625
- Replace ChatLogsData with comprehensive SessionDebugBundle schema by @wwwillchen in #2488
- Support browser-like tabs for better multi-chat experience by @wwwillchen in #2619
- Improve Help dialog UX: DRY refactor, animations, and visual hierarchy by @wwwillchen in #2629
- Improve system prompt instructions for local agents by @wwwillchen in #2628
- Update language model constants with latest configurations by @wwwillchen in #2633
- Refetch user budget on app load and after saving Dyad Pro key by @wwwillchen-bot in #2632
- Update Claude PR Review workflow configuration by @wwwillchen in #2640
- Add feedback-to-issues command by @wwwillchen in #2639
- Update PR Review Responder workflow to do an extra push just in case by @wwwillchen in #2641
- Exempt gh issue commands from shell injection checks by @wwwillchen in #2638
- Refactor multi-pr-review to use specialized reviewer personas by @wwwillchen in #2644
- Improve E2E test stability for Capacitor and Next.js component selection by @wwwillchen-bot in #2646
- Extend deflake-e2e-recent-commits to scan PRs by wwwillchen/wwwillchen-bot by @wwwillchen in #2647
- Prompt the user for attachement type after dragging the file by @azizmejri1 in #2563
- Fix preview navigation black screen when selecting routes from dropdown by @wwwillchen-bot in #2610
- Remove ChatActivity component and associated references by @wwwillchen-bot in #2648
- Fix scroll behavior when switching between chats by @wwwillchen in #2643
- Improving chat input aesthetics by @azizmejri1 in #2561
- Add telemetry sampling for non-Pro users by @wwwillchen-bot in #2642
- Add ci2 runner to nightly cleanup workflow by @wwwillchen in #2645
- Add Claude rules review workflow by @wwwillchen-bot in #2652
- Relax shell injection checks in permission hooks by @wwwillchen in #2653
- Add step to remove needs-human:review-issue label after push by @wwwillchen-bot in #2654
- feat: ensure local agent completes todos before ending turn by @wwwillchen-bot in #2601
- Bump to v0.37.0 beta 1 by @wwwillchen in #2656
- Fix CI build by updating Node version specification in release workflow by @wwwillchen in #2658
- Add MCP experiment toggle for build mode by @wwwillchen in #2659
Full Changelog: v0.36.0...v0.37.0-beta.1
v0.36.0
Full release notes: https://www.dyad.sh/docs/releases/0.36.0-beta.2
What's Changed
- Switch Windows code signing to Azure Trusted Signing by @wwwillchen in #2429
- Update AI SDK dependencies to latest versions by @wwwillchen in #2431
- fix: use current branch when creating new chat instead of hardcoding main by @wwwillchen in #2411
- Add @types/node-fetch dependency by @wwwillchen in #2437
- Migrate to Zod v4 by @wwwillchen in #2415
- Add MutationObserver retry for component selector initialization by @wwwillchen in #2408
- Disable Windows code signing on local builds by @wwwillchen in #2438
- Fix Windows Trusted Signing client tools installation by @wwwillchen in #2440
- Improve Claude Code hooks and skills configuration by @wwwillchen in #2439
- Fix Azure DLL path by @wwwillchen in #2441
- Fix Azure DLL search paths in release workflow by @wwwillchen in #2442
- setup flow e2e test by @wwwillchen in #2028
- Fix Windows signtool error by removing invalid /debug flag by @wwwillchen in #2443
- Add ts-expect-error for zod v4 type inference in registerTypedHandlers by @wwwillchen in #2444
- Auto-discover Windows SDK SignTool path in release workflow by @wwwillchen in #2445
- Fix Windows signing failure caused by UTF-8 BOM in metadata JSON by @wwwillchen in #2446
- Add Missing Dyad Logo by @RyanGroch in #2404
- Add delightful streaming loading animation by @wwwillchen in #2425
- Add native notification when chat stream completes by @wwwillchen in #2413
- Add SessionStart hook for npm install by @wwwillchen in #2458
- Only enable Windows code signing in release workflow by @wwwillchen in #2459
- Single build task for each OS for CI by @wwwillchen in #2026
- Radix to Base UI migration by @wwwillchen in #2432
- Add wwwillchen-bot to all permission allowlists by @wwwillchen in #2465
- Add fuzzy search to settings sidebar by @wwwillchen in #2449
- Add /remember-learnings skill to capture session insights by @wwwillchen in #2467
- Update pr-push skill to detect correct remote for pushing by @wwwillchen in #2469
- Move context limit banner from MessagesList to ChatInput by @wwwillchen-bot in #2461
- Fix chat auto-scroll: replace timeout-based tracking with position-ba… by @wwwillchen in #2448
- Add chat panel visibility toggle functionality by @princeaden1 in #2345
- Add workflow to handle comments on closed issues by @wwwillchen in #2409
- Update closed-issue-comment workflow to use claude-code-action by @wwwillchen in #2471
- Fix github token for closed-issue-comment.yml by @wwwillchen in #2473
- Add actions:write permission to pr-review-responder workflow by @wwwillchen in #2475
- Add workflow to close stale PRs older than 2 months by @wwwillchen in #2474
- Update IPC docs to reflect contract-driven architecture by @wwwillchen in #2477
- Move remember-learnings to beginning of pr-push workflow by @wwwillchen in #2485
- Improve test failure reporting with snapshot detection by @wwwillchen in #2484
- Allow POST to /issues/{id}/labels in gh permission hook by @wwwillchen in #2490
- Delete and recreate Playwright PR comment instead of updating by @wwwillchen in #2491
- feat(chat input): recall previous messages using Up Arrow by @princeaden1 in #2343
- Add Moonshot AI's Kimi K2.5 model to OpenRouter options by @wwwillchen in #2495
- Add "Start new chat" button to error box for Dyad Pro users by @wwwillchen in #2494
- Fix flaky e2e tests with better selectors and waits by @wwwillchen-bot in #2498
- Setup storybook by @wwwillchen in #2503
- Flakiness integration by @wwwillchen in #2499
- Add retry loop support to PR review responder workflow by @wwwillchen in #2493
- Add cc:rebase label-triggered workflow for PR rebasing by @wwwillchen in #2504
- feat: make ask mode always use local agent handler by @wwwillchen in #2434
- Strip OpenAI itemId from persisted AI messages to prevent stale reference errors but keep encrypted reasoning content by @wwwillchen-bot in #2468
- Replace button title attributes with shadcn Tooltip components by @wwwillchen in #2470
- fix: configure upstream remote for cross-repo PR rebasing by @wwwillchen in #2505
- Planning mode by @azizmejri1 in #2370
- fix: update chat history tests for reversed order and improve plan mode tool filtering by @wwwillchen-bot in #2506
- fix: update E2E tests for plan mode questionnaire and chat history by @wwwillchen in #2507
- fix: filter orphaned reasoning items to prevent OpenAI API error by @wwwillchen in #2508
- fix: limit grep results to prevent context_length_exceeded errors by @wwwillchen-bot in #2510
- drop plans migration (never used in prod) by @wwwillchen in #2514
- Use Opus 4.6 for workflows by @wwwillchen in #2512
- feat: add optional line range params to read_file tool by @wwwillchen in #2516
- feat: add context compaction system for local-agent mode by @wwwillchen in #2515
- fix: trim whitespace from API keys and secrets in encrypt/decrypt by @wwwillchen in #2518
- feat: widen chat list sidebar and adjust icon column spacing by @wwwillchen in #2519
- Fix E2E tests by @wwwillchen in #2520
- Debug OSX release issues by @wwwillchen in #2521
- Disable preEmbedProvisioningProfile not needed for non-Mac app store … by @wwwillchen in #2522
- Fix PR preview responder setting correct origin remote by @wwwillchen-bot in #2528
- Improve swarm PR review to detect dead infrastructure by @wwwillchen in #2529
- Use claude_args to set opus-4-6 model in CI workflows by @wwwillchen in #2531
- fix: handle Supabase 403 error when listing branches for free tier users by @wwwillchen-bot in #2527
- Bump to v0.36 stable by @wwwillchen in #2532
- feat: add include_hidden option to list_files tool by @wwwillchen-bot in #2526
- Update pr-push to add files more aggressively by @wwwillchen in #2530
- feat: add app commands configuration in Configure panel by @wwwillchen in #2433
- feat: resolve merge conflicts for app commands by @wwwillchen in #2538
- Update permissions & use haiku by @wwwillchen in #2539
- Refactor Dyad card components to use new DyadCardPrimitives by @wwwillchen in #2482
- Disable reset button after confirmation by @azizmejri1 in #2537
- Show file path in refactor button tooltip by @RyanGroch in #2511
- fix(ui): prevent copy button overlap with language label in code blocks by @wwwillchen-bot in #2533
- Modularize AGENTS.md learnings into rules/ directory by @wwwillchen in #2540
- Fixing file attachement by @azizmejri1 in #2541
- Fix e2e tests by @wwwillchen in #2542
- Bump to v0.36 beta 2 by @wwwillchen in #2543
- refactor: migrate hooks to React Query for data fetching by @wwwillchen in #2536
- self-hosted mac mini for wwwillchen* PRs by @wwwillchen in #2546
- feat: reduce toast duration in test mode for faster E2E tests by @wwwillchen-bot in #2551
- feat: enable parallel Playwright e2e test exe...
v0.36.0-beta.2
Full release notes: https://www.dyad.sh/docs/releases/0.36.0-beta.2
What's Changed
- Fix PR preview responder setting correct origin remote by @wwwillchen-bot in #2528
- Improve swarm PR review to detect dead infrastructure by @wwwillchen in #2529
- Use claude_args to set opus-4-6 model in CI workflows by @wwwillchen in #2531
- fix: handle Supabase 403 error when listing branches for free tier users by @wwwillchen-bot in #2527
- feat: add include_hidden option to list_files tool by @wwwillchen-bot in #2526
- Update pr-push to add files more aggressively by @wwwillchen in #2530
- feat: add app commands configuration in Configure panel by @wwwillchen in #2433
- feat: resolve merge conflicts for app commands by @wwwillchen in #2538
- Update permissions & use haiku by @wwwillchen in #2539
- Refactor Dyad card components to use new DyadCardPrimitives by @wwwillchen in #2482
- Disable reset button after confirmation by @azizmejri1 in #2537
- Show file path in refactor button tooltip by @RyanGroch in #2511
- fix(ui): prevent copy button overlap with language label in code blocks by @wwwillchen-bot in #2533
- Modularize AGENTS.md learnings into rules/ directory by @wwwillchen in #2540
- Fixing file attachement by @azizmejri1 in #2541
- Fix e2e tests by @wwwillchen in #2542
- Bump to v0.36 beta 2 by @wwwillchen in #2543
Full Changelog: v0.36.0-beta.1...v0.36.0-beta.2