-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
update before install #1
base: master
Are you sure you want to change the base?
update before install #1
Conversation
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
28 similar comments
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
β¦9551) ### Changes ποΈ Instead of parsing an LlmMessage by ourselves, we use raw content from the LLM as conversation history and accept any format it introduces. Example output: ``` [ { "role": "system", "content": "Thinking carefully step by step decide which function to call. Always choose a function call from the list of function signatures. The test graph is basically an all knowing answer machine you can use it to get an answer" }, { "role": "user", "content": "Hey how's the weather today" }, { "role": "assistant", "audio": null, "content": null, "refusal": null, "tool_calls": [ { "id": "call_Z7CKKIkldylmfWJdE6ZnDxjr", "type": "function", "function": { "name": "storevalueblock", "arguments": "{\"input\":\"I don't have context for your location. Could you provide one?\"}" } } ], "function_call": null } ] ``` ### 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: --> - [ ] ... <details> <summary>Example test plan</summary> - [ ] Create from scratch and execute an agent with at least 3 blocks - [ ] Import an agent from file upload, and confirm it executes correctly - [ ] Upload agent to marketplace - [ ] Import an agent from marketplace and confirm it executes correctly - [ ] Edit an agent from monitor, and confirm it executes correctly </details> #### 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**) <details> <summary>Examples of configuration changes</summary> - Changing ports - Adding new services that need to communicate with each other - Secrets or environment variable changes - New or infrastructure changes such as databases </details>
β¦9552) **Proposal / Request For Comments** The tool calling provided by the LLM provider requires an output generated by the tool to be looped back as part of the conversation history. The scope of this PR is trying to address the need to fulfill the feature expectation. ### Changes ποΈ * `Last Tool Output` is introduced to loop back the output of the tool back to Smart Decision Block. * Smart Decision Block execution will be pending unless the `Last Tool Output` us provided where a pending tool call is present in the conversation history. * **Known hack**: The last tool output will prefill all the pending tool calls from the conversation history. * A few tweaks were required to allow a blocking loop to be executed without awaiting on all the inbound links. <img width="1395" alt="image" src="https://github.com/user-attachments/assets/fdad4407-621b-45d0-a457-76b2d4c853b9" /> ### 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: --> - [ ] ... <details> <summary>Example test plan</summary> - [ ] Create from scratch and execute an agent with at least 3 blocks - [ ] Import an agent from file upload, and confirm it executes correctly - [ ] Upload agent to marketplace - [ ] Import an agent from marketplace and confirm it executes correctly - [ ] Edit an agent from monitor, and confirm it executes correctly </details> #### 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**) <details> <summary>Examples of configuration changes</summary> - Changing ports - Adding new services that need to communicate with each other - Secrets or environment variable changes - New or infrastructure changes such as databases </details>
β¦artDecisionMakerBlock
- Resolves #9545 ### Changes ποΈ - fix(platform): Make "Delete" button on `/monitoring` soft-delete the `LibraryAgent` instead of hard-deleting the corresponding `AgentGraph` - feat(frontend): Add "Delete agent" button on `/library/agents/[id]` Technical: - fix(backend): Accept partial input on `update_library_agent` endpoint - feat(backend): Add `GET /api/library/agents/{library_agent_id}` endpoint - refactor(frontend): Replace use of `GraphMeta` by `LibraryAgent` where possible on `/library/agents/[id]` Also, out of scope but important: - fix(frontend): Hide buttons that require direct graph access depending on `agent.can_access_graph` ### 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 the Library and select an agent - [x] -> `/library/agents/[id]` should load normally - Save this URL for later (especially the ID)! - Click "Delete agent" on `/library/agents/[id]` - [x] -> should show a confirmation dialog - Click "Delete" to confirm - [x] -> should redirect back to `/library` - [x] -> deleted agent should no longer be listed in the Library - Click "Delete agent" on `/monitoring` - [x] -> should show a confirmation dialog - Click "Delete" to confirm - [x] -> agent should disappear from agent list - [x] -> views should reset / deselect the deleted agent where applicable
<!-- Clearly explain the need for these changes: --> For emailing, we want the user to know when an agent stopped because their balance was too low. This is the first step of that. ### Changes ποΈ - Raise InsufficientBalanceError from credit system rather than value error when user runs out of money - Handle when an agent output isn't hooked up well - Fix the contents of the email for low balance to be a bit more aligned with the PRD - expose the topup intent from the db manager - objectify the execution stats so we can pass it around a bit more type safe - extract the notification stuff in manager into a function <!-- 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] Set balance to $0.01 - [x] Run an agent that costs something more than $0.01 - [x] Check you get an email - [x] Check your top up link works --------- Co-authored-by: Zamil Majdy <[email protected]>
β¦9555) We've disabled the request for security reasons, and the current request library breaks on the 301 web response. ### Changes ποΈ Add manually safe URL redirect on our web request layer. ### 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: --> - [ ] ... <details> <summary>Example test plan</summary> - [ ] Create from scratch and execute an agent with at least 3 blocks - [ ] Import an agent from file upload, and confirm it executes correctly - [ ] Upload agent to marketplace - [ ] Import an agent from marketplace and confirm it executes correctly - [ ] Edit an agent from monitor, and confirm it executes correctly </details> #### 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**) <details> <summary>Examples of configuration changes</summary> - Changing ports - Adding new services that need to communicate with each other - Secrets or environment variable changes - New or infrastructure changes such as databases </details>
β¦9566) ### Changes ποΈ Prevent a graph being executed and do nothing by erroring out when no starting node is available. ### 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: --> - [ ] ... <details> <summary>Example test plan</summary> - [ ] Create from scratch and execute an agent with at least 3 blocks - [ ] Import an agent from file upload, and confirm it executes correctly - [ ] Upload agent to marketplace - [ ] Import an agent from marketplace and confirm it executes correctly - [ ] Edit an agent from monitor, and confirm it executes correctly </details> #### 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**) <details> <summary>Examples of configuration changes</summary> - Changing ports - Adding new services that need to communicate with each other - Secrets or environment variable changes - New or infrastructure changes such as databases </details>
β¦Component (#9570) Our application currently uses multiple inconsistent button implementations across the codebase. This PR standardizes buttons to use our base Button component that leverages ShadcN, improving UI consistency, maintainability, and accessibility. Resolves: #9567 ### Changes ποΈ - Replaced custom button implementations in various components with our base Button component and greatly reduced redundant overlapping styles. - Paired with our designer to streamline our `globals.css` to match the desired approach. - Added button variant documentation in Storybook - Deprecated the obsolete 'primary' class and marked it. ### Screenshots π· #### Variants <img width="466" alt="image" src="https://github.com/user-attachments/assets/9e4f6360-57ec-4f28-b702-e57252d67def" /> <img width="418" alt="image" src="https://github.com/user-attachments/assets/a9af17dc-e8bc-429d-a9ac-8380e34b9089" /> <img width="129" alt="image" src="https://github.com/user-attachments/assets/2df5d184-bb49-4640-bfb4-879360ca35e6" /> ### 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: <details> <summary>Button Consolidation Test Plan</summary> Visual Verification - [ ] Verify all button variants (default, destructive, outline, secondary, ghost, link) render correctly - [ ] Confirm button styling is consistent across all themes (light, dark, etc.) - [ ] Validate that the rounded-full style is applied to appropriate variants Functional Testing - [ ] Test click handlers continue to work on all migrated buttons - [ ] Verify hover, focus, and active states display correctly on all buttons - [ ] Confirm disabled states are working properly - [ ] Test loading state animations and behavior Responsive Testing - [ ] Verify button layouts on mobile devices (< 640px) - [ ] Confirm button layouts on tablet devices (640px - 1024px) - [ ] Test button layouts on desktop screens (> 1024px) </details> --------- Co-authored-by: Nicholas Tindle <[email protected]>
β¦ents (#9565) Enhance process management with error handling, lifecycle improvements, and better resource management - Added robust error handling for process startup failures. - Implemented proper cleanup of processes during failure scenarios. - Added detailed error logging for process failures and cleanup operations. - Enhanced process lifecycle with health checks. - Added success logging for process terminations. These updates enhance the reliability and maintainability of the system. --------- Co-authored-by: Zamil Majdy <[email protected]>
This PR fixes the layout of the Library page. It properly anchors the 'old experience' message to the bottom of the viewport and improves the overall page structure using semantic HTML and Tailwind best practices. Resolves: #9524 ### Changes ποΈ - Restructured the LibraryPage component to use proper semantic HTML with a `<main>` element - Added a fixed Alert component at the bottom of the viewport with 8px margin - Used ShadcN Alert component for the 'old experience' message for UI consistency - Implemented responsive behavior to hide the alert on mobile screens - Optimized Tailwind classes by using the `container` utility and removing redundant styles - Improved accessibility and UX by using appropriate semantic elements ### Screenshot <img width="926" alt="image" src="https://github.com/user-attachments/assets/e393007c-639e-4383-922c-41fa67133da8" /> ### 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: <details> <summary>Alert Message at Bottom of Library Page</summary> - [ ] Visit the Library page and verify the alert appears fixed at the bottom with 8px margin - [ ] Resize browser window to various desktop sizes and confirm alert remains centered - [ ] Scroll through Library page content and verify the alert stays fixed at the bottom - [ ] Open developer tools and toggle to mobile view (width < 640px) to confirm alert is hidden - [ ] Test in both light and dark mode to ensure alert styling is consistent with theme - [ ] Click the "here" link in the alert and verify it navigates to the monitoring page - [ ] Verify that QuestionMarkCircled icon in the alert is properly styled and visible </details> --------- Co-authored-by: Bentlybro <[email protected]>
β¦ING (#9576) Increase the logging threshold to WARNING to avoid chatty RPC service request logs. Before: 
β¦n SmartDecisionMakerBlock
### Changes ποΈ right now the featured agents cards dont have a set width/height, so they change depending on the content, and the description is duplicated. also, the "by {creator username}" was removed. currently it looks like this:  with my changes, i set a fixed width and height so they dont change, the description now only shows on hover and is truncated to 11 lines, and i added back the "by {creator username}"  --------- Co-authored-by: Andy Hooker <[email protected]>
β¦humbnail (#9568) ### Changes ποΈ Integrate Ideogram for auto-generating created agent thumbnail  **Note:** switching back to the "old" Replicate-based image generator is possible by setting `USE_AGENT_IMAGE_GENERATION_V2=false`. ### 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: --> - [ ] ... <details> <summary>Example test plan</summary> - [ ] Create from scratch and execute an agent with at least 3 blocks - [ ] Import an agent from file upload, and confirm it executes correctly - [ ] Upload agent to marketplace - [ ] Import an agent from marketplace and confirm it executes correctly - [ ] Edit an agent from monitor, and confirm it executes correctly </details> --------- Co-authored-by: Reinier van der Leer <[email protected]>
Show that something is happening when a click handler doesn't return immediately. ### Changes ποΈ - Show a loading indicator on buttons while their click handler is running https://github.com/user-attachments/assets/5878c5a4-cba2-4125-a101-21220d713232 ### 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]`; click "Run again" on an existing run - [x] -> loading indicator should show - [x] -> button state should reset once the API request completes - [x] Check that existing `Button` elements aren't adversely affected by the styling changes, especially `overflow-hidden`
β¦ Button Component" (#9575) Reverts #9570 Some of the styling changes cause issues with existing parts of the application, and I don't know if partially reverting would cause issues with the other refactored components/elements. Co-authored-by: Nicholas Tindle <[email protected]>
- Resolves #9542 ### Changes ποΈ - feat(platform): Add "Delete run" button on `/library/agents/[id]` w/ confirm dialog - Add `AgentGraphExecution.isDeleted` column for soft delete - Add `DELETE /api/executions/{graph_exec_id}` endpoint - feat(frontend): Add "Stop run" button on `/library/agents/[id]` Technical improvements: - refactor(frontend): Generalize `AgentDeleteConfirmDialog` -> `DeleteConfirmDialog` - refactor(frontend): Brand `GraphExecution.execution_id` and `Schedule.id` to prevent mixing ### 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: - Click "Delete run" under "Run actions" in the right sidebar - [x] -> Confirmation dialog should show - Click "Delete" - [x] -> run should disappear from list - [x] -> view should switch to "Draft new run" view - [x] -> refresh page -> run should not be in list - Click "Delete" in the menu on a run in the list - [x] -> Confirmation dialog should show - Click "Delete" - [x] -> run should disappear from list - [x] -> refresh page -> run should not be in list --------- Co-authored-by: Krzysztof Czerwinski <[email protected]>
β¦cks and statuses (#9582) <!-- Clearly explain the need for these changes: --> Trying to run the GitHub Status blocks results in a serialization error ### Changes ποΈ - Serializes the checks and blocks data objects correctly <!-- 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] make a one block agent, test it and make sure it works
<!-- Clearly explain the need for these changes: --> As part of the code review agent, I found these blocks would be useful, but not required. Adds the ability to list comments on an issue and PR as well as update comments on an issue, pr and discussion ### Changes ποΈ <!-- Concisely describe all of the changes made in this pull request: --> - Adds Listing comments block - Adds updating comment block ### 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 all of the new blocks on #9582 . Review it for context --------- Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com> Co-authored-by: Bentlybro <[email protected]>
- Fixes #9577 ### Changes ποΈ - Add the required include statements to `LibraryAgent` queries - Make a `library_agent_include(user_id)` utility in `backend.data.includes` ### 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: - Go to an agent in the Marketplace; click "Add To Library" - [ ] -> should work, not return an error - [ ] -> should redirect to `/library/agents/[id]` -> should load normally
β¦ Anthropics support (#9585) ### Changes ποΈ There are a few agent-loop issues that this PR is addressing: * There is a lack of support for agent-loop in Anthropic. * Duplicated system & user prompt as the main objective prompt in the agent loop. * A long rendered text of conversation history by SmartDecisionMakerBlock agent-loop in the UI. * A lack of execution input being rendered in the execution list making it harder to debug. https://github.com/user-attachments/assets/be430000-bde0-40c6-8f2e-c97ce45b5ed1 ### 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] Create from scratch and execute an agent with at least 3 blocks using SmartDecisionMaker Block.
This PR adds backend to make Onboarding UI added in #9485 functional and adds missing confetti screen at the end of Onboarding. *Make sure to have at least any 2 agents in store when testing locally.* Otherwise the onboarding will finish without showing agents. Visit `/onboarding/reset` to reset onboarding state, otherwise it'll always redirect to `/library` once finished. ### Changes ποΈ - Onboarding opens automatically on sign up and login (if unfinished) for all users - Update db schema to add `UserOnboarding` and add migration - Add GET and PATCH `/onboarding` endpoints and logic to retrieve and update data Onboarding for a user - Update `POST /library/agents` endpoint (`addMarketplaceAgentToLibrary`), so it includes input and output nodes; these are needed to know input schema for the Onboarding - Use new endpoints during onboarding to fetch and update data - Use agents from the marketplace and their input schema for the onboarding - Add algorithm to choose store agents based on user answers and related endpoint `GET /onboarding/agents` - Redirect outside onboarding if finished and resume on proper page - Add `canvas-confetti` and `@types/canvas-confetti` frontend packages - Add and show congrats confetti screen when user runs and agent and before opening library - Minor design updates and onboarding fixes ### 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] Redirect to `/onboarding/*` on sign up and sign in (if onboarding unfinished) - [x] Onboarding works and can be finished - [x] Agent runs on finish - [x] Onboarding state is saved and logging out or refreshing page restores correct state (user choices) - [x] When onboarding finished, trying to go into `/onboarding` redirects to `/library` --------- Co-authored-by: Nicholas Tindle <[email protected]> Co-authored-by: Reinier van der Leer <[email protected]>
<!-- Clearly explain the need for these changes: --> Update the security.md based on some advice we got :) ### Changes ποΈ - Adds an update time window and clarifies time spans <!-- Concisely describe all of the changes made in this pull request: -->
- Fixes #9579 ### Changes ποΈ - Fetch & use specific graph version to render graph run I/O 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: - Run an Agent that yields an output - [x] -> should render normally without errors - Rename the Agent Output name - Save the modified Agent - Open the Agent in the Agent library and attempt to view the output from step 1 - [x] -> should render normally without errors --------- Co-authored-by: Nicholas Tindle <[email protected]>
### Changes ποΈ This is to add the Otto chat bot to the frontend UI. The changes i have made for this goes as follows: - I have made and added a basic chat UI widget to the build page, this will become the main UI for Otto, this will be getting updates in the future. - I have made an API route ``/api/otto/ask`` that will receive the message from the frontend and pass it to the Otto API that we have setup on GCP. I already have plans for how we can improve the UI and make it more modular, this way we can add more features to Otto down the line! ### Config Changes When we merge this, we will need to add the ENV var for ``otto_api_url`` that will be the URL from GCP where the API is being hosted! This is now ready for a review as the backend API is up and running, to who ever does test this, if you want the API url please DM me π  ### 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] Set the ENV var for ``otto_api_url`` - ask @Bentlybro for this - [x] Set the ENV var for ``NEXT_PUBLIC_BEHAVE_AS`` to ``CLOUD`` - [x] Send otto a message from the build page frontend - [x] Send otto a message that contains graph data to see if the sending graph data works
This PR exceeds the recommended size of 500 lines. Please make sure you are NOT addressing multiple issues with one PR. |
Background
Changes ποΈ
PR Quality Scorecard β¨
+2 pts
+5 pts
+5 pts
+5 pts
-4 pts
+4 pts
+5 pts
-5 pts
agbenchmark
to verify that these changes do not regress performance? β+10 pts