mirror of
https://github.com/Significant-Gravitas/AutoGPT.git
synced 2026-02-12 07:45:14 -05:00
7d10dc4e7b30e7904149d0bcd9daeb0929853aea
408 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
7d10dc4e7b |
fix(frontend): pin deps (#10121)
<!-- Clearly explain the need for these changes: --> ### Changes 🏗️ This PR updates the .npmrc file to improve dependency consistency across local and CI environments when using pnpm. Specifically: - `save-exact=true` ensures all dependencies are pinned to exact versions, preventing version drift ( _especially important for tools like `prettier`, where even minor changes can lead to inconsistent formatting in commits_ ). This change aims to reduce formatting discrepancies and improve reproducibility across machines and contributors. ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] formatting & lint passes on the CI |
||
|
|
5b324abc7c |
update(turnstile): Add env to hide turnstile for dev deploy (#10116)
This simply adds a env to hide turnstile for dev deploys if this env ``NEXT_PUBLIC_DISABLE_TURNSTILE`` is set to false which it is by default, it will show turnstile, if the env is set to "true" it will hide the turnstile #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] Login/register with ``NEXT_PUBLIC_DISABLE_TURNSTILE=false`` and you see the turnstile and that is needed to login/signup - [x] Login/register with ``NEXT_PUBLIC_DISABLE_TURNSTILE=true`` and you will see the turnstile is gone, and you can login/signup with out it |
||
|
|
b900e86c49 |
fix(profile): account menu layout and alignment (#10113)
<!-- Clearly explain the need for these changes: --> ## Changes 🏗️ ### Before <img width="200" alt="image" src="https://github.com/user-attachments/assets/8a8e1818-6b8c-4d86-a2b1-a474ba27a6de" /> ### After <img width="200" alt="Screenshot 2025-06-05 at 15 26 45" src="https://github.com/user-attachments/assets/cc28eaeb-626b-46a8-a726-c157b2471ca9" /> ### Adjustments - Adjusted the padding account the menu - Made username display on top of account name nicely - Both username and account name will be trimmed if they are too long `...` ## Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Login - [x] Open account menu ( top-right ) - [x] The alignment of items is right - [x] Long usernames are handled nicely - [x] Username and display name don't overlap |
||
|
|
ef6ba3e84a |
fix(frontend): Resolve perpetual loading state on password reset (#10103)
- Fixes #10085 ### Changes 🏗️ - Remove redirect from `sendResetEmail` server action ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Reset password form exits loading state after request completes |
||
|
|
95137323f7 |
chore(frontend/deps-dev): Bump eslint-plugin-storybook from 0.11.6 to 0.12.0 in /autogpt_platform/frontend (#10105)
Bumps [eslint-plugin-storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/lib/eslint-plugin) from 0.11.6 to 0.12.0. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/storybookjs/storybook/blob/next/CHANGELOG.v1-5.md">eslint-plugin-storybook's changelog</a>.</em></p> <blockquote> <h2>5.3.7 (January 20, 2020)</h2> <h3>Bug Fixes</h3> <ul> <li>Node-logger: Move <code>@types/npmlog</code> to dependencies (<a href="https://redirect.github.com/storybookjs/storybook/pull/9538">#9538</a>)</li> <li>Core: Fix legacy story URLs (<a href="https://redirect.github.com/storybookjs/storybook/pull/9545">#9545</a>)</li> <li>Addon-docs: Convert default prop value to string (<a href="https://redirect.github.com/storybookjs/storybook/pull/9525">#9525</a>)</li> <li>Addon-docs: Preserve Source indentation by default (<a href="https://redirect.github.com/storybookjs/storybook/pull/9513">#9513</a>)</li> </ul> <h2>5.3.6 (January 17, 2020)</h2> <h3>Bug Fixes</h3> <ul> <li>Source-loader: Bypass if file has no exports (<a href="https://redirect.github.com/storybookjs/storybook/pull/9505">#9505</a>)</li> <li>Core: Fix default sorting of docs-only stories (<a href="https://redirect.github.com/storybookjs/storybook/pull/9504">#9504</a>)</li> </ul> <h2>5.3.5 (January 17, 2020)</h2> <h3>Bug Fixes</h3> <ul> <li>Core: Fix typo for loading addon-notes/register-panel (<a href="https://redirect.github.com/storybookjs/storybook/pull/9497">#9497</a>)</li> <li>Source-loader: Add imports to top of file (<a href="https://redirect.github.com/storybookjs/storybook/pull/9492">#9492</a>)</li> </ul> <h2>5.3.4 (January 16, 2020)</h2> <h3>Bug Fixes</h3> <ul> <li>Core: Fix presets register panel (<a href="https://redirect.github.com/storybookjs/storybook/pull/9486">#9486</a>)</li> <li>Core: Fix addon/preset detection for local addons (<a href="https://redirect.github.com/storybookjs/storybook/pull/9485">#9485</a>)</li> <li>Core: Fix default story sort (<a href="https://redirect.github.com/storybookjs/storybook/pull/9482">#9482</a>)</li> </ul> <h2>5.3.3 (January 14, 2020)</h2> <h3>Bug Fixes</h3> <ul> <li>UI: Fix edge case where only one legacy separator is defined (<a href="https://redirect.github.com/storybookjs/storybook/pull/9425">#9425</a>)</li> <li>Core: Preserve kind load order on HMR when no sortFn is provided (<a href="https://redirect.github.com/storybookjs/storybook/pull/9424">#9424</a>)</li> <li>Angular: Fix missing architect properties (<a href="https://redirect.github.com/storybookjs/storybook/pull/9390">#9390</a>)</li> <li>Addon-knobs: Fix null knob values in select (<a href="https://redirect.github.com/storybookjs/storybook/pull/9416">#9416</a>)</li> <li>Source-loader: Disable linting altogether (<a href="https://redirect.github.com/storybookjs/storybook/pull/9417">#9417</a>)</li> </ul> <h2>5.3.2 (January 13, 2020)</h2> <h3>Bug Fixes</h3> <ul> <li>Source-loader: Disable eslint entirely for generated code (<a href="https://redirect.github.com/storybookjs/storybook/pull/9410">#9410</a>)</li> </ul> <h2>5.3.1 (January 12, 2020)</h2> <h3>Bug Fixes</h3> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Commits</summary> <ul> <li>See full diff in <a href="https://github.com/storybookjs/storybook/commits/v0.12.0/code/lib/eslint-plugin">compare view</a></li> </ul> </details> <br /> [](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show <dependency name> ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
512ce6d473 | fix(frontend): Hide native file input on agent node file input | ||
|
|
47adab575b |
fix(frontend): Fix login/logout actions; update credentials cache on state change (#10017)
- Resolves #10008 ### Changes 🏗️ - Update `useSupabase` hook to propagate auth state changes - Refresh `CredentialsProvider` whenever the user login state changes - Add `logOut` callback to `useSupabase` hook that handles (client-side) logout - Remove server-side `logout` action: the Supabase reference implementation does it client-side, and doing both causes a race condition Refactorings to aid implementation of the above: - Move `@/hooks/useSupabase` -> `@/lib/supabase/useSupabase` Other improvements: - Clean up `login` server action based on reference implementation - Make `BackendAPI.isAuthenticated()` more efficient and faster - Remove unused `ProfileDropdown` component - Improve logic and debug logging in `tests/pages/login.page.ts` - Improve playwright test output logging ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - Log out from account (A) - Log in to other account (B) - Open builder, add a block for which account B has (multiple) credentials - [x] Credentials for account B are shown - [x] Credentials for account A are *not* shown **Note: do not reload the page** while going through these steps |
||
|
|
6629052a6b |
chore(frontend/deps-dev): Bump the development-dependencies group across 1 directory with 3 updates (#10086)
Bumps the development-dependencies group with 3 updates in the /autogpt_platform/frontend directory: [@storybook/test-runner](https://github.com/storybookjs/test-runner), [eslint-config-next](https://github.com/vercel/next.js/tree/HEAD/packages/eslint-config-next) and [msw](https://github.com/mswjs/msw). Updates `@storybook/test-runner` from 0.21.3 to 0.22.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/storybookjs/test-runner/releases"><code>@storybook/test-runner</code>'s releases</a>.</em></p> <blockquote> <h2>v0.22.0</h2> <h4>🚀 Enhancement</h4> <ul> <li>Release v0.22.0 <a href="https://redirect.github.com/storybookjs/test-runner/pull/553">#553</a> (<a href="https://github.com/ronakj"><code>@ronakj</code></a> <a href="https://github.com/ndelangen"><code>@ndelangen</code></a> <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a> <a href="https://github.com/yannbf"><code>@yannbf</code></a>)</li> <li>Dependencies: Add sb9 alpha compatibility <a href="https://redirect.github.com/storybookjs/test-runner/pull/551">#551</a> (<a href="https://github.com/ndelangen"><code>@ndelangen</code></a>)</li> </ul> <h4>🐛 Bug Fix</h4> <ul> <li>Exclude new server component error <a href="https://redirect.github.com/storybookjs/test-runner/pull/552">#552</a> (<a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>)</li> </ul> <h4>Authors: 4</h4> <ul> <li>Kasper Peulen (<a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>)</li> <li>Norbert de Langen (<a href="https://github.com/ndelangen"><code>@ndelangen</code></a>)</li> <li>Ronak Jain (<a href="https://github.com/ronakj"><code>@ronakj</code></a>)</li> <li>Yann Braga (<a href="https://github.com/yannbf"><code>@yannbf</code></a>)</li> </ul> <h2>v0.22.0-next.2</h2> <h4>🐛 Bug Fix</h4> <h4>Authors: 1</h4> <ul> <li>Ronak Jain (<a href="https://github.com/ronakj"><code>@ronakj</code></a>)</li> </ul> <h2>v0.22.0-next.0</h2> <h4>🚀 Enhancement</h4> <ul> <li>Dependencies: Add sb9 alpha compatibility <a href="https://redirect.github.com/storybookjs/test-runner/pull/551">#551</a> (<a href="https://github.com/ndelangen"><code>@ndelangen</code></a>)</li> </ul> <h4>Authors: 1</h4> <ul> <li>Norbert de Langen (<a href="https://github.com/ndelangen"><code>@ndelangen</code></a>)</li> </ul> </blockquote> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/storybookjs/test-runner/blob/v0.22.0/CHANGELOG.md"><code>@storybook/test-runner</code>'s changelog</a>.</em></p> <blockquote> <h1>v0.22.0 (Fri Feb 28 2025)</h1> <h4>🚀 Enhancement</h4> <ul> <li>Release v0.22.0 <a href="https://redirect.github.com/storybookjs/test-runner/pull/553">#553</a> (<a href="https://github.com/ronakj"><code>@ronakj</code></a> <a href="https://github.com/ndelangen"><code>@ndelangen</code></a> <a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a> <a href="https://github.com/yannbf"><code>@yannbf</code></a>)</li> <li>Dependencies: Add sb9 alpha compatibility <a href="https://redirect.github.com/storybookjs/test-runner/pull/551">#551</a> (<a href="https://github.com/ndelangen"><code>@ndelangen</code></a>)</li> </ul> <h4>🐛 Bug Fix</h4> <ul> <li>Exclude new server component error <a href="https://redirect.github.com/storybookjs/test-runner/pull/552">#552</a> (<a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>)</li> </ul> <h4>Authors: 4</h4> <ul> <li>Kasper Peulen (<a href="https://github.com/kasperpeulen"><code>@kasperpeulen</code></a>)</li> <li>Norbert de Langen (<a href="https://github.com/ndelangen"><code>@ndelangen</code></a>)</li> <li>Ronak Jain (<a href="https://github.com/ronakj"><code>@ronakj</code></a>)</li> <li>Yann Braga (<a href="https://github.com/yannbf"><code>@yannbf</code></a>)</li> </ul> <hr /> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
7abe6eb328 |
chore(frontend/deps): Bump the production-dependencies group across 1 directory with 5 updates (#10087)
Bumps the production-dependencies group with 5 updates in the /autogpt_platform/frontend directory: | Package | From | To | | --- | --- | --- | | [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) | `9.24.0` | `9.26.0` | | [@supabase/supabase-js](https://github.com/supabase/supabase-js) | `2.49.9` | `2.49.10` | | [framer-motion](https://github.com/motiondivision/motion) | `12.15.0` | `12.16.0` | | [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.510.0` | `0.513.0` | | [zod](https://github.com/colinhacks/zod) | `3.25.48` | `3.25.51` | Updates `@sentry/nextjs` from 9.24.0 to 9.26.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-javascript/releases"><code>@sentry/nextjs</code>'s releases</a>.</em></p> <blockquote> <h2>9.26.0</h2> <ul> <li>feat(react-router): Re-export functions from <code>@sentry/react</code> (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16465">#16465</a>)</li> <li>fix(nextjs): Skip re instrumentating on generate phase of experimental build mode (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16410">#16410</a>)</li> <li>fix(node): Ensure adding sentry-trace and baggage headers via SentryHttpInstrumentation doesn't crash (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16473">#16473</a>)</li> </ul> <h2>Bundle size 📦</h2> <table> <thead> <tr> <th>Path</th> <th>Size</th> </tr> </thead> <tbody> <tr> <td><code>@sentry/browser</code></td> <td>23.43 KB</td> </tr> <tr> <td><code>@sentry/browser</code> - with treeshaking flags</td> <td>23.2 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. Tracing)</td> <td>37.44 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. Tracing, Replay)</td> <td>74.69 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. Tracing, Replay) - with treeshaking flags</td> <td>67.96 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. Tracing, Replay with Canvas)</td> <td>79.33 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. Tracing, Replay, Feedback)</td> <td>91.13 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. Feedback)</td> <td>39.78 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. sendFeedback)</td> <td>28.03 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. FeedbackAsync)</td> <td>32.8 KB</td> </tr> <tr> <td><code>@sentry/react</code></td> <td>25.15 KB</td> </tr> <tr> <td><code>@sentry/react</code> (incl. Tracing)</td> <td>39.39 KB</td> </tr> <tr> <td><code>@sentry/vue</code></td> <td>27.67 KB</td> </tr> <tr> <td><code>@sentry/vue</code> (incl. Tracing)</td> <td>39.24 KB</td> </tr> <tr> <td><code>@sentry/svelte</code></td> <td>23.45 KB</td> </tr> <tr> <td>CDN Bundle</td> <td>24.88 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing)</td> <td>37.62 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay)</td> <td>72.64 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay, Feedback)</td> <td>77.93 KB</td> </tr> <tr> <td>CDN Bundle - uncompressed</td> <td>72.67 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing) - uncompressed</td> <td>111.4 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay) - uncompressed</td> <td>222.7 KB</td> </tr> <tr> <td>CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed</td> <td>235.22 KB</td> </tr> <tr> <td><code>@sentry/nextjs</code> (client)</td> <td>41.02 KB</td> </tr> <tr> <td><code>@sentry/sveltekit</code> (client)</td> <td>37.93 KB</td> </tr> <tr> <td><code>@sentry/node</code></td> <td>146.56 KB</td> </tr> <tr> <td><code>@sentry/node</code> - without tracing</td> <td>96.03 KB</td> </tr> <tr> <td><code>@sentry/aws-serverless</code></td> <td>121.19 KB</td> </tr> </tbody> </table> <h2>9.25.1</h2> <ul> <li>fix(otel): Don't ignore child spans after the root is sent (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16416">#16416</a>)</li> </ul> <h2>Bundle size 📦</h2> <table> <thead> <tr> <th>Path</th> <th>Size</th> </tr> </thead> <tbody> <tr> <td><code>@sentry/browser</code></td> <td>23.43 KB</td> </tr> <tr> <td><code>@sentry/browser</code> - with treeshaking flags</td> <td>23.2 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. Tracing)</td> <td>37.44 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. Tracing, Replay)</td> <td>74.69 KB</td> </tr> <tr> <td><code>@sentry/browser</code> (incl. Tracing, Replay) - with treeshaking flags</td> <td>67.96 KB</td> </tr> </tbody> </table> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/getsentry/sentry-javascript/blob/develop/CHANGELOG.md"><code>@sentry/nextjs</code>'s changelog</a>.</em></p> <blockquote> <h2>9.26.0</h2> <ul> <li>feat(react-router): Re-export functions from <code>@sentry/react</code> (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16465">#16465</a>)</li> <li>fix(nextjs): Skip re instrumentating on generate phase of experimental build mode (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16410">#16410</a>)</li> <li>fix(node): Ensure adding sentry-trace and baggage headers via SentryHttpInstrumentation doesn't crash (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16473">#16473</a>)</li> </ul> <h2>9.25.1</h2> <ul> <li>fix(otel): Don't ignore child spans after the root is sent (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16416">#16416</a>)</li> </ul> <h2>9.25.0</h2> <h3>Important Changes</h3> <ul> <li><strong>feat(browser): Add option to ignore <code>mark</code> and <code>measure</code> spans (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16443">#16443</a>)</strong></li> </ul> <p>This release adds an option to <code>browserTracingIntegration</code> that lets you ignore <code>mark</code> and <code>measure</code> spans created from the <code>performance.mark(...)</code> and <code>performance.measure(...)</code> browser APIs:</p> <pre lang="js"><code>Sentry.init({ integrations: [ Sentry.browserTracingIntegration({ ignorePerformanceApiSpans: ['measure-to-ignore', /mark-to-ignore/], }), ], }); </code></pre> <h3>Other Changes</h3> <ul> <li>feat(browser): Export getTraceData from the browser sdks (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16433">#16433</a>)</li> <li>feat(node): Add <code>includeServerName</code> option (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16442">#16442</a>)</li> <li>fix(nuxt): Remove setting <code>@sentry/nuxt</code> external (<a href="https://redirect.github.com/getsentry/sentry-javascript/pull/16444">#16444</a>)</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href=" |
||
|
|
34009bc749 |
feat(frontend): Upgrade to Next.js v15 + update config (#10042)
- Resolves #10041 Upgrading to Next v15 isn't trivial, but still a good idea if not simply necessary. ### Changes 🏗️ - Upgrade Next.js from `v14.2.26` to `v15.3.2` - Fix usage of now-async APIs `params`, `searchParams`, `headers` ([docs](https://nextjs.org/docs/app/guides/upgrading/version-15#async-request-apis-breaking-change)) - Update Next+TypeScript configs - Set build target to ES2022 for better performance - Unignore TypeScript build errors - Set `hideSourceMaps: false` because OSS FTW :) - Remove obsolete `webpack.config.js` - Fix existing warnings/errors - Fix Sentry missing navigation hook warning - Fix `DYNAMIC_SERVER_USAGE` build error on `/profile` and `/marketplace` - Moved `getStoreData` to a proper server action `getMarketplaceData` - Fix breaking CSS syntax error in `customnode.css` - Use Turbopack for faster dev+test build times - Add separate build step to frontend CI workflow: this also fixes the test timing out if the build takes too long Other technical improvements: - Wrap `handleSortChange` in `MarketplaceSearchPage` in `useCallback` - Fix typing in `ProfileInfoForm` - Improve output of frontend tests > [!NOTE] > Next prints this error (in dev mode): > ``` > Error: Route "/marketplace" used `cookies().getAll()`. `cookies()` should be awaited before using its value. Learn more: https://nextjs.org/docs/messages/sync-dynamic-apis > at Object.getAll (src/lib/supabase/getServerSupabase.ts:16:31) > at getAll (../../src/cookies.ts:115:41) > ... > ``` > As far as I can see, this isn't breaking, and will become a warning in prod. See also [the Next docs about this issue](https://nextjs.org/docs/messages/sync-dynamic-apis) ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Follow the full release QA test script #### For configuration changes: - [x] I have included a list of my configuration changes in the PR description (under **Changes**) --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
|
|
722c6bcc18 |
fix(storybook): make font load in Stories (#10081)
### Changes 🏗️ #### Before <img width="800" alt="Screenshot 2025-06-03 at 16 54 36" src="https://github.com/user-attachments/assets/2a69b69d-2b01-436e-aab3-8206485a001c" /> #### After <img width="800" alt="Screenshot 2025-06-03 at 16 58 38" src="https://github.com/user-attachments/assets/4daf41d4-42ce-4119-8e9f-b2b10b524cba" /> ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [ ] checkout this branch ( _we should have PR previews for the app and Storybook_ ) - [ ] `cd autogpt_platform/frontend` - [ ] `yarn storybook` - [ ] the stories road with the right font ( Poppins ) not a serif one 😄 #### For configuration changes: - [ ] ~~`.env.example` is updated or already compatible with my changes~~ - [ ] ~~`docker-compose.yml` is updated or already compatible with my changes~~ - [ ] ~~I have included a list of my configuration changes in the PR description (under **Changes**)~~ |
||
|
|
73a3d980ca |
chore(frontend): move from yarn1 to pnpm (#10072)
## 🧢 Overview This PR migrates the AutoGPT Platform frontend from [yarn 1](https://classic.yarnpkg.com/lang/en/) to [pnpm](https://pnpm.io/) using **corepack** for automatic package manager management. **yarn1** is not longer maintained and a bit old, moving to **pnpm** we get: - ⚡ Significantly faster install times, - 💾 Better disk space efficiency, - 🛠️ Better community support and maintenance, - 💆🏽♂️ Config swap very easy ## 🏗️ Changes ### Package Management Migration - updated [corepack](https://github.com/nodejs/corepack) to use [pnpm](https://pnpm.io/) - Deleted `yarn.lock` and generated new `pnpm-lock.yaml` - Updated `.gitignore` ### Documentation Updates - `frontend/README.md`: - added comprehensive tech stack overview with links - updated all commands to use pnpm - added corepack setup instructions - and included migration disclaimer for yarn users - `backend/README.md`: - Updated installation instructions to use pnpm with corepack - `AGENTS.md`: - Updated testing commands from yarn to pnpm ### CI/CD & Infrastructure - **GitHub Workflows** : - updated all jobs to use pnpm with corepack enable - cleaned FE Playwright test workflow to avoid Sentry noise - **Dockerfile**: - updated to use pnpm with corepack, changed lock file reference, and updated cache mount path ### 📋 Checklist #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: **Test Plan:** > assuming you are on the `frontend` folder - [x] Clean installation works: `rm -rf node_modules && corepack enable && pnpm install` - [x] Development server starts correctly: `pnpm dev` - [x] Build process works: `pnpm build` - [x] Linting and formatting work: `pnpm lint` and `pnpm format` - [x] Type checking works: `pnpm type-check` - [x] Tests run successfully: `pnpm test` - [x] Storybook starts correctly: `pnpm storybook` - [x] Docker build succeeds with new pnpm configuration - [x] GitHub Actions workflow passes with pnpm commands #### For configuration changes: - [x] `.env.example` is updated or already compatible with my changes - [x] `docker-compose.yml` is updated or already compatible with my changes - [x] I have included a list of my configuration changes in the PR description (under **Changes**) |
||
|
|
0f558876e2 |
feat(blocks;frontend): Add file multipart upload support for SendWebRequestBlock & Improve key-value input UI rendering (#10058)
Now, SendWebRequestBlock can upload files. To make this work, we also need to improve the UI rendering on the key-value pair input so that it can also render media/file upload. ### Changes 🏗️ * Add file multipart upload support for SendWebRequestBlock * Improve key-value input UI rendering to allow rendering any types as a normal input block (it was only string & number). <img width="381" alt="image" src="https://github.com/user-attachments/assets/b41d778d-8f9d-4aec-95b6-0b32bef50e89" /> ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] Test running http request block, othe key-value pair input block |
||
|
|
16d6f5377c |
fix(frontend): missed a password prompt (#10065)
<!-- Clearly explain the need for these changes: --> CASA requires a length of 12 passwords, which we did update. When testing in dev, I realized I missed a few. ### Changes 🏗️ <!-- Concisely describe all of the changes made in this pull request: --> updates a missed prompt ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] Test manually, and read all the prompts carefully |
||
|
|
85e108a37a |
feat(frontend): require passwrods to be min length 12 (#10061)
<!-- Clearly explain the need for these changes: --> We're doing CASA and this is a requirement ### Changes 🏗️ - Requires new passwords to be min length 12 <!-- Concisely describe all of the changes made in this pull request: --> ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] test |
||
|
|
692f32a350 |
fix(platform): Turnstile CAPTCHA reset after failed login attempts (#10056)
Users were unable to retry login attempts after a failed authentication because the Turnstile CAPTCHA widget was not properly resetting. This forced users to refresh the entire page to attempt login again, creating a terrible user experience. Root Cause: The useTurnstile hook had several critical issues: - The reset() function only cleared state when shouldRender was true and widget existed - Widget ID tracking was unreliable due to intercepting window.turnstile.render - Token wasn't being cleared on verification failures - State wasn't being reset consistently across error scenarios Changes 🏗️ <!-- Concisely describe all of the changes made in this pull request: --> - Fixed useTurnstile hook reset logic: Modified the reset() function to always clear all state (token, verified, verifying, error) regardless of shouldRender condition - Improved widget ID synchronization: Added setWidgetId prop to the Turnstile component interface and hook for reliable widget tracking between component and hook - Enhanced error handling: Updated handleVerify, handleExpire, and handleError to properly reset tokens on failures - Updated all auth components: Added setWidgetId prop to all Turnstile component usages in login, signup, and password reset pages - Removed unreliable widget tracking: Eliminated the window.turnstile.render interception approach in favor of explicit prop-based communication Checklist 📋 For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - <!-- Put your test plan here: --> - [x] Test failed login attempt - CAPTCHA resets properly without page refresh - [x] Test failed signup attempt - CAPTCHA resets properly without page refresh - [x] Test successful login flow - CAPTCHA works normally - [x] Test CAPTCHA expiration - State resets correctly - [x] Test CAPTCHA error scenarios - Error handling works properly |
||
|
|
9f2b9d08c9 |
feat(platform): Add Run 10 agents wallet task (#9937)
### Changes 🏗️ This PR adds `Run 10 agents` step to wallet tasks that can be done by running any agents 10 times either from Library or Builder (onboarding agent run also counts). - Merge `Finish onboarding` and `See results` steps into one in the wallet - User is redirected directly to onboarding agent runs in Library after congrats screen - Add `RUN_AGENTS` step and `agentRuns` integer to schema and related migration - Running agent from Library and Builder increments `agentRuns` - Open NPS survey popup when 10 agents are run - Fix resuming onboarding on login when unfinished - Remove no longer needed `get-results.mp4` tutorial video ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Onboarding can be completed and proper reward is awarded - [x] `Run 10 agents` can be completed and reward is awarded - [x] When unning different agents and the same agent - [x] Running from library and builder counts - [x] Onboarding is resumed to last finished step on login |
||
|
|
b91b026164 |
fix(platform): Restore See runs button on marketplace listing page (#9970)
This makes button on the marketplace listing page show `See runs` if user has an agent in the library. ### Changes 🏗️ - Remove `/` from the related endpoint - Use `active_version_id` instead of `store_listing_version_id` to check for the library agent - Fix `get_store_agent_details` ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - Log in and pick an agent that has never been in user library - [x] Button says `Add to library` - Add the agent and return to the listing page - [x] Button says `See runs` - Remove agent from library - [x] Button says `Add to library` - Add agent again - [x] Button says `See runs` --------- Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co> |
||
|
|
3471781b98 |
fix(frontend/marketplace): require category selection (#10031)
## Summary - require categories to be selected in PublishAgent popout ### Changes 🏗️ Makes it require the categories to be set before allowing an agent to be uploaded added popup notification to say its missing categories ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] Try to upload a agent with out setting categories and it will error and show message saying "Missing Required Fields, Please fill in: Categories" - [x] Now try to upload a agent with the categories set and it will work Co-authored-by: Bently <Github@bentlybro.com> |
||
|
|
45578136e3 |
feat(frontend): Page-specific titles (#9995)
- Resolves #8656 Instead of "NextGen AutoGPT", make page titles like "My Test Agent - Library - AutoGPT Platform", "Settings - AutoGPT Platform", "Builder - AutoGPT Platform". ### Changes 🏗️ - Add specific page titles to `/library`, `/library/agents/[id]`, `/build`, `/profile`, `/profile/api_keys` - Fix page titles on `/marketplace`, `/profile/settings` ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Go to `/marketplace` and check the page title - [x] Go to `/library` and check the page title - [x] Go to `/library/agents/[id]` and check the page title - [x] Go to `/build` and check the page title - [x] Go to `/profile` and check the page title - [x] Go to `/profile/settings` and check the page title - [x] Go to `/profile/api_keys` and check the page title - [ ] ~~Go to `/profile/dashboard` and check the page title~~ - [ ] ~~Go to `/profile/integrations` and check the page title~~ - [ ] ~~Go to `/profile/credits` and check the page title~~ |
||
|
|
5518c2e9a2 |
fix(frontend): Fix global <body> styling and base fonts (#9574)
Base styling currently being fragmented between `layout.tsx` and `globals.css` is causing some styling (e.g. application background color) to be incorrectly overridden. ### Changes 🏗️ - Remove background color override from `<body>` - Move `<body>` classes from `layout.tsx` to `globals.css` - Remove background color from elements that shouldn't have their own background color - Remove `font-neue`, `font-inter`; replace by Geist (`font-sans`) where necessary ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Effective background color of application is `#FAFAFA` like before - [x] Default font is Geist - [x] Everything looks okay |
||
|
|
61643e6a47 |
fix(frontend): Top Agents header spacing (#10002)
Changed the section header for "Top Agents" to include a 24px margin. I have not tested this, an eng needs to test / look at this ## Summary - set `margin` default to 24px in `AgentsSection` - apply the bottom margin via an inline style ## Testing - `npm test` *(fails: playwright not found)* - `npm run lint` *(fails: next not found)* ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Test via deployment to the dev branch and verify by designer --------- Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co> Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co> |
||
|
|
21b4d272ce |
feat(frontend/library): Replace "Loading..." by loading spinners (#9993)
- Resolves #9992 ### Changes 🏗️ - Use `<LoadingBox>` instead of "Loading..." on `/library/agents/[id]`  ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] Designer approves based on screencapture |
||
|
|
f8965e530f |
ref(frontend/admin): fix location of spending page (#9991)
### Changes 🏗️ Moves the route path for spending drops min <!-- Concisely describe all of the changes made in this pull request: --> ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] test locally --------- Co-authored-by: Bently <Github@bentlybro.com> |
||
|
|
cf9cf4e7dd |
refactor(frontend): Move OttoChatWidget out of root layout (#9951)
- Resolves #9950 ### Changes 🏗️ - Move `<OttoChatWidget>` from root layout into `FlowEditor` - Pass graph info directly into `OttoChatWidget` instead of using `useAgentGraph` - Rearrange z-indices of elements in the builder ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - Go to `/build` - [x] -> chat widget should show up in the bottom right corner - Open the widget and ask Otto something - [x] -> should work normally - Add a few blocks and save the graph - [x] -> "Include graph data" should show up - Click "Include graph data" and ask Otto something about your graph - [x] -> Otto should be aware of the graph structure and metadata |
||
|
|
0a79e1c5fd |
feat(frontend/library): Show toast on WebSocket (dis|re)connect (#9949)
- Resolves #9941 - Follow-up to #9935 ### Changes 🏗️ - Show toast when WS connection (dis|re)connects (on `/library/agents/[id]`) - Implement `BackendAPI.onWebSocketDisconnect` Related improvements: - Clean up WebSocket state management & logging in `BackendAPI` - Clean up & split loading spinner implementation: `Spinner` -> `LoadingBox` + `LoadingSpinner` Also, unrelated: - fix(frontend/library): Add 2 second debounce to page refresh logic This eliminates 3 triple API calls (so 9 -> 3 total) on page load: `GET /library/agents/{agent_id}`, `GET /graphs/{graph_id}/executions`, and `GET /graphs/{graph_id}/executions/{exec_id}` ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - Start the frontend and backend applications (locally) - Navigate to `/library/agents/[id]` - Kill the backend - [x] -> a toast should appear "Connection to server was lost" - [x] -> this toast should be shown as long as the server is down - Re-start the backend - [x] -> toast should change to show "Connection re-established" - [x] -> toast should now disappear after 2 seconds --- Co-authored-by: Krzysztof Czerwinski <kpczerwinski@gmail.com> |
||
|
|
ac532ca4b9 |
fix(backend): Graph execution update on terminate (#9952)
Resolves #9947 ### Changes 🏗️ Backend: - Send a graph execution update after terminating a run - Don't wipe the graph execution stats when not passed in to `update_graph_execution_stats` Frontend: - Don't hide the output of stopped runs ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - Go to `/library/agents/[id]` - Run an agent that takes a while (long enough to click stop and see the effect) - Hit stop after it has executed a few nodes - [x] -> run status should change to "Stopped" - [x] -> run stats (steps, duration, cost) should stay the same or increase only one last time - [x] -> output so far should be visible - [x] -> shown information should stay the same after refreshing the page --- Co-authored-by: Krzysztof Czerwinski <34861343+kcze@users.noreply.github.com> |
||
|
|
bd425331f1 |
chore(frontend/deps): Update 35 dependencies to latest minor versions (#9953)
Bumps the production-dependencies group with 35 updates in the /autogpt_platform/frontend directory: | Package | From | To | | --- | --- | --- | | [@faker-js/faker](https://github.com/faker-js/faker) | `9.6.0` | `9.8.0` | | [@next/third-parties](https://github.com/vercel/next.js/tree/HEAD/packages/third-parties) | `15.2.1` | `15.3.2` | | [@radix-ui/react-alert-dialog](https://github.com/radix-ui/primitives) | `1.1.6` | `1.1.13` | | [@radix-ui/react-avatar](https://github.com/radix-ui/primitives) | `1.1.3` | `1.1.9` | | [@radix-ui/react-checkbox](https://github.com/radix-ui/primitives) | `1.1.4` | `1.3.1` | | [@radix-ui/react-collapsible](https://github.com/radix-ui/primitives) | `1.1.3` | `1.1.10` | | [@radix-ui/react-context-menu](https://github.com/radix-ui/primitives) | `2.2.6` | `2.2.14` | | [@radix-ui/react-dropdown-menu](https://github.com/radix-ui/primitives) | `2.1.6` | `2.1.14` | | [@radix-ui/react-label](https://github.com/radix-ui/primitives) | `2.1.2` | `2.1.6` | | [@radix-ui/react-popover](https://github.com/radix-ui/primitives) | `1.1.6` | `1.1.13` | | [@radix-ui/react-radio-group](https://github.com/radix-ui/primitives) | `1.2.3` | `1.3.6` | | [@radix-ui/react-scroll-area](https://github.com/radix-ui/primitives) | `1.2.3` | `1.2.8` | | [@radix-ui/react-select](https://github.com/radix-ui/primitives) | `2.1.6` | `2.2.4` | | [@radix-ui/react-separator](https://github.com/radix-ui/primitives) | `1.1.2` | `1.1.6` | | [@radix-ui/react-switch](https://github.com/radix-ui/primitives) | `1.1.3` | `1.2.4` | | [@radix-ui/react-tabs](https://github.com/radix-ui/primitives) | `1.1.4` | `1.1.11` | | [@radix-ui/react-toast](https://github.com/radix-ui/primitives) | `1.2.6` | `1.2.13` | | [@radix-ui/react-tooltip](https://github.com/radix-ui/primitives) | `1.1.8` | `1.2.6` | | [@sentry/nextjs](https://github.com/getsentry/sentry-javascript) | `9.10.1` | `9.19.0` | | [@supabase/ssr](https://github.com/supabase/ssr) | `0.5.2` | `0.6.1` | | [@supabase/supabase-js](https://github.com/supabase/supabase-js) | `2.49.1` | `2.49.4` | | [@tanstack/react-table](https://github.com/TanStack/table/tree/HEAD/packages/react-table) | `8.21.2` | `8.21.3` | | [@xyflow/react](https://github.com/xyflow/xyflow/tree/HEAD/packages/react) | `12.4.2` | `12.6.4` | | [cmdk](https://github.com/pacocoursey/cmdk/tree/HEAD/cmdk) | `1.0.4` | `1.1.1` | | [dotenv](https://github.com/motdotla/dotenv) | `16.4.7` | `16.5.0` | | [embla-carousel-react](https://github.com/davidjerleke/embla-carousel) | `8.5.2` | `8.6.0` | | [framer-motion](https://github.com/motiondivision/motion) | `12.4.11` | `12.12.1` | | [geist](https://github.com/vercel/geist-font/tree/HEAD/packages/next) | `1.3.1` | `1.4.2` | | [launchdarkly-react-client-sdk](https://github.com/launchdarkly/react-client-sdk) | `3.6.1` | `3.7.0` | | [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.479.0` | `0.510.0` | | [next-themes](https://github.com/pacocoursey/next-themes) | `0.4.5` | `0.4.6` | | [react-day-picker](https://github.com/gpbl/react-day-picker) | `9.6.1` | `9.7.0` | | [react-hook-form](https://github.com/react-hook-form/react-hook-form) | `7.54.2` | `7.56.3` | | [recharts](https://github.com/recharts/recharts) | `2.15.1` | `2.15.3` | | [zod](https://github.com/colinhacks/zod) | `3.24.2` | `3.24.4` | Updates `@faker-js/faker` from 9.6.0 to 9.8.0 <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/faker-js/faker/releases"><code>@faker-js/faker</code>'s releases</a>.</em></p> <blockquote> <h2>v9.8.0</h2> <h2>What's Changed</h2> <ul> <li>feat(locale): add country code for en_CA & fr_CA by <a href="https://github.com/alixlahuec"><code>@alixlahuec</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3476">faker-js/faker#3476</a></li> <li>test: use validator@13.15.0 with isULID, isISO31661Numeric, isISO15924 by <a href="https://github.com/matthewmayer"><code>@matthewmayer</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3482">faker-js/faker#3482</a></li> <li>feat(locale): add zh_CN food by <a href="https://github.com/yyz945947732"><code>@yyz945947732</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3479">faker-js/faker#3479</a></li> <li>docs: more than 70 locales by <a href="https://github.com/matthewmayer"><code>@matthewmayer</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3483">faker-js/faker#3483</a></li> <li>feat(locale): update zh_CN location by <a href="https://github.com/yyz945947732"><code>@yyz945947732</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3481">faker-js/faker#3481</a></li> <li>feat(locale): update zh_CN animal by <a href="https://github.com/yyz945947732"><code>@yyz945947732</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3480">faker-js/faker#3480</a></li> <li>refactor(locale): ko state data update by <a href="https://github.com/seoahan"><code>@seoahan</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3487">faker-js/faker#3487</a></li> <li>feat(locale): add zh_CN book by <a href="https://github.com/yyz945947732"><code>@yyz945947732</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3477">faker-js/faker#3477</a></li> <li>feat(locale): add Japanese date and month definitions by <a href="https://github.com/matsueushi"><code>@matsueushi</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3492">faker-js/faker#3492</a></li> <li>feat(locale): add vehicle locale data for Japanese by <a href="https://github.com/noritaka1166"><code>@noritaka1166</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3490">faker-js/faker#3490</a></li> <li>feat(locale): update Japanese company categories by <a href="https://github.com/noritaka1166"><code>@noritaka1166</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3489">faker-js/faker#3489</a></li> <li>feat(locale): add Japanese science locale data including elements and units by <a href="https://github.com/noritaka1166"><code>@noritaka1166</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3491">faker-js/faker#3491</a></li> <li>feat(locale): add Japanese sex definitions for person locale by <a href="https://github.com/noritaka1166"><code>@noritaka1166</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3495">faker-js/faker#3495</a></li> <li>refactor(locale): rename pt-BR streetSuffix to streetPrefix by <a href="https://github.com/glmchalita"><code>@glmchalita</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3493">faker-js/faker#3493</a></li> <li>feat(locale): update zh_CN word by <a href="https://github.com/yyz945947732"><code>@yyz945947732</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3478">faker-js/faker#3478</a></li> <li>refactor(locale): normalize internet data by <a href="https://github.com/xDivisionByZerox"><code>@xDivisionByZerox</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3502">faker-js/faker#3502</a></li> <li>chore(deps): update eslint by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3500">faker-js/faker#3500</a></li> <li>chore(deps): update dependency eslint-plugin-unicorn to v59 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3501">faker-js/faker#3501</a></li> <li>chore(deps): update vitest by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3497">faker-js/faker#3497</a></li> <li>chore(deps): update cypress/browsers docker tag to v24 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3507">faker-js/faker#3507</a></li> <li>chore(deps): update all non-major dependencies by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3498">faker-js/faker#3498</a></li> <li>chore(deps): update mcr.microsoft.com/devcontainers/typescript-node:22 docker digest to fb211a0 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3508">faker-js/faker#3508</a></li> <li>feat(locale): Add additional Japanese last names to the locale data by <a href="https://github.com/noritaka1166"><code>@noritaka1166</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3484">faker-js/faker#3484</a></li> <li>chore(deps): update eslint by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3511">faker-js/faker#3511</a></li> <li>chore(deps): lock file maintenance by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3486">faker-js/faker#3486</a></li> <li>fix(locale): ko modified street_name to street_name_part by <a href="https://github.com/seoahan"><code>@seoahan</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3485">faker-js/faker#3485</a></li> <li>fix(locale): correct Japanese country names by <a href="https://github.com/matsueushi"><code>@matsueushi</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3510">faker-js/faker#3510</a></li> <li>chore(release): 9.8.0 by <a href="https://github.com/fakerjs-bot"><code>@fakerjs-bot</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3515">faker-js/faker#3515</a></li> </ul> <h2>New Contributors</h2> <ul> <li><a href="https://github.com/alixlahuec"><code>@alixlahuec</code></a> made their first contribution in <a href="https://redirect.github.com/faker-js/faker/pull/3476">faker-js/faker#3476</a></li> <li><a href="https://github.com/yyz945947732"><code>@yyz945947732</code></a> made their first contribution in <a href="https://redirect.github.com/faker-js/faker/pull/3479">faker-js/faker#3479</a></li> <li><a href="https://github.com/seoahan"><code>@seoahan</code></a> made their first contribution in <a href="https://redirect.github.com/faker-js/faker/pull/3487">faker-js/faker#3487</a></li> <li><a href="https://github.com/noritaka1166"><code>@noritaka1166</code></a> made their first contribution in <a href="https://redirect.github.com/faker-js/faker/pull/3490">faker-js/faker#3490</a></li> <li><a href="https://github.com/glmchalita"><code>@glmchalita</code></a> made their first contribution in <a href="https://redirect.github.com/faker-js/faker/pull/3493">faker-js/faker#3493</a></li> </ul> <p><strong>Full Changelog</strong>: <a href="https://github.com/faker-js/faker/compare/v9.7.0...v9.8.0">https://github.com/faker-js/faker/compare/v9.7.0...v9.8.0</a></p> <h2>v9.7.0</h2> <h2>What's Changed</h2> <ul> <li>feat(locale): Add bn_BD locale by <a href="https://github.com/AbrarShahriar"><code>@AbrarShahriar</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3439">faker-js/faker#3439</a></li> <li>fix(airline): Air France and KLM Royal Dutch Airlines by <a href="https://github.com/chimurai"><code>@chimurai</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3440">faker-js/faker#3440</a></li> <li>infra(comment-issue): fix display of thumbs up emoji by <a href="https://github.com/xDivisionByZerox"><code>@xDivisionByZerox</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3444">faker-js/faker#3444</a></li> <li>feat(locale): add localize sex support for zh_CN & zh_TW by <a href="https://github.com/sd44"><code>@sd44</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3450">faker-js/faker#3450</a></li> <li>fix(iban): more strict pattern for IE and PS by <a href="https://github.com/xDivisionByZerox"><code>@xDivisionByZerox</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3464">faker-js/faker#3464</a></li> <li>chore(deps): update devdependencies by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3456">faker-js/faker#3456</a></li> <li>chore(deps): update all non-major dependencies by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3457">faker-js/faker#3457</a></li> <li>chore(deps): update dependency prettier to v3.5.3 by <a href="https://github.com/renovate"><code>@renovate</code></a> in <a href="https://redirect.github.com/faker-js/faker/pull/3455">faker-js/faker#3455</a></li> </ul> <!-- raw HTML omitted --> </blockquote> <p>... (truncated)</p> </details> <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/faker-js/faker/blob/next/CHANGELOG.md"><code>@faker-js/faker</code>'s changelog</a>.</em></p> <blockquote> <h2><a href="https://github.com/faker-js/faker/compare/v9.7.0...v9.8.0">9.8.0</a> (2025-05-13)</h2> <h3>New Locales</h3> <ul> <li><strong>locale:</strong> Add additional Japanese last names to the locale data (<a href="https://redirect.github.com/faker-js/faker/issues/3484">#3484</a>) (<a href=" |
||
|
|
2dc038b6c0 |
Add Llama API Support (#9899)
The changes in this PR are to add Llama API support. ### Changes 🏗️ We add both backend and frontend support. **Backend**: - Add llama_api provider - Include models supported by Llama API along with configs - llm_call - credential store and llama_api_key field in Settings **Frontend**: - Llama API as a type - Credentials input and provider for Llama API ### Checklist 📋 #### For code changes: - [X] I have clearly listed my changes in the PR description - [X] I have tested my changes according to the test plan: **Test Plan**: <details> <summary>AI Text Generator</summary> - [X] Start-up backend and frontend: - Start backend with Docker services: `docker compose up -d --build` - Start frontend: `npm install && npm run dev` - By visiting http://localhost:3000/, test inference and structured outputs - [X] Create from scratch - [X] Request for Llama API Credentials <img width="2015" alt="image" src="https://github.com/user-attachments/assets/3dede402-3718-4441-9327-ecab25c63ebf" /> - [X] Execute an agent with at least 3 blocks <img width="2026" alt="image" src="https://github.com/user-attachments/assets/59d6d56b-2ccc-4af5-b511-4af312c3f7f8" /> - [X] Confirm it executes correctly </details> <details> <summary>Structured Response Generator</summary> - [X] Start-up backend and frontend: - Start backend with Docker services: `docker compose up -d --build` - Start frontend: `npm install && npm run dev` - By visiting http://localhost:3000/, test inference and structured outputs - [X] Create from scratch - [X] Execute an agent <img width="2023" alt="image" src="https://github.com/user-attachments/assets/d1107638-bf1b-45b1-a296-1e0fac29525b" /> - [X] Confirm it executes correctly </details> --------- Co-authored-by: Nicholas Tindle <nicholas.tindle@agpt.co> |
||
|
|
cd6deb87c3 |
fix(frontend): Revert congrats onboarding screen action (#9943)
Revert congrats onboarding screen action of #9916 |
||
|
|
e8fa996c2f |
refactor(frontend): Move from remote loaded GTM to local (#9933)
<!-- Clearly explain the need for these changes: --> As part of a small security review, we found that google won't let you load with integrity. That seems insane but the general workaround is to load a static copy of your own ### Changes 🏗️ Moves all the google analytics scripts in house instead of loading via cdn <!-- Concisely describe all of the changes made in this pull request: --> ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] tested it in a new isolated environment to confirm events still work as expected everywhere they are used --------- Co-authored-by: Reinier van der Leer <pwuts@agpt.co> |
||
|
|
e22d2c848a |
feat(frontend): Onboarding Updates 3 (#9916)
A collection of UX update and bug fixes for onboarding and wallet. ### Changes 🏗️ - Show spinner loading indicator when onboarding button is clicked - Use `getLibraryAgentByStoreListingVersionID` instead of `addMarketplaceAgentToLibrary` on congrats screen - Fix `Not enough segments` issue: don't fetch onboarding when user is logged out - Minor updates - Fill some missing deps in deps arrays - `Spinner` component, styles updates - Use `useMemo`/`useCallback` - Show error toast when onboarding agent fails to run: <img width="405" alt="Screenshot 2025-05-06 at 5 09 01 PM" src="https://github.com/user-attachments/assets/dd1272da-326a-448d-995d-98ac773b3ee4" /> ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Onboarding can be completed - [x] Failing agent shows toast - [x] Wallet can be opened and works properly (tasks, confetti) - [x] Dependency arrays don't cause infinite loops |
||
|
|
9471fd6b58 |
fix(frontend): Re-subscribe on WebSocket re-connect (#9935)
- Resolves #9929 ### Changes 🏗️ - Implement `BackendAPI.onWebSocketConnect(..)` - Improve reliability and reactivity of `/library/agents/[id]`: - Refresh page data and (re)subscribe and on WebSocket (re)connect - Break up multi-action hooks into smaller parts to reduce unnecessary re-renders and requests - Reduce duplicate requests - Use `onWebSocketConnect` in `useAgentGraph` as well - Tidy up `autogpt-server-api/client.ts` a bit ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - Go to `/library/agents/[id]` - Run the agent - [x] -> UI should update normally with execution updates - Suspend your computer, or restart the backend (or WS server) to break the connection - DO NOT REFRESH THE TAB ITSELF - [x] -> On reconnect, page data should be refreshed (check in network tab of dev tools) - Run the agent again - [x] -> UI should update normally with execution updates |
||
|
|
c4bbfd5050 |
feat(frontend): Update login and signup feedback (#9917)
Currently both login and signup page show the same feedback on error on cloud (join the waitlist). ### Changes 🏗️ Update login&signup feedback for cloud. - Use cards for login and signup feedback instead of html list - Make login page show prompt to redirect user to signup <img width="474" alt="Screenshot 2025-05-07 at 4 01 07 PM" src="https://github.com/user-attachments/assets/45f189ea-5fea-45bb-89f9-7323418d69ea" /> <img width="476" alt="Screenshot 2025-05-07 at 4 03 29 PM" src="https://github.com/user-attachments/assets/96f4cd7f-f3e6-44b2-b647-96ee98063572" /> ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Signup&login works with correct credentials - [x] Signup&login shows correct error message on wrong credentials - [x] Links work correctly |
||
|
|
8de88395f1 |
fix(backend): Continue stats accounting on aborted or broken executions (#9921)
This is a follow-up to https://github.com/Significant-Gravitas/AutoGPT/pull/9903 The continued graph execution restarted all the execution stats from zero, making the execution stats misleading. ### Changes 🏗️ Continue the execution stats when continuing the graph execution. ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] Existing tests, manual graph run with the graph execution aborted midway. |
||
|
|
089e7aae88 |
fix(frontend): Catch exception on agent listing page (#9923)
Listing page throws exception on deployment because of supabase auth issue. ### Changes 🏗️ Catch the exception when getting library agent. This reverts the behavior of listing page and it'll always show "Add to Library" when user is logged in. ### Checklist 📋 #### For code changes: - [ ] I have clearly listed my changes in the PR description - [ ] I have made a test plan - [ ] I have tested my changes according to the test plan: - [ ] ... |
||
|
|
74e6a6a43a |
fix(frontend/library): Quick Patch for Rendering Agent Outputs (#9922)
<!-- Clearly explain the need for these changes: --> The goal of this change is a quick and temporary tweak to improve the displaying of output text in the Agent Runs screen. This change is made anticipating that these outputs will be properly improved in the near future, and is thus just a temporary change in order to display text in a human readable format. ### Changes 🏗️ There is one change in this PR: - The class of the Agent Output textbox is changed to properly display text without impacting the design. Below is a before and after of this change: **Before**  **After**  ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [ ] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [ ] ... --------- Co-authored-by: Bentlybro <Github@bentlybro.com> |
||
|
|
1ad6c76f9c |
feat(backend): Require discriminator value on graph save (#9858)
If a node has a multi-credentials input (e.g. AI Text Generator block) but the discriminator value (e.g. model choice) is missing, the input can't be discriminated into a single-provider input. Discrimination into a single-provider input is necessary to make a graph-level credentials input for use in the Library. ### Changes 🏗️ - feat(backend): Require discriminator fields to always have a value - dx(frontend): Improve typing of discriminator stuff - dx(frontend): Fix typing in `NodeOneOfDiscriminatorField` component ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Saving & running graphs with and without credentials works normally - Note: We don't have any blocks with a discriminator that doesn't have a default value, so currently I don't think it's possible to produce a case where this mechanism would be triggered. |
||
|
|
104928c614 |
feat(platform): Add captcha to login, signup and password reset pages (#9847)
This PR adds Cloudflare's Turnstile CAPTCHA to the login, signup, and password reset pages. it is setup to only show and work when behave as is set to CLOUD so it will not show for local hosted users. ### Changes 🏗️ #### Backend Changes - **[backend/server/v2/turnstile/routes.py](https://github.com/Significant-Gravitas/AutoGPT/compare/dev...bently/secrt-1169-implement-captcha-on-sign-up?expand=1#diff-2c5c2cb13346370fc48bdde8691a0d3bbfc030f7718288101b67b641c7948c10)**: Created API endpoint at `/api/turnstile/verify` to proxy verification requests to Cloudflare - **[backend/server/v2/turnstile/service.py](https://github.com/Significant-Gravitas/AutoGPT/compare/dev...bently/secrt-1169-implement-captcha-on-sign-up?expand=1#diff-296991fdc3ea821ae5a568ca96bb89789f2fc7dda7b62f59ef6bcadfaea16e56)**: Implements service to verify CAPTCHA tokens with Cloudflare using server-side secret key #### Frontend Changes - **[frontend/src/lib/turnstile.ts](https://github.com/Significant-Gravitas/AutoGPT/compare/dev...bently/secrt-1169-implement-captcha-on-sign-up?expand=1#diff-a698e2718e0f6b0afe1d0c7fda571a7bfcbec6aeacc963c2b3620cc683dc4448)**: Client-side function to call the backend verification endpoint - **[frontend/src/components/auth/Turnstile.tsx](https://github.com/Significant-Gravitas/AutoGPT/compare/dev...bently/secrt-1169-implement-captcha-on-sign-up?expand=1#diff-71a73d58d0ba5e46e5702f2f2599284e72a8fcf6c5d0b5c72e7358570d631aa7)**: Reusable Turnstile component that renders and manages the CAPTCHA widget - **[frontend/src/hooks/useTurnstile.ts](https://github.com/Significant-Gravitas/AutoGPT/compare/dev...bently/secrt-1169-implement-captcha-on-sign-up?expand=1#diff-4a6a9363243ab2a88dbfb498917f464896ada059617bd8b0fb51df532c73827d)**: Custom hook that manages Turnstile state and conditionally activates based on environment #### Auth Flow Integration - Modified server actions in `login`, `signup`, and `reset_password` to accept and verify Turnstile tokens - Updated auth page components to integrate the CAPTCHA widget with form submissions ### Configuration Changes - Added two new environment variables: - `NEXT_PUBLIC_CLOUDFLARE_TURNSTILE_SITE_KEY`: Public site key for frontend - `CLOUDFLARE_TURNSTILE_SECRET_KEY`: Secret key for backend verification ### Test Plan 📋 - Ask Bently for the keys to test locally! - [x] Test login, signup and password reset with Turnstile enabled (BEHAVE_AS=CLOUD) - [x] Verify CAPTCHA appears and must be completed before form submission - [x] Verify error message appears if CAPTCHA is not completed - [x] Verify form submission works after completing CAPTCHA - [x] Test login, signup and password reset with Turnstile disabled (BEHAVE_AS=LOCAL) - [x] Verify CAPTCHA does not appear - [x] Verify form submission works without CAPTCHA - [x] Test with invalid site key to ensure proper error handling --------- Co-authored-by: Krzysztof Czerwinski <34861343+kcze@users.noreply.github.com> |
||
|
|
6f1578239a |
feat(platform): Update Marketplace Agent listing buttons (#9843)
Currently agent listing on Marketplace have bad UX. ### Changes 🏗️ - Add function and endpoint to check if user has `LibraryAgent` by given `storeListingVersionId` - Redesign listing buttons - `Add to library` shown when user is logged in and doesn't have an agent in library - `See runs` shown when user logged in as has the agent in the library - `Download agent` always shown - Disabled buttons during processing (adding/downloading) - Stop raising when owner is trying to add own agent. Now it'll simply redirect to Library. - Remove button appearing/flickering after a delay on listing page - logged in status is now checked in server component. - Show error toast on adding/redirecting to library and downloading error - Update breadcrumbs and page title to say `Marketplace` instead of `Store` - `font-geist` -> `font-sans` (`font-geist` var doesn't exist) ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Button on a listing is `Add to library` (no library agent) - [x] Agent can be added and user is redirected - [x] Button on the listing is `See runs` and clicking it redirects to the library agent - [x] Remove agent from library - [x] Buttons shows `Add to library` again - [x] Agent can be re-added - [x] Agent can be downloaded - [x] `Add to library` Button is hidden when user is logged out --------- Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co> |
||
|
|
59ec61ef98 |
feat(platform): Onboarding design&UX update (#9905)
A collection of updates regarding onboarding and wallet. ### Changes 🏗️ - `try-except` instead of `if` when rewarding (skip unnecessary db call) - Make external services question onboarding step optional - Add `SmartImage` component to lazy load images with pulse animation and use it throughout onboarding - Use store agent name instead of graph graph name (run page) - Fix some images breaking layout on the agent card (run page) - Center agent card vertically and horizontally (center on the left half of page) (run page) - Delay and tweak confetti when opening wallet and when task finished (wallet) - Flash wallet when credits change value - Make tutorial video grayscale on completed steps (wallet) - Fix confetti triggering on page refresh (wallet) - Redirect to agent run page instead of Library after onboarding - Expand task groups by default (wallet) - this means tutorial videos are visible by default ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Services step is optional and skipping it doesn't break onboarding - [x] `SmartImage` works properly - [x] Agent card is aligned properly, including on page scroll - [x] Wallet flash when credits value change - [x] User is redirected to the agent runs page after onboarding |
||
|
|
602f887623 |
feat(frontend): fix admin add dollars (#9898)
Fixes the admin add dollars, in the ``add-money-button.tsx`` file, in
the handleApproveSubmit action it was trying to use formatCredits for
the value which is wrong, this fix changes it
```diff
<form action={handleApproveSubmit}>
<input type="hidden" name="id" value={userId} />
<input
type="hidden"
name="amount"
- value={formatCredits(Number(dollarAmount))}
+ value={Math.round(parseFloat(dollarAmount) * 100)}
/>
```
i was able to add $1, $0.10 and $0.01

|
||
|
|
04c4340ee3 |
feat(frontend,backend): user spending admin dashboard (#9751)
<!-- Clearly explain the need for these changes: --> We need a way to refund people who spend money on agents wihout making manual db actions ### Changes 🏗️ - Adds a bunch for refunding users - Adds reasons and admin id for actions - Add admin to db manager - Add UI for this for the admin panel - Clean up pagination controls <!-- Concisely describe all of the changes made in this pull request: --> ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] Test by importing dev db as baseline - [x] Add transactions on top for "refund", and make sure all existing transactions work --------- Co-authored-by: Zamil Majdy <zamil.majdy@agpt.co> |
||
|
|
a1f17ca797 |
fix: use subheading for agent info not description (#9891)
<!-- Clearly explain the need for these changes: --> we oopsed and used the wrong attribute for short desc ### Changes 🏗️ Uses sub heading instead now <!-- Concisely describe all of the changes made in this pull request: --> ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [x] check the expected text shows |
||
|
|
8fdfd75cc4 |
feat: allow admins to download agents for review (#9881)
<!-- Clearly explain the need for these changes: --> for admins to approve agents for the marketplace, we need to be able to run them. this is a quick workaround for downloading them so you can put them in your marketplace to check ### Changes 🏗️ - clones various endpoints related to downloading into an admin side with logging, and admin checks - adds download button and removes open in builder action <!-- Concisely describe all of the changes made in this pull request: --> ### Checklist 📋 #### For code changes: - [ ] I have clearly listed my changes in the PR description - [ ] I have made a test plan - [ ] I have tested my changes according to the test plan: <!-- Put your test plan here: --> - [ ] Test downloading agents from local marketplace |
||
|
|
5b5b2043e8 |
fix(frontend): Add support to optional multiselect (#9885)
- fix #9882 we’re currently using optional multi select, and it’s working great. We’re able to correctly determine the data type for it. However, there’s a small issue. We’re not using the correct subSchema that is inside anyOf on the multi select input. This is why we’re getting the problem on the Twitter block. It’s the only one that’s using this type of input, so it’s the only one that’s affected.  --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> |
||
|
|
4ddb206f86 |
feat(frontend): Add billing page toggle (#9877)
### Changes 🏗️ Provide a system toggle for disabling the billing page: NEXT_PUBLIC_SHOW_BILLING_PAGE ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Toggle `NEXT_PUBLIC_SHOW_BILLING_PAGE` value. |
||
|
|
91f34966c8 |
fix(block): Fix Smart Decision Block missing input beads & incompability with input in special characters (#9875)
Smart Decision Block was not able to work with sub agent with custom name input & the bead were not properly propagated in the execution UI. The scope of this PR is fixing it. ### Changes 🏗️ * Introduce an easy to parse format of tool edge: `{tool}_^_{func}_~_{arg}`. Graph using SmartDecisionBlock needs to be re-saved before execution to work. * Reduce cluttering on a smart decision block logic. * Fix beads not being shown for a smart decision block tool calling. ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Execute an SDM with some special character input as a tool <img width="672" alt="image" src="https://github.com/user-attachments/assets/873556b3-c16a-4dd1-ad84-bc86c636c406" /> |
||
|
|
11a69170b5 |
feat(frontend): Update "Edit a copy" modal and buttons (#9876)
Update "Edit a copy" modal text when copying marketplace agent in Library. Update agent action buttons to reflect the design accurately. ### Changes 🏗️ - Update modal text - Disable copying owned agents (only marketplace allowed) - `Open in Builder` -> `Customize agent` - Disabled `Customize agent` instead of hiding - Change `Delete agent` to non-destructive design ### Checklist 📋 #### For code changes: - [ ] I have clearly listed my changes in the PR description - [ ] I have made a test plan - [ ] I have tested my changes according to the test plan: - [ ] ... |
||
|
|
160a622ba4 |
feat(platform): Forking agent in Library (#9870)
This PR introduces copying agents feature in the Library. Users can copy and download their library agents but they can edit only the ones they own (included copied ones). ### Changes 🏗️ - DB migration: add relation in `AgentGraph`: `forked_from_id` and `forked_from_version` - Add `fork_graph` function that makes a hardcopy of agent graph and its nodes (all with new ids) - Add `fork_library_agent` that copies library agent and its graph for a user - Add endpoint `/library/agents/{libraryAgentId}/fork` - Add UI to `library/agents/[id]/page.tsx`: `Edit a copy` button with dialog confirmation ### Checklist 📋 #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: - [x] Agent can be copied, edited and runs |