mirror of
https://github.com/Significant-Gravitas/AutoGPT.git
synced 2026-02-08 13:55:06 -05:00
## Changes 🏗️ There is a bug where the agent activity dropdown bubble only shows up to `6` even if there are `50 running agents`. We only display the last 6 runs in the dropdown, but the bubble badge count should show the correct all running agents. On top of that we added the option to search runs by agent name when you have more than 6 recent runs: https://github.com/user-attachments/assets/931e3db7-5715-48d1-b4df-22490fae9de0 - Also make the dropdown items a link ( `a` ) so that you can command click them to open runs in new tabs. - Keep up to `400` executions on the state ( worse case load test ) - Each execution object is relatively small (ID, status, timestamps, agent info) - 400 objects × ~`1KB` each = negligible memory footprint `400kb` - Always display running agents at the top - Only display runs from the last week on the dropdown - the agent library page contains the historical runs, this is just to show the recent ones ### Code changes - **Added count tracking** - the `NotificationState` interface now includes separate count fields (`activeCount`, `recentCompletionsCount`, `recentFailuresCount`) to track the actual numbers independent of display limits. - **Dual array system:** - the `categorizeExecutions` function now creates: - unlimited arrays for counting all executions - limited arrays (sliced to 6 items) for dropdown display - Updated all helper functions to properly maintain both the display arrays and the count fields. - Component uses actual counts - `<AgentActivityDropdown />` component now uses `activeCount` for the badge and hover hint instead of `activeExecutions.length` ## 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 and navigate to library or build - [x] Start running agents like there is no tomorrow - [x] The badge shows the correct agent execution count ( .i.e 10 ) - [x] The dropdown only displays the 6 most recent - [x] You can command click on the runs and they open in new tabs ### For configuration changes None
144 lines
4.9 KiB
JSON
144 lines
4.9 KiB
JSON
{
|
|
"name": "frontend",
|
|
"version": "0.3.4",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "next dev --turbo",
|
|
"build": "cross-env pnpm run generate:api-client && SKIP_STORYBOOK_TESTS=true next build",
|
|
"start": "next start",
|
|
"start:standalone": "cd .next/standalone && node server.js",
|
|
"lint": "next lint && prettier --check .",
|
|
"format": "prettier --write .",
|
|
"type-check": "tsc --noEmit",
|
|
"test": "next build --turbo && playwright test",
|
|
"test-ui": "next build --turbo && playwright test --ui",
|
|
"test:no-build": "playwright test",
|
|
"gentests": "playwright codegen http://localhost:3000",
|
|
"storybook": "storybook dev -p 6006",
|
|
"build-storybook": "storybook build",
|
|
"test-storybook": "test-storybook",
|
|
"test-storybook:ci": "concurrently -k -s first -n \"SB,TEST\" -c \"magenta,blue\" \"pnpm run build-storybook -- --quiet && npx http-server storybook-static --port 6006 --silent\" \"wait-on tcp:6006 && pnpm run test-storybook\"",
|
|
"fetch:openapi": "curl http://localhost:8006/openapi.json > ./src/app/api/openapi.json && prettier --write ./src/app/api/openapi.json",
|
|
"generate:api-client": "orval --config ./orval.config.ts",
|
|
"generate:api-all": "pnpm run fetch:openapi && pnpm run generate:api-client"
|
|
},
|
|
"browserslist": [
|
|
"defaults"
|
|
],
|
|
"dependencies": {
|
|
"@faker-js/faker": "9.9.0",
|
|
"@hookform/resolvers": "5.2.0",
|
|
"@next/third-parties": "15.4.4",
|
|
"@phosphor-icons/react": "2.1.10",
|
|
"@radix-ui/react-alert-dialog": "1.1.14",
|
|
"@radix-ui/react-avatar": "1.1.10",
|
|
"@radix-ui/react-checkbox": "1.3.2",
|
|
"@radix-ui/react-collapsible": "1.1.11",
|
|
"@radix-ui/react-context-menu": "2.2.15",
|
|
"@radix-ui/react-dialog": "1.1.14",
|
|
"@radix-ui/react-dropdown-menu": "2.1.15",
|
|
"@radix-ui/react-icons": "1.3.2",
|
|
"@radix-ui/react-label": "2.1.7",
|
|
"@radix-ui/react-popover": "1.1.14",
|
|
"@radix-ui/react-radio-group": "1.3.7",
|
|
"@radix-ui/react-scroll-area": "1.2.9",
|
|
"@radix-ui/react-select": "2.2.5",
|
|
"@radix-ui/react-separator": "1.1.7",
|
|
"@radix-ui/react-slot": "1.2.3",
|
|
"@radix-ui/react-switch": "1.2.5",
|
|
"@radix-ui/react-tabs": "1.1.12",
|
|
"@radix-ui/react-toast": "1.2.14",
|
|
"@radix-ui/react-tooltip": "1.2.7",
|
|
"@sentry/nextjs": "9.42.0",
|
|
"@supabase/ssr": "0.6.1",
|
|
"@supabase/supabase-js": "2.52.1",
|
|
"@tanstack/react-query": "5.83.0",
|
|
"@tanstack/react-table": "8.21.3",
|
|
"@types/jaro-winkler": "0.2.4",
|
|
"@xyflow/react": "12.8.2",
|
|
"ajv": "8.17.1",
|
|
"boring-avatars": "1.11.2",
|
|
"class-variance-authority": "0.7.1",
|
|
"clsx": "2.1.1",
|
|
"cmdk": "1.1.1",
|
|
"cookie": "1.0.2",
|
|
"date-fns": "4.1.0",
|
|
"dotenv": "17.2.1",
|
|
"elliptic": "6.6.1",
|
|
"embla-carousel-react": "8.6.0",
|
|
"framer-motion": "12.23.9",
|
|
"geist": "1.4.2",
|
|
"jaro-winkler": "0.2.8",
|
|
"launchdarkly-react-client-sdk": "3.8.1",
|
|
"lodash": "4.17.21",
|
|
"lucide-react": "0.525.0",
|
|
"moment": "2.30.1",
|
|
"next": "15.4.4",
|
|
"next-themes": "0.4.6",
|
|
"nuqs": "2.4.3",
|
|
"party-js": "2.2.0",
|
|
"react": "18.3.1",
|
|
"react-day-picker": "9.8.0",
|
|
"react-dom": "18.3.1",
|
|
"react-drag-drop-files": "2.4.0",
|
|
"react-hook-form": "7.61.1",
|
|
"react-icons": "5.5.0",
|
|
"react-markdown": "9.0.3",
|
|
"react-modal": "3.16.3",
|
|
"react-shepherd": "6.1.9",
|
|
"react-window": "1.8.11",
|
|
"recharts": "2.15.3",
|
|
"shepherd.js": "14.5.1",
|
|
"sonner": "2.0.6",
|
|
"tailwind-merge": "2.6.0",
|
|
"tailwindcss-animate": "1.0.7",
|
|
"uuid": "11.1.0",
|
|
"vaul": "1.1.2",
|
|
"zod": "3.25.76"
|
|
},
|
|
"devDependencies": {
|
|
"@chromatic-com/storybook": "4.0.1",
|
|
"@playwright/test": "1.54.1",
|
|
"@storybook/addon-a11y": "9.0.17",
|
|
"@storybook/addon-docs": "9.0.17",
|
|
"@storybook/addon-links": "9.0.17",
|
|
"@storybook/addon-onboarding": "9.0.17",
|
|
"@storybook/nextjs": "9.0.17",
|
|
"@tanstack/eslint-plugin-query": "5.81.2",
|
|
"@tanstack/react-query-devtools": "5.83.0",
|
|
"@types/canvas-confetti": "1.9.0",
|
|
"@types/lodash": "4.17.20",
|
|
"@types/negotiator": "0.6.4",
|
|
"@types/node": "24.0.15",
|
|
"@types/react": "18.3.17",
|
|
"@types/react-dom": "18.3.5",
|
|
"@types/react-modal": "3.16.3",
|
|
"@types/react-window": "1.8.8",
|
|
"axe-playwright": "2.1.0",
|
|
"chromatic": "13.1.2",
|
|
"concurrently": "9.2.0",
|
|
"cross-env": "7.0.3",
|
|
"eslint": "8.57.1",
|
|
"eslint-config-next": "15.4.2",
|
|
"eslint-plugin-storybook": "9.0.17",
|
|
"import-in-the-middle": "1.14.2",
|
|
"msw": "2.10.4",
|
|
"msw-storybook-addon": "2.0.5",
|
|
"orval": "7.10.0",
|
|
"pbkdf2": "3.1.3",
|
|
"postcss": "8.5.6",
|
|
"prettier": "3.6.2",
|
|
"prettier-plugin-tailwindcss": "0.6.14",
|
|
"require-in-the-middle": "7.5.2",
|
|
"storybook": "9.0.17",
|
|
"tailwindcss": "3.4.17",
|
|
"typescript": "5.8.3"
|
|
},
|
|
"msw": {
|
|
"workerDirectory": [
|
|
"public"
|
|
]
|
|
},
|
|
"packageManager": "pnpm@10.11.1+sha256.211e9990148495c9fc30b7e58396f7eeda83d9243eb75407ea4f8650fb161f7c"
|
|
}
|