- 21 1月, 2026 4 次提交
-
-
由 Will Chen 提交于
Add babel-plugin-react-compiler to the build pipeline to enable automatic memoization and optimization of React components. #skip-bugbot <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Enable React Compiler in the renderer Vite build to automatically memoize and optimize React components. This should reduce unnecessary re-renders and improve UI responsiveness. - **Dependencies** - Added babel-plugin-react-compiler and wired it into @vitejs/plugin-react via Babel (default config). - **Migration** - No code changes required; build-time only. Verify key UI flows for any unexpected behavior. <sup>Written for commit 64fdea33436212d3ba36aa60e5ca014eaf2ab3e5. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> Co-authored-by:Claude <noreply@anthropic.com>
-
由 Will Chen 提交于
#skip-bugbot <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Automates Playwright result comments in CI to make failures easier to spot and fix. Adds missing-shard warnings, collapsible failure lists, and copy-paste snapshot update commands. - **New Features** - Adds a GitHub Actions step to run scripts/generate-playwright-summary.js via github-script (uses PLAYWRIGHT_RUN_ID). - Detects missing macOS/Windows shards from blob reports and shows a warning in the PR comment. - Collapsible failure sections when there are more than 10 failures per OS. - Generates copy-paste npm commands to update snapshots for failed macOS tests. - Supports workflow_run and pull_request events; handles push events without a PR gracefully. <sup>Written for commit ccafd00835b5390949ca18a8743c6c69a44b21d4. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
- Add `defaultChatMode` field to UserSettings schema - Create `getEffectiveDefaultChatMode()` helper that returns the appropriate default based on settings and pro status: - If defaultChatMode is explicitly set, use it - If not set but user has Dyad Pro enabled, default to "local-agent" - Otherwise default to "build" - Create DefaultChatModeSelector component in Workflow Settings - When user upgrades to Dyad Pro, automatically set default to "local-agent" - Apply default chat mode when navigating to home page <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Adds a default chat mode setting with sane defaults and a selector in Workflow Settings. It applies the effective default on the home page and for new chats, and sets it to Agent when a user upgrades to Dyad Pro. - **New Features** - Added defaultChatMode to UserSettings. - Added getEffectiveDefaultChatMode with rules: explicit > Dyad Pro → local-agent > build. - Added DefaultChatModeSelector in Workflow Settings (shows Agent option when Dyad Pro is enabled). - Home page and new chats sync selectedChatMode to the effective default. - On first Dyad Pro setup, default mode is set to local-agent automatically. <sup>Written for commit c265968422be75cc8b44760a684204fec198ccd0. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Adds a user-configurable default chat mode and ensures it’s applied consistently across the app. > > - **Core/Schema**: Add `defaultChatMode` to `UserSettings` and `getEffectiveDefaultChatMode()` helper (falls back to `local-agent` for Pro, otherwise `build`) > - **Settings UI**: New `DefaultChatModeSelector` in Workflow Settings; shows `Agent` option only when Pro is enabled > - **Behavior changes**: Apply effective default on home (`home.tsx`) and set `selectedChatMode` for new chats (`ChatList.tsx`) > - **Provider setup**: On first Dyad Pro key save, set `defaultChatMode` to `local-agent` (`ProviderSettingsPage.tsx`) > - **E2E/tests**: New and updated tests for defaults and mentions; stabilize dumps by normalizing `item_reference` IDs; updated chat mode option mapping > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 00d92922ec6cab870c9ff50fdd3912a58d97f0f1. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> --------- Co-authored-by:
Claude <noreply@anthropic.com>
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > **Upgrade default template and migrate Calendar** > > - Bumps dependencies in template/package manifests: `react`/`react-dom` -> `^19.2.3`, `react-day-picker` -> `^9.13.0`, and `@types/react`/`@types/react-dom` -> `^19.x` > - Migrates `Calendar` (`src/components/ui/calendar.tsx`) to DayPicker v9: updates `classNames` keys (e.g., `month_caption`, `button_previous/next`, `month_grid`, `weekday/week`, `day_button`, `selected`, `range_end`, `today`, `outside`, `disabled`, `range_middle`, `hidden`) and replaces `IconLeft/IconRight` with `components.Chevron` > > **Tests and snapshots** > > - Rebaselines e2e snapshots reflecting dependency/UI changes > - Adds `await this.waitForChatCompletion()` in `snapshotServerDump` to stabilize chat/server dump snapshots > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 3bc152b48e32e9746bf9e08fe7795505608a1c6d. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Upgrade the default scaffold to React 19 and bump react-day-picker to v9, updating the Calendar component to the new DayPicker v9 API. Rebaselined e2e snapshots and added a wait in tests to stabilize chat output. - **Dependencies** - Updated scaffold/package.json: react and react-dom -> ^19.2.3; react-day-picker -> ^9.13.0; @types/react and @types/react-dom -> ^19.x. - Updated scaffold/pnpm-lock.yaml; refreshed root/test lockfiles and peer flags. - Adjusted e2e snapshots for dependency/version changes and minor UI text ordering. - **Migration** - Run npm ci and rebuild the template. No app code changes required. <sup>Written for commit 3bc152b48e32e9746bf9e08fe7795505608a1c6d. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
- 20 1月, 2026 10 次提交
-
-
由 Will Chen 提交于
#skip-bugbot
-
由 Will Chen 提交于
-
由 Will Chen 提交于
Use the AI SDK's hasToolCall() function to stop the agent loop when the add_integration tool is invoked, allowing the user to set up the integration before the agent continues. <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Stop the local agent loop when the add_integration tool is called, pausing the run so the user can finish setup. Adds hasToolCall('add_integration') to stopWhen and keeps the 25-step cap. <sup>Written for commit b5826e0563b4b0925715733a86e02707f9387e45. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Adds an early stop condition to pause the local agent when integration setup is triggered. > > - Imports `hasToolCall` and `addIntegrationTool` > - Updates `stopWhen` to `[stepCountIs(25), hasToolCall(addIntegrationTool.name)]` to halt on `add_integration` tool invocation > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit b5826e0563b4b0925715733a86e02707f9387e45. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> --------- Co-authored-by:Claude <noreply@anthropic.com> Co-authored-by:
gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
-
由 Will Chen 提交于
Change the continue button variant from 'outline' to 'default' to improve visibility in dark mode. The outline variant had poor contrast against the green success background in dark mode. #skip-bugbot <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Improve dark mode contrast for the Supabase success state by switching the “Continue” button from outline to default. Also adjust success card and integrate prompt colors for better readability in dark mode. <sup>Written for commit f184afad3d02c069b4a33a6b5f9eeb4dca65c3ec. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> --------- Co-authored-by:Claude <noreply@anthropic.com>
-
由 Ryan Groch 提交于
Closes #817. A while back, I had opened #960 for the same issue, and I thought I would give it a second try. Unlike my previous PR, this time I implemented the AppImage maker myself. Given that security concerns came up last time, I feel obligated to mention the following: 1. This code does run `mksquashfs` (technically a third-party executable) in the same environment as the signing keys. However, it's widely used and is present on the GitHub runner by default. 2. My code also fetches the AppImage runtime during build, but this gets embedded in the AppImage and never runs on the server. As such, it would not be able to access the signing keys even if it theoretically had a vulnerability or was infected. If we're including an AppImage in the releases going forward, I don't think that either of the above two points are easily avoidable. We _could_ handle the second point by storing our own static version of the AppImage runtime, but I don't think that's particularly elegant or desirable. Of course, please feel free to let me know if you'd like any changes. Thanks! <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Adds an AppImage maker to Electron Forge and includes a Linux x86_64 AppImage in release assets. - **New Features** - Implements MakerAppImage that builds the AppDir, generates the .desktop file, embeds the app icon, sets AppRun, and packs with mksquashfs. - Fetches the AppImage runtime at build time, verifies its SHA-256, and embeds it; it never executes on CI. - Integrates into forge.config and release asset checks. Output: dyad_{version}_x86_64.AppImage. - **Dependencies** - Requires mksquashfs on the build host (available on GitHub runners). <sup>Written for commit 8bdb3840b906cc74a852704be50acb1b4d08fc97. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Introduces Linux AppImage packaging and aligns release checks. > > - Adds `MakerAppImage` that assembles `AppDir`, generates `.desktop`, embeds icon, creates `AppRun` symlink, packs with `mksquashfs`, and prepends the fetched AppImage runtime after SHA-256 verification > - Integrates maker in `forge.config.ts` (outputs `dyad_{version}_x86_64.AppImage`; linux x64; requires `mksquashfs`) > - Updates `scripts/verify-release-assets.js` to include the AppImage in expected assets > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 8bdb3840b906cc74a852704be50acb1b4d08fc97. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> -
由 Will Chen 提交于
-
由 Will Chen 提交于
#skip-bugbot <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Added a symlink CLAUDE.md that points to AGENTS.md so existing links to CLAUDE.md resolve to the agents docs. This avoids duplicate files and keeps the docs in one place. <sup>Written for commit 84a220b557d955a221591ba7d21fe3f2568c7862. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> Co-authored-by:Claude <noreply@anthropic.com>
-
由 Will Chen 提交于
#skip-bugbot
-
由 Will Chen 提交于
-
由 Will Chen 提交于
Changed the Supabase prompt from using $$SUPABASE_CLIENT_CODE$$ placeholder replacement to dynamically constructing the system prompt with the actual Supabase client code. This is more reliable and removes the need for post-processing the AI response. Changes: - Convert SUPABASE_AVAILABLE_SYSTEM_PROMPT to getSupabaseAvailableSystemPrompt() function - Pass supabaseClientCode parameter when constructing system prompt - Remove response chunk processing that replaced $$SUPABASE_CLIENT_CODE$$ - Update prompt to instruct AI to write to appropriate file path instead of hardcoding <dyad-write> - Update test fixture to contain actual expected Supabase client code <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Refactors Supabase integration to embed real client code directly in the system prompt, eliminating placeholder replacement and making generation deterministic. > > - Replace `SUPABASE_AVAILABLE_SYSTEM_PROMPT` with `getSupabaseAvailableSystemPrompt(supabaseClientCode)` and update instructions to create `src/integrations/supabase/client.ts` and add `@supabase/supabase-js` > - In `chat_stream_handlers.ts` and `token_count_handlers.ts`, fetch `supabaseClientCode` via `getSupabaseClientCode` and append `getSupabaseAvailableSystemPrompt(...)` to `systemPrompt` > - Remove response-time placeholder replacement logic for `$$SUPABASE_CLIENT_CODE$$` in streaming handler > - Update e2e fixture `generate-supabase-client.md` to include the concrete client implementation > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit dfec59bfd59df71af534db92b4d8f1a6f1606047. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Refactors the Supabase prompt to inject the real client code into the system prompt, replacing the $$SUPABASE_CLIENT_CODE$$ placeholder. This removes response post-processing and makes client file creation more reliable. - **Refactors** - Replace SUPABASE_AVAILABLE_SYSTEM_PROMPT constant with getSupabaseAvailableSystemPrompt(supabaseClientCode). - Build the system prompt with supabaseClientCode in chat and token count handlers. - Remove placeholder replacement from chat stream response handling. - Update prompt to embed the actual client code, instruct the correct file path, and add the @supabase/supabase-js dependency. - Update e2e fixture to include the expected Supabase client code. <sup>Written for commit dfec59bfd59df71af534db92b4d8f1a6f1606047. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> --------- Co-authored-by:
Claude <noreply@anthropic.com>
-
- 18 1月, 2026 2 次提交
-
-
由 Will Chen 提交于
- Change badge from "Experimental" to "New" with blue styling - Move Agent Mode to first position in mode selector <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Highlights a UI tweak to the chat mode menu for Pro users. > > - Replaces `ExperimentalBadge` with `NewBadge` (blue "New") in `ChatModeSelector` > - Moves `local-agent` ("Agent v2") item to the top of the selector when Pro is enabled, ahead of `Build` > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit c95c5d4fd107bb99d86f5a7e626aa153fb5e61cc. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Changed the Agent v2 badge from “Experimental” to a blue “New” badge and moved Agent Mode to the top of the mode selector to improve visibility and discovery. This makes the new Agent experience easier to find. <sup>Written for commit c95c5d4fd107bb99d86f5a7e626aa153fb5e61cc. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> Co-authored-by:Claude <noreply@anthropic.com>
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Tightens CI review automation to only run for specific trusted contributors. > > - Adds author filter `if:` conditions in `bugbot-trigger.yml` and `claude-pr-review.yml` to allow only `wwwillchen`, `azizmejri1`, and `princeaden1` > - Preserves `#skip-bugbot` opt-out for BugBot; removes previous unconditional check in favor of combined author + skip filter > - No functional changes to steps beyond gating; environments and permissions remain the same > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 0de70045d0c98e4cec45f0a3b90100a223a0be9e. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> ## Summary by cubic Restricts automatic PR reviews (BugBot and Claude) to an allowlist of regular contributors. This controls review costs/limits and reduces risk from external PRs. - **New Features** - BugBot: Only runs for PRs by wwwillchen, azizmejri1, or princeaden1; can be disabled with #skip-bugbot in the PR body. - Claude: Only runs for PRs by wwwillchen, azizmejri1, or princeaden1. <sup>Written for commit 0de70045d0c98e4cec45f0a3b90100a223a0be9e. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
- 17 1月, 2026 11 次提交
-
-
由 Will Chen 提交于
-
由 Will Chen 提交于
<!-- This is an auto-generated description by cubic. --> ## Summary by cubic Promoted Dyad v0.33.0 from beta to stable to prepare the v0.33 stable release. Updated package.json and package-lock.json versions; no functional changes. <sup>Written for commit 0f1ce1fbb98a6407b7188c487c18b72ea06a88df. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Promotes the app from beta to stable release with no functional code changes. > > - Bumps version from `0.33.0-beta.3` to `0.33.0` in `package.json` and `package-lock.json` > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 0f1ce1fbb98a6407b7188c487c18b72ea06a88df. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Fixes upload-to-codebase in local-agent by resolving attachment IDs to real file bytes and adds e2e coverage. > > - **Core fix**: New `file_upload_utils.resolveFileUploadContent` maps `DYAD_ATTACHMENT_X` IDs to uploaded file contents via `FileUploadsState`. > - **Tool update**: `write_file` now writes resolved bytes (supports binary) instead of raw ID strings. > - **Stream handling**: Clear stale uploads for the chat at stream start in `chat_stream_handlers`. > - **Tests**: Playwright test, fixture, and snapshot verify uploading `logo.png` to `assets/uploaded-file.png` and content parity. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 220b0eaae361fee015e5146b9fffd217e7bf7626. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Fixes uploading files to the codebase in local-agent mode by resolving attachment IDs (e.g., DYAD_ATTACHMENT_0) to real file bytes before writing. Adds e2e coverage to prevent regressions. - **Bug Fixes** - Added resolver to map upload IDs to file content using FileUploadsState. - Updated write_file to use the resolver and write the resolved bytes. - Cleared file uploads state at chat start to avoid stale IDs from previous requests. - Added Playwright test and fixture that upload logo.png and verify the written file and snapshot. <sup>Written for commit 220b0eaae361fee015e5146b9fffd217e7bf7626. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
The two categories cannot be categorized properly. <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Consolidates log taxonomy by removing `build-time` and treating all build/stdout/stderr and restart messages as `server` for consistent System Messages display and filtering. > > - Reclassifies app stdout/stderr and restart notices to `type: "server"` in `useRunApp` > - Removes `build-time` from UI/IPC types and filters (`Console.tsx`, `ConsoleEntry.tsx`, `ConsoleFilters.tsx`, `ipc_types.ts`) > - Updates `read_logs` tool schema/enums and description to exclude `build-time` and clarify `server` includes dev server and build output > - Adds E2E test `e2e-tests/logs_server.spec.ts` and updates snapshots to validate `server` badge and filtering > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 4e28efdd2ff60aaf168084f447f65cda191b4367. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Consolidated all build-time logs into the "server" type so they appear consistently in System Messages and filters. This removes the "build-time" category and simplifies log filtering. - **Refactors** - Removed the "build-time" log type from UI components, IPC types, and read_logs schema. - Emitted stdout/stderr and restart messages as type "server" in useRunApp. - Clarified read_logs description: server includes dev server logs and build output. - Added a Playwright E2E test to verify server log classification and filtering in System Messages. <sup>Written for commit 4e28efdd2ff60aaf168084f447f65cda191b4367. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Updates the Problems panel in real time when the local agent runs TypeScript checks and adds E2E coverage. > > - Adds `agent-tool:problems-update` IPC event, `AgentProblemsUpdatePayload`, and `IpcClient.onAgentProblemsUpdate` subscription > - Extends `AgentContext` with `appId` and sends problem reports from `run_type_checks` via `safeSend` after `generateProblemReport` > - Renderer listens for problems updates and writes to TanStack Query cache `['problems', appId]` to refresh the Problems panel > - Preload whitelists the new receive channel > - Adds local-agent E2E test, fixture, and snapshot validating Problems panel updates (`e2e-tests/local_agent_run_type_checks.spec.ts`) > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 9134d5f0053079e7294da8e6665f5684a047a15a. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> ## Summary by cubic Pushes Problems panel updates when the local agent runs type checks by emitting a problems report over IPC and updating the UI cache in real time. Adds an E2E test to verify errors appear and the Fix button is enabled. - **New Features** - run_type_checks now sends "agent-tool:problems-update" with { appId, problems } using safeSend; AgentContext includes appId. - IPC: added AgentProblemsUpdatePayload, whitelisted the channel in preload, and exposed onAgentProblemsUpdate in IpcClient. - Renderer listens for problems updates and writes to TanStack Query cache ["problems", appId]. - E2E: local-agent test creates TS errors, runs type checks, and snapshots Problems panel (verifies error rows and Fix button). <sup>Written for commit 9134d5f0053079e7294da8e6665f5684a047a15a. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
drive-by: rebaseline log snapshot to be more resilient <!-- CURSOR_SUMMARY --> --- > [!NOTE] > **Prompt update** > - Refines `development_workflow` step 3 to require asking the user to interact after adding `console.log` statements so logs actually execute. > > **Test snapshots** > - Updates snapshots in `local_agent_basic.spec` and `local_agent_auto.spec` to reflect the new prompt text. > - Makes `local_agent_read_logs.spec` more resilient by matching `/LOGSReading \d+ logs/` instead of a fixed count. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit d8191976a120e32f850e47f7b5be8e843684fd6b. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Improves the local agent’s debugging handoff by updating the system prompt to ask the user to interact with the app after adding console.log statements, so logs appear only when code paths execute. Rebaselines e2e snapshots and makes the log-reading check resilient to varying log counts. - **Refactors** - Clarified debugging step in the system prompt: after adding logs, request user interaction to trigger execution. - Updated e2e snapshots; replaced fixed “Reading 1 logs” with a regex to handle dynamic counts. <sup>Written for commit d8191976a120e32f850e47f7b5be8e843684fd6b. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Adds a new triage step to improve issue titles when they’re unclear, vague, or contain placeholders. > > - Extends the Claude triage prompt in `.github/workflows/claude-triage.yml` with **Task 3: Update Issue Title** including criteria, before/after examples, the `gh issue edit --title` command, concise guidelines, and “when not to update” rules > - No code/logic changes beyond prompt text; scope limited to the workflow file > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit adb5f2f7975dc6cb90c157052b9625c48bf52fb5. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> ## Summary by cubic Adds a new title-improvement step to the issue triage bot to keep issue titles clear and consistent while avoiding unnecessary edits. - **New Features** - Introduces “Task 3: Update Issue Title” with clear conditions for when to update (placeholders, vague titles, unclear errors). - Includes a simple edit command (gh issue edit [number] --title "..."). - Sets guidelines: keep titles short, lead with the “what,” preserve prefixes (e.g., [bug]), be specific. - Lists “do not update” cases: already clear, minor tweaks only, or unclear issue body (use issue/incomplete). <sup>Written for commit adb5f2f7975dc6cb90c157052b9625c48bf52fb5. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
these were rebaselined in https://github.com/dyad-sh/dyad/pull/2145/files#diff-86564ff7ca1eca11278e409ada7d9823bc5fb0d8fcb8768313381f652c2450ea but are now failing in CI <!-- CURSOR_SUMMARY --> --- > [!NOTE] > <sup>[Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) is generating a summary for commit 98b9b3e92299b0f0a2513fbcb052231ee910cf62. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Updated E2E snapshot baselines to match current behavior and fix CI failures introduced after the recent rebaseline. - **Bug Fixes** - context_window snapshot: added expected assistant replies and dump path placeholders for tc=1–5. - turbo_edits_v2 snapshot: replaced fallback with the updated Index.tsx content generated by search/replace. <sup>Written for commit 98b9b3e92299b0f0a2513fbcb052231ee910cf62. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > - In `pro.ts`, on Dyad Pro enable: saves API key to `providerSettings.auto`, sets `enableDyadPro`, and defaults `selectedChatMode` to `local-agent` with `selectedModel` `{ name: "auto", provider: "auto" }`. > - In `DyadProSuccessDialog`, refreshes UI copy and visuals (new gradient icon, `Sparkles`, `Zap`, `Bot`), explains default settings, and replaces footer action with a full-width `Get Started` button. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit dde6aa9e62453fb93223cb35beeb881e4a07c045. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> ## Summary by cubic Automatically set Dyad Pro defaults to local-agent mode and the auto model when users connect via “Add to Dyad app,” and refreshed the success dialog to explain these settings for a smoother start. - **New Features** - Set selectedChatMode to local-agent and selectedModel to auto by default. - Updated success dialog copy and design with clearer defaults and a “Get Started” action. <sup>Written for commit dde6aa9e62453fb93223cb35beeb881e4a07c045. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> -
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Enables importing apps in-place without copying into `dyad-apps`. > > - UI: `ImportAppDialog` adds a "Copy to the dyad-apps folder" checkbox (checked by default), wires `skipCopy` through name checks, import action, and re-checks on toggle; resets on clear > - IPC: Extends `ImportAppParams` and `check-app-name` to accept `skipCopy`; `import-app` handler respects in-place import (skips copy, stores absolute path, initializes git if needed) and keeps existing copy/duplicate checks when copying > - Types/Client: Updates `ipc_types` and `IpcClient.checkAppName/importApp` to include optional `skipCopy` > - Tests: Adds e2e test and snapshot for importing without copying > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 33f58b060664ab10906dfdbf8815839d787f909d. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Add in-place app import. Users can now register an existing folder without copying it into dyad-apps, reducing disk usage and speeding up import. - **New Features** - Import dialog: added “Copy to the dyad-apps folder” checkbox (on by default). When unchecked, we import in place and pass skipCopy to the backend. Control resets on dialog close. - Import handler: if skipCopy is true, do not copy; store the absolute source path; initialize a git repo in the chosen path if missing. If copying, keep existing duplicate-name checks and copy behavior. Updated ImportAppParams to include optional skipCopy. - Added e2e test and snapshot for importing without copying. <sup>Written for commit 7df1df626fc4f2a2c6e58c667496590ac68da922. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Enhances Vercel deployments refresh UX to provide consistent visual feedback. > > - Introduces `isRefreshing` and wraps `getDeployments` to enforce a 750ms minimum loading time > - Disables the "Refresh Deployments" button during load and shows a spinner with "Refreshing..." > - Combines states into `isLoadingOrRefreshing` for button/label control; minor label text change > - package-lock version bump to `0.33.0-beta.3` > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit e65e3a06d7fe761e183bf1acaee88d40e9197895. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Adds clear, consistent feedback when refreshing Vercel deployments to prevent flicker and show progress. The button now shows a spinner and "Refreshing..." and is disabled during the fetch. - **New Features** - Ensures visible feedback with a 750ms minimum loading time. - Disables the button while loading and updates the label to "Refreshing...". <sup>Written for commit e65e3a06d7fe761e183bf1acaee88d40e9197895. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
- 16 1月, 2026 5 次提交
-
-
由 Will Chen 提交于
-
由 Will Chen 提交于
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > <sup>[Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) is generating a summary for commit d19804b8ed095b980c17272a27b925d03f973e84. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Updates the issue triage workflow to use Anthropic’s new base action and input format. > > - Replace `anthropics/claude-code-action@v1` with `anthropics/claude-code-base-action@beta` in `claude-triage.yml` > - Move from `claude_args` flags to explicit `model` and `allowed_tools` inputs; retain `prompt_file` and `claude_code_oauth_token` > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit e0afa14937dcb473c58bd129d5692c2ef65d53c2. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> ## Summary by cubic Switch the triage workflow to the Claude base action and migrate inputs to the new schema for clearer config and future compatibility. - **Dependencies** - Replaced anthropics/claude-code-action@v1 with anthropics/claude-code-base-action@beta. - Split claude_args into explicit inputs: model and allowed_tools (same values as before). <sup>Written for commit e0afa14937dcb473c58bd129d5692c2ef65d53c2. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Consolidates issue triage and streamlines bug reporting across GitHub and the app. > > - **CI**: Add `Issue Triage` workflow (`.github/workflows/claude-triage.yml`) using `anthropics/claude-code-action` with a new prompt (`.github/prompts/triage.md`) to auto-label issues, check duplicates with confidence ratings, and post brief helper comments (restricted `gh` commands). > - **Cleanup**: Remove legacy workflows `duplicate-issues.yml` and `triage-issues.yml` in favor of the unified triage job. > - **Templates**: Update `bug_report.md` to recommend filing from the app, link help docs, and request English-only reports. > - **App**: Simplify `HelpDialog` prefilled GitHub issue bodies (combine description + repro, mark screenshot as recommended, keep English note) while retaining auto-included system info/logs. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 736a12b69d2d474a59acf33a3867af092c41aa42. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Add a single, smarter triage bot that auto-labels new issues, checks for duplicates, and leaves short, friendly guidance. Also simplify our bug report template and in‑app “Report a bug” text to get better reports. - **New Features** - Triage agent prompt that: - Labels issues (bug/feature/ux) and adds language/incomplete/pro tags with friendly comments. - Searches for duplicates with confidence ratings and links helpful prior comments when highly confident. - New GitHub Action runs on issue creation using claude-code with restricted gh commands. - **Refactors** - Replace the two legacy workflows (duplicate-issues, triage-issues) with the new unified triage workflow. - Update bug_report.md to recommend reporting from the app, link help docs, and ask for English. - Simplify HelpDialog issue template: combine description + repro, mark screenshot as recommended, keep the “fill in English” note. <sup>Written for commit 736a12b69d2d474a59acf33a3867af092c41aa42. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> --------- Co-authored-by:
greptile-apps[bot] <165735046+greptile-apps[bot]@users.noreply.github.com>
-
- 15 1月, 2026 6 次提交
-
-
由 Will Chen 提交于
<!-- This is an auto-generated description by cubic. --> ## Summary by cubic Stop throwing an error when the user cancels folder selection in the import dialog. The mutation now returns null, so cancelling the picker doesn’t show an error or disrupt the flow. <sup>Written for commit 3c2e61bc723a3ff72cc269c31f715b440fc3695b. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Prevents erroneous failures when the user cancels the folder picker. > > - In `ImportAppDialog`, `selectFolderMutation` now returns `null` when no `path`/`name` is provided (user canceled) instead of throwing, avoiding error toasts and treating cancel as a no-op. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 3c2e61bc723a3ff72cc269c31f715b440fc3695b. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > **Behavior change: preserve unknown settings fields** > > - Apply `.passthrough()` to `UserSettingsSchema` so unknown properties are retained instead of stripped > - Update `readSettings.test.ts` to assert extra fields (e.g., `unknownField`, `deprecatedSetting`, nested objects) are preserved while defaults still apply > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit d7bd0311a14cb4b501c698c987706efe069ab975. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> ## Summary by cubic Preserves unknown settings fields during validation to prevent data loss when downgrading Dyad. Switches the user settings schema to passthrough and updates tests to match. - **Bug Fixes** - UserSettingsSchema now uses Zod .passthrough() to keep unrecognized fields. - Updated readSettings test to assert extra fields are preserved. <sup>Written for commit d7bd0311a14cb4b501c698c987706efe069ab975. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Implements request-level tracing for local-agent by threading `dyadRequestId` through handlers and tool calls, and consolidates engine API requests. > > - Pass `dyadRequestId` from `chat_stream_handlers.ts` into `handleLocalAgentStream` and include in `providerOptions` > - Update `handleLocalAgentStream` signature and `AgentContext` to include `dyadRequestId`; propagate to `streamText` and tool execution context > - Introduce `pro/main/ipc/handlers/local_agent/tools/engine_fetch.ts` to centralize Dyad engine requests, automatically adding `Authorization` and `X-Dyad-Request-Id` headers > - Refactor tools (`code_search.ts`, `edit_file.ts`, `web_crawl.ts`, `web_search.ts`) to use `engineFetch` and remove per-file API key/URL handling > - Adjust tests to supply `dyadRequestId` and validate unchanged behaviors (errors, streaming, abort, commits, approvals) > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 6a90d98fef23e459a0679c46b8eace8d907e0be9. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> ## Summary by cubic Pass the Dyad request ID through the local agent and include it on all engine tool calls to enable end-to-end request tracing. Centralizes engine API calls with a shared fetch wrapper. - **Refactors** - Added engine_fetch wrapper that sets Authorization and X-Dyad-Request-Id headers. - handleLocalAgentStream now accepts dyadRequestId and forwards it to AgentContext and provider options. - Updated tools (code_search, edit_file, web_search, web_crawl) to use engineFetch and removed duplicate URL/API key handling. - chat_stream_handlers forwards dyadRequestId (fallback: “[no-request-id]”). - Tests updated to include dyadRequestId in handler calls. <sup>Written for commit 6a90d98fef23e459a0679c46b8eace8d907e0be9. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > Enhances the Supabase projects selector with a manual refresh and improved states. > > - Adds `RefreshCw` icon button to `SupabaseConnector` to `refetchProjects()`; shows spinner while `isFetchingProjects` and disables the button > - Displays error state from `projectsError` with a `Retry` button to refetch > - Adjusts header layout to place refresh control alongside "Add Organization" > - Updates imports to include `RefreshCw` > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit ce452519cd5a90fec693969c559247e068d795f5. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY --> <!-- This is an auto-generated description by cubic. --> ## Summary by cubic Added a refresh button to the Supabase Projects header to reload the project list on demand. The button disables while fetching and shows a spinning icon during refresh. <sup>Written for commit ce452519cd5a90fec693969c559247e068d795f5. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > - **Add** `bugbot-trigger.yml` workflow to auto-comment `"@BugBot run"` on `pull_request_target` events using a PAT, enabling BugBot on new/updated PRs. > - **Update** `claude-pr-review.yml` by removing the contributor `if` filter so Claude reviews run for all PRs; existing environment, permissions, and checkout behavior maintained. > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit 6fc76ece796cf1f8bd7fc45e6e97c4f86a94b12b. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
-
由 Mohamed Aziz Mejri 提交于
<!-- This is an auto-generated description by cubic. --> --- ## Summary by cubic Introduces initial UI theming with per-app theme selection and a default theme in settings. Theme rules are added to prompts so generated UIs follow the chosen design. - **New Features** - Theme picker in AuxiliaryActionsMenu with app-specific selection and visual check. - New hooks: useThemes and useAppTheme (React Query) with IPC get/set handlers. - Themes data and prompts added (includes “No Theme” and “Default Theme”). - Theme prompt appended to system and local-agent prompts; included in token counting. - Settings now support a default theme (selectedThemeId) applied to new apps. - **Migration** - Adds apps.theme_id (NULL means no theme). <sup>Written for commit f4ef96ccd02a3d9148bd4e570d2204c7b5a12c10. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. --> <!-- CURSOR_SUMMARY --> --- > [!NOTE] > Introduces initial theming with persistence and prompt influence. > > - UI: Adds Themes submenu in `AuxiliaryActionsMenu` (supports "No Theme" and `default`, app-specific or global via settings) > - Data/IPC: New `apps.theme_id` column (nullable), hooks `useThemes`/`useAppTheme`, IPC handlers (`get-themes`, `set-app-theme`, `get-app-theme`) wired through `ipc_client`, `ipc_host`, and `preload` > - Settings: Adds `selectedThemeId` with default applied to newly created apps > - Prompting: Appends theme prompt (`getThemePrompt`) to system/local-agent prompts and token counting > - Integration: `ChatInput` passes `appId` to menu; `schema.ts` updated > - Tests: E2E verifies default and per-app theme persistence > > <sup>Written by [Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit ee9ba34aad48f8dc49013e01247cfdcff1b77fad. This will update automatically on new commits. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
-
- 14 1月, 2026 2 次提交
-
-
由 Mohamed Aziz Mejri 提交于
<!-- This is an auto-generated description by cubic. --> ## Summary by cubic Switched image attachment e2e tests to use Playwright’s native file chooser instead of setting hidden inputs. This reduces flakiness and matches real user behavior. - **Bug Fixes** - Wait for the file chooser before clicking the menu item, then set files via the dialog. - Removed hidden input selectors and Escape key handling. - Updated home chat, chat, and upload-to-codebase tests. <sup>Written for commit 7afe922fa377ad29f0af880ed466a9ed31e0c602. Summary will update on new commits.</sup> <!-- End of auto-generated description by cubic. -->
-
由 Will Chen 提交于
<!-- CURSOR_SUMMARY --> > [!NOTE] > <sup>[Cursor Bugbot](https://cursor.com/dashboard?tab=bugbot) is generating a summary for commit 7a0792c4c481510e0153cc120efe901855289825. Configure [here](https://cursor.com/dashboard?tab=bugbot).</sup> <!-- /CURSOR_SUMMARY -->
-